aboutsummaryrefslogtreecommitdiff
path: root/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
diff options
context:
space:
mode:
authorsotech117 <michael_foiani@brown.edu>2025-07-31 17:27:24 -0400
committersotech117 <michael_foiani@brown.edu>2025-07-31 17:27:24 -0400
commit5bf22fc7e3c392c8bd44315ca2d06d7dca7d084e (patch)
tree8dacb0f195df1c0788d36dd0064f6bbaa3143ede /venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
parentb832d364da8c2efe09e3f75828caf73c50d01ce3 (diff)
add code for analysis of data
Diffstat (limited to 'venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js')
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js3906
1 files changed, 3906 insertions, 0 deletions
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js b/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
new file mode 100644
index 0000000..c9806b0
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
@@ -0,0 +1,3906 @@
+var OW=Object.create;var jC=Object.defineProperty;var BW=Object.getOwnPropertyDescriptor;var NW=Object.getOwnPropertyNames;var UW=Object.getPrototypeOf,jW=Object.prototype.hasOwnProperty;var VW=(le,me)=>()=>(me||le((me={exports:{}}).exports,me),me.exports);var qW=(le,me,Xe,Mt)=>{if(me&&typeof me=="object"||typeof me=="function")for(let rr of NW(me))!jW.call(le,rr)&&rr!==Xe&&jC(le,rr,{get:()=>me[rr],enumerable:!(Mt=BW(me,rr))||Mt.enumerable});return le};var HW=(le,me,Xe)=>(Xe=le!=null?OW(UW(le)):{},qW(me||!le||!le.__esModule?jC(Xe,"default",{value:le,enumerable:!0}):Xe,le));var $8=VW((J8,l2)=>{(function(le,me){typeof l2=="object"&&l2.exports?l2.exports=me():le.moduleName=me()})(typeof self<"u"?self:J8,()=>{"use strict";var le=(()=>{var me=Object.create,Xe=Object.defineProperty,Mt=Object.defineProperties,rr=Object.getOwnPropertyDescriptor,Nr=Object.getOwnPropertyDescriptors,xa=Object.getOwnPropertyNames,Ha=Object.getOwnPropertySymbols,Za=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty,Ji=Object.prototype.propertyIsEnumerable,gn=(X,H,g)=>H in X?Xe(X,H,{enumerable:!0,configurable:!0,writable:!0,value:g}):X[H]=g,wo=(X,H)=>{for(var g in H||(H={}))un.call(H,g)&&gn(X,g,H[g]);if(Ha)for(var g of Ha(H))Ji.call(H,g)&&gn(X,g,H[g]);return X},ps=(X,H)=>Mt(X,Nr(H)),Qn=(X,H)=>function(){return X&&(H=(0,X[xa(X)[0]])(X=0)),H},Ye=(X,H)=>function(){return H||(0,X[xa(X)[0]])((H={exports:{}}).exports,H),H.exports},Ps=(X,H)=>{for(var g in H)Xe(X,g,{get:H[g],enumerable:!0})},Ml=(X,H,g,x)=>{if(H&&typeof H=="object"||typeof H=="function")for(let A of xa(H))!un.call(X,A)&&A!==g&&Xe(X,A,{get:()=>H[A],enumerable:!(x=rr(H,A))||x.enumerable});return X},Ul=(X,H,g)=>(g=X!=null?me(Za(X)):{},Ml(H||!X||!X.__esModule?Xe(g,"default",{value:X,enumerable:!0}):g,X)),Hf=X=>Ml(Xe({},"__esModule",{value:!0}),X),xh=Ye({"src/version.js"(X){"use strict";X.version="3.0.1"}}),Bp=Ye({"node_modules/native-promise-only/lib/npo.src.js"(X,H){(function(x,A,M){A[x]=A[x]||M(),typeof H<"u"&&H.exports&&(H.exports=A[x])})("Promise",typeof window<"u"?window:X,function(){"use strict";var x,A,M,e=Object.prototype.toString,t=typeof setImmediate<"u"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),x=function(_,w,S,E){return Object.defineProperty(_,w,{value:S,writable:!0,configurable:E!==!1})}}catch{x=function(w,S,E){return w[S]=E,w}}M=function(){var _,w,S;function E(m,b){this.fn=m,this.self=b,this.next=void 0}return{add:function(b,d){S=new E(b,d),w?w.next=S:_=S,w=S,S=void 0},drain:function(){var b=_;for(_=w=A=void 0;b;)b.fn.call(b.self),b=b.next}}}();function r(l,_){M.add(l,_),A||(A=t(M.drain))}function o(l){var _,w=typeof l;return l!=null&&(w=="object"||w=="function")&&(_=l.then),typeof _=="function"?_:!1}function a(){for(var l=0;l<this.chain.length;l++)i(this,this.state===1?this.chain[l].success:this.chain[l].failure,this.chain[l]);this.chain.length=0}function i(l,_,w){var S,E;try{_===!1?w.reject(l.msg):(_===!0?S=l.msg:S=_.call(void 0,l.msg),S===w.promise?w.reject(TypeError("Promise-chain cycle")):(E=o(S))?E.call(S,w.resolve,w.reject):w.resolve(S))}catch(m){w.reject(m)}}function n(l){var _,w=this;if(!w.triggered){w.triggered=!0,w.def&&(w=w.def);try{(_=o(l))?r(function(){var S=new h(w);try{_.call(l,function(){n.apply(S,arguments)},function(){s.apply(S,arguments)})}catch(E){s.call(S,E)}}):(w.msg=l,w.state=1,w.chain.length>0&&r(a,w))}catch(S){s.call(new h(w),S)}}}function s(l){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=l,_.state=2,_.chain.length>0&&r(a,_))}function c(l,_,w,S){for(var E=0;E<_.length;E++)(function(b){l.resolve(_[b]).then(function(u){w(b,u)},S)})(E)}function h(l){this.def=l,this.triggered=!1}function v(l){this.promise=l,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function p(l){if(typeof l!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new v(this);this.then=function(S,E){var m={success:typeof S=="function"?S:!0,failure:typeof E=="function"?E:!1};return m.promise=new this.constructor(function(d,u){if(typeof d!="function"||typeof u!="function")throw TypeError("Not a function");m.resolve=d,m.reject=u}),_.chain.push(m),_.state!==0&&r(a,_),m.promise},this.catch=function(S){return this.then(void 0,S)};try{l.call(void 0,function(S){n.call(_,S)},function(S){s.call(_,S)})}catch(w){s.call(_,w)}}var T=x({},"constructor",p,!1);return p.prototype=T,x(T,"__NPO__",0,!1),x(p,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");E(_)})}),x(p,"reject",function(_){return new this(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");E(_)})}),x(p,"all",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");var b=_.length,d=Array(b),u=0;c(w,_,function(f,P){d[f]=P,++u===b&&E(d)},m)})}),x(p,"race",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");c(w,_,function(d,u){E(u)},m)})}),p})}}),_n=Ye({"node_modules/@plotly/d3/d3.js"(X,H){(function(){var g={version:"3.8.2"},x=[].slice,A=function(de){return x.call(de)},M=self.document;function e(de){return de&&(de.ownerDocument||de.document||de).documentElement}function t(de){return de&&(de.ownerDocument&&de.ownerDocument.defaultView||de.document&&de||de.defaultView)}if(M)try{A(M.documentElement.childNodes)[0].nodeType}catch{A=function(Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=Re[$e];return pt}}if(Date.now||(Date.now=function(){return+new Date}),M)try{M.createElement("DIV").style.setProperty("opacity",0,"")}catch{var r=this.Element.prototype,o=r.setAttribute,a=r.setAttributeNS,i=this.CSSStyleDeclaration.prototype,n=i.setProperty;r.setAttribute=function(Re,$e){o.call(this,Re,$e+"")},r.setAttributeNS=function(Re,$e,pt){a.call(this,Re,$e,pt+"")},i.setProperty=function(Re,$e,pt){n.call(this,Re,$e+"",pt)}}g.ascending=s;function s(de,Re){return de<Re?-1:de>Re?1:de>=Re?0:NaN}g.descending=function(de,Re){return Re<de?-1:Re>de?1:Re>=de?0:NaN},g.min=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&vt>wt&&(vt=wt)}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&vt>wt&&(vt=wt)}return vt},g.max=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&wt>vt&&(vt=wt)}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&wt>vt&&(vt=wt)}return vt},g.extent=function(de,Re){var $e=-1,pt=de.length,vt,wt,Jt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=Jt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&(vt>wt&&(vt=wt),Jt<wt&&(Jt=wt))}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=Jt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&(vt>wt&&(vt=wt),Jt<wt&&(Jt=wt))}return[vt,Jt]};function c(de){return de===null?NaN:+de}function h(de){return!isNaN(de)}g.sum=function(de,Re){var $e=0,pt=de.length,vt,wt=-1;if(arguments.length===1)for(;++wt<pt;)h(vt=+de[wt])&&($e+=vt);else for(;++wt<pt;)h(vt=+Re.call(de,de[wt],wt))&&($e+=vt);return $e},g.mean=function(de,Re){var $e=0,pt=de.length,vt,wt=-1,Jt=pt;if(arguments.length===1)for(;++wt<pt;)h(vt=c(de[wt]))?$e+=vt:--Jt;else for(;++wt<pt;)h(vt=c(Re.call(de,de[wt],wt)))?$e+=vt:--Jt;if(Jt)return $e/Jt},g.quantile=function(de,Re){var $e=(de.length-1)*Re+1,pt=Math.floor($e),vt=+de[pt-1],wt=$e-pt;return wt?vt+wt*(de[pt]-vt):vt},g.median=function(de,Re){var $e=[],pt=de.length,vt,wt=-1;if(arguments.length===1)for(;++wt<pt;)h(vt=c(de[wt]))&&$e.push(vt);else for(;++wt<pt;)h(vt=c(Re.call(de,de[wt],wt)))&&$e.push(vt);if($e.length)return g.quantile($e.sort(s),.5)},g.variance=function(de,Re){var $e=de.length,pt=0,vt,wt,Jt=0,Rt=-1,or=0;if(arguments.length===1)for(;++Rt<$e;)h(vt=c(de[Rt]))&&(wt=vt-pt,pt+=wt/++or,Jt+=wt*(vt-pt));else for(;++Rt<$e;)h(vt=c(Re.call(de,de[Rt],Rt)))&&(wt=vt-pt,pt+=wt/++or,Jt+=wt*(vt-pt));if(or>1)return Jt/(or-1)},g.deviation=function(){var de=g.variance.apply(this,arguments);return de&&Math.sqrt(de)};function v(de){return{left:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt<vt;){var wt=pt+vt>>>1;de(Re[wt],$e)<0?pt=wt+1:vt=wt}return pt},right:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt<vt;){var wt=pt+vt>>>1;de(Re[wt],$e)>0?vt=wt:pt=wt+1}return pt}}}var p=v(s);g.bisectLeft=p.left,g.bisect=g.bisectRight=p.right,g.bisector=function(de){return v(de.length===1?function(Re,$e){return s(de(Re),$e)}:de)},g.shuffle=function(de,Re,$e){(pt=arguments.length)<3&&($e=de.length,pt<2&&(Re=0));for(var pt=$e-Re,vt,wt;pt;)wt=Math.random()*pt--|0,vt=de[pt+Re],de[pt+Re]=de[wt+Re],de[wt+Re]=vt;return de},g.permute=function(de,Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=de[Re[$e]];return pt},g.pairs=function(de){for(var Re=0,$e=de.length-1,pt,vt=de[0],wt=new Array($e<0?0:$e);Re<$e;)wt[Re]=[pt=vt,vt=de[++Re]];return wt},g.transpose=function(de){if(!(wt=de.length))return[];for(var Re=-1,$e=g.min(de,T),pt=new Array($e);++Re<$e;)for(var vt=-1,wt,Jt=pt[Re]=new Array(wt);++vt<wt;)Jt[vt]=de[vt][Re];return pt};function T(de){return de.length}g.zip=function(){return g.transpose(arguments)},g.keys=function(de){var Re=[];for(var $e in de)Re.push($e);return Re},g.values=function(de){var Re=[];for(var $e in de)Re.push(de[$e]);return Re},g.entries=function(de){var Re=[];for(var $e in de)Re.push({key:$e,value:de[$e]});return Re},g.merge=function(de){for(var Re=de.length,$e,pt=-1,vt=0,wt,Jt;++pt<Re;)vt+=de[pt].length;for(wt=new Array(vt);--Re>=0;)for(Jt=de[Re],$e=Jt.length;--$e>=0;)wt[--vt]=Jt[$e];return wt};var l=Math.abs;g.range=function(de,Re,$e){if(arguments.length<3&&($e=1,arguments.length<2&&(Re=de,de=0)),(Re-de)/$e===1/0)throw new Error("infinite range");var pt=[],vt=_(l($e)),wt=-1,Jt;if(de*=vt,Re*=vt,$e*=vt,$e<0)for(;(Jt=de+$e*++wt)>Re;)pt.push(Jt/vt);else for(;(Jt=de+$e*++wt)<Re;)pt.push(Jt/vt);return pt};function _(de){for(var Re=1;de*Re%1;)Re*=10;return Re}function w(de,Re){for(var $e in Re)Object.defineProperty(de.prototype,$e,{value:Re[$e],enumerable:!1})}g.map=function(de,Re){var $e=new S;if(de instanceof S)de.forEach(function(Rt,or){$e.set(Rt,or)});else if(Array.isArray(de)){var pt=-1,vt=de.length,wt;if(arguments.length===1)for(;++pt<vt;)$e.set(pt,de[pt]);else for(;++pt<vt;)$e.set(Re.call(de,wt=de[pt],pt),wt)}else for(var Jt in de)$e.set(Jt,de[Jt]);return $e};function S(){this._=Object.create(null)}var E="__proto__",m="\0";w(S,{has:u,get:function(de){return this._[b(de)]},set:function(de,Re){return this._[b(de)]=Re},remove:y,keys:f,values:function(){var de=[];for(var Re in this._)de.push(this._[Re]);return de},entries:function(){var de=[];for(var Re in this._)de.push({key:d(Re),value:this._[Re]});return de},size:P,empty:L,forEach:function(de){for(var Re in this._)de.call(this,d(Re),this._[Re])}});function b(de){return(de+="")===E||de[0]===m?m+de:de}function d(de){return(de+="")[0]===m?de.slice(1):de}function u(de){return b(de)in this._}function y(de){return(de=b(de))in this._&&delete this._[de]}function f(){var de=[];for(var Re in this._)de.push(d(Re));return de}function P(){var de=0;for(var Re in this._)++de;return de}function L(){for(var de in this._)return!1;return!0}g.nest=function(){var de={},Re=[],$e=[],pt,vt;function wt(Rt,or,Dr){if(Dr>=Re.length)return vt?vt.call(de,or):pt?or.sort(pt):or;for(var Or=-1,va=or.length,fa=Re[Dr++],Va,Xa,_a,Ra=new S,Na;++Or<va;)(Na=Ra.get(Va=fa(Xa=or[Or])))?Na.push(Xa):Ra.set(Va,[Xa]);return Rt?(Xa=Rt(),_a=function(Qa,Ya){Xa.set(Qa,wt(Rt,Ya,Dr))}):(Xa={},_a=function(Qa,Ya){Xa[Qa]=wt(Rt,Ya,Dr)}),Ra.forEach(_a),Xa}function Jt(Rt,or){if(or>=Re.length)return Rt;var Dr=[],Or=$e[or++];return Rt.forEach(function(va,fa){Dr.push({key:va,values:Jt(fa,or)})}),Or?Dr.sort(function(va,fa){return Or(va.key,fa.key)}):Dr}return de.map=function(Rt,or){return wt(or,Rt,0)},de.entries=function(Rt){return Jt(wt(g.map,Rt,0),0)},de.key=function(Rt){return Re.push(Rt),de},de.sortKeys=function(Rt){return $e[Re.length-1]=Rt,de},de.sortValues=function(Rt){return pt=Rt,de},de.rollup=function(Rt){return vt=Rt,de},de},g.set=function(de){var Re=new z;if(de)for(var $e=0,pt=de.length;$e<pt;++$e)Re.add(de[$e]);return Re};function z(){this._=Object.create(null)}w(z,{has:u,add:function(de){return this._[b(de+="")]=!0,de},remove:y,values:f,size:P,empty:L,forEach:function(de){for(var Re in this._)de.call(this,d(Re))}}),g.behavior={};function F(de){return de}g.rebind=function(de,Re){for(var $e=1,pt=arguments.length,vt;++$e<pt;)de[vt=arguments[$e]]=B(de,Re,Re[vt]);return de};function B(de,Re,$e){return function(){var pt=$e.apply(Re,arguments);return pt===Re?de:pt}}function O(de,Re){if(Re in de)return Re;Re=Re.charAt(0).toUpperCase()+Re.slice(1);for(var $e=0,pt=I.length;$e<pt;++$e){var vt=I[$e]+Re;if(vt in de)return vt}}var I=["webkit","ms","moz","Moz","o","O"];function N(){}g.dispatch=function(){for(var de=new U,Re=-1,$e=arguments.length;++Re<$e;)de[arguments[Re]]=W(de);return de};function U(){}U.prototype.on=function(de,Re){var $e=de.indexOf("."),pt="";if($e>=0&&(pt=de.slice($e+1),de=de.slice(0,$e)),de)return arguments.length<2?this[de].on(pt):this[de].on(pt,Re);if(arguments.length===2){if(Re==null)for(de in this)this.hasOwnProperty(de)&&this[de].on(pt,null);return this}};function W(de){var Re=[],$e=new S;function pt(){for(var vt=Re,wt=-1,Jt=vt.length,Rt;++wt<Jt;)(Rt=vt[wt].on)&&Rt.apply(this,arguments);return de}return pt.on=function(vt,wt){var Jt=$e.get(vt),Rt;return arguments.length<2?Jt&&Jt.on:(Jt&&(Jt.on=null,Re=Re.slice(0,Rt=Re.indexOf(Jt)).concat(Re.slice(Rt+1)),$e.remove(vt)),wt&&Re.push($e.set(vt,{on:wt})),de)},pt}g.event=null;function Q(){g.event.preventDefault()}function ue(){for(var de=g.event,Re;Re=de.sourceEvent;)de=Re;return de}function se(de){for(var Re=new U,$e=0,pt=arguments.length;++$e<pt;)Re[arguments[$e]]=W(Re);return Re.of=function(vt,wt){return function(Jt){try{var Rt=Jt.sourceEvent=g.event;Jt.target=de,g.event=Jt,Re[Jt.type].apply(vt,wt)}finally{g.event=Rt}}},Re}g.requote=function(de){return de.replace(he,"\\$&")};var he=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,G={}.__proto__?function(de,Re){de.__proto__=Re}:function(de,Re){for(var $e in Re)de[$e]=Re[$e]};function $(de){return G(de,ne),de}var J=function(de,Re){return Re.querySelector(de)},Z=function(de,Re){return Re.querySelectorAll(de)},re=function(de,Re){var $e=de.matches||de[O(de,"matchesSelector")];return re=function(pt,vt){return $e.call(pt,vt)},re(de,Re)};typeof Sizzle=="function"&&(J=function(de,Re){return Sizzle(de,Re)[0]||null},Z=Sizzle,re=Sizzle.matchesSelector),g.selection=function(){return g.select(M.documentElement)};var ne=g.selection.prototype=[];ne.select=function(de){var Re=[],$e,pt,vt,wt;de=j(de);for(var Jt=-1,Rt=this.length;++Jt<Rt;){Re.push($e=[]),$e.parentNode=(vt=this[Jt]).parentNode;for(var or=-1,Dr=vt.length;++or<Dr;)(wt=vt[or])?($e.push(pt=de.call(wt,wt.__data__,or,Jt)),pt&&"__data__"in wt&&(pt.__data__=wt.__data__)):$e.push(null)}return $(Re)};function j(de){return typeof de=="function"?de:function(){return J(de,this)}}ne.selectAll=function(de){var Re=[],$e,pt;de=ee(de);for(var vt=-1,wt=this.length;++vt<wt;)for(var Jt=this[vt],Rt=-1,or=Jt.length;++Rt<or;)(pt=Jt[Rt])&&(Re.push($e=A(de.call(pt,pt.__data__,Rt,vt))),$e.parentNode=pt);return $(Re)};function ee(de){return typeof de=="function"?de:function(){return Z(de,this)}}var ie="http://www.w3.org/1999/xhtml",fe={svg:"http://www.w3.org/2000/svg",xhtml:ie,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};g.ns={prefix:fe,qualify:function(de){var Re=de.indexOf(":"),$e=de;return Re>=0&&($e=de.slice(0,Re))!=="xmlns"&&(de=de.slice(Re+1)),fe.hasOwnProperty($e)?{space:fe[$e],local:de}:de}},ne.attr=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node();return de=g.ns.qualify(de),de.local?$e.getAttributeNS(de.space,de.local):$e.getAttribute(de)}for(Re in de)this.each(be(Re,de[Re]));return this}return this.each(be(de,Re))};function be(de,Re){de=g.ns.qualify(de);function $e(){this.removeAttribute(de)}function pt(){this.removeAttributeNS(de.space,de.local)}function vt(){this.setAttribute(de,Re)}function wt(){this.setAttributeNS(de.space,de.local,Re)}function Jt(){var or=Re.apply(this,arguments);or==null?this.removeAttribute(de):this.setAttribute(de,or)}function Rt(){var or=Re.apply(this,arguments);or==null?this.removeAttributeNS(de.space,de.local):this.setAttributeNS(de.space,de.local,or)}return Re==null?de.local?pt:$e:typeof Re=="function"?de.local?Rt:Jt:de.local?wt:vt}function Ae(de){return de.trim().replace(/\s+/g," ")}ne.classed=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node(),pt=(de=Ie(de)).length,vt=-1;if(Re=$e.classList){for(;++vt<pt;)if(!Re.contains(de[vt]))return!1}else for(Re=$e.getAttribute("class");++vt<pt;)if(!Be(de[vt]).test(Re))return!1;return!0}for(Re in de)this.each(Ze(Re,de[Re]));return this}return this.each(Ze(de,Re))};function Be(de){return new RegExp("(?:^|\\s+)"+g.requote(de)+"(?:\\s+|$)","g")}function Ie(de){return(de+"").trim().split(/^|\s+/)}function Ze(de,Re){de=Ie(de).map(at);var $e=de.length;function pt(){for(var wt=-1;++wt<$e;)de[wt](this,Re)}function vt(){for(var wt=-1,Jt=Re.apply(this,arguments);++wt<$e;)de[wt](this,Jt)}return typeof Re=="function"?vt:pt}function at(de){var Re=Be(de);return function($e,pt){if(vt=$e.classList)return pt?vt.add(de):vt.remove(de);var vt=$e.getAttribute("class")||"";pt?(Re.lastIndex=0,Re.test(vt)||$e.setAttribute("class",Ae(vt+" "+de))):$e.setAttribute("class",Ae(vt.replace(Re," ")))}}ne.style=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re="");for($e in de)this.each(it($e,de[$e],Re));return this}if(pt<2){var vt=this.node();return t(vt).getComputedStyle(vt,null).getPropertyValue(de)}$e=""}return this.each(it(de,Re,$e))};function it(de,Re,$e){function pt(){this.style.removeProperty(de)}function vt(){this.style.setProperty(de,Re,$e)}function wt(){var Jt=Re.apply(this,arguments);Jt==null?this.style.removeProperty(de):this.style.setProperty(de,Jt,$e)}return Re==null?pt:typeof Re=="function"?wt:vt}ne.property=function(de,Re){if(arguments.length<2){if(typeof de=="string")return this.node()[de];for(Re in de)this.each(et(Re,de[Re]));return this}return this.each(et(de,Re))};function et(de,Re){function $e(){delete this[de]}function pt(){this[de]=Re}function vt(){var wt=Re.apply(this,arguments);wt==null?delete this[de]:this[de]=wt}return Re==null?$e:typeof Re=="function"?vt:pt}ne.text=function(de){return arguments.length?this.each(typeof de=="function"?function(){var Re=de.apply(this,arguments);this.textContent=Re??""}:de==null?function(){this.textContent=""}:function(){this.textContent=de}):this.node().textContent},ne.html=function(de){return arguments.length?this.each(typeof de=="function"?function(){var Re=de.apply(this,arguments);this.innerHTML=Re??""}:de==null?function(){this.innerHTML=""}:function(){this.innerHTML=de}):this.node().innerHTML},ne.append=function(de){return de=lt(de),this.select(function(){return this.appendChild(de.apply(this,arguments))})};function lt(de){function Re(){var pt=this.ownerDocument,vt=this.namespaceURI;return vt===ie&&pt.documentElement.namespaceURI===ie?pt.createElement(de):pt.createElementNS(vt,de)}function $e(){return this.ownerDocument.createElementNS(de.space,de.local)}return typeof de=="function"?de:(de=g.ns.qualify(de)).local?$e:Re}ne.insert=function(de,Re){return de=lt(de),Re=j(Re),this.select(function(){return this.insertBefore(de.apply(this,arguments),Re.apply(this,arguments)||null)})},ne.remove=function(){return this.each(Me)};function Me(){var de=this.parentNode;de&&de.removeChild(this)}ne.data=function(de,Re){var $e=-1,pt=this.length,vt,wt;if(!arguments.length){for(de=new Array(pt=(vt=this[0]).length);++$e<pt;)(wt=vt[$e])&&(de[$e]=wt.__data__);return de}function Jt(Or,va){var fa,Va=Or.length,Xa=va.length,_a=Math.min(Va,Xa),Ra=new Array(Xa),Na=new Array(Xa),Qa=new Array(Va),Ya,Da;if(Re){var zi=new S,Ni=new Array(Va),Qi;for(fa=-1;++fa<Va;)(Ya=Or[fa])&&(zi.has(Qi=Re.call(Ya,Ya.__data__,fa))?Qa[fa]=Ya:zi.set(Qi,Ya),Ni[fa]=Qi);for(fa=-1;++fa<Xa;)(Ya=zi.get(Qi=Re.call(va,Da=va[fa],fa)))?Ya!==!0&&(Ra[fa]=Ya,Ya.__data__=Da):Na[fa]=ge(Da),zi.set(Qi,!0);for(fa=-1;++fa<Va;)fa in Ni&&zi.get(Ni[fa])!==!0&&(Qa[fa]=Or[fa])}else{for(fa=-1;++fa<_a;)Ya=Or[fa],Da=va[fa],Ya?(Ya.__data__=Da,Ra[fa]=Ya):Na[fa]=ge(Da);for(;fa<Xa;++fa)Na[fa]=ge(va[fa]);for(;fa<Va;++fa)Qa[fa]=Or[fa]}Na.update=Ra,Na.parentNode=Ra.parentNode=Qa.parentNode=Or.parentNode,Rt.push(Na),or.push(Ra),Dr.push(Qa)}var Rt=nt([]),or=$([]),Dr=$([]);if(typeof de=="function")for(;++$e<pt;)Jt(vt=this[$e],de.call(vt,vt.parentNode.__data__,$e));else for(;++$e<pt;)Jt(vt=this[$e],de);return or.enter=function(){return Rt},or.exit=function(){return Dr},or};function ge(de){return{__data__:de}}ne.datum=function(de){return arguments.length?this.property("__data__",de):this.property("__data__")},ne.filter=function(de){var Re=[],$e,pt,vt;typeof de!="function"&&(de=ce(de));for(var wt=0,Jt=this.length;wt<Jt;wt++){Re.push($e=[]),$e.parentNode=(pt=this[wt]).parentNode;for(var Rt=0,or=pt.length;Rt<or;Rt++)(vt=pt[Rt])&&de.call(vt,vt.__data__,Rt,wt)&&$e.push(vt)}return $(Re)};function ce(de){return function(){return re(this,de)}}ne.order=function(){for(var de=-1,Re=this.length;++de<Re;)for(var $e=this[de],pt=$e.length-1,vt=$e[pt],wt;--pt>=0;)(wt=$e[pt])&&(vt&&vt!==wt.nextSibling&&vt.parentNode.insertBefore(wt,vt),vt=wt);return this},ne.sort=function(de){de=ze.apply(this,arguments);for(var Re=-1,$e=this.length;++Re<$e;)this[Re].sort(de);return this.order()};function ze(de){return arguments.length||(de=s),function(Re,$e){return Re&&$e?de(Re.__data__,$e.__data__):!Re-!$e}}ne.each=function(de){return tt(this,function(Re,$e,pt){de.call(Re,Re.__data__,$e,pt)})};function tt(de,Re){for(var $e=0,pt=de.length;$e<pt;$e++)for(var vt=de[$e],wt=0,Jt=vt.length,Rt;wt<Jt;wt++)(Rt=vt[wt])&&Re(Rt,wt,$e);return de}ne.call=function(de){var Re=A(arguments);return de.apply(Re[0]=this,Re),this},ne.empty=function(){return!this.node()},ne.node=function(){for(var de=0,Re=this.length;de<Re;de++)for(var $e=this[de],pt=0,vt=$e.length;pt<vt;pt++){var wt=$e[pt];if(wt)return wt}return null},ne.size=function(){var de=0;return tt(this,function(){++de}),de};function nt(de){return G(de,Qe),de}var Qe=[];g.selection.enter=nt,g.selection.enter.prototype=Qe,Qe.append=ne.append,Qe.empty=ne.empty,Qe.node=ne.node,Qe.call=ne.call,Qe.size=ne.size,Qe.select=function(de){for(var Re=[],$e,pt,vt,wt,Jt,Rt=-1,or=this.length;++Rt<or;){vt=(wt=this[Rt]).update,Re.push($e=[]),$e.parentNode=wt.parentNode;for(var Dr=-1,Or=wt.length;++Dr<Or;)(Jt=wt[Dr])?($e.push(vt[Dr]=pt=de.call(wt.parentNode,Jt.__data__,Dr,Rt)),pt.__data__=Jt.__data__):$e.push(null)}return $(Re)},Qe.insert=function(de,Re){return arguments.length<2&&(Re=Ct(this)),ne.insert.call(this,de,Re)};function Ct(de){var Re,$e;return function(pt,vt,wt){var Jt=de[wt].update,Rt=Jt.length,or;for(wt!=$e&&($e=wt,Re=0),vt>=Re&&(Re=vt+1);!(or=Jt[Re])&&++Re<Rt;);return or}}g.select=function(de){var Re;return typeof de=="string"?(Re=[J(de,M)],Re.parentNode=M.documentElement):(Re=[de],Re.parentNode=e(de)),$([Re])},g.selectAll=function(de){var Re;return typeof de=="string"?(Re=A(Z(de,M)),Re.parentNode=M.documentElement):(Re=A(de),Re.parentNode=null),$([Re])},ne.on=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re=!1);for($e in de)this.each(St($e,de[$e],Re));return this}if(pt<2)return(pt=this.node()["__on"+de])&&pt._;$e=!1}return this.each(St(de,Re,$e))};function St(de,Re,$e){var pt="__on"+de,vt=de.indexOf("."),wt=jt;vt>0&&(de=de.slice(0,vt));var Jt=Ot.get(de);Jt&&(de=Jt,wt=ur);function Rt(){var Or=this[pt];Or&&(this.removeEventListener(de,Or,Or.$),delete this[pt])}function or(){var Or=wt(Re,A(arguments));Rt.call(this),this.addEventListener(de,this[pt]=Or,Or.$=$e),Or._=Re}function Dr(){var Or=new RegExp("^__on([^.]+)"+g.requote(de)+"$"),va;for(var fa in this)if(va=fa.match(Or)){var Va=this[fa];this.removeEventListener(va[1],Va,Va.$),delete this[fa]}}return vt?Re?or:Rt:Re?N:Dr}var Ot=g.map({mouseenter:"mouseover",mouseleave:"mouseout"});M&&Ot.forEach(function(de){"on"+de in M&&Ot.remove(de)});function jt(de,Re){return function($e){var pt=g.event;g.event=$e,Re[0]=this.__data__;try{de.apply(this,Re)}finally{g.event=pt}}}function ur(de,Re){var $e=jt(de,Re);return function(pt){var vt=this,wt=pt.relatedTarget;(!wt||wt!==vt&&!(wt.compareDocumentPosition(vt)&8))&&$e.call(vt,pt)}}var ar,Cr=0;function vr(de){var Re=".dragsuppress-"+ ++Cr,$e="click"+Re,pt=g.select(t(de)).on("touchmove"+Re,Q).on("dragstart"+Re,Q).on("selectstart"+Re,Q);if(ar==null&&(ar="onselectstart"in de?!1:O(de.style,"userSelect")),ar){var vt=e(de).style,wt=vt[ar];vt[ar]="none"}return function(Jt){if(pt.on(Re,null),ar&&(vt[ar]=wt),Jt){var Rt=function(){pt.on($e,null)};pt.on($e,function(){Q(),Rt()},!0),setTimeout(Rt,0)}}}g.mouse=function(de){return yt(de,ue())};var _r=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function yt(de,Re){Re.changedTouches&&(Re=Re.changedTouches[0]);var $e=de.ownerSVGElement||de;if($e.createSVGPoint){var pt=$e.createSVGPoint();if(_r<0){var vt=t(de);if(vt.scrollX||vt.scrollY){$e=g.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var wt=$e[0][0].getScreenCTM();_r=!(wt.f||wt.e),$e.remove()}}return _r?(pt.x=Re.pageX,pt.y=Re.pageY):(pt.x=Re.clientX,pt.y=Re.clientY),pt=pt.matrixTransform(de.getScreenCTM().inverse()),[pt.x,pt.y]}var Jt=de.getBoundingClientRect();return[Re.clientX-Jt.left-de.clientLeft,Re.clientY-Jt.top-de.clientTop]}g.touch=function(de,Re,$e){if(arguments.length<3&&($e=Re,Re=ue().changedTouches),Re){for(var pt=0,vt=Re.length,wt;pt<vt;++pt)if((wt=Re[pt]).identifier===$e)return yt(de,wt)}},g.behavior.drag=function(){var de=se(vt,"drag","dragstart","dragend"),Re=null,$e=wt(N,g.mouse,t,"mousemove","mouseup"),pt=wt(Fe,g.touch,F,"touchmove","touchend");function vt(){this.on("mousedown.drag",$e).on("touchstart.drag",pt)}function wt(Jt,Rt,or,Dr,Or){return function(){var va=this,fa=g.event.target.correspondingElement||g.event.target,Va=va.parentNode,Xa=de.of(va,arguments),_a=0,Ra=Jt(),Na=".drag"+(Ra==null?"":"-"+Ra),Qa,Ya=g.select(or(fa)).on(Dr+Na,Ni).on(Or+Na,Qi),Da=vr(fa),zi=Rt(Va,Ra);Re?(Qa=Re.apply(va,arguments),Qa=[Qa.x-zi[0],Qa.y-zi[1]]):Qa=[0,0],Xa({type:"dragstart"});function Ni(){var hn=Rt(Va,Ra),Un,Vn;hn&&(Un=hn[0]-zi[0],Vn=hn[1]-zi[1],_a|=Un|Vn,zi=hn,Xa({type:"drag",x:hn[0]+Qa[0],y:hn[1]+Qa[1],dx:Un,dy:Vn}))}function Qi(){Rt(Va,Ra)&&(Ya.on(Dr+Na,null).on(Or+Na,null),Da(_a),Xa({type:"dragend"}))}}}return vt.origin=function(Jt){return arguments.length?(Re=Jt,vt):Re},g.rebind(vt,de,"on")};function Fe(){return g.event.changedTouches[0].identifier}g.touches=function(de,Re){return arguments.length<2&&(Re=ue().touches),Re?A(Re).map(function($e){var pt=yt(de,$e);return pt.identifier=$e.identifier,pt}):[]};var Ke=1e-6,Ne=Ke*Ke,Ee=Math.PI,Ve=2*Ee,ke=Ve-Ke,Te=Ee/2,Le=Ee/180,rt=180/Ee;function dt(de){return de>0?1:de<0?-1:0}function xt(de,Re,$e){return(Re[0]-de[0])*($e[1]-de[1])-(Re[1]-de[1])*($e[0]-de[0])}function It(de){return de>1?0:de<-1?Ee:Math.acos(de)}function Bt(de){return de>1?Te:de<-1?-Te:Math.asin(de)}function Gt(de){return((de=Math.exp(de))-1/de)/2}function Kt(de){return((de=Math.exp(de))+1/de)/2}function sr(de){return((de=Math.exp(2*de))-1)/(de+1)}function sa(de){return(de=Math.sin(de/2))*de}var Aa=Math.SQRT2,La=2,ka=4;g.interpolateZoom=function(de,Re){var $e=de[0],pt=de[1],vt=de[2],wt=Re[0],Jt=Re[1],Rt=Re[2],or=wt-$e,Dr=Jt-pt,Or=or*or+Dr*Dr,va,fa;if(Or<Ne)fa=Math.log(Rt/vt)/Aa,va=function(Qa){return[$e+Qa*or,pt+Qa*Dr,vt*Math.exp(Aa*Qa*fa)]};else{var Va=Math.sqrt(Or),Xa=(Rt*Rt-vt*vt+ka*Or)/(2*vt*La*Va),_a=(Rt*Rt-vt*vt-ka*Or)/(2*Rt*La*Va),Ra=Math.log(Math.sqrt(Xa*Xa+1)-Xa),Na=Math.log(Math.sqrt(_a*_a+1)-_a);fa=(Na-Ra)/Aa,va=function(Qa){var Ya=Qa*fa,Da=Kt(Ra),zi=vt/(La*Va)*(Da*sr(Aa*Ya+Ra)-Gt(Ra));return[$e+zi*or,pt+zi*Dr,vt*Da/Kt(Aa*Ya+Ra)]}}return va.duration=fa*1e3,va},g.behavior.zoom=function(){var de={x:0,y:0,k:1},Re,$e,pt,vt=[960,500],wt=Ga,Jt=250,Rt=0,or="mousedown.zoom",Dr="mousemove.zoom",Or="mouseup.zoom",va,fa="touchstart.zoom",Va,Xa=se(Ya,"zoomstart","zoom","zoomend"),_a,Ra,Na,Qa;Ua||(Ua="onwheel"in M?(Ma=function(){return-g.event.deltaY*(g.event.deltaMode?120:1)},"wheel"):"onmousewheel"in M?(Ma=function(){return g.event.wheelDelta},"mousewheel"):(Ma=function(){return-g.event.detail},"MozMousePixelScroll"));function Ya(Vi){Vi.on(or,Fo).on(Ua+".zoom",Gs).on("dblclick.zoom",sl).on(fa,Ks)}Ya.event=function(Vi){Vi.each(function(){var ao=Xa.of(this,arguments),ns=de;ls?g.select(this).transition().each("start.zoom",function(){de=this.__chart__||{x:0,y:0,k:1},Vn(ao)}).tween("zoom:zoom",function(){var hs=vt[0],hl=vt[1],Dl=$e?$e[0]:hs/2,hu=$e?$e[1]:hl/2,Ll=g.interpolateZoom([(Dl-de.x)/de.k,(hu-de.y)/de.k,hs/de.k],[(Dl-ns.x)/ns.k,(hu-ns.y)/ns.k,hs/ns.k]);return function(dc){var Qt=Ll(dc),ra=hs/Qt[2];this.__chart__=de={x:Dl-Qt[0]*ra,y:hu-Qt[1]*ra,k:ra},No(ao)}}).each("interrupt.zoom",function(){Gn(ao)}).each("end.zoom",function(){Gn(ao)}):(this.__chart__=de,Vn(ao),No(ao),Gn(ao))})},Ya.translate=function(Vi){return arguments.length?(de={x:+Vi[0],y:+Vi[1],k:de.k},Un(),Ya):[de.x,de.y]},Ya.scale=function(Vi){return arguments.length?(de={x:de.x,y:de.y,k:null},Ni(+Vi),Un(),Ya):de.k},Ya.scaleExtent=function(Vi){return arguments.length?(wt=Vi==null?Ga:[+Vi[0],+Vi[1]],Ya):wt},Ya.center=function(Vi){return arguments.length?(pt=Vi&&[+Vi[0],+Vi[1]],Ya):pt},Ya.size=function(Vi){return arguments.length?(vt=Vi&&[+Vi[0],+Vi[1]],Ya):vt},Ya.duration=function(Vi){return arguments.length?(Jt=+Vi,Ya):Jt},Ya.x=function(Vi){return arguments.length?(Ra=Vi,_a=Vi.copy(),de={x:0,y:0,k:1},Ya):Ra},Ya.y=function(Vi){return arguments.length?(Qa=Vi,Na=Vi.copy(),de={x:0,y:0,k:1},Ya):Qa};function Da(Vi){return[(Vi[0]-de.x)/de.k,(Vi[1]-de.y)/de.k]}function zi(Vi){return[Vi[0]*de.k+de.x,Vi[1]*de.k+de.y]}function Ni(Vi){de.k=Math.max(wt[0],Math.min(wt[1],Vi))}function Qi(Vi,ao){ao=zi(ao),de.x+=Vi[0]-ao[0],de.y+=Vi[1]-ao[1]}function hn(Vi,ao,ns,hs){Vi.__chart__={x:de.x,y:de.y,k:de.k},Ni(Math.pow(2,hs)),Qi($e=ao,ns),Vi=g.select(Vi),Jt>0&&(Vi=Vi.transition().duration(Jt)),Vi.call(Ya.event)}function Un(){Ra&&Ra.domain(_a.range().map(function(Vi){return(Vi-de.x)/de.k}).map(_a.invert)),Qa&&Qa.domain(Na.range().map(function(Vi){return(Vi-de.y)/de.k}).map(Na.invert))}function Vn(Vi){Rt++||Vi({type:"zoomstart"})}function No(Vi){Un(),Vi({type:"zoom",scale:de.k,translate:[de.x,de.y]})}function Gn(Vi){--Rt||(Vi({type:"zoomend"}),$e=null)}function Fo(){var Vi=this,ao=Xa.of(Vi,arguments),ns=0,hs=g.select(t(Vi)).on(Dr,hu).on(Or,Ll),hl=Da(g.mouse(Vi)),Dl=vr(Vi);Sn.call(Vi),Vn(ao);function hu(){ns=1,Qi(g.mouse(Vi),hl),No(ao)}function Ll(){hs.on(Dr,null).on(Or,null),Dl(ns),Gn(ao)}}function Ks(){var Vi=this,ao=Xa.of(Vi,arguments),ns={},hs=0,hl,Dl=".zoom-"+g.event.changedTouches[0].identifier,hu="touchmove"+Dl,Ll="touchend"+Dl,dc=[],Qt=g.select(Vi),ra=vr(Vi);si(),Vn(ao),Qt.on(or,null).on(fa,si);function Ta(){var bi=g.touches(Vi);return hl=de.k,bi.forEach(function(Fi){Fi.identifier in ns&&(ns[Fi.identifier]=Da(Fi))}),bi}function si(){var bi=g.event.target;g.select(bi).on(hu,wi).on(Ll,xi),dc.push(bi);for(var Fi=g.event.changedTouches,cn=0,fn=Fi.length;cn<fn;++cn)ns[Fi[cn].identifier]=null;var Gi=Ta(),Io=Date.now();if(Gi.length===1){if(Io-Va<500){var nn=Gi[0];hn(Vi,nn,ns[nn.identifier],Math.floor(Math.log(de.k)/Math.LN2)+1),Q()}Va=Io}else if(Gi.length>1){var nn=Gi[0],on=Gi[1],Oi=nn[0]-on[0],ui=nn[1]-on[1];hs=Oi*Oi+ui*ui}}function wi(){var bi=g.touches(Vi),Fi,cn,fn,Gi;Sn.call(Vi);for(var Io=0,nn=bi.length;Io<nn;++Io,Gi=null)if(fn=bi[Io],Gi=ns[fn.identifier]){if(cn)break;Fi=fn,cn=Gi}if(Gi){var on=(on=fn[0]-Fi[0])*on+(on=fn[1]-Fi[1])*on,Oi=hs&&Math.sqrt(on/hs);Fi=[(Fi[0]+fn[0])/2,(Fi[1]+fn[1])/2],cn=[(cn[0]+Gi[0])/2,(cn[1]+Gi[1])/2],Ni(Oi*hl)}Va=null,Qi(Fi,cn),No(ao)}function xi(){if(g.event.touches.length){for(var bi=g.event.changedTouches,Fi=0,cn=bi.length;Fi<cn;++Fi)delete ns[bi[Fi].identifier];for(var fn in ns)return void Ta()}g.selectAll(dc).on(Dl,null),Qt.on(or,Fo).on(fa,Ks),ra(),Gn(ao)}}function Gs(){var Vi=Xa.of(this,arguments);va?clearTimeout(va):(Sn.call(this),Re=Da($e=pt||g.mouse(this)),Vn(Vi)),va=setTimeout(function(){va=null,Gn(Vi)},50),Q(),Ni(Math.pow(2,Ma()*.002)*de.k),Qi($e,Re),No(Vi)}function sl(){var Vi=g.mouse(this),ao=Math.log(de.k)/Math.LN2;hn(this,Vi,Da(Vi),g.event.shiftKey?Math.ceil(ao)-1:Math.floor(ao)+1)}return g.rebind(Ya,Xa,"on")};var Ga=[0,1/0],Ma,Ua;g.color=ni;function ni(){}ni.prototype.toString=function(){return this.rgb()+""},g.hsl=Wt;function Wt(de,Re,$e){return this instanceof Wt?(this.h=+de,this.s=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Wt?new Wt(de.h,de.s,de.l):Jr(""+de,oa,Wt):new Wt(de,Re,$e)}var zt=Wt.prototype=new ni;zt.brighter=function(de){return de=Math.pow(.7,arguments.length?de:1),new Wt(this.h,this.s,this.l/de)},zt.darker=function(de){return de=Math.pow(.7,arguments.length?de:1),new Wt(this.h,this.s,de*this.l)},zt.rgb=function(){return Vt(this.h,this.s,this.l)};function Vt(de,Re,$e){var pt,vt;de=isNaN(de)?0:(de%=360)<0?de+360:de,Re=isNaN(Re)||Re<0?0:Re>1?1:Re,$e=$e<0?0:$e>1?1:$e,vt=$e<=.5?$e*(1+Re):$e+Re-$e*Re,pt=2*$e-vt;function wt(Rt){return Rt>360?Rt-=360:Rt<0&&(Rt+=360),Rt<60?pt+(vt-pt)*Rt/60:Rt<180?vt:Rt<240?pt+(vt-pt)*(240-Rt)/60:pt}function Jt(Rt){return Math.round(wt(Rt)*255)}return new br(Jt(de+120),Jt(de),Jt(de-120))}g.hcl=Ut;function Ut(de,Re,$e){return this instanceof Ut?(this.h=+de,this.c=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Ut?new Ut(de.h,de.c,de.l):de instanceof pa?mt(de.l,de.a,de.b):mt((de=ca((de=g.rgb(de)).r,de.g,de.b)).l,de.a,de.b):new Ut(de,Re,$e)}var xr=Ut.prototype=new ni;xr.brighter=function(de){return new Ut(this.h,this.c,Math.min(100,this.l+Xr*(arguments.length?de:1)))},xr.darker=function(de){return new Ut(this.h,this.c,Math.max(0,this.l-Xr*(arguments.length?de:1)))},xr.rgb=function(){return Zr(this.h,this.c,this.l).rgb()};function Zr(de,Re,$e){return isNaN(de)&&(de=0),isNaN(Re)&&(Re=0),new pa($e,Math.cos(de*=Le)*Re,Math.sin(de)*Re)}g.lab=pa;function pa(de,Re,$e){return this instanceof pa?(this.l=+de,this.a=+Re,void(this.b=+$e)):arguments.length<2?de instanceof pa?new pa(de.l,de.a,de.b):de instanceof Ut?Zr(de.h,de.c,de.l):ca((de=br(de)).r,de.g,de.b):new pa(de,Re,$e)}var Xr=18,Ea=.95047,Fa=1,qa=1.08883,ya=pa.prototype=new ni;ya.brighter=function(de){return new pa(Math.min(100,this.l+Xr*(arguments.length?de:1)),this.a,this.b)},ya.darker=function(de){return new pa(Math.max(0,this.l-Xr*(arguments.length?de:1)),this.a,this.b)},ya.rgb=function(){return $a(this.l,this.a,this.b)};function $a(de,Re,$e){var pt=(de+16)/116,vt=pt+Re/500,wt=pt-$e/200;return vt=gt(vt)*Ea,pt=gt(pt)*Fa,wt=gt(wt)*qa,new br(kr(3.2404542*vt-1.5371385*pt-.4985314*wt),kr(-.969266*vt+1.8760108*pt+.041556*wt),kr(.0556434*vt-.2040259*pt+1.0572252*wt))}function mt(de,Re,$e){return de>0?new Ut(Math.atan2($e,Re)*rt,Math.sqrt(Re*Re+$e*$e),de):new Ut(NaN,NaN,de)}function gt(de){return de>.206893034?de*de*de:(de-4/29)/7.787037}function Er(de){return de>.008856?Math.pow(de,1/3):7.787037*de+4/29}function kr(de){return Math.round(255*(de<=.00304?12.92*de:1.055*Math.pow(de,1/2.4)-.055))}g.rgb=br;function br(de,Re,$e){return this instanceof br?(this.r=~~de,this.g=~~Re,void(this.b=~~$e)):arguments.length<2?de instanceof br?new br(de.r,de.g,de.b):Jr(""+de,br,Vt):new br(de,Re,$e)}function Tr(de){return new br(de>>16,de>>8&255,de&255)}function Mr(de){return Tr(de)+""}var Fr=br.prototype=new ni;Fr.brighter=function(de){de=Math.pow(.7,arguments.length?de:1);var Re=this.r,$e=this.g,pt=this.b,vt=30;return!Re&&!$e&&!pt?new br(vt,vt,vt):(Re&&Re<vt&&(Re=vt),$e&&$e<vt&&($e=vt),pt&&pt<vt&&(pt=vt),new br(Math.min(255,Re/de),Math.min(255,$e/de),Math.min(255,pt/de)))},Fr.darker=function(de){return de=Math.pow(.7,arguments.length?de:1),new br(de*this.r,de*this.g,de*this.b)},Fr.hsl=function(){return oa(this.r,this.g,this.b)},Fr.toString=function(){return"#"+Lr(this.r)+Lr(this.g)+Lr(this.b)};function Lr(de){return de<16?"0"+Math.max(0,de).toString(16):Math.min(255,de).toString(16)}function Jr(de,Re,$e){var pt=0,vt=0,wt=0,Jt,Rt,or;if(Jt=/([a-z]+)\((.*)\)/.exec(de=de.toLowerCase()),Jt)switch(Rt=Jt[2].split(","),Jt[1]){case"hsl":return $e(parseFloat(Rt[0]),parseFloat(Rt[1])/100,parseFloat(Rt[2])/100);case"rgb":return Re(ir(Rt[0]),ir(Rt[1]),ir(Rt[2]))}return(or=mr.get(de))?Re(or.r,or.g,or.b):(de!=null&&de.charAt(0)==="#"&&!isNaN(or=parseInt(de.slice(1),16))&&(de.length===4?(pt=(or&3840)>>4,pt=pt>>4|pt,vt=or&240,vt=vt>>4|vt,wt=or&15,wt=wt<<4|wt):de.length===7&&(pt=(or&16711680)>>16,vt=(or&65280)>>8,wt=or&255)),Re(pt,vt,wt))}function oa(de,Re,$e){var pt=Math.min(de/=255,Re/=255,$e/=255),vt=Math.max(de,Re,$e),wt=vt-pt,Jt,Rt,or=(vt+pt)/2;return wt?(Rt=or<.5?wt/(vt+pt):wt/(2-vt-pt),de==vt?Jt=(Re-$e)/wt+(Re<$e?6:0):Re==vt?Jt=($e-de)/wt+2:Jt=(de-Re)/wt+4,Jt*=60):(Jt=NaN,Rt=or>0&&or<1?0:Jt),new Wt(Jt,Rt,or)}function ca(de,Re,$e){de=kt(de),Re=kt(Re),$e=kt($e);var pt=Er((.4124564*de+.3575761*Re+.1804375*$e)/Ea),vt=Er((.2126729*de+.7151522*Re+.072175*$e)/Fa),wt=Er((.0193339*de+.119192*Re+.9503041*$e)/qa);return pa(116*vt-16,500*(pt-vt),200*(vt-wt))}function kt(de){return(de/=255)<=.04045?de/12.92:Math.pow((de+.055)/1.055,2.4)}function ir(de){var Re=parseFloat(de);return de.charAt(de.length-1)==="%"?Math.round(Re*2.55):Re}var mr=g.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});mr.forEach(function(de,Re){mr.set(de,Tr(Re))});function $r(de){return typeof de=="function"?de:function(){return de}}g.functor=$r,g.xhr=ma(F);function ma(de){return function(Re,$e,pt){return arguments.length===2&&typeof $e=="function"&&(pt=$e,$e=null),Ba(Re,$e,de,pt)}}function Ba(de,Re,$e,pt){var vt={},wt=g.dispatch("beforesend","progress","load","error"),Jt={},Rt=new XMLHttpRequest,or=null;self.XDomainRequest&&!("withCredentials"in Rt)&&/^(http(s)?:)?\/\//.test(de)&&(Rt=new XDomainRequest),"onload"in Rt?Rt.onload=Rt.onerror=Dr:Rt.onreadystatechange=function(){Rt.readyState>3&&Dr()};function Dr(){var Or=Rt.status,va;if(!Or&&da(Rt)||Or>=200&&Or<300||Or===304){try{va=$e.call(vt,Rt)}catch(fa){wt.error.call(vt,fa);return}wt.load.call(vt,va)}else wt.error.call(vt,Rt)}return Rt.onprogress=function(Or){var va=g.event;g.event=Or;try{wt.progress.call(vt,Rt)}finally{g.event=va}},vt.header=function(Or,va){return Or=(Or+"").toLowerCase(),arguments.length<2?Jt[Or]:(va==null?delete Jt[Or]:Jt[Or]=va+"",vt)},vt.mimeType=function(Or){return arguments.length?(Re=Or==null?null:Or+"",vt):Re},vt.responseType=function(Or){return arguments.length?(or=Or,vt):or},vt.response=function(Or){return $e=Or,vt},["get","post"].forEach(function(Or){vt[Or]=function(){return vt.send.apply(vt,[Or].concat(A(arguments)))}}),vt.send=function(Or,va,fa){if(arguments.length===2&&typeof va=="function"&&(fa=va,va=null),Rt.open(Or,de,!0),Re!=null&&!("accept"in Jt)&&(Jt.accept=Re+",*/*"),Rt.setRequestHeader)for(var Va in Jt)Rt.setRequestHeader(Va,Jt[Va]);return Re!=null&&Rt.overrideMimeType&&Rt.overrideMimeType(Re),or!=null&&(Rt.responseType=or),fa!=null&&vt.on("error",fa).on("load",function(Xa){fa(null,Xa)}),wt.beforesend.call(vt,Rt),Rt.send(va??null),vt},vt.abort=function(){return Rt.abort(),vt},g.rebind(vt,wt,"on"),pt==null?vt:vt.get(Ca(pt))}function Ca(de){return de.length===1?function(Re,$e){de(Re==null?$e:null)}:de}function da(de){var Re=de.responseType;return Re&&Re!=="text"?de.response:de.responseText}g.dsv=function(de,Re){var $e=new RegExp('["'+de+`
+]`),pt=de.charCodeAt(0);function vt(Dr,Or,va){arguments.length<3&&(va=Or,Or=null);var fa=Ba(Dr,Re,Or==null?wt:Jt(Or),va);return fa.row=function(Va){return arguments.length?fa.response((Or=Va)==null?wt:Jt(Va)):Or},fa}function wt(Dr){return vt.parse(Dr.responseText)}function Jt(Dr){return function(Or){return vt.parse(Or.responseText,Dr)}}vt.parse=function(Dr,Or){var va;return vt.parseRows(Dr,function(fa,Va){if(va)return va(fa,Va-1);var Xa=function(_a){for(var Ra={},Na=fa.length,Qa=0;Qa<Na;++Qa)Ra[fa[Qa]]=_a[Qa];return Ra};va=Or?function(_a,Ra){return Or(Xa(_a),Ra)}:Xa})},vt.parseRows=function(Dr,Or){var va={},fa={},Va=[],Xa=Dr.length,_a=0,Ra=0,Na,Qa;function Ya(){if(_a>=Xa)return fa;if(Qa)return Qa=!1,va;var zi=_a;if(Dr.charCodeAt(zi)===34){for(var Ni=zi;Ni++<Xa;)if(Dr.charCodeAt(Ni)===34){if(Dr.charCodeAt(Ni+1)!==34)break;++Ni}_a=Ni+2;var Qi=Dr.charCodeAt(Ni+1);return Qi===13?(Qa=!0,Dr.charCodeAt(Ni+2)===10&&++_a):Qi===10&&(Qa=!0),Dr.slice(zi+1,Ni).replace(/""/g,'"')}for(;_a<Xa;){var Qi=Dr.charCodeAt(_a++),hn=1;if(Qi===10)Qa=!0;else if(Qi===13)Qa=!0,Dr.charCodeAt(_a)===10&&(++_a,++hn);else if(Qi!==pt)continue;return Dr.slice(zi,_a-hn)}return Dr.slice(zi)}for(;(Na=Ya())!==fa;){for(var Da=[];Na!==va&&Na!==fa;)Da.push(Na),Na=Ya();Or&&(Da=Or(Da,Ra++))==null||Va.push(Da)}return Va},vt.format=function(Dr){if(Array.isArray(Dr[0]))return vt.formatRows(Dr);var Or=new z,va=[];return Dr.forEach(function(fa){for(var Va in fa)Or.has(Va)||va.push(Or.add(Va))}),[va.map(or).join(de)].concat(Dr.map(function(fa){return va.map(function(Va){return or(fa[Va])}).join(de)})).join(`
+`)},vt.formatRows=function(Dr){return Dr.map(Rt).join(`
+`)};function Rt(Dr){return Dr.map(or).join(de)}function or(Dr){return $e.test(Dr)?'"'+Dr.replace(/\"/g,'""')+'"':Dr}return vt},g.csv=g.dsv(",","text/csv"),g.tsv=g.dsv(" ","text/tab-separated-values");var Sa,Ti,ai,an,sn=this[O(this,"requestAnimationFrame")]||function(de){setTimeout(de,17)};g.timer=function(){Mn.apply(this,arguments)};function Mn(de,Re,$e){var pt=arguments.length;pt<2&&(Re=0),pt<3&&($e=Date.now());var vt=$e+Re,wt={c:de,t:vt,n:null};return Ti?Ti.n=wt:Sa=wt,Ti=wt,ai||(an=clearTimeout(an),ai=1,sn(On)),wt}function On(){var de=$n(),Re=Cn()-de;Re>24?(isFinite(Re)&&(clearTimeout(an),an=setTimeout(On,Re)),ai=0):(ai=1,sn(On))}g.timer.flush=function(){$n(),Cn()};function $n(){for(var de=Date.now(),Re=Sa;Re;)de>=Re.t&&Re.c(de-Re.t)&&(Re.c=null),Re=Re.n;return de}function Cn(){for(var de,Re=Sa,$e=1/0;Re;)Re.c?(Re.t<$e&&($e=Re.t),Re=(de=Re).n):Re=de?de.n=Re.n:Sa=Re.n;return Ti=de,$e}g.round=function(de,Re){return Re?Math.round(de*(Re=Math.pow(10,Re)))/Re:Math.round(de)},g.geom={};function Lo(de){return de[0]}function Xi(de){return de[1]}g.geom.hull=function(de){var Re=Lo,$e=Xi;if(arguments.length)return pt(de);function pt(vt){if(vt.length<3)return[];var wt=$r(Re),Jt=$r($e),Rt,or=vt.length,Dr=[],Or=[];for(Rt=0;Rt<or;Rt++)Dr.push([+wt.call(this,vt[Rt],Rt),+Jt.call(this,vt[Rt],Rt),Rt]);for(Dr.sort(zo),Rt=0;Rt<or;Rt++)Or.push([Dr[Rt][0],-Dr[Rt][1]]);var va=Jo(Dr),fa=Jo(Or),Va=fa[0]===va[0],Xa=fa[fa.length-1]===va[va.length-1],_a=[];for(Rt=va.length-1;Rt>=0;--Rt)_a.push(vt[Dr[va[Rt]][2]]);for(Rt=+Va;Rt<fa.length-Xa;++Rt)_a.push(vt[Dr[fa[Rt]][2]]);return _a}return pt.x=function(vt){return arguments.length?(Re=vt,pt):Re},pt.y=function(vt){return arguments.length?($e=vt,pt):$e},pt};function Jo(de){for(var Re=de.length,$e=[0,1],pt=2,vt=2;vt<Re;vt++){for(;pt>1&&xt(de[$e[pt-2]],de[$e[pt-1]],de[vt])<=0;)--pt;$e[pt++]=vt}return $e.slice(0,pt)}function zo(de,Re){return de[0]-Re[0]||de[1]-Re[1]}g.geom.polygon=function(de){return G(de,as),de};var as=g.geom.polygon.prototype=[];as.area=function(){for(var de=-1,Re=this.length,$e,pt=this[Re-1],vt=0;++de<Re;)$e=pt,pt=this[de],vt+=$e[1]*pt[0]-$e[0]*pt[1];return vt*.5},as.centroid=function(de){var Re=-1,$e=this.length,pt=0,vt=0,wt,Jt=this[$e-1],Rt;for(arguments.length||(de=-1/(6*this.area()));++Re<$e;)wt=Jt,Jt=this[Re],Rt=wt[0]*Jt[1]-Jt[0]*wt[1],pt+=(wt[0]+Jt[0])*Rt,vt+=(wt[1]+Jt[1])*Rt;return[pt*de,vt*de]},as.clip=function(de){for(var Re,$e=In(de),pt=-1,vt=this.length-In(this),wt,Jt,Rt=this[vt-1],or,Dr,Or;++pt<vt;){for(Re=de.slice(),de.length=0,or=this[pt],Dr=Re[(Jt=Re.length-$e)-1],wt=-1;++wt<Jt;)Or=Re[wt],Pn(Or,Rt,or)?(Pn(Dr,Rt,or)||de.push(go(Dr,Or,Rt,or)),de.push(Or)):Pn(Dr,Rt,or)&&de.push(go(Dr,Or,Rt,or)),Dr=Or;$e&&de.push(de[0]),Rt=or}return de};function Pn(de,Re,$e){return($e[0]-Re[0])*(de[1]-Re[1])<($e[1]-Re[1])*(de[0]-Re[0])}function go(de,Re,$e,pt){var vt=de[0],wt=$e[0],Jt=Re[0]-vt,Rt=pt[0]-wt,or=de[1],Dr=$e[1],Or=Re[1]-or,va=pt[1]-Dr,fa=(Rt*(or-Dr)-va*(vt-wt))/(va*Jt-Rt*Or);return[vt+fa*Jt,or+fa*Or]}function In(de){var Re=de[0],$e=de[de.length-1];return!(Re[0]-$e[0]||Re[1]-$e[1])}var Do,Ho,Qo,Xn=[],po,ys,Is=[];function Fs(){qs(this),this.edge=this.site=this.circle=null}function $o(de){var Re=Xn.pop()||new Fs;return Re.site=de,Re}function fi(de){To(de),Qo.remove(de),Xn.push(de),qs(de)}function mn(de){var Re=de.circle,$e=Re.x,pt=Re.cy,vt={x:$e,y:pt},wt=de.P,Jt=de.N,Rt=[de];fi(de);for(var or=wt;or.circle&&l($e-or.circle.x)<Ke&&l(pt-or.circle.cy)<Ke;)wt=or.P,Rt.unshift(or),fi(or),or=wt;Rt.unshift(or),To(or);for(var Dr=Jt;Dr.circle&&l($e-Dr.circle.x)<Ke&&l(pt-Dr.circle.cy)<Ke;)Jt=Dr.N,Rt.push(Dr),fi(Dr),Dr=Jt;Rt.push(Dr),To(Dr);var Or=Rt.length,va;for(va=1;va<Or;++va)Dr=Rt[va],or=Rt[va-1],ml(Dr.edge,or.site,Dr.site,vt);or=Rt[0],Dr=Rt[Or-1],Dr.edge=Wl(or.site,Dr.site,null,vt),ji(or),ji(Dr)}function ol(de){for(var Re=de.x,$e=de.y,pt,vt,wt,Jt,Rt=Qo._;Rt;)if(wt=Os(Rt,$e)-Re,wt>Ke)Rt=Rt.L;else if(Jt=Re-so(Rt,$e),Jt>Ke){if(!Rt.R){pt=Rt;break}Rt=Rt.R}else{wt>-Ke?(pt=Rt.P,vt=Rt):Jt>-Ke?(pt=Rt,vt=Rt.N):pt=vt=Rt;break}var or=$o(de);if(Qo.insert(pt,or),!(!pt&&!vt)){if(pt===vt){To(pt),vt=$o(pt.site),Qo.insert(or,vt),or.edge=vt.edge=Wl(pt.site,or.site),ji(pt),ji(vt);return}if(!vt){or.edge=Wl(pt.site,or.site);return}To(pt),To(vt);var Dr=pt.site,Or=Dr.x,va=Dr.y,fa=de.x-Or,Va=de.y-va,Xa=vt.site,_a=Xa.x-Or,Ra=Xa.y-va,Na=2*(fa*Ra-Va*_a),Qa=fa*fa+Va*Va,Ya=_a*_a+Ra*Ra,Da={x:(Ra*Qa-Va*Ya)/Na+Or,y:(fa*Ya-_a*Qa)/Na+va};ml(vt.edge,Dr,Xa,Da),or.edge=Wl(Dr,de,null,Da),vt.edge=Wl(de,Xa,null,Da),ji(pt),ji(vt)}}function Os(de,Re){var $e=de.site,pt=$e.x,vt=$e.y,wt=vt-Re;if(!wt)return pt;var Jt=de.P;if(!Jt)return-1/0;$e=Jt.site;var Rt=$e.x,or=$e.y,Dr=or-Re;if(!Dr)return Rt;var Or=Rt-pt,va=1/wt-1/Dr,fa=Or/Dr;return va?(-fa+Math.sqrt(fa*fa-2*va*(Or*Or/(-2*Dr)-or+Dr/2+vt-wt/2)))/va+pt:(pt+Rt)/2}function so(de,Re){var $e=de.N;if($e)return Os($e,Re);var pt=de.site;return pt.y===Re?pt.x:1/0}function Ns(de){this.site=de,this.edges=[]}Ns.prototype.prepare=function(){for(var de=this.edges,Re=de.length,$e;Re--;)$e=de[Re].edge,(!$e.b||!$e.a)&&de.splice(Re,1);return de.sort(al),de.length};function fs(de){for(var Re=de[0][0],$e=de[1][0],pt=de[0][1],vt=de[1][1],wt,Jt,Rt,or,Dr=Ho,Or=Dr.length,va,fa,Va,Xa,_a,Ra;Or--;)if(va=Dr[Or],!(!va||!va.prepare()))for(Va=va.edges,Xa=Va.length,fa=0;fa<Xa;)Ra=Va[fa].end(),Rt=Ra.x,or=Ra.y,_a=Va[++fa%Xa].start(),wt=_a.x,Jt=_a.y,(l(Rt-wt)>Ke||l(or-Jt)>Ke)&&(Va.splice(fa,0,new Bu(Zu(va.site,Ra,l(Rt-Re)<Ke&&vt-or>Ke?{x:Re,y:l(wt-Re)<Ke?Jt:vt}:l(or-vt)<Ke&&$e-Rt>Ke?{x:l(Jt-vt)<Ke?wt:$e,y:vt}:l(Rt-$e)<Ke&&or-pt>Ke?{x:$e,y:l(wt-$e)<Ke?Jt:pt}:l(or-pt)<Ke&&Rt-Re>Ke?{x:l(Jt-pt)<Ke?wt:Re,y:pt}:null),va.site,null)),++Xa)}function al(de,Re){return Re.angle-de.angle}function vl(){qs(this),this.x=this.y=this.arc=this.site=this.cy=null}function ji(de){var Re=de.P,$e=de.N;if(!(!Re||!$e)){var pt=Re.site,vt=de.site,wt=$e.site;if(pt!==wt){var Jt=vt.x,Rt=vt.y,or=pt.x-Jt,Dr=pt.y-Rt,Or=wt.x-Jt,Ra=wt.y-Rt,va=2*(or*Ra-Dr*Or);if(!(va>=-Ne)){var fa=or*or+Dr*Dr,Va=Or*Or+Ra*Ra,Xa=(Ra*fa-Dr*Va)/va,_a=(or*Va-Or*fa)/va,Ra=_a+Rt,Na=Is.pop()||new vl;Na.arc=de,Na.site=vt,Na.x=Xa+Jt,Na.y=Ra+Math.sqrt(Xa*Xa+_a*_a),Na.cy=Ra,de.circle=Na;for(var Qa=null,Ya=ys._;Ya;)if(Na.y<Ya.y||Na.y===Ya.y&&Na.x<=Ya.x)if(Ya.L)Ya=Ya.L;else{Qa=Ya.P;break}else if(Ya.R)Ya=Ya.R;else{Qa=Ya;break}ys.insert(Qa,Na),Qa||(po=Na)}}}}function To(de){var Re=de.circle;Re&&(Re.P||(po=Re.N),ys.remove(Re),Is.push(Re),qs(Re),de.circle=null)}function Yn(de,Re,$e,pt){return function(vt){var wt=vt.a,Jt=vt.b,Rt=wt.x,or=wt.y,Dr=Jt.x,Or=Jt.y,va=0,fa=1,Va=Dr-Rt,Xa=Or-or,_a;if(_a=de-Rt,!(!Va&&_a>0)){if(_a/=Va,Va<0){if(_a<va)return;_a<fa&&(fa=_a)}else if(Va>0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=$e-Rt,!(!Va&&_a<0)){if(_a/=Va,Va<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Va>0){if(_a<va)return;_a<fa&&(fa=_a)}if(_a=Re-or,!(!Xa&&_a>0)){if(_a/=Xa,Xa<0){if(_a<va)return;_a<fa&&(fa=_a)}else if(Xa>0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=pt-or,!(!Xa&&_a<0)){if(_a/=Xa,Xa<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Xa>0){if(_a<va)return;_a<fa&&(fa=_a)}return va>0&&(vt.a={x:Rt+va*Va,y:or+va*Xa}),fa<1&&(vt.b={x:Rt+fa*Va,y:or+fa*Xa}),vt}}}}}}function _s(de){for(var Re=Do,$e=Yn(de[0][0],de[0][1],de[1][0],de[1][1]),pt=Re.length,vt;pt--;)vt=Re[pt],(!Yo(vt,de)||!$e(vt)||l(vt.a.x-vt.b.x)<Ke&&l(vt.a.y-vt.b.y)<Ke)&&(vt.a=vt.b=null,Re.splice(pt,1))}function Yo(de,Re){var $e=de.b;if($e)return!0;var pt=de.a,vt=Re[0][0],wt=Re[1][0],Jt=Re[0][1],Rt=Re[1][1],or=de.l,Dr=de.r,Or=or.x,va=or.y,fa=Dr.x,Va=Dr.y,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra,Na;if(Va===va){if(Xa<vt||Xa>=wt)return;if(Or>fa){if(!pt)pt={x:Xa,y:Jt};else if(pt.y>=Rt)return;$e={x:Xa,y:Rt}}else{if(!pt)pt={x:Xa,y:Rt};else if(pt.y<Jt)return;$e={x:Xa,y:Jt}}}else if(Ra=(Or-fa)/(Va-va),Na=_a-Ra*Xa,Ra<-1||Ra>1)if(Or>fa){if(!pt)pt={x:(Jt-Na)/Ra,y:Jt};else if(pt.y>=Rt)return;$e={x:(Rt-Na)/Ra,y:Rt}}else{if(!pt)pt={x:(Rt-Na)/Ra,y:Rt};else if(pt.y<Jt)return;$e={x:(Jt-Na)/Ra,y:Jt}}else if(va<Va){if(!pt)pt={x:vt,y:Ra*vt+Na};else if(pt.x>=wt)return;$e={x:wt,y:Ra*wt+Na}}else{if(!pt)pt={x:wt,y:Ra*wt+Na};else if(pt.x<vt)return;$e={x:vt,y:Ra*vt+Na}}return de.a=pt,de.b=$e,!0}function Nn(de,Re){this.l=de,this.r=Re,this.a=this.b=null}function Wl(de,Re,$e,pt){var vt=new Nn(de,Re);return Do.push(vt),$e&&ml(vt,de,Re,$e),pt&&ml(vt,Re,de,pt),Ho[de.i].edges.push(new Bu(vt,de,Re)),Ho[Re.i].edges.push(new Bu(vt,Re,de)),vt}function Zu(de,Re,$e){var pt=new Nn(de,null);return pt.a=Re,pt.b=$e,Do.push(pt),pt}function ml(de,Re,$e,pt){!de.a&&!de.b?(de.a=pt,de.l=Re,de.r=$e):de.l===$e?de.b=pt:de.a=pt}function Bu(de,Re,$e){var pt=de.a,vt=de.b;this.edge=de,this.site=Re,this.angle=$e?Math.atan2($e.y-Re.y,$e.x-Re.x):de.l===Re?Math.atan2(vt.x-pt.x,pt.y-vt.y):Math.atan2(pt.x-vt.x,vt.y-pt.y)}Bu.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}};function El(){this._=null}function qs(de){de.U=de.C=de.L=de.R=de.P=de.N=null}El.prototype={insert:function(de,Re){var $e,pt,vt;if(de){if(Re.P=de,Re.N=de.N,de.N&&(de.N.P=Re),de.N=Re,de.R){for(de=de.R;de.L;)de=de.L;de.L=Re}else de.R=Re;$e=de}else this._?(de=Ic(this._),Re.P=null,Re.N=de,de.P=de.L=Re,$e=de):(Re.P=Re.N=null,this._=Re,$e=null);for(Re.L=Re.R=null,Re.U=$e,Re.C=!0,de=Re;$e&&$e.C;)pt=$e.U,$e===pt.L?(vt=pt.R,vt&&vt.C?($e.C=vt.C=!1,pt.C=!0,de=pt):(de===$e.R&&(Jl(this,$e),de=$e,$e=de.U),$e.C=!1,pt.C=!0,Nu(this,pt))):(vt=pt.L,vt&&vt.C?($e.C=vt.C=!1,pt.C=!0,de=pt):(de===$e.L&&(Nu(this,$e),de=$e,$e=de.U),$e.C=!1,pt.C=!0,Jl(this,pt))),$e=de.U;this._.C=!1},remove:function(de){de.N&&(de.N.P=de.P),de.P&&(de.P.N=de.N),de.N=de.P=null;var Re=de.U,$e,pt=de.L,vt=de.R,wt,Jt;if(pt?vt?wt=Ic(vt):wt=pt:wt=vt,Re?Re.L===de?Re.L=wt:Re.R=wt:this._=wt,pt&&vt?(Jt=wt.C,wt.C=de.C,wt.L=pt,pt.U=wt,wt!==vt?(Re=wt.U,wt.U=de.U,de=wt.R,Re.L=de,wt.R=vt,vt.U=wt):(wt.U=Re,Re=wt,de=wt.R)):(Jt=de.C,de=wt),de&&(de.U=Re),!Jt){if(de&&de.C){de.C=!1;return}do{if(de===this._)break;if(de===Re.L){if($e=Re.R,$e.C&&($e.C=!1,Re.C=!0,Jl(this,Re),$e=Re.R),$e.L&&$e.L.C||$e.R&&$e.R.C){(!$e.R||!$e.R.C)&&($e.L.C=!1,$e.C=!0,Nu(this,$e),$e=Re.R),$e.C=Re.C,Re.C=$e.R.C=!1,Jl(this,Re),de=this._;break}}else if($e=Re.L,$e.C&&($e.C=!1,Re.C=!0,Nu(this,Re),$e=Re.L),$e.L&&$e.L.C||$e.R&&$e.R.C){(!$e.L||!$e.L.C)&&($e.R.C=!1,$e.C=!0,Jl(this,$e),$e=Re.L),$e.C=Re.C,Re.C=$e.L.C=!1,Nu(this,Re),de=this._;break}$e.C=!0,de=Re,Re=Re.U}while(!de.C);de&&(de.C=!1)}}};function Jl(de,Re){var $e=Re,pt=Re.R,vt=$e.U;vt?vt.L===$e?vt.L=pt:vt.R=pt:de._=pt,pt.U=vt,$e.U=pt,$e.R=pt.L,$e.R&&($e.R.U=$e),pt.L=$e}function Nu(de,Re){var $e=Re,pt=Re.L,vt=$e.U;vt?vt.L===$e?vt.L=pt:vt.R=pt:de._=pt,pt.U=vt,$e.U=pt,$e.L=pt.R,$e.L&&($e.L.U=$e),pt.R=$e}function Ic(de){for(;de.L;)de=de.L;return de}function Xu(de,Re){var $e=de.sort(Th).pop(),pt,vt,wt;for(Do=[],Ho=new Array(de.length),Qo=new El,ys=new El;;)if(wt=po,$e&&(!wt||$e.y<wt.y||$e.y===wt.y&&$e.x<wt.x))($e.x!==pt||$e.y!==vt)&&(Ho[$e.i]=new Ns($e),ol($e),pt=$e.x,vt=$e.y),$e=de.pop();else if(wt)mn(wt.arc);else break;Re&&(_s(Re),fs(Re));var Jt={cells:Ho,edges:Do};return Qo=ys=Do=Ho=null,Jt}function Th(de,Re){return Re.y-de.y||Re.x-de.x}g.geom.voronoi=function(de){var Re=Lo,$e=Xi,pt=Re,vt=$e,wt=bf;if(de)return Jt(de);function Jt(or){var Dr=new Array(or.length),Or=wt[0][0],va=wt[0][1],fa=wt[1][0],Va=wt[1][1];return Xu(Rt(or),wt).cells.forEach(function(Xa,_a){var Ra=Xa.edges,Na=Xa.site,Qa=Dr[_a]=Ra.length?Ra.map(function(Ya){var Da=Ya.start();return[Da.x,Da.y]}):Na.x>=Or&&Na.x<=fa&&Na.y>=va&&Na.y<=Va?[[Or,Va],[fa,Va],[fa,va],[Or,va]]:[];Qa.point=or[_a]}),Dr}function Rt(or){return or.map(function(Dr,Or){return{x:Math.round(pt(Dr,Or)/Ke)*Ke,y:Math.round(vt(Dr,Or)/Ke)*Ke,i:Or}})}return Jt.links=function(or){return Xu(Rt(or)).edges.filter(function(Dr){return Dr.l&&Dr.r}).map(function(Dr){return{source:or[Dr.l.i],target:or[Dr.r.i]}})},Jt.triangles=function(or){var Dr=[];return Xu(Rt(or)).cells.forEach(function(Or,va){for(var fa=Or.site,Va=Or.edges.sort(al),Xa=-1,_a=Va.length,Ra,Na,Qa=Va[_a-1].edge,Ya=Qa.l===fa?Qa.r:Qa.l;++Xa<_a;)Ra=Qa,Na=Ya,Qa=Va[Xa].edge,Ya=Qa.l===fa?Qa.r:Qa.l,va<Na.i&&va<Ya.i&&Rs(fa,Na,Ya)<0&&Dr.push([or[va],or[Na.i],or[Ya.i]])}),Dr},Jt.x=function(or){return arguments.length?(pt=$r(Re=or),Jt):Re},Jt.y=function(or){return arguments.length?(vt=$r($e=or),Jt):$e},Jt.clipExtent=function(or){return arguments.length?(wt=or??bf,Jt):wt===bf?null:wt},Jt.size=function(or){return arguments.length?Jt.clipExtent(or&&[[0,0],or]):wt===bf?null:wt&&wt[1]},Jt};var bf=[[-1e6,-1e6],[1e6,1e6]];function Rs(de,Re,$e){return(de.x-$e.x)*(Re.y-de.y)-(de.x-Re.x)*($e.y-de.y)}g.geom.delaunay=function(de){return g.geom.voronoi().triangles(de)},g.geom.quadtree=function(de,Re,$e,pt,vt){var wt=Lo,Jt=Xi,Rt;if(Rt=arguments.length)return wt=Yc,Jt=If,Rt===3&&(vt=$e,pt=Re,$e=Re=0),or(de);function or(Dr){var Or,va=$r(wt),fa=$r(Jt),Va,Xa,_a,Ra,Na,Qa,Ya,Da;if(Re!=null)Na=Re,Qa=$e,Ya=pt,Da=vt;else if(Ya=Da=-(Na=Qa=1/0),Va=[],Xa=[],Ra=Dr.length,Rt)for(_a=0;_a<Ra;++_a)Or=Dr[_a],Or.x<Na&&(Na=Or.x),Or.y<Qa&&(Qa=Or.y),Or.x>Ya&&(Ya=Or.x),Or.y>Da&&(Da=Or.y),Va.push(Or.x),Xa.push(Or.y);else for(_a=0;_a<Ra;++_a){var zi=+va(Or=Dr[_a],_a),Ni=+fa(Or,_a);zi<Na&&(Na=zi),Ni<Qa&&(Qa=Ni),zi>Ya&&(Ya=zi),Ni>Da&&(Da=Ni),Va.push(zi),Xa.push(Ni)}var Qi=Ya-Na,hn=Da-Qa;Qi>hn?Da=Qa+Qi:Ya=Na+hn;function Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){if(!(isNaN(Ks)||isNaN(Gs)))if(Gn.leaf){var hs=Gn.x,hl=Gn.y;if(hs!=null)if(l(hs-Ks)+l(hl-Gs)<.01)Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns);else{var Dl=Gn.point;Gn.x=Gn.y=Gn.point=null,Vn(Gn,Dl,hs,hl,sl,Vi,ao,ns),Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}else Gn.x=Ks,Gn.y=Gs,Gn.point=Fo}else Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}function Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){var hs=(sl+ao)*.5,hl=(Vi+ns)*.5,Dl=Ks>=hs,hu=Gs>=hl,Ll=hu<<1|Dl;Gn.leaf=!1,Gn=Gn.nodes[Ll]||(Gn.nodes[Ll]=Zl()),Dl?sl=hs:ao=hs,hu?Vi=hl:ns=hl,Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}var No=Zl();if(No.add=function(Gn){Un(No,Gn,+va(Gn,++_a),+fa(Gn,_a),Na,Qa,Ya,Da)},No.visit=function(Gn){yl(Gn,No,Na,Qa,Ya,Da)},No.find=function(Gn){return oc(No,Gn[0],Gn[1],Na,Qa,Ya,Da)},_a=-1,Re==null){for(;++_a<Ra;)Un(No,Dr[_a],Va[_a],Xa[_a],Na,Qa,Ya,Da);--_a}else Dr.forEach(No.add);return Va=Xa=Dr=Or=null,No}return or.x=function(Dr){return arguments.length?(wt=Dr,or):wt},or.y=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.extent=function(Dr){return arguments.length?(Dr==null?Re=$e=pt=vt=null:(Re=+Dr[0][0],$e=+Dr[0][1],pt=+Dr[1][0],vt=+Dr[1][1]),or):Re==null?null:[[Re,$e],[pt,vt]]},or.size=function(Dr){return arguments.length?(Dr==null?Re=$e=pt=vt=null:(Re=$e=0,pt=+Dr[0],vt=+Dr[1]),or):Re==null?null:[pt-Re,vt-$e]},or};function Yc(de){return de.x}function If(de){return de.y}function Zl(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function yl(de,Re,$e,pt,vt,wt){if(!de(Re,$e,pt,vt,wt)){var Jt=($e+vt)*.5,Rt=(pt+wt)*.5,or=Re.nodes;or[0]&&yl(de,or[0],$e,pt,Jt,Rt),or[1]&&yl(de,or[1],Jt,pt,vt,Rt),or[2]&&yl(de,or[2],$e,Rt,Jt,wt),or[3]&&yl(de,or[3],Jt,Rt,vt,wt)}}function oc(de,Re,$e,pt,vt,wt,Jt){var Rt=1/0,or;return function Dr(Or,va,fa,Va,Xa){if(!(va>wt||fa>Jt||Va<pt||Xa<vt)){if(_a=Or.point){var _a,Ra=Re-Or.x,Na=$e-Or.y,Qa=Ra*Ra+Na*Na;if(Qa<Rt){var Ya=Math.sqrt(Rt=Qa);pt=Re-Ya,vt=$e-Ya,wt=Re+Ya,Jt=$e+Ya,or=_a}}for(var Da=Or.nodes,zi=(va+Va)*.5,Ni=(fa+Xa)*.5,Qi=Re>=zi,hn=$e>=Ni,Un=hn<<1|Qi,Vn=Un+4;Un<Vn;++Un)if(Or=Da[Un&3])switch(Un&3){case 0:Dr(Or,va,fa,zi,Ni);break;case 1:Dr(Or,zi,fa,Va,Ni);break;case 2:Dr(Or,va,Ni,zi,Xa);break;case 3:Dr(Or,zi,Ni,Va,Xa);break}}}(de,pt,vt,wt,Jt),or}g.interpolateRgb=_c;function _c(de,Re){de=g.rgb(de),Re=g.rgb(Re);var $e=de.r,pt=de.g,vt=de.b,wt=Re.r-$e,Jt=Re.g-pt,Rt=Re.b-vt;return function(or){return"#"+Lr(Math.round($e+wt*or))+Lr(Math.round(pt+Jt*or))+Lr(Math.round(vt+Rt*or))}}g.interpolateObject=Zs;function Zs(de,Re){var $e={},pt={},vt;for(vt in de)vt in Re?$e[vt]=zl(de[vt],Re[vt]):pt[vt]=de[vt];for(vt in Re)vt in de||(pt[vt]=Re[vt]);return function(wt){for(vt in $e)pt[vt]=$e[vt](wt);return pt}}g.interpolateNumber=_l;function _l(de,Re){return de=+de,Re=+Re,function($e){return de*(1-$e)+Re*$e}}g.interpolateString=Bs;function Bs(de,Re){var $e=$s.lastIndex=sc.lastIndex=0,pt,vt,wt,Jt=-1,Rt=[],or=[];for(de=de+"",Re=Re+"";(pt=$s.exec(de))&&(vt=sc.exec(Re));)(wt=vt.index)>$e&&(wt=Re.slice($e,wt),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),(pt=pt[0])===(vt=vt[0])?Rt[Jt]?Rt[Jt]+=vt:Rt[++Jt]=vt:(Rt[++Jt]=null,or.push({i:Jt,x:_l(pt,vt)})),$e=sc.lastIndex;return $e<Re.length&&(wt=Re.slice($e),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),Rt.length<2?or[0]?(Re=or[0].x,function(Dr){return Re(Dr)+""}):function(){return Re}:(Re=or.length,function(Dr){for(var Or=0,va;Or<Re;++Or)Rt[(va=or[Or]).i]=va.x(Dr);return Rt.join("")})}var $s=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,sc=new RegExp($s.source,"g");g.interpolate=zl;function zl(de,Re){for(var $e=g.interpolators.length,pt;--$e>=0&&!(pt=g.interpolators[$e](de,Re)););return pt}g.interpolators=[function(de,Re){var $e=typeof Re;return($e==="string"?mr.has(Re.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(Re)?_c:Bs:Re instanceof ni?_c:Array.isArray(Re)?Yu:$e==="object"&&isNaN(Re)?Zs:_l)(de,Re)}],g.interpolateArray=Yu;function Yu(de,Re){var $e=[],pt=[],vt=de.length,wt=Re.length,Jt=Math.min(de.length,Re.length),Rt;for(Rt=0;Rt<Jt;++Rt)$e.push(zl(de[Rt],Re[Rt]));for(;Rt<vt;++Rt)pt[Rt]=de[Rt];for(;Rt<wt;++Rt)pt[Rt]=Re[Rt];return function(or){for(Rt=0;Rt<Jt;++Rt)pt[Rt]=$e[Rt](or);return pt}}var Qs=function(){return F},fp=g.map({linear:Qs,poly:Zf,quad:function(){return hf},cubic:function(){return Ku},sin:function(){return Rc},exp:function(){return pf},circle:function(){return Fl},elastic:lh,back:Xf,bounce:function(){return Rf}}),es=g.map({in:F,out:Ss,"in-out":So,"out-in":function(de){return So(Ss(de))}});g.ease=function(de){var Re=de.indexOf("-"),$e=Re>=0?de.slice(0,Re):de,pt=Re>=0?de.slice(Re+1):"in";return $e=fp.get($e)||Qs,pt=es.get(pt)||F,Wh(pt($e.apply(null,x.call(arguments,1))))};function Wh(de){return function(Re){return Re<=0?0:Re>=1?1:de(Re)}}function Ss(de){return function(Re){return 1-de(1-Re)}}function So(de){return function(Re){return .5*(Re<.5?de(2*Re):2-de(2-2*Re))}}function hf(de){return de*de}function Ku(de){return de*de*de}function cu(de){if(de<=0)return 0;if(de>=1)return 1;var Re=de*de,$e=Re*de;return 4*(de<.5?$e:3*(de-Re)+$e-.75)}function Zf(de){return function(Re){return Math.pow(Re,de)}}function Rc(de){return 1-Math.cos(de*Te)}function pf(de){return Math.pow(2,10*(de-1))}function Fl(de){return 1-Math.sqrt(1-de*de)}function lh(de,Re){var $e;return arguments.length<2&&(Re=.45),arguments.length?$e=Re/Ve*Math.asin(1/de):(de=1,$e=Re/4),function(pt){return 1+de*Math.pow(2,-10*pt)*Math.sin((pt-$e)*Ve/Re)}}function Xf(de){return de||(de=1.70158),function(Re){return Re*Re*((de+1)*Re-de)}}function Rf(de){return de<1/2.75?7.5625*de*de:de<2/2.75?7.5625*(de-=1.5/2.75)*de+.75:de<2.5/2.75?7.5625*(de-=2.25/2.75)*de+.9375:7.5625*(de-=2.625/2.75)*de+.984375}g.interpolateHcl=Kc;function Kc(de,Re){de=g.hcl(de),Re=g.hcl(Re);var $e=de.h,pt=de.c,vt=de.l,wt=Re.h-$e,Jt=Re.c-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.c:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Zr($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateHsl=Yf;function Yf(de,Re){de=g.hsl(de),Re=g.hsl(Re);var $e=de.h,pt=de.s,vt=de.l,wt=Re.h-$e,Jt=Re.s-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.s:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Vt($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateLab=uh;function uh(de,Re){de=g.lab(de),Re=g.lab(Re);var $e=de.l,pt=de.a,vt=de.b,wt=Re.l-$e,Jt=Re.a-pt,Rt=Re.b-vt;return function(or){return $a($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateRound=Ju;function Ju(de,Re){return Re-=de,function($e){return Math.round(de+Re*$e)}}g.transform=function(de){var Re=M.createElementNS(g.ns.prefix.svg,"g");return(g.transform=function($e){if($e!=null){Re.setAttribute("transform",$e);var pt=Re.transform.baseVal.consolidate()}return new Df(pt?pt.matrix:wf)})(de)};function Df(de){var Re=[de.a,de.b],$e=[de.c,de.d],pt=Jc(Re),vt=Dc(Re,$e),wt=Jc(Eu($e,Re,-vt))||0;Re[0]*$e[1]<$e[0]*Re[1]&&(Re[0]*=-1,Re[1]*=-1,pt*=-1,vt*=-1),this.rotate=(pt?Math.atan2(Re[1],Re[0]):Math.atan2(-$e[0],$e[1]))*rt,this.translate=[de.e,de.f],this.scale=[pt,wt],this.skew=wt?Math.atan2(vt,wt)*rt:0}Df.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};function Dc(de,Re){return de[0]*Re[0]+de[1]*Re[1]}function Jc(de){var Re=Math.sqrt(Dc(de,de));return Re&&(de[0]/=Re,de[1]/=Re),Re}function Eu(de,Re,$e){return de[0]+=$e*Re[0],de[1]+=$e*Re[1],de}var wf={a:1,b:0,c:0,d:1,e:0,f:0};g.interpolateTransform=df;function zc(de){return de.length?de.pop()+",":""}function Us(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push("translate(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]||Re[1])&&$e.push("translate("+Re+")")}function Kf(de,Re,$e,pt){de!==Re?(de-Re>180?Re+=360:Re-de>180&&(de+=360),pt.push({i:$e.push(zc($e)+"rotate(",null,")")-2,x:_l(de,Re)})):Re&&$e.push(zc($e)+"rotate("+Re+")")}function Zh(de,Re,$e,pt){de!==Re?pt.push({i:$e.push(zc($e)+"skewX(",null,")")-2,x:_l(de,Re)}):Re&&$e.push(zc($e)+"skewX("+Re+")")}function ch(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push(zc($e)+"scale(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]!==1||Re[1]!==1)&&$e.push(zc($e)+"scale("+Re+")")}function df(de,Re){var $e=[],pt=[];return de=g.transform(de),Re=g.transform(Re),Us(de.translate,Re.translate,$e,pt),Kf(de.rotate,Re.rotate,$e,pt),Zh(de.skew,Re.skew,$e,pt),ch(de.scale,Re.scale,$e,pt),de=Re=null,function(vt){for(var wt=-1,Jt=pt.length,Rt;++wt<Jt;)$e[(Rt=pt[wt]).i]=Rt.x(vt);return $e.join("")}}function Ah(de,Re){return Re=(Re-=de=+de)||1/Re,function($e){return($e-de)/Re}}function ku(de,Re){return Re=(Re-=de=+de)||1/Re,function($e){return Math.max(0,Math.min(1,($e-de)/Re))}}g.layout={},g.layout.bundle=function(){return function(de){for(var Re=[],$e=-1,pt=de.length;++$e<pt;)Re.push(fh(de[$e]));return Re}};function fh(de){for(var Re=de.source,$e=de.target,pt=Cu(Re,$e),vt=[Re];Re!==pt;)Re=Re.parent,vt.push(Re);for(var wt=vt.length;$e!==pt;)vt.splice(wt,0,$e),$e=$e.parent;return vt}function ru(de){for(var Re=[],$e=de.parent;$e!=null;)Re.push(de),de=$e,$e=$e.parent;return Re.push(de),Re}function Cu(de,Re){if(de===Re)return de;for(var $e=ru(de),pt=ru(Re),vt=$e.pop(),wt=pt.pop(),Jt=null;vt===wt;)Jt=vt,vt=$e.pop(),wt=pt.pop();return Jt}g.layout.chord=function(){var de={},Re,$e,pt,vt,wt=0,Jt,Rt,or;function Dr(){var va={},fa=[],Va=g.range(vt),Xa=[],_a,Ra,Na,Qa,Ya;for(Re=[],$e=[],_a=0,Qa=-1;++Qa<vt;){for(Ra=0,Ya=-1;++Ya<vt;)Ra+=pt[Qa][Ya];fa.push(Ra),Xa.push(g.range(vt)),_a+=Ra}for(Jt&&Va.sort(function(No,Gn){return Jt(fa[No],fa[Gn])}),Rt&&Xa.forEach(function(No,Gn){No.sort(function(Fo,Ks){return Rt(pt[Gn][Fo],pt[Gn][Ks])})}),_a=(Ve-wt*vt)/_a,Ra=0,Qa=-1;++Qa<vt;){for(Na=Ra,Ya=-1;++Ya<vt;){var Da=Va[Qa],zi=Xa[Da][Ya],Ni=pt[Da][zi],Qi=Ra,hn=Ra+=Ni*_a;va[Da+"-"+zi]={index:Da,subindex:zi,startAngle:Qi,endAngle:hn,value:Ni}}$e[Da]={index:Da,startAngle:Na,endAngle:Ra,value:fa[Da]},Ra+=wt}for(Qa=-1;++Qa<vt;)for(Ya=Qa-1;++Ya<vt;){var Un=va[Qa+"-"+Ya],Vn=va[Ya+"-"+Qa];(Un.value||Vn.value)&&Re.push(Un.value<Vn.value?{source:Vn,target:Un}:{source:Un,target:Vn})}or&&Or()}function Or(){Re.sort(function(va,fa){return or((va.source.value+va.target.value)/2,(fa.source.value+fa.target.value)/2)})}return de.matrix=function(va){return arguments.length?(vt=(pt=va)&&pt.length,Re=$e=null,de):pt},de.padding=function(va){return arguments.length?(wt=va,Re=$e=null,de):wt},de.sortGroups=function(va){return arguments.length?(Jt=va,Re=$e=null,de):Jt},de.sortSubgroups=function(va){return arguments.length?(Rt=va,Re=null,de):Rt},de.sortChords=function(va){return arguments.length?(or=va,Re&&Or(),de):or},de.chords=function(){return Re||Dr(),Re},de.groups=function(){return $e||Dr(),$e},de},g.layout.force=function(){var de={},Re=g.dispatch("start","tick","end"),$e,pt=[1,1],vt,wt,Jt=.9,Rt=xl,or=hh,Dr=-30,Or=Sh,va=.1,fa=.64,Va=[],Xa=[],_a,Ra,Na;function Qa(Da){return function(zi,Ni,Qi,hn){if(zi.point!==Da){var Un=zi.cx-Da.x,Vn=zi.cy-Da.y,No=hn-Ni,Gn=Un*Un+Vn*Vn;if(No*No/fa<Gn){if(Gn<Or){var Fo=zi.charge/Gn;Da.px-=Un*Fo,Da.py-=Vn*Fo}return!0}if(zi.point&&Gn&&Gn<Or){var Fo=zi.pointCharge/Gn;Da.px-=Un*Fo,Da.py-=Vn*Fo}}return!zi.charge}}de.tick=function(){if((wt*=.99)<.005)return $e=null,Re.end({type:"end",alpha:wt=0}),!0;var Da=Va.length,zi=Xa.length,Ni,Qi,hn,Un,Vn,No,Gn,Fo,Ks;for(Qi=0;Qi<zi;++Qi)hn=Xa[Qi],Un=hn.source,Vn=hn.target,Fo=Vn.x-Un.x,Ks=Vn.y-Un.y,(No=Fo*Fo+Ks*Ks)&&(No=wt*Ra[Qi]*((No=Math.sqrt(No))-_a[Qi])/No,Fo*=No,Ks*=No,Vn.x-=Fo*(Gn=Un.weight+Vn.weight?Un.weight/(Un.weight+Vn.weight):.5),Vn.y-=Ks*Gn,Un.x+=Fo*(Gn=1-Gn),Un.y+=Ks*Gn);if((Gn=wt*va)&&(Fo=pt[0]/2,Ks=pt[1]/2,Qi=-1,Gn))for(;++Qi<Da;)hn=Va[Qi],hn.x+=(Fo-hn.x)*Gn,hn.y+=(Ks-hn.y)*Gn;if(Dr)for(vu(Ni=g.geom.quadtree(Va),wt,Na),Qi=-1;++Qi<Da;)(hn=Va[Qi]).fixed||Ni.visit(Qa(hn));for(Qi=-1;++Qi<Da;)hn=Va[Qi],hn.fixed?(hn.x=hn.px,hn.y=hn.py):(hn.x-=(hn.px-(hn.px=hn.x))*Jt,hn.y-=(hn.py-(hn.py=hn.y))*Jt);Re.tick({type:"tick",alpha:wt})},de.nodes=function(Da){return arguments.length?(Va=Da,de):Va},de.links=function(Da){return arguments.length?(Xa=Da,de):Xa},de.size=function(Da){return arguments.length?(pt=Da,de):pt},de.linkDistance=function(Da){return arguments.length?(Rt=typeof Da=="function"?Da:+Da,de):Rt},de.distance=de.linkDistance,de.linkStrength=function(Da){return arguments.length?(or=typeof Da=="function"?Da:+Da,de):or},de.friction=function(Da){return arguments.length?(Jt=+Da,de):Jt},de.charge=function(Da){return arguments.length?(Dr=typeof Da=="function"?Da:+Da,de):Dr},de.chargeDistance=function(Da){return arguments.length?(Or=Da*Da,de):Math.sqrt(Or)},de.gravity=function(Da){return arguments.length?(va=+Da,de):va},de.theta=function(Da){return arguments.length?(fa=Da*Da,de):Math.sqrt(fa)},de.alpha=function(Da){return arguments.length?(Da=+Da,wt?Da>0?wt=Da:($e.c=null,$e.t=NaN,$e=null,Re.end({type:"end",alpha:wt=0})):Da>0&&(Re.start({type:"start",alpha:wt=Da}),$e=Mn(de.tick)),de):wt},de.start=function(){var Da,zi=Va.length,Ni=Xa.length,Qi=pt[0],hn=pt[1],Un,Vn;for(Da=0;Da<zi;++Da)(Vn=Va[Da]).index=Da,Vn.weight=0;for(Da=0;Da<Ni;++Da)Vn=Xa[Da],typeof Vn.source=="number"&&(Vn.source=Va[Vn.source]),typeof Vn.target=="number"&&(Vn.target=Va[Vn.target]),++Vn.source.weight,++Vn.target.weight;for(Da=0;Da<zi;++Da)Vn=Va[Da],isNaN(Vn.x)&&(Vn.x=No("x",Qi)),isNaN(Vn.y)&&(Vn.y=No("y",hn)),isNaN(Vn.px)&&(Vn.px=Vn.x),isNaN(Vn.py)&&(Vn.py=Vn.y);if(_a=[],typeof Rt=="function")for(Da=0;Da<Ni;++Da)_a[Da]=+Rt.call(this,Xa[Da],Da);else for(Da=0;Da<Ni;++Da)_a[Da]=Rt;if(Ra=[],typeof or=="function")for(Da=0;Da<Ni;++Da)Ra[Da]=+or.call(this,Xa[Da],Da);else for(Da=0;Da<Ni;++Da)Ra[Da]=or;if(Na=[],typeof Dr=="function")for(Da=0;Da<zi;++Da)Na[Da]=+Dr.call(this,Va[Da],Da);else for(Da=0;Da<zi;++Da)Na[Da]=Dr;function No(Gn,Fo){if(!Un){for(Un=new Array(zi),sl=0;sl<zi;++sl)Un[sl]=[];for(sl=0;sl<Ni;++sl){var Ks=Xa[sl];Un[Ks.source.index].push(Ks.target),Un[Ks.target.index].push(Ks.source)}}for(var Gs=Un[Da],sl=-1,Vi=Gs.length,ao;++sl<Vi;)if(!isNaN(ao=Gs[sl][Gn]))return ao;return Math.random()*Fo}return de.resume()},de.resume=function(){return de.alpha(.1)},de.stop=function(){return de.alpha(0)},de.drag=function(){if(vt||(vt=g.behavior.drag().origin(F).on("dragstart.force",xc).on("drag.force",Ya).on("dragend.force",kl)),!arguments.length)return vt;this.on("mouseover.force",Fc).on("mouseout.force",$u).call(vt)};function Ya(Da){Da.px=g.event.x,Da.py=g.event.y,de.resume()}return g.rebind(de,Re,"on")};function xc(de){de.fixed|=2}function kl(de){de.fixed&=-7}function Fc(de){de.fixed|=4,de.px=de.x,de.py=de.y}function $u(de){de.fixed&=-5}function vu(de,Re,$e){var pt=0,vt=0;if(de.charge=0,!de.leaf)for(var wt=de.nodes,Jt=wt.length,Rt=-1,or;++Rt<Jt;)or=wt[Rt],or!=null&&(vu(or,Re,$e),de.charge+=or.charge,pt+=or.charge*or.cx,vt+=or.charge*or.cy);if(de.point){de.leaf||(de.point.x+=Math.random()-.5,de.point.y+=Math.random()-.5);var Dr=Re*$e[de.point.index];de.charge+=de.pointCharge=Dr,pt+=Dr*de.point.x,vt+=Dr*de.point.y}de.cx=pt/de.charge,de.cy=vt/de.charge}var xl=20,hh=1,Sh=1/0;g.layout.hierarchy=function(){var de=Tf,Re=hp,$e=vf;function pt(vt){var wt=[vt],Jt=[],Rt;for(vt.depth=0;(Rt=wt.pop())!=null;)if(Jt.push(Rt),(Dr=Re.call(pt,Rt,Rt.depth))&&(or=Dr.length)){for(var or,Dr,Or;--or>=0;)wt.push(Or=Dr[or]),Or.parent=Rt,Or.depth=Rt.depth+1;$e&&(Rt.value=0),Rt.children=Dr}else $e&&(Rt.value=+$e.call(pt,Rt,Rt.depth)||0),delete Rt.children;return lc(vt,function(va){var fa,Va;de&&(fa=va.children)&&fa.sort(de),$e&&(Va=va.parent)&&(Va.value+=va.value)}),Jt}return pt.sort=function(vt){return arguments.length?(de=vt,pt):de},pt.children=function(vt){return arguments.length?(Re=vt,pt):Re},pt.value=function(vt){return arguments.length?($e=vt,pt):$e},pt.revalue=function(vt){return $e&&(bc(vt,function(wt){wt.children&&(wt.value=0)}),lc(vt,function(wt){var Jt;wt.children||(wt.value=+$e.call(pt,wt,wt.depth)||0),(Jt=wt.parent)&&(Jt.value+=wt.value)})),vt},pt};function Uu(de,Re){return g.rebind(de,Re,"sort","children","value"),de.nodes=de,de.links=Lu,de}function bc(de,Re){for(var $e=[de];(de=$e.pop())!=null;)if(Re(de),(vt=de.children)&&(pt=vt.length))for(var pt,vt;--pt>=0;)$e.push(vt[pt])}function lc(de,Re){for(var $e=[de],pt=[];(de=$e.pop())!=null;)if(pt.push(de),(Jt=de.children)&&(wt=Jt.length))for(var vt=-1,wt,Jt;++vt<wt;)$e.push(Jt[vt]);for(;(de=pt.pop())!=null;)Re(de)}function hp(de){return de.children}function vf(de){return de.value}function Tf(de,Re){return Re.value-de.value}function Lu(de){return g.merge(de.map(function(Re){return(Re.children||[]).map(function($e){return{source:Re,target:$e}})}))}g.layout.partition=function(){var de=g.layout.hierarchy(),Re=[1,1];function $e(wt,Jt,Rt,or){var Dr=wt.children;if(wt.x=Jt,wt.y=wt.depth*or,wt.dx=Rt,wt.dy=or,Dr&&(va=Dr.length)){var Or=-1,va,fa,Va;for(Rt=wt.value?Rt/wt.value:0;++Or<va;)$e(fa=Dr[Or],Jt,Va=fa.value*Rt,or),Jt+=Va}}function pt(wt){var Jt=wt.children,Rt=0;if(Jt&&(Dr=Jt.length))for(var or=-1,Dr;++or<Dr;)Rt=Math.max(Rt,pt(Jt[or]));return 1+Rt}function vt(wt,Jt){var Rt=de.call(this,wt,Jt);return $e(Rt[0],0,Re[0],Re[1]/pt(Rt[0])),Rt}return vt.size=function(wt){return arguments.length?(Re=wt,vt):Re},Uu(vt,de)},g.layout.pie=function(){var de=Number,Re=zf,$e=0,pt=Ve,vt=0;function wt(Jt){var Rt=Jt.length,or=Jt.map(function(Qa,Ya){return+de.call(wt,Qa,Ya)}),Dr=+(typeof $e=="function"?$e.apply(this,arguments):$e),Or=(typeof pt=="function"?pt.apply(this,arguments):pt)-Dr,va=Math.min(Math.abs(Or)/Rt,+(typeof vt=="function"?vt.apply(this,arguments):vt)),fa=va*(Or<0?-1:1),Va=g.sum(or),Xa=Va?(Or-Rt*fa)/Va:0,_a=g.range(Rt),Ra=[],Na;return Re!=null&&_a.sort(Re===zf?function(Qa,Ya){return or[Ya]-or[Qa]}:function(Qa,Ya){return Re(Jt[Qa],Jt[Ya])}),_a.forEach(function(Qa){Ra[Qa]={data:Jt[Qa],value:Na=or[Qa],startAngle:Dr,endAngle:Dr+=Na*Xa+fa,padAngle:va}}),Ra}return wt.value=function(Jt){return arguments.length?(de=Jt,wt):de},wt.sort=function(Jt){return arguments.length?(Re=Jt,wt):Re},wt.startAngle=function(Jt){return arguments.length?($e=Jt,wt):$e},wt.endAngle=function(Jt){return arguments.length?(pt=Jt,wt):pt},wt.padAngle=function(Jt){return arguments.length?(vt=Jt,wt):vt},wt};var zf={};g.layout.stack=function(){var de=F,Re=mu,$e=gu,pt=Mh,vt=au,wt=$c;function Jt(Rt,or){if(!(Xa=Rt.length))return Rt;var Dr=Rt.map(function(Qa,Ya){return de.call(Jt,Qa,Ya)}),Or=Dr.map(function(Qa){return Qa.map(function(Ya,Da){return[vt.call(Jt,Ya,Da),wt.call(Jt,Ya,Da)]})}),va=Re.call(Jt,Or,or);Dr=g.permute(Dr,va),Or=g.permute(Or,va);var fa=$e.call(Jt,Or,or),Va=Dr[0].length,Xa,_a,Ra,Na;for(Ra=0;Ra<Va;++Ra)for(pt.call(Jt,Dr[0][Ra],Na=fa[Ra],Or[0][Ra][1]),_a=1;_a<Xa;++_a)pt.call(Jt,Dr[_a][Ra],Na+=Or[_a-1][Ra][1],Or[_a][Ra][1]);return Rt}return Jt.values=function(Rt){return arguments.length?(de=Rt,Jt):de},Jt.order=function(Rt){return arguments.length?(Re=typeof Rt=="function"?Rt:Ff.get(Rt)||mu,Jt):Re},Jt.offset=function(Rt){return arguments.length?($e=typeof Rt=="function"?Rt:il.get(Rt)||gu,Jt):$e},Jt.x=function(Rt){return arguments.length?(vt=Rt,Jt):vt},Jt.y=function(Rt){return arguments.length?(wt=Rt,Jt):wt},Jt.out=function(Rt){return arguments.length?(pt=Rt,Jt):pt},Jt};function au(de){return de.x}function $c(de){return de.y}function Mh(de,Re,$e){de.y0=Re,de.y=$e}var Ff=g.map({"inside-out":function(de){var Re=de.length,$e,pt,vt=de.map(Jf),wt=de.map(el),Jt=g.range(Re).sort(function(va,fa){return vt[va]-vt[fa]}),Rt=0,or=0,Dr=[],Or=[];for($e=0;$e<Re;++$e)pt=Jt[$e],Rt<or?(Rt+=wt[pt],Dr.push(pt)):(or+=wt[pt],Or.push(pt));return Or.reverse().concat(Dr)},reverse:function(de){return g.range(de.length).reverse()},default:mu}),il=g.map({silhouette:function(de){var Re=de.length,$e=de[0].length,pt=[],vt=0,wt,Jt,Rt,or=[];for(Jt=0;Jt<$e;++Jt){for(wt=0,Rt=0;wt<Re;wt++)Rt+=de[wt][Jt][1];Rt>vt&&(vt=Rt),pt.push(Rt)}for(Jt=0;Jt<$e;++Jt)or[Jt]=(vt-pt[Jt])/2;return or},wiggle:function(de){var Re=de.length,$e=de[0],pt=$e.length,vt,wt,Jt,Rt,or,Dr,Or,va,fa,Va=[];for(Va[0]=va=fa=0,wt=1;wt<pt;++wt){for(vt=0,Rt=0;vt<Re;++vt)Rt+=de[vt][wt][1];for(vt=0,or=0,Or=$e[wt][0]-$e[wt-1][0];vt<Re;++vt){for(Jt=0,Dr=(de[vt][wt][1]-de[vt][wt-1][1])/(2*Or);Jt<vt;++Jt)Dr+=(de[Jt][wt][1]-de[Jt][wt-1][1])/Or;or+=Dr*de[vt][wt][1]}Va[wt]=va-=Rt?or/Rt*Or:0,va<fa&&(fa=va)}for(wt=0;wt<pt;++wt)Va[wt]-=fa;return Va},expand:function(de){var Re=de.length,$e=de[0].length,pt=1/Re,vt,wt,Jt,Rt=[];for(wt=0;wt<$e;++wt){for(vt=0,Jt=0;vt<Re;vt++)Jt+=de[vt][wt][1];if(Jt)for(vt=0;vt<Re;vt++)de[vt][wt][1]/=Jt;else for(vt=0;vt<Re;vt++)de[vt][wt][1]=pt}for(wt=0;wt<$e;++wt)Rt[wt]=0;return Rt},zero:gu});function mu(de){return g.range(de.length)}function gu(de){for(var Re=-1,$e=de[0].length,pt=[];++Re<$e;)pt[Re]=0;return pt}function Jf(de){for(var Re=1,$e=0,pt=de[0][1],vt,wt=de.length;Re<wt;++Re)(vt=de[Re][1])>pt&&($e=Re,pt=vt);return $e}function el(de){return de.reduce(mf,0)}function mf(de,Re){return de+Re[1]}g.layout.histogram=function(){var de=!0,Re=Number,$e=Af,pt=wc;function vt(wt,fa){for(var Rt=[],or=wt.map(Re,this),Dr=$e.call(this,or,fa),Or=pt.call(this,Dr,or,fa),va,fa=-1,Va=or.length,Xa=Or.length-1,_a=de?1:1/Va,Ra;++fa<Xa;)va=Rt[fa]=[],va.dx=Or[fa+1]-(va.x=Or[fa]),va.y=0;if(Xa>0)for(fa=-1;++fa<Va;)Ra=or[fa],Ra>=Dr[0]&&Ra<=Dr[1]&&(va=Rt[g.bisect(Or,Ra,1,Xa)-1],va.y+=_a,va.push(wt[fa]));return Rt}return vt.value=function(wt){return arguments.length?(Re=wt,vt):Re},vt.range=function(wt){return arguments.length?($e=$r(wt),vt):$e},vt.bins=function(wt){return arguments.length?(pt=typeof wt=="number"?function(Jt){return ju(Jt,wt)}:$r(wt),vt):pt},vt.frequency=function(wt){return arguments.length?(de=!!wt,vt):de},vt};function wc(de,Re){return ju(de,Math.ceil(Math.log(Re.length)/Math.LN2+1))}function ju(de,Re){for(var $e=-1,pt=+de[0],vt=(de[1]-pt)/Re,wt=[];++$e<=Re;)wt[$e]=vt*$e+pt;return wt}function Af(de){return[g.min(de),g.max(de)]}g.layout.pack=function(){var de=g.layout.hierarchy().sort(uc),Re=0,$e=[1,1],pt;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr=$e[0],Or=$e[1],va=pt==null?Math.sqrt:typeof pt=="function"?pt:function(){return pt};if(or.x=or.y=0,lc(or,function(Va){Va.r=+va(Va.value)}),lc(or,Qf),Re){var fa=Re*(pt?1:Math.max(2*or.r/Dr,2*or.r/Or))/2;lc(or,function(Va){Va.r+=fa}),lc(or,Qf),lc(or,function(Va){Va.r-=fa})}return cc(or,Dr/2,Or/2,pt?1:1/Math.max(2*or.r/Dr,2*or.r/Or)),Rt}return vt.size=function(wt){return arguments.length?($e=wt,vt):$e},vt.radius=function(wt){return arguments.length?(pt=wt==null||typeof wt=="function"?wt:+wt,vt):pt},vt.padding=function(wt){return arguments.length?(Re=+wt,vt):Re},Uu(vt,de)};function uc(de,Re){return de.value-Re.value}function Qc(de,Re){var $e=de._pack_next;de._pack_next=Re,Re._pack_prev=de,Re._pack_next=$e,$e._pack_prev=Re}function $f(de,Re){de._pack_next=Re,Re._pack_prev=de}function Vl(de,Re){var $e=Re.x-de.x,pt=Re.y-de.y,vt=de.r+Re.r;return .999*vt*vt>$e*$e+pt*pt}function Qf(de){if(!(Re=de.children)||!(fa=Re.length))return;var Re,$e=1/0,pt=-1/0,vt=1/0,wt=-1/0,Jt,Rt,or,Dr,Or,va,fa;function Va(Da){$e=Math.min(Da.x-Da.r,$e),pt=Math.max(Da.x+Da.r,pt),vt=Math.min(Da.y-Da.r,vt),wt=Math.max(Da.y+Da.r,wt)}if(Re.forEach(Vu),Jt=Re[0],Jt.x=-Jt.r,Jt.y=0,Va(Jt),fa>1&&(Rt=Re[1],Rt.x=Rt.r,Rt.y=0,Va(Rt),fa>2))for(or=Re[2],Cl(Jt,Rt,or),Va(or),Qc(Jt,or),Jt._pack_prev=or,Qc(or,Rt),Rt=Jt._pack_next,Dr=3;Dr<fa;Dr++){Cl(Jt,Rt,or=Re[Dr]);var Xa=0,_a=1,Ra=1;for(Or=Rt._pack_next;Or!==Rt;Or=Or._pack_next,_a++)if(Vl(Or,or)){Xa=1;break}if(Xa==1)for(va=Jt._pack_prev;va!==Or._pack_prev&&!Vl(va,or);va=va._pack_prev,Ra++);Xa?(_a<Ra||_a==Ra&&Rt.r<Jt.r?$f(Jt,Rt=Or):$f(Jt=va,Rt),Dr--):(Qc(Jt,or),Rt=or,Va(or))}var Na=($e+pt)/2,Qa=(vt+wt)/2,Ya=0;for(Dr=0;Dr<fa;Dr++)or=Re[Dr],or.x-=Na,or.y-=Qa,Ya=Math.max(Ya,or.r+Math.sqrt(or.x*or.x+or.y*or.y));de.r=Ya,Re.forEach(Tc)}function Vu(de){de._pack_next=de._pack_prev=de}function Tc(de){delete de._pack_next,delete de._pack_prev}function cc(de,Re,$e,pt){var vt=de.children;if(de.x=Re+=pt*de.x,de.y=$e+=pt*de.y,de.r*=pt,vt)for(var wt=-1,Jt=vt.length;++wt<Jt;)cc(vt[wt],Re,$e,pt)}function Cl(de,Re,$e){var pt=de.r+$e.r,vt=Re.x-de.x,wt=Re.y-de.y;if(pt&&(vt||wt)){var Jt=Re.r+$e.r,Rt=vt*vt+wt*wt;Jt*=Jt,pt*=pt;var or=.5+(pt-Jt)/(2*Rt),Dr=Math.sqrt(Math.max(0,2*Jt*(pt+Rt)-(pt-=Rt)*pt-Jt*Jt))/(2*Rt);$e.x=de.x+or*vt+Dr*wt,$e.y=de.y+or*wt-Dr*vt}else $e.x=de.x+pt,$e.y=de.y}g.layout.tree=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=null;function vt(Or,va){var fa=de.call(this,Or,va),Va=fa[0],Xa=wt(Va);if(lc(Xa,Jt),Xa.parent.m=-Xa.z,bc(Xa,Rt),pt)bc(Va,Dr);else{var _a=Va,Ra=Va,Na=Va;bc(Va,function(zi){zi.x<_a.x&&(_a=zi),zi.x>Ra.x&&(Ra=zi),zi.depth>Na.depth&&(Na=zi)});var Qa=Re(_a,Ra)/2-_a.x,Ya=$e[0]/(Ra.x+Re(Ra,_a)/2+Qa),Da=$e[1]/(Na.depth||1);bc(Va,function(zi){zi.x=(zi.x+Qa)*Ya,zi.y=zi.depth*Da})}return fa}function wt(Or){for(var va={A:null,children:[Or]},fa=[va],Va;(Va=fa.pop())!=null;)for(var Xa=Va.children,_a,Ra=0,Na=Xa.length;Ra<Na;++Ra)fa.push((Xa[Ra]=_a={_:Xa[Ra],parent:Va,children:(_a=Xa[Ra].children)&&_a.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:Ra}).a=_a);return va.children[0]}function Jt(Or){var va=Or.children,fa=Or.parent.children,Va=Or.i?fa[Or.i-1]:null;if(va.length){ef(Or);var Xa=(va[0].z+va[va.length-1].z)/2;Va?(Or.z=Va.z+Re(Or._,Va._),Or.m=Or.z-Xa):Or.z=Xa}else Va&&(Or.z=Va.z+Re(Or._,Va._));Or.parent.A=or(Or,Va,Or.parent.A||fa[0])}function Rt(Or){Or._.x=Or.z+Or.parent.m,Or.m+=Or.parent.m}function or(Or,va,fa){if(va){for(var Va=Or,Xa=Or,_a=va,Ra=Va.parent.children[0],Na=Va.m,Qa=Xa.m,Ya=_a.m,Da=Ra.m,zi;_a=Oc(_a),Va=fc(Va),_a&&Va;)Ra=fc(Ra),Xa=Oc(Xa),Xa.a=Or,zi=_a.z+Ya-Va.z-Na+Re(_a._,Va._),zi>0&&(Qu(Zt(_a,Or,fa),Or,zi),Na+=zi,Qa+=zi),Ya+=_a.m,Na+=Va.m,Da+=Ra.m,Qa+=Xa.m;_a&&!Oc(Xa)&&(Xa.t=_a,Xa.m+=Ya-Qa),Va&&!fc(Ra)&&(Ra.t=Va,Ra.m+=Na-Da,fa=Or)}return fa}function Dr(Or){Or.x*=$e[0],Or.y=Or.depth*$e[1]}return vt.separation=function(Or){return arguments.length?(Re=Or,vt):Re},vt.size=function(Or){return arguments.length?(pt=($e=Or)==null?Dr:null,vt):pt?null:$e},vt.nodeSize=function(Or){return arguments.length?(pt=($e=Or)==null?null:Dr,vt):pt?$e:null},Uu(vt,de)};function iu(de,Re){return de.parent==Re.parent?1:2}function fc(de){var Re=de.children;return Re.length?Re[0]:de.t}function Oc(de){var Re=de.children,$e;return($e=Re.length)?Re[$e-1]:de.t}function Qu(de,Re,$e){var pt=$e/(Re.i-de.i);Re.c-=pt,Re.s+=$e,de.c+=pt,Re.z+=$e,Re.m+=$e}function ef(de){for(var Re=0,$e=0,pt=de.children,vt=pt.length,wt;--vt>=0;)wt=pt[vt],wt.z+=Re,wt.m+=Re,Re+=wt.s+($e+=wt.c)}function Zt(de,Re,$e){return de.a.parent===Re.parent?de.a:$e}g.layout.cluster=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=!1;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr,Or=0;lc(or,function(_a){var Ra=_a.children;Ra&&Ra.length?(_a.x=Yr(Ra),_a.y=fr(Ra)):(_a.x=Dr?Or+=Re(_a,Dr):0,_a.y=0,Dr=_a)});var va=qr(or),fa=ba(or),Va=va.x-Re(va,fa)/2,Xa=fa.x+Re(fa,va)/2;return lc(or,pt?function(_a){_a.x=(_a.x-or.x)*$e[0],_a.y=(or.y-_a.y)*$e[1]}:function(_a){_a.x=(_a.x-Va)/(Xa-Va)*$e[0],_a.y=(1-(or.y?_a.y/or.y:1))*$e[1]}),Rt}return vt.separation=function(wt){return arguments.length?(Re=wt,vt):Re},vt.size=function(wt){return arguments.length?(pt=($e=wt)==null,vt):pt?null:$e},vt.nodeSize=function(wt){return arguments.length?(pt=($e=wt)!=null,vt):pt?$e:null},Uu(vt,de)};function fr(de){return 1+g.max(de,function(Re){return Re.y})}function Yr(de){return de.reduce(function(Re,$e){return Re+$e.x},0)/de.length}function qr(de){var Re=de.children;return Re&&Re.length?qr(Re[0]):de}function ba(de){var Re=de.children,$e;return Re&&($e=Re.length)?ba(Re[$e-1]):de}g.layout.treemap=function(){var de=g.layout.hierarchy(),Re=Math.round,$e=[1,1],pt=null,vt=Ka,wt=!1,Jt,Rt="squarify",or=.5*(1+Math.sqrt(5));function Dr(_a,Ra){for(var Na=-1,Qa=_a.length,Ya,Da;++Na<Qa;)Da=(Ya=_a[Na]).value*(Ra<0?0:Ra),Ya.area=isNaN(Da)||Da<=0?0:Da}function Or(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=[],Ya=Ra.slice(),Da,zi=1/0,Ni,Qi=Rt==="slice"?Na.dx:Rt==="dice"?Na.dy:Rt==="slice-dice"?_a.depth&1?Na.dy:Na.dx:Math.min(Na.dx,Na.dy),hn;for(Dr(Ya,Na.dx*Na.dy/_a.value),Qa.area=0;(hn=Ya.length)>0;)Qa.push(Da=Ya[hn-1]),Qa.area+=Da.area,Rt!=="squarify"||(Ni=fa(Qa,Qi))<=zi?(Ya.pop(),zi=Ni):(Qa.area-=Qa.pop().area,Va(Qa,Qi,Na,!1),Qi=Math.min(Na.dx,Na.dy),Qa.length=Qa.area=0,zi=1/0);Qa.length&&(Va(Qa,Qi,Na,!0),Qa.length=Qa.area=0),Ra.forEach(Or)}}function va(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=Ra.slice(),Ya,Da=[];for(Dr(Qa,Na.dx*Na.dy/_a.value),Da.area=0;Ya=Qa.pop();)Da.push(Ya),Da.area+=Ya.area,Ya.z!=null&&(Va(Da,Ya.z?Na.dx:Na.dy,Na,!Qa.length),Da.length=Da.area=0);Ra.forEach(va)}}function fa(_a,Ra){for(var Na=_a.area,Qa,Ya=0,Da=1/0,zi=-1,Ni=_a.length;++zi<Ni;)(Qa=_a[zi].area)&&(Qa<Da&&(Da=Qa),Qa>Ya&&(Ya=Qa));return Na*=Na,Ra*=Ra,Na?Math.max(Ra*Ya*or/Na,Na/(Ra*Da*or)):1/0}function Va(_a,Ra,Na,Qa){var Ya=-1,Da=_a.length,zi=Na.x,Ni=Na.y,Qi=Ra?Re(_a.area/Ra):0,hn;if(Ra==Na.dx){for((Qa||Qi>Na.dy)&&(Qi=Na.dy);++Ya<Da;)hn=_a[Ya],hn.x=zi,hn.y=Ni,hn.dy=Qi,zi+=hn.dx=Math.min(Na.x+Na.dx-zi,Qi?Re(hn.area/Qi):0);hn.z=!0,hn.dx+=Na.x+Na.dx-zi,Na.y+=Qi,Na.dy-=Qi}else{for((Qa||Qi>Na.dx)&&(Qi=Na.dx);++Ya<Da;)hn=_a[Ya],hn.x=zi,hn.y=Ni,hn.dx=Qi,Ni+=hn.dy=Math.min(Na.y+Na.dy-Ni,Qi?Re(hn.area/Qi):0);hn.z=!1,hn.dy+=Na.y+Na.dy-Ni,Na.x+=Qi,Na.dx-=Qi}}function Xa(_a){var Ra=Jt||de(_a),Na=Ra[0];return Na.x=Na.y=0,Na.value?(Na.dx=$e[0],Na.dy=$e[1]):Na.dx=Na.dy=0,Jt&&de.revalue(Na),Dr([Na],Na.dx*Na.dy/Na.value),(Jt?va:Or)(Na),wt&&(Jt=Ra),Ra}return Xa.size=function(_a){return arguments.length?($e=_a,Xa):$e},Xa.padding=function(_a){if(!arguments.length)return pt;function Ra(Ya){var Da=_a.call(Xa,Ya,Ya.depth);return Da==null?Ka(Ya):oi(Ya,typeof Da=="number"?[Da,Da,Da,Da]:Da)}function Na(Ya){return oi(Ya,_a)}var Qa;return vt=(pt=_a)==null?Ka:(Qa=typeof _a)=="function"?Ra:(Qa==="number"&&(_a=[_a,_a,_a,_a]),Na),Xa},Xa.round=function(_a){return arguments.length?(Re=_a?Math.round:Number,Xa):Re!=Number},Xa.sticky=function(_a){return arguments.length?(wt=_a,Jt=null,Xa):wt},Xa.ratio=function(_a){return arguments.length?(or=_a,Xa):or},Xa.mode=function(_a){return arguments.length?(Rt=_a+"",Xa):Rt},Uu(Xa,de)};function Ka(de){return{x:de.x,y:de.y,dx:de.dx,dy:de.dy}}function oi(de,Re){var $e=de.x+Re[3],pt=de.y+Re[0],vt=de.dx-Re[1]-Re[3],wt=de.dy-Re[0]-Re[2];return vt<0&&($e+=vt/2,vt=0),wt<0&&(pt+=wt/2,wt=0),{x:$e,y:pt,dx:vt,dy:wt}}g.random={normal:function(de,Re){var $e=arguments.length;return $e<2&&(Re=1),$e<1&&(de=0),function(){var pt,vt,wt;do pt=Math.random()*2-1,vt=Math.random()*2-1,wt=pt*pt+vt*vt;while(!wt||wt>1);return de+Re*pt*Math.sqrt(-2*Math.log(wt)/wt)}},logNormal:function(){var de=g.random.normal.apply(g,arguments);return function(){return Math.exp(de())}},bates:function(de){var Re=g.random.irwinHall(de);return function(){return Re()/de}},irwinHall:function(de){return function(){for(var Re=0,$e=0;$e<de;$e++)Re+=Math.random();return Re}}},g.scale={};function yi(de){var Re=de[0],$e=de[de.length-1];return Re<$e?[Re,$e]:[$e,Re]}function ki(de){return de.rangeExtent?de.rangeExtent():yi(de.range())}function Bi(de,Re,$e,pt){var vt=$e(de[0],de[1]),wt=pt(Re[0],Re[1]);return function(Jt){return wt(vt(Jt))}}function li(de,Re){var $e=0,pt=de.length-1,vt=de[$e],wt=de[pt],Jt;return wt<vt&&(Jt=$e,$e=pt,pt=Jt,Jt=vt,vt=wt,wt=Jt),de[$e]=Re.floor(vt),de[pt]=Re.ceil(wt),de}function _i(de){return de?{floor:function(Re){return Math.floor(Re/de)*de},ceil:function(Re){return Math.ceil(Re/de)*de}}:vi}var vi={floor:F,ceil:F};function ti(de,Re,$e,pt){var vt=[],wt=[],Jt=0,Rt=Math.min(de.length,Re.length)-1;for(de[Rt]<de[0]&&(de=de.slice().reverse(),Re=Re.slice().reverse());++Jt<=Rt;)vt.push($e(de[Jt-1],de[Jt])),wt.push(pt(Re[Jt-1],Re[Jt]));return function(or){var Dr=g.bisect(de,or,1,Rt)-1;return wt[Dr](vt[Dr](or))}}g.scale.linear=function(){return rn([0,1],[0,1],zl,!1)};function rn(de,Re,$e,pt){var vt,wt;function Jt(){var or=Math.min(de.length,Re.length)>2?ti:Bi,Dr=pt?ku:Ah;return vt=or(de,Re,Dr,$e),wt=or(Re,de,Dr,zl),Rt}function Rt(or){return vt(or)}return Rt.invert=function(or){return wt(or)},Rt.domain=function(or){return arguments.length?(de=or.map(Number),Jt()):de},Rt.range=function(or){return arguments.length?(Re=or,Jt()):Re},Rt.rangeRound=function(or){return Rt.range(or).interpolate(Ju)},Rt.clamp=function(or){return arguments.length?(pt=or,Jt()):pt},Rt.interpolate=function(or){return arguments.length?($e=or,Jt()):$e},Rt.ticks=function(or){return no(de,or)},Rt.tickFormat=function(or,Dr){return d3_scale_linearTickFormat(de,or,Dr)},Rt.nice=function(or){return Wn(de,or),Jt()},Rt.copy=function(){return rn(de,Re,$e,pt)},Jt()}function Kn(de,Re){return g.rebind(de,Re,"range","rangeRound","interpolate","clamp")}function Wn(de,Re){return li(de,_i(Jn(de,Re)[2])),li(de,_i(Jn(de,Re)[2])),de}function Jn(de,Re){Re==null&&(Re=10);var $e=yi(de),pt=$e[1]-$e[0],vt=Math.pow(10,Math.floor(Math.log(pt/Re)/Math.LN10)),wt=Re/pt*vt;return wt<=.15?vt*=10:wt<=.35?vt*=5:wt<=.75&&(vt*=2),$e[0]=Math.ceil($e[0]/vt)*vt,$e[1]=Math.floor($e[1]/vt)*vt+vt*.5,$e[2]=vt,$e}function no(de,Re){return g.range.apply(g,Jn(de,Re))}var en={s:1,g:1,p:1,r:1,e:1};function Ri(de){return-Math.floor(Math.log(de)/Math.LN10+.01)}function co(de,Re){var $e=Ri(Re[2]);return de in en?Math.abs($e-Ri(Math.max(l(Re[0]),l(Re[1]))))+ +(de!=="e"):$e-(de==="%")*2}g.scale.log=function(){return Wo(g.scale.linear().domain([0,1]),10,!0,[1,10])};function Wo(de,Re,$e,pt){function vt(Rt){return($e?Math.log(Rt<0?0:Rt):-Math.log(Rt>0?0:-Rt))/Math.log(Re)}function wt(Rt){return $e?Math.pow(Re,Rt):-Math.pow(Re,-Rt)}function Jt(Rt){return de(vt(Rt))}return Jt.invert=function(Rt){return wt(de.invert(Rt))},Jt.domain=function(Rt){return arguments.length?($e=Rt[0]>=0,de.domain((pt=Rt.map(Number)).map(vt)),Jt):pt},Jt.base=function(Rt){return arguments.length?(Re=+Rt,de.domain(pt.map(vt)),Jt):Re},Jt.nice=function(){var Rt=li(pt.map(vt),$e?Math:bs);return de.domain(Rt),pt=Rt.map(wt),Jt},Jt.ticks=function(){var Rt=yi(pt),or=[],Dr=Rt[0],Or=Rt[1],va=Math.floor(vt(Dr)),fa=Math.ceil(vt(Or)),Va=Re%1?2:Re;if(isFinite(fa-va)){if($e){for(;va<fa;va++)for(var Xa=1;Xa<Va;Xa++)or.push(wt(va)*Xa);or.push(wt(va))}else for(or.push(wt(va));va++<fa;)for(var Xa=Va-1;Xa>0;Xa--)or.push(wt(va)*Xa);for(va=0;or[va]<Dr;va++);for(fa=or.length;or[fa-1]>Or;fa--);or=or.slice(va,fa)}return or},Jt.copy=function(){return Wo(de.copy(),Re,$e,pt)},Kn(Jt,de)}var bs={floor:function(de){return-Math.ceil(-de)},ceil:function(de){return-Math.floor(-de)}};g.scale.pow=function(){return Xs(g.scale.linear(),1,[0,1])};function Xs(de,Re,$e){var pt=Ms(Re),vt=Ms(1/Re);function wt(Jt){return de(pt(Jt))}return wt.invert=function(Jt){return vt(de.invert(Jt))},wt.domain=function(Jt){return arguments.length?(de.domain(($e=Jt.map(Number)).map(pt)),wt):$e},wt.ticks=function(Jt){return no($e,Jt)},wt.tickFormat=function(Jt,Rt){return d3_scale_linearTickFormat($e,Jt,Rt)},wt.nice=function(Jt){return wt.domain(Wn($e,Jt))},wt.exponent=function(Jt){return arguments.length?(pt=Ms(Re=Jt),vt=Ms(1/Re),de.domain($e.map(pt)),wt):Re},wt.copy=function(){return Xs(de.copy(),Re,$e)},Kn(wt,de)}function Ms(de){return function(Re){return Re<0?-Math.pow(-Re,de):Math.pow(Re,de)}}g.scale.sqrt=function(){return g.scale.pow().exponent(.5)},g.scale.ordinal=function(){return Hs([],{t:"range",a:[[]]})};function Hs(de,Re){var $e,pt,vt;function wt(Rt){return pt[(($e.get(Rt)||(Re.t==="range"?$e.set(Rt,de.push(Rt)):NaN))-1)%pt.length]}function Jt(Rt,or){return g.range(de.length).map(function(Dr){return Rt+or*Dr})}return wt.domain=function(Rt){if(!arguments.length)return de;de=[],$e=new S;for(var or=-1,Dr=Rt.length,Or;++or<Dr;)$e.has(Or=Rt[or])||$e.set(Or,de.push(Or));return wt[Re.t].apply(wt,Re.a)},wt.range=function(Rt){return arguments.length?(pt=Rt,vt=0,Re={t:"range",a:arguments},wt):pt},wt.rangePoints=function(Rt,or){arguments.length<2&&(or=0);var Dr=Rt[0],Or=Rt[1],va=de.length<2?(Dr=(Dr+Or)/2,0):(Or-Dr)/(de.length-1+or);return pt=Jt(Dr+va*or/2,va),vt=0,Re={t:"rangePoints",a:arguments},wt},wt.rangeRoundPoints=function(Rt,or){arguments.length<2&&(or=0);var Dr=Rt[0],Or=Rt[1],va=de.length<2?(Dr=Or=Math.round((Dr+Or)/2),0):(Or-Dr)/(de.length-1+or)|0;return pt=Jt(Dr+Math.round(va*or/2+(Or-Dr-(de.length-1+or)*va)/2),va),vt=0,Re={t:"rangeRoundPoints",a:arguments},wt},wt.rangeBands=function(Rt,or,Dr){arguments.length<2&&(or=0),arguments.length<3&&(Dr=or);var Or=Rt[1]<Rt[0],va=Rt[Or-0],fa=Rt[1-Or],Va=(fa-va)/(de.length-or+2*Dr);return pt=Jt(va+Va*Dr,Va),Or&&pt.reverse(),vt=Va*(1-or),Re={t:"rangeBands",a:arguments},wt},wt.rangeRoundBands=function(Rt,or,Dr){arguments.length<2&&(or=0),arguments.length<3&&(Dr=or);var Or=Rt[1]<Rt[0],va=Rt[Or-0],fa=Rt[1-Or],Va=Math.floor((fa-va)/(de.length-or+2*Dr));return pt=Jt(va+Math.round((fa-va-(de.length-or)*Va)/2),Va),Or&&pt.reverse(),vt=Math.round(Va*(1-or)),Re={t:"rangeRoundBands",a:arguments},wt},wt.rangeBand=function(){return vt},wt.rangeExtent=function(){return yi(Re.a[0])},wt.copy=function(){return Hs(de,Re)},wt.domain(de)}g.scale.category10=function(){return g.scale.ordinal().range(vs)},g.scale.category20=function(){return g.scale.ordinal().range(Il)},g.scale.category20b=function(){return g.scale.ordinal().range(fl)},g.scale.category20c=function(){return g.scale.ordinal().range(tl)};var vs=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Mr),Il=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Mr),fl=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Mr),tl=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(Mr);g.scale.quantile=function(){return Ln([],[])};function Ln(de,Re){var $e;function pt(){var wt=0,Jt=Re.length;for($e=[];++wt<Jt;)$e[wt-1]=g.quantile(de,wt/Jt);return vt}function vt(wt){if(!isNaN(wt=+wt))return Re[g.bisect($e,wt)]}return vt.domain=function(wt){return arguments.length?(de=wt.map(c).filter(h).sort(s),pt()):de},vt.range=function(wt){return arguments.length?(Re=wt,pt()):Re},vt.quantiles=function(){return $e},vt.invertExtent=function(wt){return wt=Re.indexOf(wt),wt<0?[NaN,NaN]:[wt>0?$e[wt-1]:de[0],wt<$e.length?$e[wt]:de[de.length-1]]},vt.copy=function(){return Ln(de,Re)},pt()}g.scale.quantize=function(){return Ao(0,1,[0,1])};function Ao(de,Re,$e){var pt,vt;function wt(Rt){return $e[Math.max(0,Math.min(vt,Math.floor(pt*(Rt-de))))]}function Jt(){return pt=$e.length/(Re-de),vt=$e.length-1,wt}return wt.domain=function(Rt){return arguments.length?(de=+Rt[0],Re=+Rt[Rt.length-1],Jt()):[de,Re]},wt.range=function(Rt){return arguments.length?($e=Rt,Jt()):$e},wt.invertExtent=function(Rt){return Rt=$e.indexOf(Rt),Rt=Rt<0?NaN:Rt/pt+de,[Rt,Rt+1/pt]},wt.copy=function(){return Ao(de,Re,$e)},Jt()}g.scale.threshold=function(){return js([.5],[0,1])};function js(de,Re){function $e(pt){if(pt<=pt)return Re[g.bisect(de,pt)]}return $e.domain=function(pt){return arguments.length?(de=pt,$e):de},$e.range=function(pt){return arguments.length?(Re=pt,$e):Re},$e.invertExtent=function(pt){return pt=Re.indexOf(pt),[de[pt-1],de[pt]]},$e.copy=function(){return js(de,Re)},$e}g.scale.identity=function(){return Ts([0,1])};function Ts(de){function Re($e){return+$e}return Re.invert=Re,Re.domain=Re.range=function($e){return arguments.length?(de=$e.map(Re),Re):de},Re.ticks=function($e){return no(de,$e)},Re.tickFormat=function($e,pt){return d3_scale_linearTickFormat(de,$e,pt)},Re.copy=function(){return Ts(de)},Re}g.svg={};function nu(){return 0}g.svg.arc=function(){var de=ec,Re=tf,$e=nu,pt=Pu,vt=yu,wt=Bc,Jt=Iu;function Rt(){var Dr=Math.max(0,+de.apply(this,arguments)),Or=Math.max(0,+Re.apply(this,arguments)),va=vt.apply(this,arguments)-Te,fa=wt.apply(this,arguments)-Te,Va=Math.abs(fa-va),Xa=va>fa?0:1;if(Or<Dr&&(_a=Or,Or=Dr,Dr=_a),Va>=ke)return or(Or,Xa)+(Dr?or(Dr,1-Xa):"")+"Z";var _a,Ra,Na,Qa,Ya=0,Da=0,zi,Ni,Qi,hn,Un,Vn,No,Gn,Fo=[];if((Qa=(+Jt.apply(this,arguments)||0)/2)&&(Na=pt===Pu?Math.sqrt(Dr*Dr+Or*Or):+pt.apply(this,arguments),Xa||(Da*=-1),Or&&(Da=Bt(Na/Or*Math.sin(Qa))),Dr&&(Ya=Bt(Na/Dr*Math.sin(Qa)))),Or){zi=Or*Math.cos(va+Da),Ni=Or*Math.sin(va+Da),Qi=Or*Math.cos(fa-Da),hn=Or*Math.sin(fa-Da);var Ks=Math.abs(fa-va-2*Da)<=Ee?0:1;if(Da&&Ac(zi,Ni,Qi,hn)===Xa^Ks){var Gs=(va+fa)/2;zi=Or*Math.cos(Gs),Ni=Or*Math.sin(Gs),Qi=hn=null}}else zi=Ni=0;if(Dr){Un=Dr*Math.cos(fa-Ya),Vn=Dr*Math.sin(fa-Ya),No=Dr*Math.cos(va+Ya),Gn=Dr*Math.sin(va+Ya);var sl=Math.abs(va-fa+2*Ya)<=Ee?0:1;if(Ya&&Ac(Un,Vn,No,Gn)===1-Xa^sl){var Vi=(va+fa)/2;Un=Dr*Math.cos(Vi),Vn=Dr*Math.sin(Vi),No=Gn=null}}else Un=Vn=0;if(Va>Ke&&(_a=Math.min(Math.abs(Or-Dr)/2,+$e.apply(this,arguments)))>.001){Ra=Dr<Or^Xa?0:1;var ao=_a,ns=_a;if(Va<Ee){var hs=No==null?[Un,Vn]:Qi==null?[zi,Ni]:go([zi,Ni],[No,Gn],[Qi,hn],[Un,Vn]),hl=zi-hs[0],Dl=Ni-hs[1],hu=Qi-hs[0],Ll=hn-hs[1],dc=1/Math.sin(Math.acos((hl*hu+Dl*Ll)/(Math.sqrt(hl*hl+Dl*Dl)*Math.sqrt(hu*hu+Ll*Ll)))/2),Qt=Math.sqrt(hs[0]*hs[0]+hs[1]*hs[1]);ns=Math.min(_a,(Dr-Qt)/(dc-1)),ao=Math.min(_a,(Or-Qt)/(dc+1))}if(Qi!=null){var ra=ro(No==null?[Un,Vn]:[No,Gn],[zi,Ni],Or,ao,Xa),Ta=ro([Qi,hn],[Un,Vn],Or,ao,Xa);_a===ao?Fo.push("M",ra[0],"A",ao,",",ao," 0 0,",Ra," ",ra[1],"A",Or,",",Or," 0 ",1-Xa^Ac(ra[1][0],ra[1][1],Ta[1][0],Ta[1][1]),",",Xa," ",Ta[1],"A",ao,",",ao," 0 0,",Ra," ",Ta[0]):Fo.push("M",ra[0],"A",ao,",",ao," 0 1,",Ra," ",Ta[0])}else Fo.push("M",zi,",",Ni);if(No!=null){var si=ro([zi,Ni],[No,Gn],Dr,-ns,Xa),wi=ro([Un,Vn],Qi==null?[zi,Ni]:[Qi,hn],Dr,-ns,Xa);_a===ns?Fo.push("L",wi[0],"A",ns,",",ns," 0 0,",Ra," ",wi[1],"A",Dr,",",Dr," 0 ",Xa^Ac(wi[1][0],wi[1][1],si[1][0],si[1][1]),",",1-Xa," ",si[1],"A",ns,",",ns," 0 0,",Ra," ",si[0]):Fo.push("L",wi[0],"A",ns,",",ns," 0 0,",Ra," ",si[0])}else Fo.push("L",Un,",",Vn)}else Fo.push("M",zi,",",Ni),Qi!=null&&Fo.push("A",Or,",",Or," 0 ",Ks,",",Xa," ",Qi,",",hn),Fo.push("L",Un,",",Vn),No!=null&&Fo.push("A",Dr,",",Dr," 0 ",sl,",",1-Xa," ",No,",",Gn);return Fo.push("Z"),Fo.join("")}function or(Dr,Or){return"M0,"+Dr+"A"+Dr+","+Dr+" 0 1,"+Or+" 0,"+-Dr+"A"+Dr+","+Dr+" 0 1,"+Or+" 0,"+Dr}return Rt.innerRadius=function(Dr){return arguments.length?(de=$r(Dr),Rt):de},Rt.outerRadius=function(Dr){return arguments.length?(Re=$r(Dr),Rt):Re},Rt.cornerRadius=function(Dr){return arguments.length?($e=$r(Dr),Rt):$e},Rt.padRadius=function(Dr){return arguments.length?(pt=Dr==Pu?Pu:$r(Dr),Rt):pt},Rt.startAngle=function(Dr){return arguments.length?(vt=$r(Dr),Rt):vt},Rt.endAngle=function(Dr){return arguments.length?(wt=$r(Dr),Rt):wt},Rt.padAngle=function(Dr){return arguments.length?(Jt=$r(Dr),Rt):Jt},Rt.centroid=function(){var Dr=(+de.apply(this,arguments)+ +Re.apply(this,arguments))/2,Or=(+vt.apply(this,arguments)+ +wt.apply(this,arguments))/2-Te;return[Math.cos(Or)*Dr,Math.sin(Or)*Dr]},Rt};var Pu="auto";function ec(de){return de.innerRadius}function tf(de){return de.outerRadius}function yu(de){return de.startAngle}function Bc(de){return de.endAngle}function Iu(de){return de&&de.padAngle}function Ac(de,Re,$e,pt){return(de-$e)*Re-(Re-pt)*de>0?0:1}function ro(de,Re,$e,pt,vt){var wt=de[0]-Re[0],Jt=de[1]-Re[1],Rt=(vt?pt:-pt)/Math.sqrt(wt*wt+Jt*Jt),or=Rt*Jt,Dr=-Rt*wt,Or=de[0]+or,va=de[1]+Dr,fa=Re[0]+or,Va=Re[1]+Dr,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra=fa-Or,Na=Va-va,Qa=Ra*Ra+Na*Na,Ya=$e-pt,Da=Or*Va-fa*va,zi=(Na<0?-1:1)*Math.sqrt(Math.max(0,Ya*Ya*Qa-Da*Da)),Ni=(Da*Na-Ra*zi)/Qa,Qi=(-Da*Ra-Na*zi)/Qa,hn=(Da*Na+Ra*zi)/Qa,Un=(-Da*Ra+Na*zi)/Qa,Vn=Ni-Xa,No=Qi-_a,Gn=hn-Xa,Fo=Un-_a;return Vn*Vn+No*No>Gn*Gn+Fo*Fo&&(Ni=hn,Qi=Un),[[Ni-or,Qi-Dr],[Ni*$e/Ya,Qi*$e/Ya]]}function Po(){return!0}function Nc(de){var Re=Lo,$e=Xi,pt=Po,vt=pc,wt=vt.key,Jt=.7;function Rt(or){var Dr=[],Or=[],va=-1,fa=or.length,Va,Xa=$r(Re),_a=$r($e);function Ra(){Dr.push("M",vt(de(Or),Jt))}for(;++va<fa;)pt.call(this,Va=or[va],va)?Or.push([+Xa.call(this,Va,va),+_a.call(this,Va,va)]):Or.length&&(Ra(),Or=[]);return Or.length&&Ra(),Dr.length?Dr.join(""):null}return Rt.x=function(or){return arguments.length?(Re=or,Rt):Re},Rt.y=function(or){return arguments.length?($e=or,Rt):$e},Rt.defined=function(or){return arguments.length?(pt=or,Rt):pt},Rt.interpolate=function(or){return arguments.length?(typeof or=="function"?wt=vt=or:wt=(vt=hc.get(or)||pc).key,Rt):wt},Rt.tension=function(or){return arguments.length?(Jt=or,Rt):Jt},Rt}g.svg.line=function(){return Nc(F)};var hc=g.map({linear:pc,"linear-closed":Oe,step:R,"step-before":ae,"step-after":we,basis:Yt,"basis-open":cr,"basis-closed":hr,bundle:jr,cardinal:ft,"cardinal-open":Se,"cardinal-closed":De,monotone:er});hc.forEach(function(de,Re){Re.key=de,Re.closed=/-closed$/.test(de)});function pc(de){return de.length>1?de.join("L"):de+"Z"}function Oe(de){return de.join("L")+"Z"}function R(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt[0]+(pt=de[Re])[0])/2,"V",pt[1]);return $e>1&&vt.push("H",pt[0]),vt.join("")}function ae(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("V",(pt=de[Re])[1],"H",pt[0]);return vt.join("")}function we(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt=de[Re])[0],"V",pt[1]);return vt.join("")}function Se(de,Re){return de.length<4?pc(de):de[1]+bt(de.slice(1,-1),Dt(de,Re))}function De(de,Re){return de.length<3?Oe(de):de[0]+bt((de.push(de[0]),de),Dt([de[de.length-2]].concat(de,[de[1]]),Re))}function ft(de,Re){return de.length<3?pc(de):de[0]+bt(de,Dt(de,Re))}function bt(de,Re){if(Re.length<1||de.length!=Re.length&&de.length!=Re.length+2)return pc(de);var $e=de.length!=Re.length,pt="",vt=de[0],wt=de[1],Jt=Re[0],Rt=Jt,or=1;if($e&&(pt+="Q"+(wt[0]-Jt[0]*2/3)+","+(wt[1]-Jt[1]*2/3)+","+wt[0]+","+wt[1],vt=de[1],or=2),Re.length>1){Rt=Re[1],wt=de[or],or++,pt+="C"+(vt[0]+Jt[0])+","+(vt[1]+Jt[1])+","+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1];for(var Dr=2;Dr<Re.length;Dr++,or++)wt=de[or],Rt=Re[Dr],pt+="S"+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1]}if($e){var Or=de[or];pt+="Q"+(wt[0]+Rt[0]*2/3)+","+(wt[1]+Rt[1]*2/3)+","+Or[0]+","+Or[1]}return pt}function Dt(de,Re){for(var $e=[],pt=(1-Re)/2,vt,wt=de[0],Jt=de[1],Rt=1,or=de.length;++Rt<or;)vt=wt,wt=Jt,Jt=de[Rt],$e.push([pt*(Jt[0]-vt[0]),pt*(Jt[1]-vt[1])]);return $e}function Yt(de){if(de.length<3)return pc(de);var Re=1,$e=de.length,pt=de[0],vt=pt[0],wt=pt[1],Jt=[vt,vt,vt,(pt=de[1])[0]],Rt=[wt,wt,wt,pt[1]],or=[vt,",",wt,"L",ea(ot,Jt),",",ea(ot,Rt)];for(de.push(de[$e-1]);++Re<=$e;)pt=de[Re],Jt.shift(),Jt.push(pt[0]),Rt.shift(),Rt.push(pt[1]),ht(or,Jt,Rt);return de.pop(),or.push("L",pt),or.join("")}function cr(de){if(de.length<4)return pc(de);for(var Re=[],$e=-1,pt=de.length,vt,wt=[0],Jt=[0];++$e<3;)vt=de[$e],wt.push(vt[0]),Jt.push(vt[1]);for(Re.push(ea(ot,wt)+","+ea(ot,Jt)),--$e;++$e<pt;)vt=de[$e],wt.shift(),wt.push(vt[0]),Jt.shift(),Jt.push(vt[1]),ht(Re,wt,Jt);return Re.join("")}function hr(de){for(var Re,$e=-1,pt=de.length,vt=pt+4,wt,Jt=[],Rt=[];++$e<4;)wt=de[$e%pt],Jt.push(wt[0]),Rt.push(wt[1]);for(Re=[ea(ot,Jt),",",ea(ot,Rt)],--$e;++$e<vt;)wt=de[$e%pt],Jt.shift(),Jt.push(wt[0]),Rt.shift(),Rt.push(wt[1]),ht(Re,Jt,Rt);return Re.join("")}function jr(de,Re){var $e=de.length-1;if($e)for(var pt=de[0][0],vt=de[0][1],wt=de[$e][0]-pt,Jt=de[$e][1]-vt,Rt=-1,or,Dr;++Rt<=$e;)or=de[Rt],Dr=Rt/$e,or[0]=Re*or[0]+(1-Re)*(pt+Dr*wt),or[1]=Re*or[1]+(1-Re)*(vt+Dr*Jt);return Yt(de)}function ea(de,Re){return de[0]*Re[0]+de[1]*Re[1]+de[2]*Re[2]+de[3]*Re[3]}var qe=[0,2/3,1/3,0],Je=[0,1/3,2/3,0],ot=[0,1/6,2/3,1/6];function ht(de,Re,$e){de.push("C",ea(qe,Re),",",ea(qe,$e),",",ea(Je,Re),",",ea(Je,$e),",",ea(ot,Re),",",ea(ot,$e))}function At(de,Re){return(Re[1]-de[1])/(Re[0]-de[0])}function _t(de){for(var Re=0,$e=de.length-1,pt=[],vt=de[0],wt=de[1],Jt=pt[0]=At(vt,wt);++Re<$e;)pt[Re]=(Jt+(Jt=At(vt=wt,wt=de[Re+1])))/2;return pt[Re]=Jt,pt}function Pt(de){for(var Re=[],$e,pt,vt,wt,Jt=_t(de),Rt=-1,or=de.length-1;++Rt<or;)$e=At(de[Rt],de[Rt+1]),l($e)<Ke?Jt[Rt]=Jt[Rt+1]=0:(pt=Jt[Rt]/$e,vt=Jt[Rt+1]/$e,wt=pt*pt+vt*vt,wt>9&&(wt=$e*3/Math.sqrt(wt),Jt[Rt]=wt*pt,Jt[Rt+1]=wt*vt));for(Rt=-1;++Rt<=or;)wt=(de[Math.min(or,Rt+1)][0]-de[Math.max(0,Rt-1)][0])/(6*(1+Jt[Rt]*Jt[Rt])),Re.push([wt||0,Jt[Rt]*wt||0]);return Re}function er(de){return de.length<3?pc(de):de[0]+bt(de,Pt(de))}g.svg.line.radial=function(){var de=Nc(nr);return de.radius=de.x,delete de.x,de.angle=de.y,delete de.y,de};function nr(de){for(var Re,$e=-1,pt=de.length,vt,wt;++$e<pt;)Re=de[$e],vt=Re[0],wt=Re[1]-Te,Re[0]=vt*Math.cos(wt),Re[1]=vt*Math.sin(wt);return de}function pr(de){var Re=Lo,$e=Lo,pt=0,vt=Xi,wt=Po,Jt=pc,Rt=Jt.key,or=Jt,Dr="L",Or=.7;function va(fa){var Va=[],Xa=[],_a=[],Ra=-1,Na=fa.length,Qa,Ya=$r(Re),Da=$r(pt),zi=Re===$e?function(){return Qi}:$r($e),Ni=pt===vt?function(){return hn}:$r(vt),Qi,hn;function Un(){Va.push("M",Jt(de(_a),Or),Dr,or(de(Xa.reverse()),Or),"Z")}for(;++Ra<Na;)wt.call(this,Qa=fa[Ra],Ra)?(Xa.push([Qi=+Ya.call(this,Qa,Ra),hn=+Da.call(this,Qa,Ra)]),_a.push([+zi.call(this,Qa,Ra),+Ni.call(this,Qa,Ra)])):Xa.length&&(Un(),Xa=[],_a=[]);return Xa.length&&Un(),Va.length?Va.join(""):null}return va.x=function(fa){return arguments.length?(Re=$e=fa,va):$e},va.x0=function(fa){return arguments.length?(Re=fa,va):Re},va.x1=function(fa){return arguments.length?($e=fa,va):$e},va.y=function(fa){return arguments.length?(pt=vt=fa,va):vt},va.y0=function(fa){return arguments.length?(pt=fa,va):pt},va.y1=function(fa){return arguments.length?(vt=fa,va):vt},va.defined=function(fa){return arguments.length?(wt=fa,va):wt},va.interpolate=function(fa){return arguments.length?(typeof fa=="function"?Rt=Jt=fa:Rt=(Jt=hc.get(fa)||pc).key,or=Jt.reverse||Jt,Dr=Jt.closed?"M":"L",va):Rt},va.tension=function(fa){return arguments.length?(Or=fa,va):Or},va}ae.reverse=we,we.reverse=ae,g.svg.area=function(){return pr(F)},g.svg.area.radial=function(){var de=pr(nr);return de.radius=de.x,delete de.x,de.innerRadius=de.x0,delete de.x0,de.outerRadius=de.x1,delete de.x1,de.angle=de.y,delete de.y,de.startAngle=de.y0,delete de.y0,de.endAngle=de.y1,delete de.y1,de};function Sr(de){return de.source}function Wr(de){return de.target}g.svg.chord=function(){var de=Sr,Re=Wr,$e=ha,pt=yu,vt=Bc;function wt(Or,va){var fa=Jt(this,de,Or,va),Va=Jt(this,Re,Or,va);return"M"+fa.p0+or(fa.r,fa.p1,fa.a1-fa.a0)+(Rt(fa,Va)?Dr(fa.r,fa.p1,fa.r,fa.p0):Dr(fa.r,fa.p1,Va.r,Va.p0)+or(Va.r,Va.p1,Va.a1-Va.a0)+Dr(Va.r,Va.p1,fa.r,fa.p0))+"Z"}function Jt(Or,va,fa,Va){var Xa=va.call(Or,fa,Va),_a=$e.call(Or,Xa,Va),Ra=pt.call(Or,Xa,Va)-Te,Na=vt.call(Or,Xa,Va)-Te;return{r:_a,a0:Ra,a1:Na,p0:[_a*Math.cos(Ra),_a*Math.sin(Ra)],p1:[_a*Math.cos(Na),_a*Math.sin(Na)]}}function Rt(Or,va){return Or.a0==va.a0&&Or.a1==va.a1}function or(Or,va,fa){return"A"+Or+","+Or+" 0 "+ +(fa>Ee)+",1 "+va}function Dr(Or,va,fa,Va){return"Q 0,0 "+Va}return wt.radius=function(Or){return arguments.length?($e=$r(Or),wt):$e},wt.source=function(Or){return arguments.length?(de=$r(Or),wt):de},wt.target=function(Or){return arguments.length?(Re=$r(Or),wt):Re},wt.startAngle=function(Or){return arguments.length?(pt=$r(Or),wt):pt},wt.endAngle=function(Or){return arguments.length?(vt=$r(Or),wt):vt},wt};function ha(de){return de.radius}g.svg.diagonal=function(){var de=Sr,Re=Wr,$e=ga;function pt(vt,wt){var Jt=de.call(this,vt,wt),Rt=Re.call(this,vt,wt),or=(Jt.y+Rt.y)/2,Dr=[Jt,{x:Jt.x,y:or},{x:Rt.x,y:or},Rt];return Dr=Dr.map($e),"M"+Dr[0]+"C"+Dr[1]+" "+Dr[2]+" "+Dr[3]}return pt.source=function(vt){return arguments.length?(de=$r(vt),pt):de},pt.target=function(vt){return arguments.length?(Re=$r(vt),pt):Re},pt.projection=function(vt){return arguments.length?($e=vt,pt):$e},pt};function ga(de){return[de.x,de.y]}g.svg.diagonal.radial=function(){var de=g.svg.diagonal(),Re=ga,$e=de.projection;return de.projection=function(pt){return arguments.length?$e(Pa(Re=pt)):Re},de};function Pa(de){return function(){var Re=de.apply(this,arguments),$e=Re[0],pt=Re[1]-Te;return[$e*Math.cos(pt),$e*Math.sin(pt)]}}g.svg.symbol=function(){var de=di,Re=Ja;function $e(pt,vt){return(Ci.get(de.call(this,pt,vt))||pi)(Re.call(this,pt,vt))}return $e.type=function(pt){return arguments.length?(de=$r(pt),$e):de},$e.size=function(pt){return arguments.length?(Re=$r(pt),$e):Re},$e};function Ja(){return 64}function di(){return"circle"}function pi(de){var Re=Math.sqrt(de/Ee);return"M0,"+Re+"A"+Re+","+Re+" 0 1,1 0,"+-Re+"A"+Re+","+Re+" 0 1,1 0,"+Re+"Z"}var Ci=g.map({circle:pi,cross:function(de){var Re=Math.sqrt(de/5)/2;return"M"+-3*Re+","+-Re+"H"+-Re+"V"+-3*Re+"H"+Re+"V"+-Re+"H"+3*Re+"V"+Re+"H"+Re+"V"+3*Re+"H"+-Re+"V"+Re+"H"+-3*Re+"Z"},diamond:function(de){var Re=Math.sqrt(de/(2*Bn)),$e=Re*Bn;return"M0,"+-Re+"L"+$e+",0 0,"+Re+" "+-$e+",0Z"},square:function(de){var Re=Math.sqrt(de)/2;return"M"+-Re+","+-Re+"L"+Re+","+-Re+" "+Re+","+Re+" "+-Re+","+Re+"Z"},"triangle-down":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+$e+"L"+Re+","+-$e+" "+-Re+","+-$e+"Z"},"triangle-up":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+-$e+"L"+Re+","+$e+" "+-Re+","+$e+"Z"}});g.svg.symbolTypes=Ci.keys();var $i=Math.sqrt(3),Bn=Math.tan(30*Le);ne.transition=function(de){for(var Re=ls||++Vo,$e=Go(de),pt=[],vt,wt,Jt=rl||{time:Date.now(),ease:cu,delay:0,duration:250},Rt=-1,or=this.length;++Rt<or;){pt.push(vt=[]);for(var Dr=this[Rt],Or=-1,va=Dr.length;++Or<va;)(wt=Dr[Or])&&Rl(wt,Or,$e,Re,Jt),vt.push(wt)}return ts(pt,$e,Re)},ne.interrupt=function(de){return this.each(de==null?Sn:ho(Go(de)))};var Sn=ho(Go());function ho(de){return function(){var Re,$e,pt;(Re=this[de])&&(pt=Re[$e=Re.active])&&(pt.timer.c=null,pt.timer.t=NaN,--Re.count?delete Re[$e]:delete this[de],Re.active+=.5,pt.event&&pt.event.interrupt.call(this,this.__data__,pt.index))}}function ts(de,Re,$e){return G(de,yo),de.namespace=Re,de.id=$e,de}var yo=[],Vo=0,ls,rl;yo.call=ne.call,yo.empty=ne.empty,yo.node=ne.node,yo.size=ne.size,g.transition=function(de,Re){return de&&de.transition?ls?de.transition(Re):de:g.selection().transition(de)},g.transition.prototype=yo,yo.select=function(de){var Re=this.id,$e=this.namespace,pt=[],vt,wt,Jt;de=j(de);for(var Rt=-1,or=this.length;++Rt<or;){pt.push(vt=[]);for(var Dr=this[Rt],Or=-1,va=Dr.length;++Or<va;)(Jt=Dr[Or])&&(wt=de.call(Jt,Jt.__data__,Or,Rt))?("__data__"in Jt&&(wt.__data__=Jt.__data__),Rl(wt,Or,$e,Re,Jt[$e][Re]),vt.push(wt)):vt.push(null)}return ts(pt,$e,Re)},yo.selectAll=function(de){var Re=this.id,$e=this.namespace,pt=[],vt,wt,Jt,Rt,or;de=ee(de);for(var Dr=-1,Or=this.length;++Dr<Or;)for(var va=this[Dr],fa=-1,Va=va.length;++fa<Va;)if(Jt=va[fa]){or=Jt[$e][Re],wt=de.call(Jt,Jt.__data__,fa,Dr),pt.push(vt=[]);for(var Xa=-1,_a=wt.length;++Xa<_a;)(Rt=wt[Xa])&&Rl(Rt,Xa,$e,Re,or),vt.push(Rt)}return ts(pt,$e,Re)},yo.filter=function(de){var Re=[],$e,pt,vt;typeof de!="function"&&(de=ce(de));for(var wt=0,Jt=this.length;wt<Jt;wt++){Re.push($e=[]);for(var pt=this[wt],Rt=0,or=pt.length;Rt<or;Rt++)(vt=pt[Rt])&&de.call(vt,vt.__data__,Rt,wt)&&$e.push(vt)}return ts(Re,this.namespace,this.id)},yo.tween=function(de,Re){var $e=this.id,pt=this.namespace;return arguments.length<2?this.node()[pt][$e].tween.get(de):tt(this,Re==null?function(vt){vt[pt][$e].tween.remove(de)}:function(vt){vt[pt][$e].tween.set(de,Re)})};function Ys(de,Re,$e,pt){var vt=de.id,wt=de.namespace;return tt(de,typeof $e=="function"?function(Jt,Rt,or){Jt[wt][vt].tween.set(Re,pt($e.call(Jt,Jt.__data__,Rt,or)))}:($e=pt($e),function(Jt){Jt[wt][vt].tween.set(Re,$e)}))}yo.attr=function(de,Re){if(arguments.length<2){for(Re in de)this.attr(Re,de[Re]);return this}var $e=de=="transform"?df:zl,pt=g.ns.qualify(de);function vt(){this.removeAttribute(pt)}function wt(){this.removeAttributeNS(pt.space,pt.local)}function Jt(or){return or==null?vt:(or+="",function(){var Dr=this.getAttribute(pt),Or;return Dr!==or&&(Or=$e(Dr,or),function(va){this.setAttribute(pt,Or(va))})})}function Rt(or){return or==null?wt:(or+="",function(){var Dr=this.getAttributeNS(pt.space,pt.local),Or;return Dr!==or&&(Or=$e(Dr,or),function(va){this.setAttributeNS(pt.space,pt.local,Or(va))})})}return Ys(this,"attr."+de,Re,pt.local?Rt:Jt)},yo.attrTween=function(de,Re){var $e=g.ns.qualify(de);function pt(wt,Jt){var Rt=Re.call(this,wt,Jt,this.getAttribute($e));return Rt&&function(or){this.setAttribute($e,Rt(or))}}function vt(wt,Jt){var Rt=Re.call(this,wt,Jt,this.getAttributeNS($e.space,$e.local));return Rt&&function(or){this.setAttributeNS($e.space,$e.local,Rt(or))}}return this.tween("attr."+de,$e.local?vt:pt)},yo.style=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re="");for($e in de)this.style($e,de[$e],Re);return this}$e=""}function vt(){this.style.removeProperty(de)}function wt(Jt){return Jt==null?vt:(Jt+="",function(){var Rt=t(this).getComputedStyle(this,null).getPropertyValue(de),or;return Rt!==Jt&&(or=zl(Rt,Jt),function(Dr){this.style.setProperty(de,or(Dr),$e)})})}return Ys(this,"style."+de,Re,wt)},yo.styleTween=function(de,Re,$e){arguments.length<3&&($e="");function pt(vt,wt){var Jt=Re.call(this,vt,wt,t(this).getComputedStyle(this,null).getPropertyValue(de));return Jt&&function(Rt){this.style.setProperty(de,Jt(Rt),$e)}}return this.tween("style."+de,pt)},yo.text=function(de){return Ys(this,"text",de,Zo)};function Zo(de){return de==null&&(de=""),function(){this.textContent=de}}yo.remove=function(){var de=this.namespace;return this.each("end.transition",function(){var Re;this[de].count<2&&(Re=this.parentNode)&&Re.removeChild(this)})},yo.ease=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].ease:(typeof de!="function"&&(de=g.ease.apply(g,arguments)),tt(this,function(pt){pt[$e][Re].ease=de}))},yo.delay=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].delay:tt(this,typeof de=="function"?function(pt,vt,wt){pt[$e][Re].delay=+de.call(pt,pt.__data__,vt,wt)}:(de=+de,function(pt){pt[$e][Re].delay=de}))},yo.duration=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].duration:tt(this,typeof de=="function"?function(pt,vt,wt){pt[$e][Re].duration=Math.max(1,de.call(pt,pt.__data__,vt,wt))}:(de=Math.max(1,de),function(pt){pt[$e][Re].duration=de}))},yo.each=function(de,Re){var $e=this.id,pt=this.namespace;if(arguments.length<2){var vt=rl,wt=ls;try{ls=$e,tt(this,function(Jt,Rt,or){rl=Jt[pt][$e],de.call(Jt,Jt.__data__,Rt,or)})}finally{rl=vt,ls=wt}}else tt(this,function(Jt){var Rt=Jt[pt][$e];(Rt.event||(Rt.event=g.dispatch("start","end","interrupt"))).on(de,Re)});return this},yo.transition=function(){for(var de=this.id,Re=++Vo,$e=this.namespace,pt=[],vt,wt,Jt,Rt,or=0,Dr=this.length;or<Dr;or++){pt.push(vt=[]);for(var wt=this[or],Or=0,va=wt.length;Or<va;Or++)(Jt=wt[Or])&&(Rt=Jt[$e][de],Rl(Jt,Or,$e,Re,{time:Rt.time,ease:Rt.ease,delay:Rt.delay+Rt.duration,duration:Rt.duration})),vt.push(Jt)}return ts(pt,$e,Re)};function Go(de){return de==null?"__transition__":"__transition_"+de+"__"}function Rl(de,Re,$e,pt,vt){var wt=de[$e]||(de[$e]={active:0,count:0}),Jt=wt[pt],Rt,or,Dr,Or,va;function fa(_a){var Ra=Jt.delay;if(or.t=Ra+Rt,Ra<=_a)return Va(_a-Ra);or.c=Va}function Va(_a){var Ra=wt.active,Na=wt[Ra];Na&&(Na.timer.c=null,Na.timer.t=NaN,--wt.count,delete wt[Ra],Na.event&&Na.event.interrupt.call(de,de.__data__,Na.index));for(var Qa in wt)if(+Qa<pt){var Ya=wt[Qa];Ya.timer.c=null,Ya.timer.t=NaN,--wt.count,delete wt[Qa]}or.c=Xa,Mn(function(){return or.c&&Xa(_a||1)&&(or.c=null,or.t=NaN),1},0,Rt),wt.active=pt,Jt.event&&Jt.event.start.call(de,de.__data__,Re),va=[],Jt.tween.forEach(function(Da,zi){(zi=zi.call(de,de.__data__,Re))&&va.push(zi)}),Or=Jt.ease,Dr=Jt.duration}function Xa(_a){for(var Ra=_a/Dr,Na=Or(Ra),Qa=va.length;Qa>0;)va[--Qa].call(de,Na);if(Ra>=1)return Jt.event&&Jt.event.end.call(de,de.__data__,Re),--wt.count?delete wt[pt]:delete de[$e],1}Jt||(Rt=vt.time,or=Mn(fa,0,Rt),Jt=wt[pt]={tween:new S,time:Rt,timer:or,delay:vt.delay,duration:vt.duration,ease:vt.ease,index:Re},vt=null,++wt.count)}g.svg.axis=function(){var de=g.scale.linear(),Re=Xl,$e=6,pt=6,vt=3,wt=[10],Jt=null,Rt;function or(Dr){Dr.each(function(){var Or=g.select(this),va=this.__chart__||de,fa=this.__chart__=de.copy(),Va=Jt??(fa.ticks?fa.ticks.apply(fa,wt):fa.domain()),Xa=Rt??(fa.tickFormat?fa.tickFormat.apply(fa,wt):F),_a=Or.selectAll(".tick").data(Va,fa),Ra=_a.enter().insert("g",".domain").attr("class","tick").style("opacity",Ke),Na=g.transition(_a.exit()).style("opacity",Ke).remove(),Qa=g.transition(_a.order()).style("opacity",1),Ya=Math.max($e,0)+vt,Da,zi=ki(fa),Ni=Or.selectAll(".domain").data([0]),Qi=(Ni.enter().append("path").attr("class","domain"),g.transition(Ni));Ra.append("line"),Ra.append("text");var hn=Ra.select("line"),Un=Qa.select("line"),Vn=_a.select("text").text(Xa),No=Ra.select("text"),Gn=Qa.select("text"),Fo=Re==="top"||Re==="left"?-1:1,Ks,Gs,sl,Vi;if(Re==="bottom"||Re==="top"?(Da=fu,Ks="x",sl="y",Gs="x2",Vi="y2",Vn.attr("dy",Fo<0?"0em":".71em").style("text-anchor","middle"),Qi.attr("d","M"+zi[0]+","+Fo*pt+"V0H"+zi[1]+"V"+Fo*pt)):(Da=bl,Ks="y",sl="x",Gs="y2",Vi="x2",Vn.attr("dy",".32em").style("text-anchor",Fo<0?"end":"start"),Qi.attr("d","M"+Fo*pt+","+zi[0]+"H0V"+zi[1]+"H"+Fo*pt)),hn.attr(Vi,Fo*$e),No.attr(sl,Fo*Ya),Un.attr(Gs,0).attr(Vi,Fo*$e),Gn.attr(Ks,0).attr(sl,Fo*Ya),fa.rangeBand){var ao=fa,ns=ao.rangeBand()/2;va=fa=function(hs){return ao(hs)+ns}}else va.rangeBand?va=fa:Na.call(Da,fa,va);Ra.call(Da,va,fa),Qa.call(Da,fa,fa)})}return or.scale=function(Dr){return arguments.length?(de=Dr,or):de},or.orient=function(Dr){return arguments.length?(Re=Dr in qu?Dr+"":Xl,or):Re},or.ticks=function(){return arguments.length?(wt=A(arguments),or):wt},or.tickValues=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.tickFormat=function(Dr){return arguments.length?(Rt=Dr,or):Rt},or.tickSize=function(Dr){var Or=arguments.length;return Or?($e=+Dr,pt=+arguments[Or-1],or):$e},or.innerTickSize=function(Dr){return arguments.length?($e=+Dr,or):$e},or.outerTickSize=function(Dr){return arguments.length?(pt=+Dr,or):pt},or.tickPadding=function(Dr){return arguments.length?(vt=+Dr,or):vt},or.tickSubdivide=function(){return arguments.length&&or},or};var Xl="bottom",qu={top:1,right:1,bottom:1,left:1};function fu(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate("+(isFinite(vt)?vt:$e(pt))+",0)"})}function bl(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate(0,"+(isFinite(vt)?vt:$e(pt))+")"})}g.svg.brush=function(){var de=se(Or,"brushstart","brush","brushend"),Re=null,$e=null,pt=[0,0],vt=[0,0],wt,Jt,Rt=!0,or=!0,Dr=Sc[0];function Or(_a){_a.each(function(){var Ra=g.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Xa).on("touchstart.brush",Xa),Na=Ra.selectAll(".background").data([0]);Na.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ra.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Qa=Ra.selectAll(".resize").data(Dr,F);Qa.exit().remove(),Qa.enter().append("g").attr("class",function(Ni){return"resize "+Ni}).style("cursor",function(Ni){return ou[Ni]}).append("rect").attr("x",function(Ni){return/[ew]$/.test(Ni)?-3:null}).attr("y",function(Ni){return/^[ns]/.test(Ni)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Qa.style("display",Or.empty()?"none":null);var Ya=g.transition(Ra),Da=g.transition(Na),zi;Re&&(zi=ki(Re),Da.attr("x",zi[0]).attr("width",zi[1]-zi[0]),fa(Ya)),$e&&(zi=ki($e),Da.attr("y",zi[0]).attr("height",zi[1]-zi[0]),Va(Ya)),va(Ya)})}Or.event=function(_a){_a.each(function(){var Ra=de.of(this,arguments),Na={x:pt,y:vt,i:wt,j:Jt},Qa=this.__chart__||Na;this.__chart__=Na,ls?g.select(this).transition().each("start.brush",function(){wt=Qa.i,Jt=Qa.j,pt=Qa.x,vt=Qa.y,Ra({type:"brushstart"})}).tween("brush:brush",function(){var Ya=Yu(pt,Na.x),Da=Yu(vt,Na.y);return wt=Jt=null,function(zi){pt=Na.x=Ya(zi),vt=Na.y=Da(zi),Ra({type:"brush",mode:"resize"})}}).each("end.brush",function(){wt=Na.i,Jt=Na.j,Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"})}):(Ra({type:"brushstart"}),Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"}))})};function va(_a){_a.selectAll(".resize").attr("transform",function(Ra){return"translate("+pt[+/e$/.test(Ra)]+","+vt[+/^s/.test(Ra)]+")"})}function fa(_a){_a.select(".extent").attr("x",pt[0]),_a.selectAll(".extent,.n>rect,.s>rect").attr("width",pt[1]-pt[0])}function Va(_a){_a.select(".extent").attr("y",vt[0]),_a.selectAll(".extent,.e>rect,.w>rect").attr("height",vt[1]-vt[0])}function Xa(){var _a=this,Ra=g.select(g.event.target),Na=de.of(_a,arguments),Qa=g.select(_a),Ya=Ra.datum(),Da=!/^(n|s)$/.test(Ya)&&Re,zi=!/^(e|w)$/.test(Ya)&&$e,Ni=Ra.classed("extent"),Qi=vr(_a),hn,Un=g.mouse(_a),Vn,No=g.select(t(_a)).on("keydown.brush",Ks).on("keyup.brush",Gs);if(g.event.changedTouches?No.on("touchmove.brush",sl).on("touchend.brush",ao):No.on("mousemove.brush",sl).on("mouseup.brush",ao),Qa.interrupt().selectAll("*").interrupt(),Ni)Un[0]=pt[0]-Un[0],Un[1]=vt[0]-Un[1];else if(Ya){var Gn=+/w$/.test(Ya),Fo=+/^n/.test(Ya);Vn=[pt[1-Gn]-Un[0],vt[1-Fo]-Un[1]],Un[0]=pt[Gn],Un[1]=vt[Fo]}else g.event.altKey&&(hn=Un.slice());Qa.style("pointer-events","none").selectAll(".resize").style("display",null),g.select("body").style("cursor",Ra.style("cursor")),Na({type:"brushstart"}),sl();function Ks(){g.event.keyCode==32&&(Ni||(hn=null,Un[0]-=pt[1],Un[1]-=vt[1],Ni=2),Q())}function Gs(){g.event.keyCode==32&&Ni==2&&(Un[0]+=pt[1],Un[1]+=vt[1],Ni=0,Q())}function sl(){var ns=g.mouse(_a),hs=!1;Vn&&(ns[0]+=Vn[0],ns[1]+=Vn[1]),Ni||(g.event.altKey?(hn||(hn=[(pt[0]+pt[1])/2,(vt[0]+vt[1])/2]),Un[0]=pt[+(ns[0]<hn[0])],Un[1]=vt[+(ns[1]<hn[1])]):hn=null),Da&&Vi(ns,Re,0)&&(fa(Qa),hs=!0),zi&&Vi(ns,$e,1)&&(Va(Qa),hs=!0),hs&&(va(Qa),Na({type:"brush",mode:Ni?"move":"resize"}))}function Vi(ns,hs,hl){var Dl=ki(hs),hu=Dl[0],Ll=Dl[1],dc=Un[hl],Qt=hl?vt:pt,ra=Qt[1]-Qt[0],Ta,si;if(Ni&&(hu-=dc,Ll-=ra+dc),Ta=(hl?or:Rt)?Math.max(hu,Math.min(Ll,ns[hl])):ns[hl],Ni?si=(Ta+=dc)+ra:(hn&&(dc=Math.max(hu,Math.min(Ll,2*hn[hl]-Ta))),dc<Ta?(si=Ta,Ta=dc):si=dc),Qt[0]!=Ta||Qt[1]!=si)return hl?Jt=null:wt=null,Qt[0]=Ta,Qt[1]=si,!0}function ao(){sl(),Qa.style("pointer-events","all").selectAll(".resize").style("display",Or.empty()?"none":null),g.select("body").style("cursor",null),No.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),Qi(),Na({type:"brushend"})}}return Or.x=function(_a){return arguments.length?(Re=_a,Dr=Sc[!Re<<1|!$e],Or):Re},Or.y=function(_a){return arguments.length?($e=_a,Dr=Sc[!Re<<1|!$e],Or):$e},Or.clamp=function(_a){return arguments.length?(Re&&$e?(Rt=!!_a[0],or=!!_a[1]):Re?Rt=!!_a:$e&&(or=!!_a),Or):Re&&$e?[Rt,or]:Re?Rt:$e?or:null},Or.extent=function(_a){var Ra,Na,Qa,Ya,Da;return arguments.length?(Re&&(Ra=_a[0],Na=_a[1],$e&&(Ra=Ra[0],Na=Na[0]),wt=[Ra,Na],Re.invert&&(Ra=Re(Ra),Na=Re(Na)),Na<Ra&&(Da=Ra,Ra=Na,Na=Da),(Ra!=pt[0]||Na!=pt[1])&&(pt=[Ra,Na])),$e&&(Qa=_a[0],Ya=_a[1],Re&&(Qa=Qa[1],Ya=Ya[1]),Jt=[Qa,Ya],$e.invert&&(Qa=$e(Qa),Ya=$e(Ya)),Ya<Qa&&(Da=Qa,Qa=Ya,Ya=Da),(Qa!=vt[0]||Ya!=vt[1])&&(vt=[Qa,Ya])),Or):(Re&&(wt?(Ra=wt[0],Na=wt[1]):(Ra=pt[0],Na=pt[1],Re.invert&&(Ra=Re.invert(Ra),Na=Re.invert(Na)),Na<Ra&&(Da=Ra,Ra=Na,Na=Da))),$e&&(Jt?(Qa=Jt[0],Ya=Jt[1]):(Qa=vt[0],Ya=vt[1],$e.invert&&(Qa=$e.invert(Qa),Ya=$e.invert(Ya)),Ya<Qa&&(Da=Qa,Qa=Ya,Ya=Da))),Re&&$e?[[Ra,Qa],[Na,Ya]]:Re?[Ra,Na]:$e&&[Qa,Ya])},Or.clear=function(){return Or.empty()||(pt=[0,0],vt=[0,0],wt=Jt=null),Or},Or.empty=function(){return!!Re&&pt[0]==pt[1]||!!$e&&vt[0]==vt[1]},g.rebind(Or,de,"on")};var ou={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Sc=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];g.text=ma(function(de){return de.responseText}),g.json=function(de,Re){return Ba(de,"application/json",ql,Re)};function ql(de){return JSON.parse(de.responseText)}g.html=function(de,Re){return Ba(de,"text/html",Hl,Re)};function Hl(de){var Re=M.createRange();return Re.selectNode(M.body),Re.createContextualFragment(de.responseText)}g.xml=ma(function(de){return de.responseXML}),typeof H=="object"&&H.exports?H.exports=g:this.d3=g}).apply(self)}}),$p=Ye({"node_modules/d3-time/dist/d3-time.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=new Date,A=new Date;function M(ce,ze,tt,nt){function Qe(Ct){return ce(Ct=arguments.length===0?new Date:new Date(+Ct)),Ct}return Qe.floor=function(Ct){return ce(Ct=new Date(+Ct)),Ct},Qe.ceil=function(Ct){return ce(Ct=new Date(Ct-1)),ze(Ct,1),ce(Ct),Ct},Qe.round=function(Ct){var St=Qe(Ct),Ot=Qe.ceil(Ct);return Ct-St<Ot-Ct?St:Ot},Qe.offset=function(Ct,St){return ze(Ct=new Date(+Ct),St==null?1:Math.floor(St)),Ct},Qe.range=function(Ct,St,Ot){var jt=[],ur;if(Ct=Qe.ceil(Ct),Ot=Ot==null?1:Math.floor(Ot),!(Ct<St)||!(Ot>0))return jt;do jt.push(ur=new Date(+Ct)),ze(Ct,Ot),ce(Ct);while(ur<Ct&&Ct<St);return jt},Qe.filter=function(Ct){return M(function(St){if(St>=St)for(;ce(St),!Ct(St);)St.setTime(St-1)},function(St,Ot){if(St>=St)if(Ot<0)for(;++Ot<=0;)for(;ze(St,-1),!Ct(St););else for(;--Ot>=0;)for(;ze(St,1),!Ct(St););})},tt&&(Qe.count=function(Ct,St){return x.setTime(+Ct),A.setTime(+St),ce(x),ce(A),Math.floor(tt(x,A))},Qe.every=function(Ct){return Ct=Math.floor(Ct),!isFinite(Ct)||!(Ct>0)?null:Ct>1?Qe.filter(nt?function(St){return nt(St)%Ct===0}:function(St){return Qe.count(0,St)%Ct===0}):Qe}),Qe}var e=M(function(){},function(ce,ze){ce.setTime(+ce+ze)},function(ce,ze){return ze-ce});e.every=function(ce){return ce=Math.floor(ce),!isFinite(ce)||!(ce>0)?null:ce>1?M(function(ze){ze.setTime(Math.floor(ze/ce)*ce)},function(ze,tt){ze.setTime(+ze+tt*ce)},function(ze,tt){return(tt-ze)/ce}):e};var t=e.range,r=1e3,o=6e4,a=36e5,i=864e5,n=6048e5,s=M(function(ce){ce.setTime(ce-ce.getMilliseconds())},function(ce,ze){ce.setTime(+ce+ze*r)},function(ce,ze){return(ze-ce)/r},function(ce){return ce.getUTCSeconds()}),c=s.range,h=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getMinutes()}),v=h.range,p=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r-ce.getMinutes()*o)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getHours()}),T=p.range,l=M(function(ce){ce.setHours(0,0,0,0)},function(ce,ze){ce.setDate(ce.getDate()+ze)},function(ce,ze){return(ze-ce-(ze.getTimezoneOffset()-ce.getTimezoneOffset())*o)/i},function(ce){return ce.getDate()-1}),_=l.range;function w(ce){return M(function(ze){ze.setDate(ze.getDate()-(ze.getDay()+7-ce)%7),ze.setHours(0,0,0,0)},function(ze,tt){ze.setDate(ze.getDate()+tt*7)},function(ze,tt){return(tt-ze-(tt.getTimezoneOffset()-ze.getTimezoneOffset())*o)/n})}var S=w(0),E=w(1),m=w(2),b=w(3),d=w(4),u=w(5),y=w(6),f=S.range,P=E.range,L=m.range,z=b.range,F=d.range,B=u.range,O=y.range,I=M(function(ce){ce.setDate(1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setMonth(ce.getMonth()+ze)},function(ce,ze){return ze.getMonth()-ce.getMonth()+(ze.getFullYear()-ce.getFullYear())*12},function(ce){return ce.getMonth()}),N=I.range,U=M(function(ce){ce.setMonth(0,1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setFullYear(ce.getFullYear()+ze)},function(ce,ze){return ze.getFullYear()-ce.getFullYear()},function(ce){return ce.getFullYear()});U.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setFullYear(Math.floor(ze.getFullYear()/ce)*ce),ze.setMonth(0,1),ze.setHours(0,0,0,0)},function(ze,tt){ze.setFullYear(ze.getFullYear()+tt*ce)})};var W=U.range,Q=M(function(ce){ce.setUTCSeconds(0,0)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getUTCMinutes()}),ue=Q.range,se=M(function(ce){ce.setUTCMinutes(0,0,0)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getUTCHours()}),he=se.range,G=M(function(ce){ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCDate(ce.getUTCDate()+ze)},function(ce,ze){return(ze-ce)/i},function(ce){return ce.getUTCDate()-1}),$=G.range;function J(ce){return M(function(ze){ze.setUTCDate(ze.getUTCDate()-(ze.getUTCDay()+7-ce)%7),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCDate(ze.getUTCDate()+tt*7)},function(ze,tt){return(tt-ze)/n})}var Z=J(0),re=J(1),ne=J(2),j=J(3),ee=J(4),ie=J(5),fe=J(6),be=Z.range,Ae=re.range,Be=ne.range,Ie=j.range,Ze=ee.range,at=ie.range,it=fe.range,et=M(function(ce){ce.setUTCDate(1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCMonth(ce.getUTCMonth()+ze)},function(ce,ze){return ze.getUTCMonth()-ce.getUTCMonth()+(ze.getUTCFullYear()-ce.getUTCFullYear())*12},function(ce){return ce.getUTCMonth()}),lt=et.range,Me=M(function(ce){ce.setUTCMonth(0,1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCFullYear(ce.getUTCFullYear()+ze)},function(ce,ze){return ze.getUTCFullYear()-ce.getUTCFullYear()},function(ce){return ce.getUTCFullYear()});Me.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setUTCFullYear(Math.floor(ze.getUTCFullYear()/ce)*ce),ze.setUTCMonth(0,1),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCFullYear(ze.getUTCFullYear()+tt*ce)})};var ge=Me.range;g.timeDay=l,g.timeDays=_,g.timeFriday=u,g.timeFridays=B,g.timeHour=p,g.timeHours=T,g.timeInterval=M,g.timeMillisecond=e,g.timeMilliseconds=t,g.timeMinute=h,g.timeMinutes=v,g.timeMonday=E,g.timeMondays=P,g.timeMonth=I,g.timeMonths=N,g.timeSaturday=y,g.timeSaturdays=O,g.timeSecond=s,g.timeSeconds=c,g.timeSunday=S,g.timeSundays=f,g.timeThursday=d,g.timeThursdays=F,g.timeTuesday=m,g.timeTuesdays=L,g.timeWednesday=b,g.timeWednesdays=z,g.timeWeek=S,g.timeWeeks=f,g.timeYear=U,g.timeYears=W,g.utcDay=G,g.utcDays=$,g.utcFriday=ie,g.utcFridays=at,g.utcHour=se,g.utcHours=he,g.utcMillisecond=e,g.utcMilliseconds=t,g.utcMinute=Q,g.utcMinutes=ue,g.utcMonday=re,g.utcMondays=Ae,g.utcMonth=et,g.utcMonths=lt,g.utcSaturday=fe,g.utcSaturdays=it,g.utcSecond=s,g.utcSeconds=c,g.utcSunday=Z,g.utcSundays=be,g.utcThursday=ee,g.utcThursdays=Ze,g.utcTuesday=ne,g.utcTuesdays=Be,g.utcWednesday=j,g.utcWednesdays=Ie,g.utcWeek=Z,g.utcWeeks=be,g.utcYear=Me,g.utcYears=ge,Object.defineProperty(g,"__esModule",{value:!0})})}}),Np=Ye({"node_modules/d3-time-format/dist/d3-time-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,$p()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ke.setFullYear(Fe.y),Ke}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function M(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ke.setUTCFullYear(Fe.y),Ke}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function e(Fe,Ke,Ne){return{y:Fe,m:Ke,d:Ne,H:0,M:0,S:0,L:0}}function t(Fe){var Ke=Fe.dateTime,Ne=Fe.date,Ee=Fe.time,Ve=Fe.periods,ke=Fe.days,Te=Fe.shortDays,Le=Fe.months,rt=Fe.shortMonths,dt=c(Ve),xt=h(Ve),It=c(ke),Bt=h(ke),Gt=c(Te),Kt=h(Te),sr=c(Le),sa=h(Le),Aa=c(rt),La=h(rt),ka={a:Fa,A:qa,b:ya,B:$a,c:null,d:I,e:I,f:ue,H:N,I:U,j:W,L:Q,m:se,M:he,p:mt,q:gt,Q:St,s:Ot,S:G,u:$,U:J,V:Z,w:re,W:ne,x:null,X:null,y:j,Y:ee,Z:ie,"%":Ct},Ga={a:Er,A:kr,b:br,B:Tr,c:null,d:fe,e:fe,f:Ze,H:be,I:Ae,j:Be,L:Ie,m:at,M:it,p:Mr,q:Fr,Q:St,s:Ot,S:et,u:lt,U:Me,V:ge,w:ce,W:ze,x:null,X:null,y:tt,Y:nt,Z:Qe,"%":Ct},Ma={a:Vt,A:Ut,b:xr,B:Zr,c:pa,d,e:d,f:z,H:y,I:y,j:u,L,m:b,M:f,p:zt,q:m,Q:B,s:O,S:P,u:p,U:T,V:l,w:v,W:_,x:Xr,X:Ea,y:S,Y:w,Z:E,"%":F};ka.x=Ua(Ne,ka),ka.X=Ua(Ee,ka),ka.c=Ua(Ke,ka),Ga.x=Ua(Ne,Ga),Ga.X=Ua(Ee,Ga),Ga.c=Ua(Ke,Ga);function Ua(Lr,Jr){return function(oa){var ca=[],kt=-1,ir=0,mr=Lr.length,$r,ma,Ba;for(oa instanceof Date||(oa=new Date(+oa));++kt<mr;)Lr.charCodeAt(kt)===37&&(ca.push(Lr.slice(ir,kt)),(ma=r[$r=Lr.charAt(++kt)])!=null?$r=Lr.charAt(++kt):ma=$r==="e"?" ":"0",(Ba=Jr[$r])&&($r=Ba(oa,ma)),ca.push($r),ir=kt+1);return ca.push(Lr.slice(ir,kt)),ca.join("")}}function ni(Lr,Jr){return function(oa){var ca=e(1900,void 0,1),kt=Wt(ca,Lr,oa+="",0),ir,mr;if(kt!=oa.length)return null;if("Q"in ca)return new Date(ca.Q);if("s"in ca)return new Date(ca.s*1e3+("L"in ca?ca.L:0));if(Jr&&!("Z"in ca)&&(ca.Z=0),"p"in ca&&(ca.H=ca.H%12+ca.p*12),ca.m===void 0&&(ca.m="q"in ca?ca.q:0),"V"in ca){if(ca.V<1||ca.V>53)return null;"w"in ca||(ca.w=1),"Z"in ca?(ir=M(e(ca.y,0,1)),mr=ir.getUTCDay(),ir=mr>4||mr===0?x.utcMonday.ceil(ir):x.utcMonday(ir),ir=x.utcDay.offset(ir,(ca.V-1)*7),ca.y=ir.getUTCFullYear(),ca.m=ir.getUTCMonth(),ca.d=ir.getUTCDate()+(ca.w+6)%7):(ir=A(e(ca.y,0,1)),mr=ir.getDay(),ir=mr>4||mr===0?x.timeMonday.ceil(ir):x.timeMonday(ir),ir=x.timeDay.offset(ir,(ca.V-1)*7),ca.y=ir.getFullYear(),ca.m=ir.getMonth(),ca.d=ir.getDate()+(ca.w+6)%7)}else("W"in ca||"U"in ca)&&("w"in ca||(ca.w="u"in ca?ca.u%7:"W"in ca?1:0),mr="Z"in ca?M(e(ca.y,0,1)).getUTCDay():A(e(ca.y,0,1)).getDay(),ca.m=0,ca.d="W"in ca?(ca.w+6)%7+ca.W*7-(mr+5)%7:ca.w+ca.U*7-(mr+6)%7);return"Z"in ca?(ca.H+=ca.Z/100|0,ca.M+=ca.Z%100,M(ca)):A(ca)}}function Wt(Lr,Jr,oa,ca){for(var kt=0,ir=Jr.length,mr=oa.length,$r,ma;kt<ir;){if(ca>=mr)return-1;if($r=Jr.charCodeAt(kt++),$r===37){if($r=Jr.charAt(kt++),ma=Ma[$r in r?Jr.charAt(kt++):$r],!ma||(ca=ma(Lr,oa,ca))<0)return-1}else if($r!=oa.charCodeAt(ca++))return-1}return ca}function zt(Lr,Jr,oa){var ca=dt.exec(Jr.slice(oa));return ca?(Lr.p=xt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Vt(Lr,Jr,oa){var ca=Gt.exec(Jr.slice(oa));return ca?(Lr.w=Kt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Ut(Lr,Jr,oa){var ca=It.exec(Jr.slice(oa));return ca?(Lr.w=Bt[ca[0].toLowerCase()],oa+ca[0].length):-1}function xr(Lr,Jr,oa){var ca=Aa.exec(Jr.slice(oa));return ca?(Lr.m=La[ca[0].toLowerCase()],oa+ca[0].length):-1}function Zr(Lr,Jr,oa){var ca=sr.exec(Jr.slice(oa));return ca?(Lr.m=sa[ca[0].toLowerCase()],oa+ca[0].length):-1}function pa(Lr,Jr,oa){return Wt(Lr,Ke,Jr,oa)}function Xr(Lr,Jr,oa){return Wt(Lr,Ne,Jr,oa)}function Ea(Lr,Jr,oa){return Wt(Lr,Ee,Jr,oa)}function Fa(Lr){return Te[Lr.getDay()]}function qa(Lr){return ke[Lr.getDay()]}function ya(Lr){return rt[Lr.getMonth()]}function $a(Lr){return Le[Lr.getMonth()]}function mt(Lr){return Ve[+(Lr.getHours()>=12)]}function gt(Lr){return 1+~~(Lr.getMonth()/3)}function Er(Lr){return Te[Lr.getUTCDay()]}function kr(Lr){return ke[Lr.getUTCDay()]}function br(Lr){return rt[Lr.getUTCMonth()]}function Tr(Lr){return Le[Lr.getUTCMonth()]}function Mr(Lr){return Ve[+(Lr.getUTCHours()>=12)]}function Fr(Lr){return 1+~~(Lr.getUTCMonth()/3)}return{format:function(Lr){var Jr=Ua(Lr+="",ka);return Jr.toString=function(){return Lr},Jr},parse:function(Lr){var Jr=ni(Lr+="",!1);return Jr.toString=function(){return Lr},Jr},utcFormat:function(Lr){var Jr=Ua(Lr+="",Ga);return Jr.toString=function(){return Lr},Jr},utcParse:function(Lr){var Jr=ni(Lr+="",!0);return Jr.toString=function(){return Lr},Jr}}}var r={"-":"",_:" ",0:"0"},o=/^\s*\d+/,a=/^%/,i=/[\\^$*+?|[\]().{}]/g;function n(Fe,Ke,Ne){var Ee=Fe<0?"-":"",Ve=(Ee?-Fe:Fe)+"",ke=Ve.length;return Ee+(ke<Ne?new Array(Ne-ke+1).join(Ke)+Ve:Ve)}function s(Fe){return Fe.replace(i,"\\$&")}function c(Fe){return new RegExp("^(?:"+Fe.map(s).join("|")+")","i")}function h(Fe){for(var Ke={},Ne=-1,Ee=Fe.length;++Ne<Ee;)Ke[Fe[Ne].toLowerCase()]=Ne;return Ke}function v(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.w=+Ee[0],Ne+Ee[0].length):-1}function p(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.u=+Ee[0],Ne+Ee[0].length):-1}function T(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.U=+Ee[0],Ne+Ee[0].length):-1}function l(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.V=+Ee[0],Ne+Ee[0].length):-1}function _(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.W=+Ee[0],Ne+Ee[0].length):-1}function w(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+4));return Ee?(Fe.y=+Ee[0],Ne+Ee[0].length):-1}function S(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.y=+Ee[0]+(+Ee[0]>68?1900:2e3),Ne+Ee[0].length):-1}function E(Fe,Ke,Ne){var Ee=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.Z=Ee[1]?0:-(Ee[2]+(Ee[3]||"00")),Ne+Ee[0].length):-1}function m(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.q=Ee[0]*3-3,Ne+Ee[0].length):-1}function b(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.m=Ee[0]-1,Ne+Ee[0].length):-1}function d(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.d=+Ee[0],Ne+Ee[0].length):-1}function u(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.m=0,Fe.d=+Ee[0],Ne+Ee[0].length):-1}function y(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.H=+Ee[0],Ne+Ee[0].length):-1}function f(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.M=+Ee[0],Ne+Ee[0].length):-1}function P(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.S=+Ee[0],Ne+Ee[0].length):-1}function L(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.L=+Ee[0],Ne+Ee[0].length):-1}function z(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.L=Math.floor(Ee[0]/1e3),Ne+Ee[0].length):-1}function F(Fe,Ke,Ne){var Ee=a.exec(Ke.slice(Ne,Ne+1));return Ee?Ne+Ee[0].length:-1}function B(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.Q=+Ee[0],Ne+Ee[0].length):-1}function O(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.s=+Ee[0],Ne+Ee[0].length):-1}function I(Fe,Ke){return n(Fe.getDate(),Ke,2)}function N(Fe,Ke){return n(Fe.getHours(),Ke,2)}function U(Fe,Ke){return n(Fe.getHours()%12||12,Ke,2)}function W(Fe,Ke){return n(1+x.timeDay.count(x.timeYear(Fe),Fe),Ke,3)}function Q(Fe,Ke){return n(Fe.getMilliseconds(),Ke,3)}function ue(Fe,Ke){return Q(Fe,Ke)+"000"}function se(Fe,Ke){return n(Fe.getMonth()+1,Ke,2)}function he(Fe,Ke){return n(Fe.getMinutes(),Ke,2)}function G(Fe,Ke){return n(Fe.getSeconds(),Ke,2)}function $(Fe){var Ke=Fe.getDay();return Ke===0?7:Ke}function J(Fe,Ke){return n(x.timeSunday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function Z(Fe,Ke){var Ne=Fe.getDay();return Fe=Ne>=4||Ne===0?x.timeThursday(Fe):x.timeThursday.ceil(Fe),n(x.timeThursday.count(x.timeYear(Fe),Fe)+(x.timeYear(Fe).getDay()===4),Ke,2)}function re(Fe){return Fe.getDay()}function ne(Fe,Ke){return n(x.timeMonday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function j(Fe,Ke){return n(Fe.getFullYear()%100,Ke,2)}function ee(Fe,Ke){return n(Fe.getFullYear()%1e4,Ke,4)}function ie(Fe){var Ke=Fe.getTimezoneOffset();return(Ke>0?"-":(Ke*=-1,"+"))+n(Ke/60|0,"0",2)+n(Ke%60,"0",2)}function fe(Fe,Ke){return n(Fe.getUTCDate(),Ke,2)}function be(Fe,Ke){return n(Fe.getUTCHours(),Ke,2)}function Ae(Fe,Ke){return n(Fe.getUTCHours()%12||12,Ke,2)}function Be(Fe,Ke){return n(1+x.utcDay.count(x.utcYear(Fe),Fe),Ke,3)}function Ie(Fe,Ke){return n(Fe.getUTCMilliseconds(),Ke,3)}function Ze(Fe,Ke){return Ie(Fe,Ke)+"000"}function at(Fe,Ke){return n(Fe.getUTCMonth()+1,Ke,2)}function it(Fe,Ke){return n(Fe.getUTCMinutes(),Ke,2)}function et(Fe,Ke){return n(Fe.getUTCSeconds(),Ke,2)}function lt(Fe){var Ke=Fe.getUTCDay();return Ke===0?7:Ke}function Me(Fe,Ke){return n(x.utcSunday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function ge(Fe,Ke){var Ne=Fe.getUTCDay();return Fe=Ne>=4||Ne===0?x.utcThursday(Fe):x.utcThursday.ceil(Fe),n(x.utcThursday.count(x.utcYear(Fe),Fe)+(x.utcYear(Fe).getUTCDay()===4),Ke,2)}function ce(Fe){return Fe.getUTCDay()}function ze(Fe,Ke){return n(x.utcMonday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function tt(Fe,Ke){return n(Fe.getUTCFullYear()%100,Ke,2)}function nt(Fe,Ke){return n(Fe.getUTCFullYear()%1e4,Ke,4)}function Qe(){return"+0000"}function Ct(){return"%"}function St(Fe){return+Fe}function Ot(Fe){return Math.floor(+Fe/1e3)}var jt;ur({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function ur(Fe){return jt=t(Fe),g.timeFormat=jt.format,g.timeParse=jt.parse,g.utcFormat=jt.utcFormat,g.utcParse=jt.utcParse,jt}var ar="%Y-%m-%dT%H:%M:%S.%LZ";function Cr(Fe){return Fe.toISOString()}var vr=Date.prototype.toISOString?Cr:g.utcFormat(ar);function _r(Fe){var Ke=new Date(Fe);return isNaN(Ke)?null:Ke}var yt=+new Date("2000-01-01T00:00:00.000Z")?_r:g.utcParse(ar);g.isoFormat=vr,g.isoParse=yt,g.timeFormatDefaultLocale=ur,g.timeFormatLocale=t,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zy=Ye({"node_modules/d3-format/dist/d3-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){return Math.abs(b=Math.round(b))>=1e21?b.toLocaleString("en").replace(/,/g,""):b.toString(10)}function A(b,d){if((u=(b=d?b.toExponential(d-1):b.toExponential()).indexOf("e"))<0)return null;var u,y=b.slice(0,u);return[y.length>1?y[0]+y.slice(2):y,+b.slice(u+1)]}function M(b){return b=A(Math.abs(b)),b?b[1]:NaN}function e(b,d){return function(u,y){for(var f=u.length,P=[],L=0,z=b[0],F=0;f>0&&z>0&&(F+z+1>y&&(z=Math.max(1,y-F)),P.push(u.substring(f-=z,f+z)),!((F+=z+1)>y));)z=b[L=(L+1)%b.length];return P.reverse().join(d)}}function t(b){return function(d){return d.replace(/[0-9]/g,function(u){return b[+u]})}}var r=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(b){if(!(d=r.exec(b)))throw new Error("invalid format: "+b);var d;return new a({fill:d[1],align:d[2],sign:d[3],symbol:d[4],zero:d[5],width:d[6],comma:d[7],precision:d[8]&&d[8].slice(1),trim:d[9],type:d[10]})}o.prototype=a.prototype;function a(b){this.fill=b.fill===void 0?" ":b.fill+"",this.align=b.align===void 0?">":b.align+"",this.sign=b.sign===void 0?"-":b.sign+"",this.symbol=b.symbol===void 0?"":b.symbol+"",this.zero=!!b.zero,this.width=b.width===void 0?void 0:+b.width,this.comma=!!b.comma,this.precision=b.precision===void 0?void 0:+b.precision,this.trim=!!b.trim,this.type=b.type===void 0?"":b.type+""}a.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function i(b){e:for(var d=b.length,u=1,y=-1,f;u<d;++u)switch(b[u]){case".":y=f=u;break;case"0":y===0&&(y=u),f=u;break;default:if(!+b[u])break e;y>0&&(y=0);break}return y>0?b.slice(0,y)+b.slice(f+1):b}var n;function s(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1],P=f-(n=Math.max(-8,Math.min(8,Math.floor(f/3)))*3)+1,L=y.length;return P===L?y:P>L?y+new Array(P-L+1).join("0"):P>0?y.slice(0,P)+"."+y.slice(P):"0."+new Array(1-P).join("0")+A(b,Math.max(0,d+P-1))[0]}function c(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1];return f<0?"0."+new Array(-f).join("0")+y:y.length>f+1?y.slice(0,f+1)+"."+y.slice(f+1):y+new Array(f-y.length+2).join("0")}var h={"%":function(b,d){return(b*100).toFixed(d)},b:function(b){return Math.round(b).toString(2)},c:function(b){return b+""},d:x,e:function(b,d){return b.toExponential(d)},f:function(b,d){return b.toFixed(d)},g:function(b,d){return b.toPrecision(d)},o:function(b){return Math.round(b).toString(8)},p:function(b,d){return c(b*100,d)},r:c,s,X:function(b){return Math.round(b).toString(16).toUpperCase()},x:function(b){return Math.round(b).toString(16)}};function v(b){return b}var p=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function l(b){var d=b.grouping===void 0||b.thousands===void 0?v:e(p.call(b.grouping,Number),b.thousands+""),u=b.currency===void 0?"":b.currency[0]+"",y=b.currency===void 0?"":b.currency[1]+"",f=b.decimal===void 0?".":b.decimal+"",P=b.numerals===void 0?v:t(p.call(b.numerals,String)),L=b.percent===void 0?"%":b.percent+"",z=b.minus===void 0?"-":b.minus+"",F=b.nan===void 0?"NaN":b.nan+"";function B(I){I=o(I);var N=I.fill,U=I.align,W=I.sign,Q=I.symbol,ue=I.zero,se=I.width,he=I.comma,G=I.precision,$=I.trim,J=I.type;J==="n"?(he=!0,J="g"):h[J]||(G===void 0&&(G=12),$=!0,J="g"),(ue||N==="0"&&U==="=")&&(ue=!0,N="0",U="=");var Z=Q==="$"?u:Q==="#"&&/[boxX]/.test(J)?"0"+J.toLowerCase():"",re=Q==="$"?y:/[%p]/.test(J)?L:"",ne=h[J],j=/[defgprs%]/.test(J);G=G===void 0?6:/[gprs]/.test(J)?Math.max(1,Math.min(21,G)):Math.max(0,Math.min(20,G));function ee(ie){var fe=Z,be=re,Ae,Be,Ie;if(J==="c")be=ne(ie)+be,ie="";else{ie=+ie;var Ze=ie<0||1/ie<0;if(ie=isNaN(ie)?F:ne(Math.abs(ie),G),$&&(ie=i(ie)),Ze&&+ie==0&&W!=="+"&&(Ze=!1),fe=(Ze?W==="("?W:z:W==="-"||W==="("?"":W)+fe,be=(J==="s"?T[8+n/3]:"")+be+(Ze&&W==="("?")":""),j){for(Ae=-1,Be=ie.length;++Ae<Be;)if(Ie=ie.charCodeAt(Ae),48>Ie||Ie>57){be=(Ie===46?f+ie.slice(Ae+1):ie.slice(Ae))+be,ie=ie.slice(0,Ae);break}}}he&&!ue&&(ie=d(ie,1/0));var at=fe.length+ie.length+be.length,it=at<se?new Array(se-at+1).join(N):"";switch(he&&ue&&(ie=d(it+ie,it.length?se-be.length:1/0),it=""),U){case"<":ie=fe+ie+be+it;break;case"=":ie=fe+it+ie+be;break;case"^":ie=it.slice(0,at=it.length>>1)+fe+ie+be+it.slice(at);break;default:ie=it+fe+ie+be;break}return P(ie)}return ee.toString=function(){return I+""},ee}function O(I,N){var U=B((I=o(I),I.type="f",I)),W=Math.max(-8,Math.min(8,Math.floor(M(N)/3)))*3,Q=Math.pow(10,-W),ue=T[8+W/3];return function(se){return U(Q*se)+ue}}return{format:B,formatPrefix:O}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(b){return _=l(b),g.format=_.format,g.formatPrefix=_.formatPrefix,_}function S(b){return Math.max(0,-M(Math.abs(b)))}function E(b,d){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(M(d)/3)))*3-M(Math.abs(b)))}function m(b,d){return b=Math.abs(b),d=Math.abs(d)-b,Math.max(0,M(d)-M(b))+1}g.FormatSpecifier=a,g.formatDefaultLocale=w,g.formatLocale=l,g.formatSpecifier=o,g.precisionFixed=S,g.precisionPrefix=E,g.precisionRound=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),aF=Ye({"node_modules/is-string-blank/index.js"(X,H){"use strict";H.exports=function(g){for(var x=g.length,A,M=0;M<x;M++)if(A=g.charCodeAt(M),(A<9||A>13)&&A!==32&&A!==133&&A!==160&&A!==5760&&A!==6158&&(A<8192||A>8205)&&A!==8232&&A!==8233&&A!==8239&&A!==8287&&A!==8288&&A!==12288&&A!==65279)return!1;return!0}}}),jo=Ye({"node_modules/fast-isnumeric/index.js"(X,H){"use strict";var g=aF();H.exports=function(x){var A=typeof x;if(A==="string"){var M=x;if(x=+x,x===0&&g(M))return!1}else if(A!=="number")return!1;return x-x<1}}}),ks=Ye({"src/constants/numerical.js"(X,H){"use strict";H.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}}}),XA=Ye({"node_modules/base64-arraybuffer/dist/base64-arraybuffer.umd.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g["base64-arraybuffer"]={}))})(X,function(g){"use strict";for(var x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A=typeof Uint8Array>"u"?[]:new Uint8Array(256),M=0;M<x.length;M++)A[x.charCodeAt(M)]=M;var e=function(r){var o=new Uint8Array(r),a,i=o.length,n="";for(a=0;a<i;a+=3)n+=x[o[a]>>2],n+=x[(o[a]&3)<<4|o[a+1]>>4],n+=x[(o[a+1]&15)<<2|o[a+2]>>6],n+=x[o[a+2]&63];return i%3===2?n=n.substring(0,n.length-1)+"=":i%3===1&&(n=n.substring(0,n.length-2)+"=="),n},t=function(r){var o=r.length*.75,a=r.length,i,n=0,s,c,h,v;r[r.length-1]==="="&&(o--,r[r.length-2]==="="&&o--);var p=new ArrayBuffer(o),T=new Uint8Array(p);for(i=0;i<a;i+=4)s=A[r.charCodeAt(i)],c=A[r.charCodeAt(i+1)],h=A[r.charCodeAt(i+2)],v=A[r.charCodeAt(i+3)],T[n++]=s<<2|c>>4,T[n++]=(c&15)<<4|h>>2,T[n++]=(h&3)<<6|v&63;return p};g.decode=t,g.encode=e,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zv=Ye({"src/lib/is_plain_object.js"(X,H){"use strict";H.exports=function(x){return window&&window.process&&window.process.versions?Object.prototype.toString.call(x)==="[object Object]":Object.prototype.toString.call(x)==="[object Object]"&&Object.getPrototypeOf(x).hasOwnProperty("hasOwnProperty")}}}),xp=Ye({"src/lib/array.js"(X){"use strict";var H=XA().decode,g=Zv(),x=Array.isArray,A=ArrayBuffer,M=DataView;function e(s){return A.isView(s)&&!(s instanceof M)}X.isTypedArray=e;function t(s){return x(s)||e(s)}X.isArrayOrTypedArray=t;function r(s){return!t(s[0])}X.isArray1D=r,X.ensureArray=function(s,c){return x(s)||(s=[]),s.length=c,s};var o={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};o.uint8c=o.u1c,o.uint8=o.u1,o.int8=o.i1,o.uint16=o.u2,o.int16=o.i2,o.uint32=o.u4,o.int32=o.i4,o.float32=o.f4,o.float64=o.f8;function a(s){return s.constructor===ArrayBuffer}X.isArrayBuffer=a,X.decodeTypedArraySpec=function(s){var c=[],h=i(s),v=h.dtype,p=o[v];if(!p)throw new Error('Error in dtype: "'+v+'"');var T=p.BYTES_PER_ELEMENT,l=h.bdata;a(l)||(l=H(l));var _=h.shape===void 0?[l.byteLength/T]:(""+h.shape).split(",");_.reverse();var w=_.length,S,E,m=+_[0],b=T*m,d=0;if(w===1)c=new p(l);else if(w===2)for(S=+_[1],E=0;E<S;E++)c[E]=new p(l,d,m),d+=b;else if(w===3){S=+_[1];for(var u=+_[2],y=0;y<u;y++)for(c[y]=[],E=0;E<S;E++)c[y][E]=new p(l,d,m),d+=b}else throw new Error("ndim: "+w+'is not supported with the shape:"'+h.shape+'"');return c.bdata=h.bdata,c.dtype=h.dtype,c.shape=_.reverse().join(","),s._inputArray=c,c},X.isTypedArraySpec=function(s){return g(s)&&s.hasOwnProperty("dtype")&&typeof s.dtype=="string"&&s.hasOwnProperty("bdata")&&(typeof s.bdata=="string"||a(s.bdata))&&(s.shape===void 0||s.hasOwnProperty("shape")&&(typeof s.shape=="string"||typeof s.shape=="number"))};function i(s){return{bdata:s.bdata,dtype:s.dtype,shape:s.shape}}X.concat=function(){var s=[],c=!0,h=0,v,p,T,l,_,w,S,E;for(T=0;T<arguments.length;T++)l=arguments[T],w=l.length,w&&(p?s.push(l):(p=l,_=w),x(l)?v=!1:(c=!1,h?v!==l.constructor&&(v=!1):v=l.constructor),h+=w);if(!h)return[];if(!s.length)return p;if(c)return p.concat.apply(p,s);if(v){for(S=new v(h),S.set(p),T=0;T<s.length;T++)l=s[T],S.set(l,_),_+=l.length;return S}for(S=new Array(h),E=0;E<p.length;E++)S[E]=p[E];for(T=0;T<s.length;T++){for(l=s[T],E=0;E<l.length;E++)S[_+E]=l[E];_+=E}return S},X.maxRowLength=function(s){return n(s,Math.max,0)},X.minRowLength=function(s){return n(s,Math.min,1/0)};function n(s,c,h){if(t(s))if(t(s[0])){for(var v=h,p=0;p<s.length;p++)v=c(v,s[p].length);return v}else return s.length;return 0}}}),__=Ye({"src/lib/nested_property.js"(X,H){"use strict";var g=jo(),x=xp().isArrayOrTypedArray;H.exports=function(s,c){if(g(c))c=String(c);else if(typeof c!="string"||c.substr(c.length-4)==="[-1]")throw"bad property string";var h=c.split("."),v,p,T,l;for(l=0;l<h.length;l++)if(String(h[l]).slice(0,2)==="__")throw"bad property string";for(l=0;l<h.length;){if(v=String(h[l]).match(/^([^\[\]]*)((\[\-?[0-9]*\])+)$/),v){if(v[1])h[l]=v[1];else if(l===0)h.splice(0,1);else throw"bad property string";for(p=v[2].substr(1,v[2].length-2).split("]["),T=0;T<p.length;T++)l++,h.splice(l,0,Number(p[T]))}l++}return typeof s!="object"?i(s,c,h):{set:t(s,h,c),get:A(s,h),astr:c,parts:h,obj:s}};function A(n,s){return function(c){var h=n,v,p,T,l,_;for(l=0;l<s.length-1;l++){if(v=s[l],v===-1){for(p=!0,T=[],_=0;_<h.length;_++)T[_]=A(h[_],s.slice(l+1))(c),T[_]!==T[0]&&(p=!1);return p?T[0]:T}if(typeof v=="number"&&!x(h)||(h=h[v],typeof h!="object"||h===null))return}if(!(typeof h!="object"||h===null)&&(T=h[s[l]],!(!c&&T===null)))return T}}var M=/(^|\.)args\[/;function e(n,s){return n===void 0||n===null&&!s.match(M)}function t(n,s,c){return function(h){var v=n,p="",T=[[n,p]],l=e(h,c),_,w;for(w=0;w<s.length-1;w++){if(_=s[w],typeof _=="number"&&!x(v))throw"array index but container is not an array";if(_===-1){if(l=!o(v,s.slice(w+1),h,c),l)break;return}if(!a(v,_,s[w+1],l))break;if(v=v[_],typeof v!="object"||v===null)throw"container is not an object";p=r(p,_),T.push([v,p])}if(l){if(w===s.length-1&&(delete v[s[w]],Array.isArray(v)&&+s[w]===v.length-1))for(;v.length&&v[v.length-1]===void 0;)v.pop()}else v[s[w]]=h}}function r(n,s){var c=s;return g(s)?c="["+s+"]":n&&(c="."+s),n+c}function o(n,s,c,h){var v=x(c),p=!0,T=c,l=h.replace("-1",0),_=v?!1:e(c,l),w=s[0],S;for(S=0;S<n.length;S++)l=h.replace("-1",S),v&&(T=c[S%c.length],_=e(T,l)),_&&(p=!1),a(n,S,w,_)&&t(n[S],s,h.replace("-1",S))(T);return p}function a(n,s,c,h){if(n[s]===void 0){if(h)return!1;typeof c=="number"?n[s]=[]:n[s]={}}return!0}function i(n,s,c){return{set:function(){throw"bad container"},get:function(){},astr:s,parts:c,obj:n}}}}),iF=Ye({"src/lib/keyed_container.js"(X,H){"use strict";var g=__(),x=/^\w*$/,A=0,M=1,e=2,t=3,r=4;H.exports=function(a,i,n,s){n=n||"name",s=s||"value";var c,h,v,p={};i&&i.length?(v=g(a,i),h=v.get()):h=a,i=i||"";var T={};if(h)for(c=0;c<h.length;c++)T[h[c][n]]=c;var l=x.test(s),_={set:function(w,S){var E=S===null?r:A;if(!h){if(!v||E===r)return;h=[],v.set(h)}var m=T[w];if(m===void 0){if(E===r)return;E=E|t,m=h.length,T[w]=m}else S!==(l?h[m][s]:g(h[m],s).get())&&(E=E|e);var b=h[m]=h[m]||{};return b[n]=w,l?b[s]=S:g(b,s).set(S),S!==null&&(E=E&~r),p[m]=p[m]|E,_},get:function(w){if(h){var S=T[w];if(S!==void 0)return l?h[S][s]:g(h[S],s).get()}},rename:function(w,S){var E=T[w];return E===void 0||(p[E]=p[E]|M,T[S]=E,delete T[w],h[E][n]=S),_},remove:function(w){var S=T[w];if(S===void 0)return _;var E=h[S];if(Object.keys(E).length>2)return p[S]=p[S]|e,_.set(w,null);if(l){for(c=S;c<h.length;c++)p[c]=p[c]|t;for(c=S;c<h.length;c++)T[h[c][n]]--;h.splice(S,1),delete T[w]}else g(E,s).set(null),p[S]=p[S]|e|r;return _},constructUpdate:function(){for(var w,S,E={},m=Object.keys(p),b=0;b<m.length;b++)S=m[b],w=i+"["+S+"]",h[S]?(p[S]&M&&(E[w+"."+n]=h[S][n]),p[S]&e&&(l?E[w+"."+s]=p[S]&r?null:h[S][s]:E[w+"."+s]=p[S]&r?null:g(h[S],s).get())):E[w]=null;return E}};return _}}}),nF=Ye({"src/lib/relative_attr.js"(X,H){"use strict";var g=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,x=/^[^\.\[\]]+$/;H.exports=function(A,M){for(;M;){var e=A.match(g);if(e)A=e[1];else if(A.match(x))A="";else throw new Error("bad relativeAttr call:"+[A,M]);if(M.charAt(0)==="^")M=M.slice(1);else break}return A&&M.charAt(0)!=="["?A+"."+M:A+M}}}),c2=Ye({"src/lib/to_log_range.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){if(A>0)return Math.log(A)/Math.LN10;var e=Math.log(Math.min(M[0],M[1]))/Math.LN10;return g(e)||(e=Math.log(Math.max(M[0],M[1]))/Math.LN10-6),e}}}),oF=Ye({"src/lib/relink_private.js"(X,H){"use strict";var g=xp().isArrayOrTypedArray,x=Zv();H.exports=function A(M,e){for(var t in e){var r=e[t],o=M[t];if(o!==r)if(t.charAt(0)==="_"||typeof r=="function"){if(t in M)continue;M[t]=r}else if(g(r)&&g(o)&&x(r[0])){if(t==="customdata"||t==="ids")continue;for(var a=Math.min(r.length,o.length),i=0;i<a;i++)o[i]!==r[i]&&x(r[i])&&x(o[i])&&A(o[i],r[i])}else x(r)&&x(o)&&(A(o,r),Object.keys(o).length||delete M[t])}}}}),Xy=Ye({"src/lib/mod.js"(X,H){"use strict";function g(A,M){var e=A%M;return e<0?e+M:e}function x(A,M){return Math.abs(A)>M/2?A-Math.round(A/M)*M:A}H.exports={mod:g,modHalf:x}}}),bh=Ye({"node_modules/tinycolor2/tinycolor.js"(X,H){(function(g){var x=/^\s+/,A=/\s+$/,M=0,e=g.round,t=g.min,r=g.max,o=g.random;function a(j,ee){if(j=j||"",ee=ee||{},j instanceof a)return j;if(!(this instanceof a))return new a(j,ee);var ie=i(j);this._originalInput=j,this._r=ie.r,this._g=ie.g,this._b=ie.b,this._a=ie.a,this._roundA=e(100*this._a)/100,this._format=ee.format||ie.format,this._gradientType=ee.gradientType,this._r<1&&(this._r=e(this._r)),this._g<1&&(this._g=e(this._g)),this._b<1&&(this._b=e(this._b)),this._ok=ie.ok,this._tc_id=M++}a.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var j=this.toRgb();return(j.r*299+j.g*587+j.b*114)/1e3},getLuminance:function(){var j=this.toRgb(),ee,ie,fe,be,Ae,Be;return ee=j.r/255,ie=j.g/255,fe=j.b/255,ee<=.03928?be=ee/12.92:be=g.pow((ee+.055)/1.055,2.4),ie<=.03928?Ae=ie/12.92:Ae=g.pow((ie+.055)/1.055,2.4),fe<=.03928?Be=fe/12.92:Be=g.pow((fe+.055)/1.055,2.4),.2126*be+.7152*Ae+.0722*Be},setAlpha:function(j){return this._a=I(j),this._roundA=e(100*this._a)/100,this},toHsv:function(){var j=h(this._r,this._g,this._b);return{h:j.h*360,s:j.s,v:j.v,a:this._a}},toHsvString:function(){var j=h(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.v*100);return this._a==1?"hsv("+ee+", "+ie+"%, "+fe+"%)":"hsva("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHsl:function(){var j=s(this._r,this._g,this._b);return{h:j.h*360,s:j.s,l:j.l,a:this._a}},toHslString:function(){var j=s(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.l*100);return this._a==1?"hsl("+ee+", "+ie+"%, "+fe+"%)":"hsla("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHex:function(j){return p(this._r,this._g,this._b,j)},toHexString:function(j){return"#"+this.toHex(j)},toHex8:function(j){return T(this._r,this._g,this._b,this._a,j)},toHex8String:function(j){return"#"+this.toHex8(j)},toRgb:function(){return{r:e(this._r),g:e(this._g),b:e(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+e(this._r)+", "+e(this._g)+", "+e(this._b)+")":"rgba("+e(this._r)+", "+e(this._g)+", "+e(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:e(N(this._r,255)*100)+"%",g:e(N(this._g,255)*100)+"%",b:e(N(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%)":"rgba("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:B[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(j){var ee="#"+l(this._r,this._g,this._b,this._a),ie=ee,fe=this._gradientType?"GradientType = 1, ":"";if(j){var be=a(j);ie="#"+l(be._r,be._g,be._b,be._a)}return"progid:DXImageTransform.Microsoft.gradient("+fe+"startColorstr="+ee+",endColorstr="+ie+")"},toString:function(j){var ee=!!j;j=j||this._format;var ie=!1,fe=this._a<1&&this._a>=0,be=!ee&&fe&&(j==="hex"||j==="hex6"||j==="hex3"||j==="hex4"||j==="hex8"||j==="name");return be?j==="name"&&this._a===0?this.toName():this.toRgbString():(j==="rgb"&&(ie=this.toRgbString()),j==="prgb"&&(ie=this.toPercentageRgbString()),(j==="hex"||j==="hex6")&&(ie=this.toHexString()),j==="hex3"&&(ie=this.toHexString(!0)),j==="hex4"&&(ie=this.toHex8String(!0)),j==="hex8"&&(ie=this.toHex8String()),j==="name"&&(ie=this.toName()),j==="hsl"&&(ie=this.toHslString()),j==="hsv"&&(ie=this.toHsvString()),ie||this.toHexString())},clone:function(){return a(this.toString())},_applyModification:function(j,ee){var ie=j.apply(null,[this].concat([].slice.call(ee)));return this._r=ie._r,this._g=ie._g,this._b=ie._b,this.setAlpha(ie._a),this},lighten:function(){return this._applyModification(E,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(b,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(S,arguments)},spin:function(){return this._applyModification(d,arguments)},_applyCombination:function(j,ee){return j.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(L,arguments)},complement:function(){return this._applyCombination(u,arguments)},monochromatic:function(){return this._applyCombination(z,arguments)},splitcomplement:function(){return this._applyCombination(P,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(f,arguments)}},a.fromRatio=function(j,ee){if(typeof j=="object"){var ie={};for(var fe in j)j.hasOwnProperty(fe)&&(fe==="a"?ie[fe]=j[fe]:ie[fe]=he(j[fe]));j=ie}return a(j,ee)};function i(j){var ee={r:0,g:0,b:0},ie=1,fe=null,be=null,Ae=null,Be=!1,Ie=!1;return typeof j=="string"&&(j=re(j)),typeof j=="object"&&(Z(j.r)&&Z(j.g)&&Z(j.b)?(ee=n(j.r,j.g,j.b),Be=!0,Ie=String(j.r).substr(-1)==="%"?"prgb":"rgb"):Z(j.h)&&Z(j.s)&&Z(j.v)?(fe=he(j.s),be=he(j.v),ee=v(j.h,fe,be),Be=!0,Ie="hsv"):Z(j.h)&&Z(j.s)&&Z(j.l)&&(fe=he(j.s),Ae=he(j.l),ee=c(j.h,fe,Ae),Be=!0,Ie="hsl"),j.hasOwnProperty("a")&&(ie=j.a)),ie=I(ie),{ok:Be,format:j.format||Ie,r:t(255,r(ee.r,0)),g:t(255,r(ee.g,0)),b:t(255,r(ee.b,0)),a:ie}}function n(j,ee,ie){return{r:N(j,255)*255,g:N(ee,255)*255,b:N(ie,255)*255}}function s(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=(fe+be)/2;if(fe==be)Ae=Be=0;else{var Ze=fe-be;switch(Be=Ie>.5?Ze/(2-fe-be):Ze/(fe+be),fe){case j:Ae=(ee-ie)/Ze+(ee<ie?6:0);break;case ee:Ae=(ie-j)/Ze+2;break;case ie:Ae=(j-ee)/Ze+4;break}Ae/=6}return{h:Ae,s:Be,l:Ie}}function c(j,ee,ie){var fe,be,Ae;j=N(j,360),ee=N(ee,100),ie=N(ie,100);function Be(at,it,et){return et<0&&(et+=1),et>1&&(et-=1),et<1/6?at+(it-at)*6*et:et<1/2?it:et<2/3?at+(it-at)*(2/3-et)*6:at}if(ee===0)fe=be=Ae=ie;else{var Ie=ie<.5?ie*(1+ee):ie+ee-ie*ee,Ze=2*ie-Ie;fe=Be(Ze,Ie,j+1/3),be=Be(Ze,Ie,j),Ae=Be(Ze,Ie,j-1/3)}return{r:fe*255,g:be*255,b:Ae*255}}function h(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=fe,Ze=fe-be;if(Be=fe===0?0:Ze/fe,fe==be)Ae=0;else{switch(fe){case j:Ae=(ee-ie)/Ze+(ee<ie?6:0);break;case ee:Ae=(ie-j)/Ze+2;break;case ie:Ae=(j-ee)/Ze+4;break}Ae/=6}return{h:Ae,s:Be,v:Ie}}function v(j,ee,ie){j=N(j,360)*6,ee=N(ee,100),ie=N(ie,100);var fe=g.floor(j),be=j-fe,Ae=ie*(1-ee),Be=ie*(1-be*ee),Ie=ie*(1-(1-be)*ee),Ze=fe%6,at=[ie,Be,Ae,Ae,Ie,ie][Ze],it=[Ie,ie,ie,Be,Ae,Ae][Ze],et=[Ae,Ae,Ie,ie,ie,Be][Ze];return{r:at*255,g:it*255,b:et*255}}function p(j,ee,ie,fe){var be=[se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16))];return fe&&be[0].charAt(0)==be[0].charAt(1)&&be[1].charAt(0)==be[1].charAt(1)&&be[2].charAt(0)==be[2].charAt(1)?be[0].charAt(0)+be[1].charAt(0)+be[2].charAt(0):be.join("")}function T(j,ee,ie,fe,be){var Ae=[se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16)),se(G(fe))];return be&&Ae[0].charAt(0)==Ae[0].charAt(1)&&Ae[1].charAt(0)==Ae[1].charAt(1)&&Ae[2].charAt(0)==Ae[2].charAt(1)&&Ae[3].charAt(0)==Ae[3].charAt(1)?Ae[0].charAt(0)+Ae[1].charAt(0)+Ae[2].charAt(0)+Ae[3].charAt(0):Ae.join("")}function l(j,ee,ie,fe){var be=[se(G(fe)),se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16))];return be.join("")}a.equals=function(j,ee){return!j||!ee?!1:a(j).toRgbString()==a(ee).toRgbString()},a.random=function(){return a.fromRatio({r:o(),g:o(),b:o()})};function _(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.s-=ee/100,ie.s=U(ie.s),a(ie)}function w(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.s+=ee/100,ie.s=U(ie.s),a(ie)}function S(j){return a(j).desaturate(100)}function E(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.l+=ee/100,ie.l=U(ie.l),a(ie)}function m(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toRgb();return ie.r=r(0,t(255,ie.r-e(255*-(ee/100)))),ie.g=r(0,t(255,ie.g-e(255*-(ee/100)))),ie.b=r(0,t(255,ie.b-e(255*-(ee/100)))),a(ie)}function b(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.l-=ee/100,ie.l=U(ie.l),a(ie)}function d(j,ee){var ie=a(j).toHsl(),fe=(ie.h+ee)%360;return ie.h=fe<0?360+fe:fe,a(ie)}function u(j){var ee=a(j).toHsl();return ee.h=(ee.h+180)%360,a(ee)}function y(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+120)%360,s:ee.s,l:ee.l}),a({h:(ie+240)%360,s:ee.s,l:ee.l})]}function f(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+90)%360,s:ee.s,l:ee.l}),a({h:(ie+180)%360,s:ee.s,l:ee.l}),a({h:(ie+270)%360,s:ee.s,l:ee.l})]}function P(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+72)%360,s:ee.s,l:ee.l}),a({h:(ie+216)%360,s:ee.s,l:ee.l})]}function L(j,ee,ie){ee=ee||6,ie=ie||30;var fe=a(j).toHsl(),be=360/ie,Ae=[a(j)];for(fe.h=(fe.h-(be*ee>>1)+720)%360;--ee;)fe.h=(fe.h+be)%360,Ae.push(a(fe));return Ae}function z(j,ee){ee=ee||6;for(var ie=a(j).toHsv(),fe=ie.h,be=ie.s,Ae=ie.v,Be=[],Ie=1/ee;ee--;)Be.push(a({h:fe,s:be,v:Ae})),Ae=(Ae+Ie)%1;return Be}a.mix=function(j,ee,ie){ie=ie===0?0:ie||50;var fe=a(j).toRgb(),be=a(ee).toRgb(),Ae=ie/100,Be={r:(be.r-fe.r)*Ae+fe.r,g:(be.g-fe.g)*Ae+fe.g,b:(be.b-fe.b)*Ae+fe.b,a:(be.a-fe.a)*Ae+fe.a};return a(Be)},a.readability=function(j,ee){var ie=a(j),fe=a(ee);return(g.max(ie.getLuminance(),fe.getLuminance())+.05)/(g.min(ie.getLuminance(),fe.getLuminance())+.05)},a.isReadable=function(j,ee,ie){var fe=a.readability(j,ee),be,Ae;switch(Ae=!1,be=ne(ie),be.level+be.size){case"AAsmall":case"AAAlarge":Ae=fe>=4.5;break;case"AAlarge":Ae=fe>=3;break;case"AAAsmall":Ae=fe>=7;break}return Ae},a.mostReadable=function(j,ee,ie){var fe=null,be=0,Ae,Be,Ie,Ze;ie=ie||{},Be=ie.includeFallbackColors,Ie=ie.level,Ze=ie.size;for(var at=0;at<ee.length;at++)Ae=a.readability(j,ee[at]),Ae>be&&(be=Ae,fe=a(ee[at]));return a.isReadable(j,fe,{level:Ie,size:Ze})||!Be?fe:(ie.includeFallbackColors=!1,a.mostReadable(j,["#fff","#000"],ie))};var F=a.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},B=a.hexNames=O(F);function O(j){var ee={};for(var ie in j)j.hasOwnProperty(ie)&&(ee[j[ie]]=ie);return ee}function I(j){return j=parseFloat(j),(isNaN(j)||j<0||j>1)&&(j=1),j}function N(j,ee){Q(j)&&(j="100%");var ie=ue(j);return j=t(ee,r(0,parseFloat(j))),ie&&(j=parseInt(j*ee,10)/100),g.abs(j-ee)<1e-6?1:j%ee/parseFloat(ee)}function U(j){return t(1,r(0,j))}function W(j){return parseInt(j,16)}function Q(j){return typeof j=="string"&&j.indexOf(".")!=-1&&parseFloat(j)===1}function ue(j){return typeof j=="string"&&j.indexOf("%")!=-1}function se(j){return j.length==1?"0"+j:""+j}function he(j){return j<=1&&(j=j*100+"%"),j}function G(j){return g.round(parseFloat(j)*255).toString(16)}function $(j){return W(j)/255}var J=function(){var j="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",ie="(?:"+ee+")|(?:"+j+")",fe="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?",be="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?";return{CSS_UNIT:new RegExp(ie),rgb:new RegExp("rgb"+fe),rgba:new RegExp("rgba"+be),hsl:new RegExp("hsl"+fe),hsla:new RegExp("hsla"+be),hsv:new RegExp("hsv"+fe),hsva:new RegExp("hsva"+be),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Z(j){return!!J.CSS_UNIT.exec(j)}function re(j){j=j.replace(x,"").replace(A,"").toLowerCase();var ee=!1;if(F[j])j=F[j],ee=!0;else if(j=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ie;return(ie=J.rgb.exec(j))?{r:ie[1],g:ie[2],b:ie[3]}:(ie=J.rgba.exec(j))?{r:ie[1],g:ie[2],b:ie[3],a:ie[4]}:(ie=J.hsl.exec(j))?{h:ie[1],s:ie[2],l:ie[3]}:(ie=J.hsla.exec(j))?{h:ie[1],s:ie[2],l:ie[3],a:ie[4]}:(ie=J.hsv.exec(j))?{h:ie[1],s:ie[2],v:ie[3]}:(ie=J.hsva.exec(j))?{h:ie[1],s:ie[2],v:ie[3],a:ie[4]}:(ie=J.hex8.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),a:$(ie[4]),format:ee?"name":"hex8"}:(ie=J.hex6.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),format:ee?"name":"hex"}:(ie=J.hex4.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),a:$(ie[4]+""+ie[4]),format:ee?"name":"hex8"}:(ie=J.hex3.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),format:ee?"name":"hex"}:!1}function ne(j){var ee,ie;return j=j||{level:"AA",size:"small"},ee=(j.level||"AA").toUpperCase(),ie=(j.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),ie!=="small"&&ie!=="large"&&(ie="small"),{level:ee,size:ie}}typeof H<"u"&&H.exports?H.exports=a:window.tinycolor=a})(Math)}}),Oo=Ye({"src/lib/extend.js"(X){"use strict";var H=Zv(),g=Array.isArray;function x(M,e){var t,r;for(t=0;t<M.length;t++){if(r=M[t],r!==null&&typeof r=="object")return!1;r!==void 0&&(e[t]=r)}return!0}X.extendFlat=function(){return A(arguments,!1,!1,!1)},X.extendDeep=function(){return A(arguments,!0,!1,!1)},X.extendDeepAll=function(){return A(arguments,!0,!0,!1)},X.extendDeepNoArrays=function(){return A(arguments,!0,!1,!0)};function A(M,e,t,r){var o=M[0],a=M.length,i,n,s,c,h,v,p;if(a===2&&g(o)&&g(M[1])&&o.length===0){if(p=x(M[1],o),p)return o;o.splice(0,o.length)}for(var T=1;T<a;T++){i=M[T];for(n in i)s=o[n],c=i[n],r&&g(c)?o[n]=c:e&&c&&(H(c)||(h=g(c)))?(h?(h=!1,v=s&&g(s)?s:[]):v=s&&H(s)?s:{},o[n]=A([v,c],e,t,r)):(typeof c<"u"||t)&&(o[n]=c)}return o}}}),Au=Ye({"src/plots/font_attributes.js"(X,H){"use strict";H.exports=function(g){var x=g.variantValues,A=g.editType,M=g.colorEditType;M===void 0&&(M=A);var e={editType:A,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};g.noNumericWeightValues&&(e.valType="enumerated",e.values=e.extras,e.extras=void 0,e.min=void 0,e.max=void 0);var t={family:{valType:"string",noBlank:!0,strict:!0,editType:A},size:{valType:"number",min:1,editType:A},color:{valType:"color",editType:M},weight:e,style:{editType:A,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:g.noFontVariant?void 0:{editType:A,valType:"enumerated",values:x||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:g.noFontTextcase?void 0:{editType:A,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:g.noFontLineposition?void 0:{editType:A,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:g.noFontShadow?void 0:{editType:A,valType:"string",dflt:g.autoShadowDflt?"auto":"none"},editType:A};return g.autoSize&&(t.size.dflt="auto"),g.autoColor&&(t.color.dflt="auto"),g.arrayOk&&(t.family.arrayOk=!0,t.weight.arrayOk=!0,t.style.arrayOk=!0,g.noFontVariant||(t.variant.arrayOk=!0),g.noFontTextcase||(t.textcase.arrayOk=!0),g.noFontLineposition||(t.lineposition.arrayOk=!0),g.noFontShadow||(t.shadow.arrayOk=!0),t.size.arrayOk=!0,t.color.arrayOk=!0),t}}}),x_=Ye({"src/components/fx/constants.js"(X,H){"use strict";H.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}}}),Zm=Ye({"src/components/fx/layout_attributes.js"(X,H){"use strict";var g=x_(),x=Au(),A=x({editType:"none"});A.family.dflt=g.HOVERFONT,A.size.dflt=g.HOVERFONTSIZE,H.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:A,grouptitlefont:x({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}}}),Yy=Ye({"src/components/fx/attributes.js"(X,H){"use strict";var g=Au(),x=Zm().hoverlabel,A=Oo().extendFlat;H.exports={hoverlabel:{bgcolor:A({},x.bgcolor,{arrayOk:!0}),bordercolor:A({},x.bordercolor,{arrayOk:!0}),font:g({arrayOk:!0,editType:"none"}),align:A({},x.align,{arrayOk:!0}),namelength:A({},x.namelength,{arrayOk:!0}),editType:"none"}}}}),Pl=Ye({"src/plots/attributes.js"(X,H){"use strict";var g=Au(),x=Yy();H.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:g({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:x.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}}}),Hg=Ye({"src/components/colorscale/scales.js"(X,H){"use strict";var g=bh(),x={Greys:[[0,"rgb(0,0,0)"],[1,"rgb(255,255,255)"]],YlGnBu:[[0,"rgb(8,29,88)"],[.125,"rgb(37,52,148)"],[.25,"rgb(34,94,168)"],[.375,"rgb(29,145,192)"],[.5,"rgb(65,182,196)"],[.625,"rgb(127,205,187)"],[.75,"rgb(199,233,180)"],[.875,"rgb(237,248,217)"],[1,"rgb(255,255,217)"]],Greens:[[0,"rgb(0,68,27)"],[.125,"rgb(0,109,44)"],[.25,"rgb(35,139,69)"],[.375,"rgb(65,171,93)"],[.5,"rgb(116,196,118)"],[.625,"rgb(161,217,155)"],[.75,"rgb(199,233,192)"],[.875,"rgb(229,245,224)"],[1,"rgb(247,252,245)"]],YlOrRd:[[0,"rgb(128,0,38)"],[.125,"rgb(189,0,38)"],[.25,"rgb(227,26,28)"],[.375,"rgb(252,78,42)"],[.5,"rgb(253,141,60)"],[.625,"rgb(254,178,76)"],[.75,"rgb(254,217,118)"],[.875,"rgb(255,237,160)"],[1,"rgb(255,255,204)"]],Bluered:[[0,"rgb(0,0,255)"],[1,"rgb(255,0,0)"]],RdBu:[[0,"rgb(5,10,172)"],[.35,"rgb(106,137,247)"],[.5,"rgb(190,190,190)"],[.6,"rgb(220,170,132)"],[.7,"rgb(230,145,90)"],[1,"rgb(178,10,28)"]],Reds:[[0,"rgb(220,220,220)"],[.2,"rgb(245,195,157)"],[.4,"rgb(245,160,105)"],[1,"rgb(178,10,28)"]],Blues:[[0,"rgb(5,10,172)"],[.35,"rgb(40,60,190)"],[.5,"rgb(70,100,245)"],[.6,"rgb(90,120,245)"],[.7,"rgb(106,137,247)"],[1,"rgb(220,220,220)"]],Picnic:[[0,"rgb(0,0,255)"],[.1,"rgb(51,153,255)"],[.2,"rgb(102,204,255)"],[.3,"rgb(153,204,255)"],[.4,"rgb(204,204,255)"],[.5,"rgb(255,255,255)"],[.6,"rgb(255,204,255)"],[.7,"rgb(255,153,255)"],[.8,"rgb(255,102,204)"],[.9,"rgb(255,102,102)"],[1,"rgb(255,0,0)"]],Rainbow:[[0,"rgb(150,0,90)"],[.125,"rgb(0,0,200)"],[.25,"rgb(0,25,255)"],[.375,"rgb(0,152,255)"],[.5,"rgb(44,255,150)"],[.625,"rgb(151,255,0)"],[.75,"rgb(255,234,0)"],[.875,"rgb(255,111,0)"],[1,"rgb(255,0,0)"]],Portland:[[0,"rgb(12,51,131)"],[.25,"rgb(10,136,186)"],[.5,"rgb(242,211,56)"],[.75,"rgb(242,143,56)"],[1,"rgb(217,30,30)"]],Jet:[[0,"rgb(0,0,131)"],[.125,"rgb(0,60,170)"],[.375,"rgb(5,255,255)"],[.625,"rgb(255,255,0)"],[.875,"rgb(250,0,0)"],[1,"rgb(128,0,0)"]],Hot:[[0,"rgb(0,0,0)"],[.3,"rgb(230,0,0)"],[.6,"rgb(255,210,0)"],[1,"rgb(255,255,255)"]],Blackbody:[[0,"rgb(0,0,0)"],[.2,"rgb(230,0,0)"],[.4,"rgb(230,210,0)"],[.7,"rgb(255,255,255)"],[1,"rgb(160,200,255)"]],Earth:[[0,"rgb(0,0,130)"],[.1,"rgb(0,180,180)"],[.2,"rgb(40,210,40)"],[.4,"rgb(230,230,50)"],[.6,"rgb(120,70,20)"],[1,"rgb(255,255,255)"]],Electric:[[0,"rgb(0,0,0)"],[.15,"rgb(30,0,100)"],[.4,"rgb(120,0,100)"],[.6,"rgb(160,90,0)"],[.8,"rgb(230,200,0)"],[1,"rgb(255,250,220)"]],Viridis:[[0,"#440154"],[.06274509803921569,"#48186a"],[.12549019607843137,"#472d7b"],[.18823529411764706,"#424086"],[.25098039215686274,"#3b528b"],[.3137254901960784,"#33638d"],[.3764705882352941,"#2c728e"],[.4392156862745098,"#26828e"],[.5019607843137255,"#21918c"],[.5647058823529412,"#1fa088"],[.6274509803921569,"#28ae80"],[.6901960784313725,"#3fbc73"],[.7529411764705882,"#5ec962"],[.8156862745098039,"#84d44b"],[.8784313725490196,"#addc30"],[.9411764705882353,"#d8e219"],[1,"#fde725"]],Cividis:[[0,"rgb(0,32,76)"],[.058824,"rgb(0,42,102)"],[.117647,"rgb(0,52,110)"],[.176471,"rgb(39,63,108)"],[.235294,"rgb(60,74,107)"],[.294118,"rgb(76,85,107)"],[.352941,"rgb(91,95,109)"],[.411765,"rgb(104,106,112)"],[.470588,"rgb(117,117,117)"],[.529412,"rgb(131,129,120)"],[.588235,"rgb(146,140,120)"],[.647059,"rgb(161,152,118)"],[.705882,"rgb(176,165,114)"],[.764706,"rgb(192,177,109)"],[.823529,"rgb(209,191,102)"],[.882353,"rgb(225,204,92)"],[.941176,"rgb(243,219,79)"],[1,"rgb(255,233,69)"]]},A=x.RdBu;function M(r,o){if(o||(o=A),!r)return o;function a(){try{r=x[r]||JSON.parse(r)}catch{r=o}}return typeof r=="string"&&(a(),typeof r=="string"&&a()),e(r)?r:o}function e(r){var o=0;if(!Array.isArray(r)||r.length<2||!r[0]||!r[r.length-1]||+r[0][0]!=0||+r[r.length-1][0]!=1)return!1;for(var a=0;a<r.length;a++){var i=r[a];if(i.length!==2||+i[0]<o||!g(i[1]).isValid())return!1;o=+i[0]}return!0}function t(r){return x[r]!==void 0?!0:e(r)}H.exports={scales:x,defaultScale:A,get:M,isValid:t}}}),Gf=Ye({"src/components/color/attributes.js"(X){"use strict";X.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],X.defaultLine="#444",X.lightLine="#eee",X.background="#fff",X.borderLine="#BEC8D9",X.lightFraction=100*10/11}}),Fn=Ye({"src/components/color/index.js"(X,H){"use strict";var g=bh(),x=jo(),A=xp().isTypedArray,M=H.exports={},e=Gf();M.defaults=e.defaults;var t=M.defaultLine=e.defaultLine;M.lightLine=e.lightLine;var r=M.background=e.background;M.tinyRGB=function(a){var i=a.toRgb();return"rgb("+Math.round(i.r)+", "+Math.round(i.g)+", "+Math.round(i.b)+")"},M.rgb=function(a){return M.tinyRGB(g(a))},M.opacity=function(a){return a?g(a).getAlpha():0},M.addOpacity=function(a,i){var n=g(a).toRgb();return"rgba("+Math.round(n.r)+", "+Math.round(n.g)+", "+Math.round(n.b)+", "+i+")"},M.combine=function(a,i){var n=g(a).toRgb();if(n.a===1)return g(a).toRgbString();var s=g(i||r).toRgb(),c=s.a===1?s:{r:255*(1-s.a)+s.r*s.a,g:255*(1-s.a)+s.g*s.a,b:255*(1-s.a)+s.b*s.a},h={r:c.r*(1-n.a)+n.r*n.a,g:c.g*(1-n.a)+n.g*n.a,b:c.b*(1-n.a)+n.b*n.a};return g(h).toRgbString()},M.interpolate=function(a,i,n){var s=g(a).toRgb(),c=g(i).toRgb(),h={r:n*s.r+(1-n)*c.r,g:n*s.g+(1-n)*c.g,b:n*s.b+(1-n)*c.b};return g(h).toRgbString()},M.contrast=function(a,i,n){var s=g(a);s.getAlpha()!==1&&(s=g(M.combine(a,r)));var c=s.isDark()?i?s.lighten(i):r:n?s.darken(n):t;return c.toString()},M.stroke=function(a,i){var n=g(i);a.style({stroke:M.tinyRGB(n),"stroke-opacity":n.getAlpha()})},M.fill=function(a,i){var n=g(i);a.style({fill:M.tinyRGB(n),"fill-opacity":n.getAlpha()})},M.clean=function(a){if(!(!a||typeof a!="object")){var i=Object.keys(a),n,s,c,h;for(n=0;n<i.length;n++)if(c=i[n],h=a[c],c.substr(c.length-5)==="color")if(Array.isArray(h))for(s=0;s<h.length;s++)h[s]=o(h[s]);else a[c]=o(h);else if(c.substr(c.length-10)==="colorscale"&&Array.isArray(h))for(s=0;s<h.length;s++)Array.isArray(h[s])&&(h[s][1]=o(h[s][1]));else if(Array.isArray(h)){var v=h[0];if(!Array.isArray(v)&&v&&typeof v=="object")for(s=0;s<h.length;s++)M.clean(h[s])}else h&&typeof h=="object"&&!A(h)&&M.clean(h)}};function o(a){if(x(a)||typeof a!="string")return a;var i=a.trim();if(i.substr(0,3)!=="rgb")return a;var n=i.match(/^rgba?\s*\(([^()]*)\)$/);if(!n)return a;var s=n[1].trim().split(/\s*[\s,]\s*/),c=i.charAt(3)==="a"&&s.length===4;if(!c&&s.length!==3)return a;for(var h=0;h<s.length;h++){if(!s[h].length||(s[h]=Number(s[h]),!(s[h]>=0)))return a;if(h===3)s[h]>1&&(s[h]=1);else if(s[h]>=1)return a}var v=Math.round(s[0]*255)+", "+Math.round(s[1]*255)+", "+Math.round(s[2]*255);return c?"rgba("+v+", "+s[3]+")":"rgb("+v+")"}}}),Xm=Ye({"src/constants/interactions.js"(X,H){"use strict";H.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}}}),Ky=Ye({"src/lib/regex.js"(X){"use strict";X.counter=function(H,g,x,A){var M=(g||"")+(x?"":"$"),e=A===!1?"":"^";return H==="xy"?new RegExp(e+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+M):new RegExp(e+H+"([2-9]|[1-9][0-9]+)?"+M)}}}),sF=Ye({"src/lib/coerce.js"(X){"use strict";var H=jo(),g=bh(),x=Oo().extendFlat,A=Pl(),M=Hg(),e=Fn(),t=Xm().DESELECTDIM,r=__(),o=Ky().counter,a=Xy().modHalf,i=xp().isArrayOrTypedArray,n=xp().isTypedArraySpec,s=xp().decodeTypedArraySpec;X.valObjectMeta={data_array:{coerceFunction:function(h,v,p){v.set(i(h)?h:n(h)?s(h):p)}},enumerated:{coerceFunction:function(h,v,p,T){T.coerceNumber&&(h=+h),T.values.indexOf(h)===-1?v.set(p):v.set(h)},validateFunction:function(h,v){v.coerceNumber&&(h=+h);for(var p=v.values,T=0;T<p.length;T++){var l=String(p[T]);if(l.charAt(0)==="/"&&l.charAt(l.length-1)==="/"){var _=new RegExp(l.substr(1,l.length-2));if(_.test(h))return!0}else if(h===p[T])return!0}return!1}},boolean:{coerceFunction:function(h,v,p){h===!0||h===!1?v.set(h):v.set(p)}},number:{coerceFunction:function(h,v,p,T){n(h)&&(h=s(h)),!H(h)||T.min!==void 0&&h<T.min||T.max!==void 0&&h>T.max?v.set(p):v.set(+h)}},integer:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}n(h)&&(h=s(h)),h%1||!H(h)||T.min!==void 0&&h<T.min||T.max!==void 0&&h>T.max?v.set(p):v.set(+h)}},string:{coerceFunction:function(h,v,p,T){if(typeof h!="string"){var l=typeof h=="number";T.strict===!0||!l?v.set(p):v.set(String(h))}else T.noBlank&&!h?v.set(p):v.set(h)}},color:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),g(h).isValid()?v.set(h):v.set(p)}},colorlist:{coerceFunction:function(h,v,p){function T(l){return g(l).isValid()}!Array.isArray(h)||!h.length?v.set(p):h.every(T)?v.set(h):v.set(p)}},colorscale:{coerceFunction:function(h,v,p){v.set(M.get(h,p))}},angle:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),h==="auto"?v.set("auto"):H(h)?v.set(a(+h,360)):v.set(p)}},subplotid:{coerceFunction:function(h,v,p,T){var l=T.regex||o(p);if(typeof h=="string"&&l.test(h)){v.set(h);return}v.set(p)},validateFunction:function(h,v){var p=v.dflt;return h===p?!0:typeof h!="string"?!1:!!o(p).test(h)}},flaglist:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}if(typeof h!="string"){v.set(p);return}for(var l=h.split("+"),_=0;_<l.length;){var w=l[_];T.flags.indexOf(w)===-1||l.indexOf(w)<_?l.splice(_,1):_++}l.length?v.set(l.join("+")):v.set(p)}},any:{coerceFunction:function(h,v,p){h===void 0?v.set(p):v.set(n(h)?s(h):h)}},info_array:{coerceFunction:function(h,v,p,T){function l(F,B,O){var I,N={set:function(U){I=U}};return O===void 0&&(O=B.dflt),X.valObjectMeta[B.valType].coerceFunction(F,N,O,B),I}if(n(h)&&(h=s(h)),!i(h)){v.set(p);return}var _=T.dimensions===2||T.dimensions==="1-2"&&Array.isArray(h)&&i(h[0]),w=T.items,S=[],E=Array.isArray(w),m=E&&_&&i(w[0]),b=_&&E&&!m,d=E&&!b?w.length:h.length,u,y,f,P,L,z;if(p=Array.isArray(p)?p:[],_)for(u=0;u<d;u++)for(S[u]=[],f=i(h[u])?h[u]:[],b?L=w.length:E?L=w[u].length:L=f.length,y=0;y<L;y++)b?P=w[y]:E?P=w[u][y]:P=w,z=l(f[y],P,(p[u]||[])[y]),z!==void 0&&(S[u][y]=z);else for(u=0;u<d;u++)z=l(h[u],E?w[u]:w,p[u]),z!==void 0&&(S[u]=z);v.set(S)},validateFunction:function(h,v){if(!i(h))return!1;var p=v.items,T=Array.isArray(p),l=v.dimensions===2;if(!v.freeLength&&h.length!==p.length)return!1;for(var _=0;_<h.length;_++)if(l){if(!i(h[_])||!v.freeLength&&h[_].length!==p[_].length)return!1;for(var w=0;w<h[_].length;w++)if(!c(h[_][w],T?p[_][w]:p))return!1}else if(!c(h[_],T?p[_]:p))return!1;return!0}}},X.coerce=function(h,v,p,T,l){var _=r(p,T).get(),w=r(h,T),S=r(v,T),E=w.get(),m=v._template;if(E===void 0&&m&&(E=r(m,T).get(),m=0),l===void 0&&(l=_.dflt),_.arrayOk){if(i(E))return S.set(E),E;if(n(E))return E=s(E),S.set(E),E}var b=X.valObjectMeta[_.valType].coerceFunction;b(E,S,l,_);var d=S.get();return m&&d===l&&!c(E,_)&&(E=r(m,T).get(),b(E,S,l,_),d=S.get()),d},X.coerce2=function(h,v,p,T,l){var _=r(h,T),w=X.coerce(h,v,p,T,l),S=_.get();return S!=null?w:!1},X.coerceFont=function(h,v,p,T){T||(T={}),p=x({},p),p=x(p,T.overrideDflt||{});var l={family:h(v+".family",p.family),size:h(v+".size",p.size),color:h(v+".color",p.color),weight:h(v+".weight",p.weight),style:h(v+".style",p.style)};if(T.noFontVariant||(l.variant=h(v+".variant",p.variant)),T.noFontLineposition||(l.lineposition=h(v+".lineposition",p.lineposition)),T.noFontTextcase||(l.textcase=h(v+".textcase",p.textcase)),!T.noFontShadow){var _=p.shadow;_==="none"&&T.autoShadowDflt&&(_="auto"),l.shadow=h(v+".shadow",_)}return l},X.coercePattern=function(h,v,p,T){var l=h(v+".shape");if(l){h(v+".solidity"),h(v+".size");var _=h(v+".fillmode"),w=_==="overlay";if(!T){var S=h(v+".bgcolor",w?p:void 0);h(v+".fgcolor",w?e.contrast(S):p)}h(v+".fgopacity",w?.5:1)}},X.coerceHoverinfo=function(h,v,p){var T=v._module.attributes,l=T.hoverinfo?T:A,_=l.hoverinfo,w;if(p._dataLength===1){var S=_.dflt==="all"?_.flags.slice():_.dflt.split("+");S.splice(S.indexOf("name"),1),w=S.join("+")}return X.coerce(h,v,l,"hoverinfo",w)},X.coerceSelectionMarkerOpacity=function(h,v){if(h.marker){var p=h.marker.opacity;if(p!==void 0){var T,l;!i(p)&&!h.selected&&!h.unselected&&(T=p,l=t*p),v("selected.marker.opacity",T),v("unselected.marker.opacity",l)}}};function c(h,v){var p=X.valObjectMeta[v.valType];if(v.arrayOk&&i(h))return!0;if(p.validateFunction)return p.validateFunction(h,v);var T={},l=T,_={set:function(w){l=w}};return p.coerceFunction(h,_,T,v),l!==T}X.validate=c}}),Gg=Ye({"src/plot_api/plot_config.js"(X,H){"use strict";var g={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},x={};function A(M,e){for(var t in M){var r=M[t];r.valType?e[t]=r.dflt:(e[t]||(e[t]={}),A(r,e[t]))}}A(g,x),H.exports={configAttributes:g,dfltConfig:x}}}),YA=Ye({"src/lib/notifier.js"(X,H){"use strict";var g=_n(),x=jo(),A=[];H.exports=function(M,e){if(A.indexOf(M)!==-1)return;A.push(M);var t=1e3;x(e)?t=e:e==="long"&&(t=3e3);var r=g.select("body").selectAll(".plotly-notifier").data([0]);r.enter().append("div").classed("plotly-notifier",!0);var o=r.selectAll(".notifier-note").data(A);function a(i){i.duration(700).style("opacity",0).each("end",function(n){var s=A.indexOf(n);s!==-1&&A.splice(s,1),g.select(this).remove()})}o.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var n=g.select(this);n.append("button").classed("notifier-close",!0).html("&times;").on("click",function(){n.transition().call(a)});for(var s=n.append("p"),c=i.split(/<br\s*\/?>/g),h=0;h<c.length;h++)h&&s.append("br"),s.append("span").text(c[h]);e==="stick"?n.transition().duration(350).style("opacity",1):n.transition().duration(700).style("opacity",1).transition().delay(t).call(a)})}}}),Ym=Ye({"src/lib/loggers.js"(X,H){"use strict";var g=Gg().dfltConfig,x=YA(),A=H.exports={};A.log=function(){var M;if(g.logging>1){var e=["LOG:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.trace.apply(console,e)}if(g.notifyOnLogging>1){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"long")}},A.warn=function(){var M;if(g.logging>0){var e=["WARN:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.trace.apply(console,e)}if(g.notifyOnLogging>0){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"stick")}},A.error=function(){var M;if(g.logging>0){var e=["ERROR:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.error.apply(console,e)}if(g.notifyOnLogging>0){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"stick")}}}}),f2=Ye({"src/lib/noop.js"(X,H){"use strict";H.exports=function(){}}}),KA=Ye({"src/lib/push_unique.js"(X,H){"use strict";H.exports=function(x,A){if(A instanceof RegExp){for(var M=A.toString(),e=0;e<x.length;e++)if(x[e]instanceof RegExp&&x[e].toString()===M)return x;x.push(A)}else(A||A===0)&&x.indexOf(A)===-1&&x.push(A);return x}}}),lF=Ye({"node_modules/gl-mat4/create.js"(X,H){H.exports=g;function g(){var x=new Float32Array(16);return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),uF=Ye({"node_modules/gl-mat4/clone.js"(X,H){H.exports=g;function g(x){var A=new Float32Array(16);return A[0]=x[0],A[1]=x[1],A[2]=x[2],A[3]=x[3],A[4]=x[4],A[5]=x[5],A[6]=x[6],A[7]=x[7],A[8]=x[8],A[9]=x[9],A[10]=x[10],A[11]=x[11],A[12]=x[12],A[13]=x[13],A[14]=x[14],A[15]=x[15],A}}}),cF=Ye({"node_modules/gl-mat4/copy.js"(X,H){H.exports=g;function g(x,A){return x[0]=A[0],x[1]=A[1],x[2]=A[2],x[3]=A[3],x[4]=A[4],x[5]=A[5],x[6]=A[6],x[7]=A[7],x[8]=A[8],x[9]=A[9],x[10]=A[10],x[11]=A[11],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15],x}}}),JA=Ye({"node_modules/gl-mat4/identity.js"(X,H){H.exports=g;function g(x){return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),fF=Ye({"node_modules/gl-mat4/transpose.js"(X,H){H.exports=g;function g(x,A){if(x===A){var M=A[1],e=A[2],t=A[3],r=A[6],o=A[7],a=A[11];x[1]=A[4],x[2]=A[8],x[3]=A[12],x[4]=M,x[6]=A[9],x[7]=A[13],x[8]=e,x[9]=r,x[11]=A[14],x[12]=t,x[13]=o,x[14]=a}else x[0]=A[0],x[1]=A[4],x[2]=A[8],x[3]=A[12],x[4]=A[1],x[5]=A[5],x[6]=A[9],x[7]=A[13],x[8]=A[2],x[9]=A[6],x[10]=A[10],x[11]=A[14],x[12]=A[3],x[13]=A[7],x[14]=A[11],x[15]=A[15];return x}}}),hF=Ye({"node_modules/gl-mat4/invert.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=A[4],a=A[5],i=A[6],n=A[7],s=A[8],c=A[9],h=A[10],v=A[11],p=A[12],T=A[13],l=A[14],_=A[15],w=M*a-e*o,S=M*i-t*o,E=M*n-r*o,m=e*i-t*a,b=e*n-r*a,d=t*n-r*i,u=s*T-c*p,y=s*l-h*p,f=s*_-v*p,P=c*l-h*T,L=c*_-v*T,z=h*_-v*l,F=w*z-S*L+E*P+m*f-b*y+d*u;return F?(F=1/F,x[0]=(a*z-i*L+n*P)*F,x[1]=(t*L-e*z-r*P)*F,x[2]=(T*d-l*b+_*m)*F,x[3]=(h*b-c*d-v*m)*F,x[4]=(i*f-o*z-n*y)*F,x[5]=(M*z-t*f+r*y)*F,x[6]=(l*E-p*d-_*S)*F,x[7]=(s*d-h*E+v*S)*F,x[8]=(o*L-a*f+n*u)*F,x[9]=(e*f-M*L-r*u)*F,x[10]=(p*b-T*E+_*w)*F,x[11]=(c*E-s*b-v*w)*F,x[12]=(a*y-o*P-i*u)*F,x[13]=(M*P-e*y+t*u)*F,x[14]=(T*S-p*m-l*w)*F,x[15]=(s*m-c*S+h*w)*F,x):null}}}),pF=Ye({"node_modules/gl-mat4/adjoint.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=A[4],a=A[5],i=A[6],n=A[7],s=A[8],c=A[9],h=A[10],v=A[11],p=A[12],T=A[13],l=A[14],_=A[15];return x[0]=a*(h*_-v*l)-c*(i*_-n*l)+T*(i*v-n*h),x[1]=-(e*(h*_-v*l)-c*(t*_-r*l)+T*(t*v-r*h)),x[2]=e*(i*_-n*l)-a*(t*_-r*l)+T*(t*n-r*i),x[3]=-(e*(i*v-n*h)-a*(t*v-r*h)+c*(t*n-r*i)),x[4]=-(o*(h*_-v*l)-s*(i*_-n*l)+p*(i*v-n*h)),x[5]=M*(h*_-v*l)-s*(t*_-r*l)+p*(t*v-r*h),x[6]=-(M*(i*_-n*l)-o*(t*_-r*l)+p*(t*n-r*i)),x[7]=M*(i*v-n*h)-o*(t*v-r*h)+s*(t*n-r*i),x[8]=o*(c*_-v*T)-s*(a*_-n*T)+p*(a*v-n*c),x[9]=-(M*(c*_-v*T)-s*(e*_-r*T)+p*(e*v-r*c)),x[10]=M*(a*_-n*T)-o*(e*_-r*T)+p*(e*n-r*a),x[11]=-(M*(a*v-n*c)-o*(e*v-r*c)+s*(e*n-r*a)),x[12]=-(o*(c*l-h*T)-s*(a*l-i*T)+p*(a*h-i*c)),x[13]=M*(c*l-h*T)-s*(e*l-t*T)+p*(e*h-t*c),x[14]=-(M*(a*l-i*T)-o*(e*l-t*T)+p*(e*i-t*a)),x[15]=M*(a*h-i*c)-o*(e*h-t*c)+s*(e*i-t*a),x}}}),dF=Ye({"node_modules/gl-mat4/determinant.js"(X,H){H.exports=g;function g(x){var A=x[0],M=x[1],e=x[2],t=x[3],r=x[4],o=x[5],a=x[6],i=x[7],n=x[8],s=x[9],c=x[10],h=x[11],v=x[12],p=x[13],T=x[14],l=x[15],_=A*o-M*r,w=A*a-e*r,S=A*i-t*r,E=M*a-e*o,m=M*i-t*o,b=e*i-t*a,d=n*p-s*v,u=n*T-c*v,y=n*l-h*v,f=s*T-c*p,P=s*l-h*p,L=c*l-h*T;return _*L-w*P+S*f+E*y-m*u+b*d}}}),vF=Ye({"node_modules/gl-mat4/multiply.js"(X,H){H.exports=g;function g(x,A,M){var e=A[0],t=A[1],r=A[2],o=A[3],a=A[4],i=A[5],n=A[6],s=A[7],c=A[8],h=A[9],v=A[10],p=A[11],T=A[12],l=A[13],_=A[14],w=A[15],S=M[0],E=M[1],m=M[2],b=M[3];return x[0]=S*e+E*a+m*c+b*T,x[1]=S*t+E*i+m*h+b*l,x[2]=S*r+E*n+m*v+b*_,x[3]=S*o+E*s+m*p+b*w,S=M[4],E=M[5],m=M[6],b=M[7],x[4]=S*e+E*a+m*c+b*T,x[5]=S*t+E*i+m*h+b*l,x[6]=S*r+E*n+m*v+b*_,x[7]=S*o+E*s+m*p+b*w,S=M[8],E=M[9],m=M[10],b=M[11],x[8]=S*e+E*a+m*c+b*T,x[9]=S*t+E*i+m*h+b*l,x[10]=S*r+E*n+m*v+b*_,x[11]=S*o+E*s+m*p+b*w,S=M[12],E=M[13],m=M[14],b=M[15],x[12]=S*e+E*a+m*c+b*T,x[13]=S*t+E*i+m*h+b*l,x[14]=S*r+E*n+m*v+b*_,x[15]=S*o+E*s+m*p+b*w,x}}}),mF=Ye({"node_modules/gl-mat4/translate.js"(X,H){H.exports=g;function g(x,A,M){var e=M[0],t=M[1],r=M[2],o,a,i,n,s,c,h,v,p,T,l,_;return A===x?(x[12]=A[0]*e+A[4]*t+A[8]*r+A[12],x[13]=A[1]*e+A[5]*t+A[9]*r+A[13],x[14]=A[2]*e+A[6]*t+A[10]*r+A[14],x[15]=A[3]*e+A[7]*t+A[11]*r+A[15]):(o=A[0],a=A[1],i=A[2],n=A[3],s=A[4],c=A[5],h=A[6],v=A[7],p=A[8],T=A[9],l=A[10],_=A[11],x[0]=o,x[1]=a,x[2]=i,x[3]=n,x[4]=s,x[5]=c,x[6]=h,x[7]=v,x[8]=p,x[9]=T,x[10]=l,x[11]=_,x[12]=o*e+s*t+p*r+A[12],x[13]=a*e+c*t+T*r+A[13],x[14]=i*e+h*t+l*r+A[14],x[15]=n*e+v*t+_*r+A[15]),x}}}),gF=Ye({"node_modules/gl-mat4/scale.js"(X,H){H.exports=g;function g(x,A,M){var e=M[0],t=M[1],r=M[2];return x[0]=A[0]*e,x[1]=A[1]*e,x[2]=A[2]*e,x[3]=A[3]*e,x[4]=A[4]*t,x[5]=A[5]*t,x[6]=A[6]*t,x[7]=A[7]*t,x[8]=A[8]*r,x[9]=A[9]*r,x[10]=A[10]*r,x[11]=A[11]*r,x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15],x}}}),yF=Ye({"node_modules/gl-mat4/rotate.js"(X,H){H.exports=g;function g(x,A,M,e){var t=e[0],r=e[1],o=e[2],a=Math.sqrt(t*t+r*r+o*o),i,n,s,c,h,v,p,T,l,_,w,S,E,m,b,d,u,y,f,P,L,z,F,B;return Math.abs(a)<1e-6?null:(a=1/a,t*=a,r*=a,o*=a,i=Math.sin(M),n=Math.cos(M),s=1-n,c=A[0],h=A[1],v=A[2],p=A[3],T=A[4],l=A[5],_=A[6],w=A[7],S=A[8],E=A[9],m=A[10],b=A[11],d=t*t*s+n,u=r*t*s+o*i,y=o*t*s-r*i,f=t*r*s-o*i,P=r*r*s+n,L=o*r*s+t*i,z=t*o*s+r*i,F=r*o*s-t*i,B=o*o*s+n,x[0]=c*d+T*u+S*y,x[1]=h*d+l*u+E*y,x[2]=v*d+_*u+m*y,x[3]=p*d+w*u+b*y,x[4]=c*f+T*P+S*L,x[5]=h*f+l*P+E*L,x[6]=v*f+_*P+m*L,x[7]=p*f+w*P+b*L,x[8]=c*z+T*F+S*B,x[9]=h*z+l*F+E*B,x[10]=v*z+_*F+m*B,x[11]=p*z+w*F+b*B,A!==x&&(x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x)}}}),_F=Ye({"node_modules/gl-mat4/rotateX.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[4],o=A[5],a=A[6],i=A[7],n=A[8],s=A[9],c=A[10],h=A[11];return A!==x&&(x[0]=A[0],x[1]=A[1],x[2]=A[2],x[3]=A[3],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[4]=r*t+n*e,x[5]=o*t+s*e,x[6]=a*t+c*e,x[7]=i*t+h*e,x[8]=n*t-r*e,x[9]=s*t-o*e,x[10]=c*t-a*e,x[11]=h*t-i*e,x}}}),xF=Ye({"node_modules/gl-mat4/rotateY.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[0],o=A[1],a=A[2],i=A[3],n=A[8],s=A[9],c=A[10],h=A[11];return A!==x&&(x[4]=A[4],x[5]=A[5],x[6]=A[6],x[7]=A[7],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[0]=r*t-n*e,x[1]=o*t-s*e,x[2]=a*t-c*e,x[3]=i*t-h*e,x[8]=r*e+n*t,x[9]=o*e+s*t,x[10]=a*e+c*t,x[11]=i*e+h*t,x}}}),bF=Ye({"node_modules/gl-mat4/rotateZ.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[0],o=A[1],a=A[2],i=A[3],n=A[4],s=A[5],c=A[6],h=A[7];return A!==x&&(x[8]=A[8],x[9]=A[9],x[10]=A[10],x[11]=A[11],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[0]=r*t+n*e,x[1]=o*t+s*e,x[2]=a*t+c*e,x[3]=i*t+h*e,x[4]=n*t-r*e,x[5]=s*t-o*e,x[6]=c*t-a*e,x[7]=h*t-i*e,x}}}),wF=Ye({"node_modules/gl-mat4/fromRotation.js"(X,H){H.exports=g;function g(x,A,M){var e,t,r,o=M[0],a=M[1],i=M[2],n=Math.sqrt(o*o+a*a+i*i);return Math.abs(n)<1e-6?null:(n=1/n,o*=n,a*=n,i*=n,e=Math.sin(A),t=Math.cos(A),r=1-t,x[0]=o*o*r+t,x[1]=a*o*r+i*e,x[2]=i*o*r-a*e,x[3]=0,x[4]=o*a*r-i*e,x[5]=a*a*r+t,x[6]=i*a*r+o*e,x[7]=0,x[8]=o*i*r+a*e,x[9]=a*i*r-o*e,x[10]=i*i*r+t,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x)}}}),TF=Ye({"node_modules/gl-mat4/fromRotationTranslation.js"(X,H){H.exports=g;function g(x,A,M){var e=A[0],t=A[1],r=A[2],o=A[3],a=e+e,i=t+t,n=r+r,s=e*a,c=e*i,h=e*n,v=t*i,p=t*n,T=r*n,l=o*a,_=o*i,w=o*n;return x[0]=1-(v+T),x[1]=c+w,x[2]=h-_,x[3]=0,x[4]=c-w,x[5]=1-(s+T),x[6]=p+l,x[7]=0,x[8]=h+_,x[9]=p-l,x[10]=1-(s+v),x[11]=0,x[12]=M[0],x[13]=M[1],x[14]=M[2],x[15]=1,x}}}),AF=Ye({"node_modules/gl-mat4/fromScaling.js"(X,H){H.exports=g;function g(x,A){return x[0]=A[0],x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=A[1],x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=A[2],x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),SF=Ye({"node_modules/gl-mat4/fromTranslation.js"(X,H){H.exports=g;function g(x,A){return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=A[0],x[13]=A[1],x[14]=A[2],x[15]=1,x}}}),MF=Ye({"node_modules/gl-mat4/fromXRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=e,x[6]=M,x[7]=0,x[8]=0,x[9]=-M,x[10]=e,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),EF=Ye({"node_modules/gl-mat4/fromYRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=e,x[1]=0,x[2]=-M,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=M,x[9]=0,x[10]=e,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),kF=Ye({"node_modules/gl-mat4/fromZRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=e,x[1]=M,x[2]=0,x[3]=0,x[4]=-M,x[5]=e,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),$A=Ye({"node_modules/gl-mat4/fromQuat.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=M+M,a=e+e,i=t+t,n=M*o,s=e*o,c=e*a,h=t*o,v=t*a,p=t*i,T=r*o,l=r*a,_=r*i;return x[0]=1-c-p,x[1]=s+_,x[2]=h-l,x[3]=0,x[4]=s-_,x[5]=1-n-p,x[6]=v+T,x[7]=0,x[8]=h+l,x[9]=v-T,x[10]=1-n-c,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),CF=Ye({"node_modules/gl-mat4/frustum.js"(X,H){H.exports=g;function g(x,A,M,e,t,r,o){var a=1/(M-A),i=1/(t-e),n=1/(r-o);return x[0]=r*2*a,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=r*2*i,x[6]=0,x[7]=0,x[8]=(M+A)*a,x[9]=(t+e)*i,x[10]=(o+r)*n,x[11]=-1,x[12]=0,x[13]=0,x[14]=o*r*2*n,x[15]=0,x}}}),LF=Ye({"node_modules/gl-mat4/perspective.js"(X,H){H.exports=g;function g(x,A,M,e,t){var r=1/Math.tan(A/2),o=1/(e-t);return x[0]=r/M,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=r,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=(t+e)*o,x[11]=-1,x[12]=0,x[13]=0,x[14]=2*t*e*o,x[15]=0,x}}}),PF=Ye({"node_modules/gl-mat4/perspectiveFromFieldOfView.js"(X,H){H.exports=g;function g(x,A,M,e){var t=Math.tan(A.upDegrees*Math.PI/180),r=Math.tan(A.downDegrees*Math.PI/180),o=Math.tan(A.leftDegrees*Math.PI/180),a=Math.tan(A.rightDegrees*Math.PI/180),i=2/(o+a),n=2/(t+r);return x[0]=i,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=n,x[6]=0,x[7]=0,x[8]=-((o-a)*i*.5),x[9]=(t-r)*n*.5,x[10]=e/(M-e),x[11]=-1,x[12]=0,x[13]=0,x[14]=e*M/(M-e),x[15]=0,x}}}),IF=Ye({"node_modules/gl-mat4/ortho.js"(X,H){H.exports=g;function g(x,A,M,e,t,r,o){var a=1/(A-M),i=1/(e-t),n=1/(r-o);return x[0]=-2*a,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=-2*i,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=2*n,x[11]=0,x[12]=(A+M)*a,x[13]=(t+e)*i,x[14]=(o+r)*n,x[15]=1,x}}}),RF=Ye({"node_modules/gl-mat4/lookAt.js"(X,H){var g=JA();H.exports=x;function x(A,M,e,t){var r,o,a,i,n,s,c,h,v,p,T=M[0],l=M[1],_=M[2],w=t[0],S=t[1],E=t[2],m=e[0],b=e[1],d=e[2];return Math.abs(T-m)<1e-6&&Math.abs(l-b)<1e-6&&Math.abs(_-d)<1e-6?g(A):(c=T-m,h=l-b,v=_-d,p=1/Math.sqrt(c*c+h*h+v*v),c*=p,h*=p,v*=p,r=S*v-E*h,o=E*c-w*v,a=w*h-S*c,p=Math.sqrt(r*r+o*o+a*a),p?(p=1/p,r*=p,o*=p,a*=p):(r=0,o=0,a=0),i=h*a-v*o,n=v*r-c*a,s=c*o-h*r,p=Math.sqrt(i*i+n*n+s*s),p?(p=1/p,i*=p,n*=p,s*=p):(i=0,n=0,s=0),A[0]=r,A[1]=i,A[2]=c,A[3]=0,A[4]=o,A[5]=n,A[6]=h,A[7]=0,A[8]=a,A[9]=s,A[10]=v,A[11]=0,A[12]=-(r*T+o*l+a*_),A[13]=-(i*T+n*l+s*_),A[14]=-(c*T+h*l+v*_),A[15]=1,A)}}}),DF=Ye({"node_modules/gl-mat4/str.js"(X,H){H.exports=g;function g(x){return"mat4("+x[0]+", "+x[1]+", "+x[2]+", "+x[3]+", "+x[4]+", "+x[5]+", "+x[6]+", "+x[7]+", "+x[8]+", "+x[9]+", "+x[10]+", "+x[11]+", "+x[12]+", "+x[13]+", "+x[14]+", "+x[15]+")"}}}),QA=Ye({"node_modules/gl-mat4/index.js"(X,H){H.exports={create:lF(),clone:uF(),copy:cF(),identity:JA(),transpose:fF(),invert:hF(),adjoint:pF(),determinant:dF(),multiply:vF(),translate:mF(),scale:gF(),rotate:yF(),rotateX:_F(),rotateY:xF(),rotateZ:bF(),fromRotation:wF(),fromRotationTranslation:TF(),fromScaling:AF(),fromTranslation:SF(),fromXRotation:MF(),fromYRotation:EF(),fromZRotation:kF(),fromQuat:$A(),frustum:CF(),perspective:LF(),perspectiveFromFieldOfView:PF(),ortho:IF(),lookAt:RF(),str:DF()}}}),h2=Ye({"src/lib/matrix.js"(X){"use strict";var H=QA();X.init2dArray=function(g,x){for(var A=new Array(g),M=0;M<g;M++)A[M]=new Array(x);return A},X.transposeRagged=function(g){var x=0,A=g.length,M,e;for(M=0;M<A;M++)x=Math.max(x,g[M].length);var t=new Array(x);for(M=0;M<x;M++)for(t[M]=new Array(A),e=0;e<A;e++)t[M][e]=g[e][M];return t},X.dot=function(g,x){if(!(g.length&&x.length)||g.length!==x.length)return null;var A=g.length,M,e;if(g[0].length)for(M=new Array(A),e=0;e<A;e++)M[e]=X.dot(g[e],x);else if(x[0].length){var t=X.transposeRagged(x);for(M=new Array(t.length),e=0;e<t.length;e++)M[e]=X.dot(g,t[e])}else for(M=0,e=0;e<A;e++)M+=g[e]*x[e];return M},X.translationMatrix=function(g,x){return[[1,0,g],[0,1,x],[0,0,1]]},X.rotationMatrix=function(g){var x=g*Math.PI/180;return[[Math.cos(x),-Math.sin(x),0],[Math.sin(x),Math.cos(x),0],[0,0,1]]},X.rotationXYMatrix=function(g,x,A){return X.dot(X.dot(X.translationMatrix(x,A),X.rotationMatrix(g)),X.translationMatrix(-x,-A))},X.apply3DTransform=function(g){return function(){var x=arguments,A=arguments.length===1?x[0]:[x[0],x[1],x[2]||0];return X.dot(g,[A[0],A[1],A[2],1]).slice(0,3)}},X.apply2DTransform=function(g){return function(){var x=arguments;x.length===3&&(x=x[0]);var A=arguments.length===1?x[0]:[x[0],x[1]];return X.dot(g,[A[0],A[1],1]).slice(0,2)}},X.apply2DTransform2=function(g){var x=X.apply2DTransform(g);return function(A){return x(A.slice(0,2)).concat(x(A.slice(2,4)))}},X.convertCssMatrix=function(g){if(g){var x=g.length;if(x===16)return g;if(x===6)return[g[0],g[1],0,0,g[2],g[3],0,0,0,0,1,0,g[4],g[5],0,1]}return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},X.inverseTransformMatrix=function(g){var x=[];return H.invert(x,g),[[x[0],x[1],x[2],x[3]],[x[4],x[5],x[6],x[7]],[x[8],x[9],x[10],x[11]],[x[12],x[13],x[14],x[15]]]}}}),b_=Ye({"src/lib/dom.js"(X,H){"use strict";var g=_n(),x=Ym(),A=h2(),M=QA();function e(T){var l;if(typeof T=="string"){if(l=document.getElementById(T),l===null)throw new Error("No DOM element with id '"+T+"' exists on the page.");return l}else if(T==null)throw new Error("DOM element provided is null or undefined");return T}function t(T){var l=g.select(T);return l.node()instanceof HTMLElement&&l.size()&&l.classed("js-plotly-plot")}function r(T){var l=T&&T.parentNode;l&&l.removeChild(T)}function o(T,l){a("global",T,l)}function a(T,l,_){var w="plotly.js-style-"+T,S=document.getElementById(w);if(!(S&&S.matches(".no-inline-styles"))){S||(S=document.createElement("style"),S.setAttribute("id",w),S.appendChild(document.createTextNode("")),document.head.appendChild(S));var E=S.sheet;E?E.insertRule?E.insertRule(l+"{"+_+"}",0):E.addRule?E.addRule(l,_,0):x.warn("addStyleRule failed"):x.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function i(T){var l="plotly.js-style-"+T,_=document.getElementById(l);_&&r(_)}function n(T,l,_,w,S,E){var m=w.split(":"),b=S.split(":"),d="data-btn-style-event-added";E||(E=document),E.querySelectorAll(T).forEach(function(u){u.getAttribute(d)||(u.addEventListener("mouseenter",function(){var y=this.querySelector(_);y&&(y.style[m[0]]=m[1])}),u.addEventListener("mouseleave",function(){var y=this.querySelector(_);y&&(l&&this.matches(l)?y.style[m[0]]=m[1]:y.style[b[0]]=b[1])}),u.setAttribute(d,!0))})}function s(T){var l=h(T),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return l.forEach(function(w){var S=c(w);if(S){var E=A.convertCssMatrix(S);_=M.multiply(_,_,E)}}),_}function c(T){var l=window.getComputedStyle(T,null),_=l.getPropertyValue("-webkit-transform")||l.getPropertyValue("-moz-transform")||l.getPropertyValue("-ms-transform")||l.getPropertyValue("-o-transform")||l.getPropertyValue("transform");return _==="none"?null:_.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(w){return+w})}function h(T){for(var l=[];v(T);)l.push(T),T=T.parentNode,typeof ShadowRoot=="function"&&T instanceof ShadowRoot&&(T=T.host);return l}function v(T){return T&&(T instanceof Element||T instanceof HTMLElement)}function p(T,l){return T&&l&&T.top===l.top&&T.left===l.left&&T.right===l.right&&T.bottom===l.bottom}H.exports={getGraphDiv:e,isPlotDiv:t,removeElement:r,addStyleRule:o,addRelatedStyleRule:a,deleteRelatedStyleRule:i,setStyleOnHover:n,getFullTransformMatrix:s,getElementTransformMatrix:c,getElementAndAncestors:h,equalDomRects:p}}}),w_=Ye({"src/plots/animation_attributes.js"(X,H){"use strict";H.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}}}),Ou=Ye({"src/plot_api/edit_types.js"(X,H){"use strict";var g=Oo().extendFlat,x=Zv(),A={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},M={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},e=A.flags.slice().concat(["fullReplot"]),t=M.flags.slice().concat("layoutReplot");H.exports={traces:A,layout:M,traceFlags:function(){return r(e)},layoutFlags:function(){return r(t)},update:function(i,n){var s=n.editType;if(s&&s!=="none")for(var c=s.split("+"),h=0;h<c.length;h++)i[c[h]]=!0},overrideAll:o};function r(i){for(var n={},s=0;s<i.length;s++)n[i[s]]=!1;return n}function o(i,n,s){var c=g({},i);for(var h in c){var v=c[h];x(v)&&(c[h]=a(v,n,s,h))}return s==="from-root"&&(c.editType=n),c}function a(i,n,s,c){if(i.valType){var h=g({},i);if(h.editType=n,Array.isArray(i.items)){h.items=new Array(i.items.length);for(var v=0;v<i.items.length;v++)h.items[v]=a(i.items[v],n,"from-root")}return h}else return o(i,n,c.charAt(0)==="_"?"nested":"from-root")}}}),Uh=Ye({"src/components/drawing/attributes.js"(X){"use strict";X.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"},X.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}}}),eS=Ye({"src/constants/docs.js"(X,H){"use strict";H.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}}}),xs=Ye({"src/plots/template_attributes.js"(X){"use strict";var H=eS(),g=H.FORMAT_LINK,x=H.DATE_FORMAT_LINK;function A(M){var e=M.description?" "+M.description:"",t=M.keys||[];if(t.length>0){for(var r=[],o=0;o<t.length;o++)r[o]="`"+t[o]+"`";e=e+"Finally, the template string has access to ",t.length===1?e=e+"variable "+r[0]:e=e+"variables "+r.slice(0,-1).join(", ")+" and "+r.slice(-1)+"."}return e}X.hovertemplateAttrs=function(M,e){M=M||{},e=e||{};var t=A(e),r={valType:"string",dflt:"",editType:M.editType||"none"};return M.arrayOk!==!1&&(r.arrayOk=!0),r},X.texttemplateAttrs=function(M,e){M=M||{},e=e||{};var t=A(e),r={valType:"string",dflt:"",editType:M.editType||"calc"};return M.arrayOk!==!1&&(r.arrayOk=!0),r},X.shapeTexttemplateAttrs=function(M,e){M=M||{},e=e||{};var t=M.newshape?"new ":"",r=A(e),o={valType:"string",dflt:"",editType:M.editType||"arraydraw"};return o}}}),p2=Ye({"src/components/shapes/label_texttemplate.js"(X,H){"use strict";function g(_,w){return w?w.d2l(_):_}function x(_,w){return w?w.l2d(_):_}function A(_){return _.x0}function M(_){return _.x1}function e(_){return _.y0}function t(_){return _.y1}function r(_){return _.x0shift||0}function o(_){return _.x1shift||0}function a(_){return _.y0shift||0}function i(_){return _.y1shift||0}function n(_,w){return g(_.x1,w)+o(_)-g(_.x0,w)-r(_)}function s(_,w,S){return g(_.y1,S)+i(_)-g(_.y0,S)-a(_)}function c(_,w){return Math.abs(n(_,w))}function h(_,w,S){return Math.abs(s(_,w,S))}function v(_,w,S){return _.type!=="line"?void 0:Math.sqrt(Math.pow(n(_,w),2)+Math.pow(s(_,w,S),2))}function p(_,w){return x((g(_.x1,w)+o(_)+g(_.x0,w)+r(_))/2,w)}function T(_,w,S){return x((g(_.y1,S)+i(_)+g(_.y0,S)+a(_))/2,S)}function l(_,w,S){return _.type!=="line"?void 0:s(_,w,S)/n(_,w)}H.exports={x0:A,x1:M,y0:e,y1:t,slope:l,dx:n,dy:s,width:c,height:h,length:v,xcenter:p,ycenter:T}}}),zF=Ye({"src/components/shapes/draw_newshape/attributes.js"(X,H){"use strict";var g=Ou().overrideAll,x=Pl(),A=Au(),M=Uh().dash,e=Oo().extendFlat,t=xs().shapeTexttemplateAttrs,r=p2();H.exports=g({newshape:{visible:e({},x.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:e({},x.legend,{}),legendgroup:e({},x.legendgroup,{}),legendgrouptitle:{text:e({},x.legendgrouptitle.text,{}),font:A({})},legendrank:e({},x.legendrank,{}),legendwidth:e({},x.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:e({},M,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:e({},x.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:t({newshape:!0},{keys:Object.keys(r)}),font:A({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")}}),FF=Ye({"src/components/selections/draw_newselection/attributes.js"(X,H){"use strict";var g=Uh().dash,x=Oo().extendFlat;H.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:x({},g,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}}}),d2=Ye({"src/plots/pad_attributes.js"(X,H){"use strict";H.exports=function(g){var x=g.editType;return{t:{valType:"number",dflt:0,editType:x},r:{valType:"number",dflt:0,editType:x},b:{valType:"number",dflt:0,editType:x},l:{valType:"number",dflt:0,editType:x},editType:x}}}}),Jy=Ye({"src/plots/layout_attributes.js"(X,H){"use strict";var g=Au(),x=w_(),A=Gf(),M=zF(),e=FF(),t=d2(),r=Oo().extendFlat,o=g({editType:"calc"});o.family.dflt='"Open Sans", verdana, arial, sans-serif',o.size.dflt=12,o.color.dflt=A.defaultLine,H.exports={font:o,title:{text:{valType:"string",editType:"layoutstyle"},font:g({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:g({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:r(t({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:A.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:A.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:A.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:M.newshape,activeshape:M.activeshape,newselection:e.newselection,activeselection:e.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:r({},x.transition,{editType:"none"})}}}),OF=Qn({"temp_stylePlugin:node_modules/maplibre-gl/dist/maplibre-gl.css"(){}}),Qfe={},BF=Qn({"stylePlugin:/Users/ekl/code/plotly.js/node_modules/maplibre-gl/dist/maplibre-gl.css"(){OF()}}),Hn=Ye({"src/registry.js"(X){"use strict";var H=Ym(),g=f2(),x=KA(),A=Zv(),M=b_().addStyleRule,e=Oo(),t=Pl(),r=Jy(),o=e.extendFlat,a=e.extendDeepAll;X.modules={},X.allCategories={},X.allTypes=[],X.subplotsRegistry={},X.componentsRegistry={},X.layoutArrayContainers=[],X.layoutArrayRegexes=[],X.traceLayoutAttributes={},X.localeRegistry={},X.apiMethodRegistry={},X.collectableSubplotTypes=null,X.register=function(w){if(X.collectableSubplotTypes=null,w)w&&!Array.isArray(w)&&(w=[w]);else throw new Error("No argument passed to Plotly.register.");for(var S=0;S<w.length;S++){var E=w[S];if(!E)throw new Error("Invalid module was attempted to be registered!");switch(E.moduleType){case"trace":i(E);break;case"transform":c(E);break;case"component":s(E);break;case"locale":h(E);break;case"apiMethod":var m=E.name;X.apiMethodRegistry[m]=E.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}},X.getModule=function(_){var w=X.modules[l(_)];return w?w._module:!1},X.traceIs=function(_,w){if(_=l(_),_==="various")return!1;var S=X.modules[_];return S||(_&&H.log("Unrecognized trace type "+_+"."),S=X.modules[t.type.dflt]),!!S.categories[w]},X.getComponentMethod=function(_,w){var S=X.componentsRegistry[_];return S&&S[w]||g},X.call=function(){var _=arguments[0],w=[].slice.call(arguments,1);return X.apiMethodRegistry[_].apply(null,w)};function i(_){var w=_.name,S=_.categories,E=_.meta;if(X.modules[w]){H.log("Type "+w+" already registered");return}X.subplotsRegistry[_.basePlotModule.name]||n(_.basePlotModule);for(var m={},b=0;b<S.length;b++)m[S[b]]=!0,X.allCategories[S[b]]=!0;X.modules[w]={_module:_,categories:m},E&&Object.keys(E).length&&(X.modules[w].meta=E),X.allTypes.push(w);for(var d in X.componentsRegistry)p(d,w);_.layoutAttributes&&o(X.traceLayoutAttributes,_.layoutAttributes);var u=_.basePlotModule,y=u.name;if(y==="mapbox"){var f=u.constants.styleRules;for(var P in f)M(".js-plotly-plot .plotly .mapboxgl-"+P,f[P])}y==="map"&&BF(),(y==="geo"||y==="mapbox"||y==="map")&&window.PlotlyGeoAssets===void 0&&(window.PlotlyGeoAssets={topojson:{}})}function n(_){var w=_.name;if(X.subplotsRegistry[w]){H.log("Plot type "+w+" already registered.");return}v(_),X.subplotsRegistry[w]=_;for(var S in X.componentsRegistry)T(S,_.name)}function s(_){if(typeof _.name!="string")throw new Error("Component module *name* must be a string.");var w=_.name;X.componentsRegistry[w]=_,_.layoutAttributes&&(_.layoutAttributes._isLinkedToArray&&x(X.layoutArrayContainers,w),v(_));for(var S in X.modules)p(w,S);for(var E in X.subplotsRegistry)T(w,E);_.schema&&_.schema.layout&&a(r,_.schema.layout)}function c(_){if(typeof _.name!="string")throw new Error("Transform module *name* must be a string.");var w="Transform module "+_.name,S=typeof _.transform=="function",E=typeof _.calcTransform=="function";if(!S&&!E)throw new Error(w+" is missing a *transform* or *calcTransform* method.");S&&E&&H.log([w+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),A(_.attributes)||H.log(w+" registered without an *attributes* object."),typeof _.supplyDefaults!="function"&&H.log(w+" registered without a *supplyDefaults* method.")}function h(_){var w=_.name,S=w.split("-")[0],E=_.dictionary,m=_.format,b=E&&Object.keys(E).length,d=m&&Object.keys(m).length,u=X.localeRegistry,y=u[w];if(y||(u[w]=y={}),S!==w){var f=u[S];f||(u[S]=f={}),b&&f.dictionary===y.dictionary&&(f.dictionary=E),d&&f.format===y.format&&(f.format=m)}b&&(y.dictionary=E),d&&(y.format=m)}function v(_){if(_.layoutAttributes){var w=_.layoutAttributes._arrayAttrRegexps;if(w)for(var S=0;S<w.length;S++)x(X.layoutArrayRegexes,w[S])}}function p(_,w){var S=X.componentsRegistry[_].schema;if(!(!S||!S.traces)){var E=S.traces[w];E&&a(X.modules[w]._module.attributes,E)}}function T(_,w){var S=X.componentsRegistry[_].schema;if(!(!S||!S.subplots)){var E=X.subplotsRegistry[w],m=E.layoutAttributes,b=E.attr==="subplot"?E.name:E.attr;Array.isArray(b)&&(b=b[0]);var d=S.subplots[b];m&&d&&a(m,d)}}function l(_){return typeof _=="object"&&(_=_.type),_}}}),NF=Ye({"src/lib/dates.js"(X){"use strict";var H=Np().timeFormat,g=jo(),x=Ym(),A=Xy().mod,M=ks(),e=M.BADNUM,t=M.ONEDAY,r=M.ONEHOUR,o=M.ONEMIN,a=M.ONESEC,i=M.EPOCHJD,n=Hn(),s=Np().utcFormat,c=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\d)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,h=/^\s*(-?\d\d\d\d|\d\d)(-(\d?\di?)(-(\d?\d)([ Tt]([01]?\d|2[0-3])(:([0-5]\d)(:([0-5]\d(\.\d+)?))?(Z|z|[+\-]\d\d(:?\d\d)?)?)?)?)?)?\s*$/m,v=new Date().getFullYear()-70;function p(F){return F&&n.componentsRegistry.calendars&&typeof F=="string"&&F!=="gregorian"}X.dateTick0=function(F,B){var O=T(F,!!B);if(B<2)return O;var I=X.dateTime2ms(O,F);return I+=t*(B-1),X.ms2DateTime(I,0,F)};function T(F,B){return p(F)?B?n.getComponentMethod("calendars","CANONICAL_SUNDAY")[F]:n.getComponentMethod("calendars","CANONICAL_TICK")[F]:B?"2000-01-02":"2000-01-01"}X.dfltRange=function(F){return p(F)?n.getComponentMethod("calendars","DFLTRANGE")[F]:["2000-01-01","2001-01-01"]},X.isJSDate=function(F){return typeof F=="object"&&F!==null&&typeof F.getTime=="function"};var l,_;X.dateTime2ms=function(F,B){if(X.isJSDate(F)){var O=F.getTimezoneOffset()*o,I=(F.getUTCMinutes()-F.getMinutes())*o+(F.getUTCSeconds()-F.getSeconds())*a+(F.getUTCMilliseconds()-F.getMilliseconds());if(I){var N=3*o;O=O-N/2+A(I-O+N/2,N)}return F=Number(F)-O,F>=l&&F<=_?F:e}if(typeof F!="string"&&typeof F!="number")return e;F=String(F);var U=p(B),W=F.charAt(0);U&&(W==="G"||W==="g")&&(F=F.substr(1),B="");var Q=U&&B.substr(0,7)==="chinese",ue=F.match(Q?h:c);if(!ue)return e;var se=ue[1],he=ue[3]||"1",G=Number(ue[5]||1),$=Number(ue[7]||0),J=Number(ue[9]||0),Z=Number(ue[11]||0);if(U){if(se.length===2)return e;se=Number(se);var re;try{var ne=n.getComponentMethod("calendars","getCal")(B);if(Q){var j=he.charAt(he.length-1)==="i";he=parseInt(he,10),re=ne.newDate(se,ne.toMonthIndex(se,he,j),G)}else re=ne.newDate(se,Number(he),G)}catch{return e}return re?(re.toJD()-i)*t+$*r+J*o+Z*a:e}se.length===2?se=(Number(se)+2e3-v)%100+v:se=Number(se),he-=1;var ee=new Date(Date.UTC(2e3,he,G,$,J));return ee.setUTCFullYear(se),ee.getUTCMonth()!==he||ee.getUTCDate()!==G?e:ee.getTime()+Z*a},l=X.MIN_MS=X.dateTime2ms("-9999"),_=X.MAX_MS=X.dateTime2ms("9999-12-31 23:59:59.9999"),X.isDateTime=function(F,B){return X.dateTime2ms(F,B)!==e};function w(F,B){return String(F+Math.pow(10,B)).substr(1)}var S=90*t,E=3*r,m=5*o;X.ms2DateTime=function(F,B,O){if(typeof F!="number"||!(F>=l&&F<=_))return e;B||(B=0);var I=Math.floor(A(F+.05,1)*10),N=Math.round(F-I/10),U,W,Q,ue,se,he;if(p(O)){var G=Math.floor(N/t)+i,$=Math.floor(A(F,t));try{U=n.getComponentMethod("calendars","getCal")(O).fromJD(G).formatDate("yyyy-mm-dd")}catch{U=s("G%Y-%m-%d")(new Date(N))}if(U.charAt(0)==="-")for(;U.length<11;)U="-0"+U.substr(1);else for(;U.length<10;)U="0"+U;W=B<S?Math.floor($/r):0,Q=B<S?Math.floor($%r/o):0,ue=B<E?Math.floor($%o/a):0,se=B<m?$%a*10+I:0}else he=new Date(N),U=s("%Y-%m-%d")(he),W=B<S?he.getUTCHours():0,Q=B<S?he.getUTCMinutes():0,ue=B<E?he.getUTCSeconds():0,se=B<m?he.getUTCMilliseconds()*10+I:0;return b(U,W,Q,ue,se)},X.ms2DateTimeLocal=function(F){if(!(F>=l+t&&F<=_-t))return e;var B=Math.floor(A(F+.05,1)*10),O=new Date(Math.round(F-B/10)),I=H("%Y-%m-%d")(O),N=O.getHours(),U=O.getMinutes(),W=O.getSeconds(),Q=O.getUTCMilliseconds()*10+B;return b(I,N,U,W,Q)};function b(F,B,O,I,N){if((B||O||I||N)&&(F+=" "+w(B,2)+":"+w(O,2),(I||N)&&(F+=":"+w(I,2),N))){for(var U=4;N%10===0;)U-=1,N/=10;F+="."+w(N,U)}return F}X.cleanDate=function(F,B,O){if(F===e)return B;if(X.isJSDate(F)||typeof F=="number"&&isFinite(F)){if(p(O))return x.error("JS Dates and milliseconds are incompatible with world calendars",F),B;if(F=X.ms2DateTimeLocal(+F),!F&&B!==void 0)return B}else if(!X.isDateTime(F,O))return x.error("unrecognized date",F),B;return F};var d=/%\d?f/g,u=/%h/g,y={1:"1",2:"1",3:"2",4:"2"};function f(F,B,O,I){F=F.replace(d,function(U){var W=Math.min(+U.charAt(1)||6,6),Q=(B/1e3%1+2).toFixed(W).substr(2).replace(/0+$/,"")||"0";return Q});var N=new Date(Math.floor(B+.05));if(F=F.replace(u,function(){return y[O("%q")(N)]}),p(I))try{F=n.getComponentMethod("calendars","worldCalFmt")(F,B,I)}catch{return"Invalid"}return O(F)(N)}var P=[59,59.9,59.99,59.999,59.9999];function L(F,B){var O=A(F+.05,t),I=w(Math.floor(O/r),2)+":"+w(A(Math.floor(O/o),60),2);if(B!=="M"){g(B)||(B=0);var N=Math.min(A(F/a,60),P[B]),U=(100+N).toFixed(B).substr(1);B>0&&(U=U.replace(/0+$/,"").replace(/[\.]$/,"")),I+=":"+U}return I}X.formatDate=function(F,B,O,I,N,U){if(N=p(N)&&N,!B)if(O==="y")B=U.year;else if(O==="m")B=U.month;else if(O==="d")B=U.dayMonth+`
+`+U.year;else return L(F,O)+`
+`+f(U.dayMonthYear,F,I,N);return f(B,F,I,N)};var z=3*t;X.incrementMonth=function(F,B,O){O=p(O)&&O;var I=A(F,t);if(F=Math.round(F-I),O)try{var N=Math.round(F/t)+i,U=n.getComponentMethod("calendars","getCal")(O),W=U.fromJD(N);return B%12?U.add(W,B,"m"):U.add(W,B/12,"y"),(W.toJD()-i)*t+I}catch{x.error("invalid ms "+F+" in calendar "+O)}var Q=new Date(F+z);return Q.setUTCMonth(Q.getUTCMonth()+B)+I-z},X.findExactDates=function(F,B){for(var O=0,I=0,N=0,U=0,W,Q,ue=p(B)&&n.getComponentMethod("calendars","getCal")(B),se=0;se<F.length;se++){if(Q=F[se],!g(Q)){U++;continue}if(!(Q%t))if(ue)try{W=ue.fromJD(Q/t+i),W.day()===1?W.month()===1?O++:I++:N++}catch{}else W=new Date(Q),W.getUTCDate()===1?W.getUTCMonth()===0?O++:I++:N++}I+=O,N+=I;var he=F.length-U;return{exactYears:O/he,exactMonths:I/he,exactDays:N/he}}}}),T_=Ye({"src/lib/identity.js"(X,H){"use strict";H.exports=function(x){return x}}}),v2=Ye({"src/lib/search.js"(X){"use strict";var H=jo(),g=Ym(),x=T_(),A=ks().BADNUM,M=1e-9;X.findBin=function(a,i,n){if(H(i.start))return n?Math.ceil((a-i.start)/i.size-M)-1:Math.floor((a-i.start)/i.size+M);var s=0,c=i.length,h=0,v=c>1?(i[c-1]-i[0])/(c-1):1,p,T;for(v>=0?T=n?e:t:T=n?o:r,a+=v*M*(n?-1:1)*(v>=0?1:-1);s<c&&h++<100;)p=Math.floor((s+c)/2),T(i[p],a)?s=p+1:c=p;return h>90&&g.log("Long binary search..."),s-1};function e(a,i){return a<i}function t(a,i){return a<=i}function r(a,i){return a>i}function o(a,i){return a>=i}X.sorterAsc=function(a,i){return a-i},X.sorterDes=function(a,i){return i-a},X.distinctVals=function(a){var i=a.slice();i.sort(X.sorterAsc);var n;for(n=i.length-1;n>-1&&i[n]===A;n--);for(var s=i[n]-i[0]||1,c=s/(n||1)/1e4,h=[],v,p=0;p<=n;p++){var T=i[p],l=T-v;v===void 0?(h.push(T),v=T):l>c&&(s=Math.min(s,l),h.push(T),v=T)}return{vals:h,minDiff:s}},X.roundUp=function(a,i,n){for(var s=0,c=i.length-1,h,v=0,p=n?0:1,T=n?1:0,l=n?Math.ceil:Math.floor;s<c&&v++<100;)h=l((s+c)/2),i[h]<=a?s=h+p:c=h-T;return i[s]},X.sort=function(a,i){for(var n=0,s=0,c=1;c<a.length;c++){var h=i(a[c],a[c-1]);if(h<0?n=1:h>0&&(s=1),n&&s)return a.sort(i)}return s?a:a.reverse()},X.findIndexOfMin=function(a,i){i=i||x;for(var n=1/0,s,c=0;c<a.length;c++){var h=i(a[c]);h<n&&(n=h,s=c)}return s}}}),Km=Ye({"src/lib/sort_object_keys.js"(X,H){"use strict";H.exports=function(x){return Object.keys(x).sort()}}}),UF=Ye({"src/lib/stats.js"(X){"use strict";var H=jo(),g=xp().isArrayOrTypedArray;X.aggNums=function(x,A,M,e){var t,r;if((!e||e>M.length)&&(e=M.length),H(A)||(A=!1),g(M[0])){for(r=new Array(e),t=0;t<e;t++)r[t]=X.aggNums(x,A,M[t]);M=r}for(t=0;t<e;t++)H(A)?H(M[t])&&(A=x(+A,+M[t])):A=M[t];return A},X.len=function(x){return X.aggNums(function(A){return A+1},0,x)},X.mean=function(x,A){return A||(A=X.len(x)),X.aggNums(function(M,e){return M+e},0,x)/A},X.geometricMean=function(x,A){return A||(A=X.len(x)),Math.pow(X.aggNums(function(M,e){return M*e},1,x),1/A)},X.midRange=function(x){if(!(x===void 0||x.length===0))return(X.aggNums(Math.max,null,x)+X.aggNums(Math.min,null,x))/2},X.variance=function(x,A,M){return A||(A=X.len(x)),H(M)||(M=X.mean(x,A)),X.aggNums(function(e,t){return e+Math.pow(t-M,2)},0,x)/A},X.stdev=function(x,A,M){return Math.sqrt(X.variance(x,A,M))},X.median=function(x){var A=x.slice().sort();return X.interp(A,.5)},X.interp=function(x,A){if(!H(A))throw"n should be a finite number";if(A=A*x.length-.5,A<0)return x[0];if(A>x.length-1)return x[x.length-1];var M=A%1;return M*x[Math.ceil(A)]+(1-M)*x[Math.floor(A)]}}}),jF=Ye({"src/lib/angles.js"(X,H){"use strict";var g=Xy(),x=g.mod,A=g.modHalf,M=Math.PI,e=2*M;function t(T){return T/180*M}function r(T){return T/M*180}function o(T){return Math.abs(T[1]-T[0])>e-1e-14}function a(T,l){return A(l-T,e)}function i(T,l){return Math.abs(a(T,l))}function n(T,l){if(o(l))return!0;var _,w;l[0]<l[1]?(_=l[0],w=l[1]):(_=l[1],w=l[0]),_=x(_,e),w=x(w,e),_>w&&(w+=e);var S=x(T,e),E=S+e;return S>=_&&S<=w||E>=_&&E<=w}function s(T,l,_,w){if(!n(l,w))return!1;var S,E;return _[0]<_[1]?(S=_[0],E=_[1]):(S=_[1],E=_[0]),T>=S&&T<=E}function c(T,l,_,w,S,E,m){S=S||0,E=E||0;var b=o([_,w]),d,u,y,f,P;b?(d=0,u=M,y=e):_<w?(d=_,y=w):(d=w,y=_),T<l?(f=T,P=l):(f=l,P=T);function L(O,I){return[O*Math.cos(I)+S,E-O*Math.sin(I)]}var z=Math.abs(y-d)<=M?0:1;function F(O,I,N){return"A"+[O,O]+" "+[0,z,N]+" "+L(O,I)}var B;return b?f===null?B="M"+L(P,d)+F(P,u,0)+F(P,y,0)+"Z":B="M"+L(f,d)+F(f,u,0)+F(f,y,0)+"ZM"+L(P,d)+F(P,u,1)+F(P,y,1)+"Z":f===null?(B="M"+L(P,d)+F(P,y,0),m&&(B+="L0,0Z")):B="M"+L(f,d)+"L"+L(P,d)+F(P,y,0)+"L"+L(f,y)+F(f,d,1)+"Z",B}function h(T,l,_,w,S){return c(null,T,l,_,w,S,0)}function v(T,l,_,w,S){return c(null,T,l,_,w,S,1)}function p(T,l,_,w,S,E){return c(T,l,_,w,S,E,1)}H.exports={deg2rad:t,rad2deg:r,angleDelta:a,angleDist:i,isFullCircle:o,isAngleInsideSector:n,isPtInsideSector:s,pathArc:h,pathSector:v,pathAnnulus:p}}}),VF=Ye({"src/lib/anchor_utils.js"(X){"use strict";X.isLeftAnchor=function(g){return g.xanchor==="left"||g.xanchor==="auto"&&g.x<=1/3},X.isCenterAnchor=function(g){return g.xanchor==="center"||g.xanchor==="auto"&&g.x>1/3&&g.x<2/3},X.isRightAnchor=function(g){return g.xanchor==="right"||g.xanchor==="auto"&&g.x>=2/3},X.isTopAnchor=function(g){return g.yanchor==="top"||g.yanchor==="auto"&&g.y>=2/3},X.isMiddleAnchor=function(g){return g.yanchor==="middle"||g.yanchor==="auto"&&g.y>1/3&&g.y<2/3},X.isBottomAnchor=function(g){return g.yanchor==="bottom"||g.yanchor==="auto"&&g.y<=1/3}}}),qF=Ye({"src/lib/geometry2d.js"(X){"use strict";var H=Xy().mod;X.segmentsIntersect=g;function g(t,r,o,a,i,n,s,c){var h=o-t,v=i-t,p=s-i,T=a-r,l=n-r,_=c-n,w=h*_-p*T;if(w===0)return null;var S=(v*_-p*l)/w,E=(v*T-h*l)/w;return E<0||E>1||S<0||S>1?null:{x:t+h*S,y:r+T*S}}X.segmentDistance=function(r,o,a,i,n,s,c,h){if(g(r,o,a,i,n,s,c,h))return 0;var v=a-r,p=i-o,T=c-n,l=h-s,_=v*v+p*p,w=T*T+l*l,S=Math.min(x(v,p,_,n-r,s-o),x(v,p,_,c-r,h-o),x(T,l,w,r-n,o-s),x(T,l,w,a-n,i-s));return Math.sqrt(S)};function x(t,r,o,a,i){var n=a*t+i*r;if(n<0)return a*a+i*i;if(n>o){var s=a-t,c=i-r;return s*s+c*c}else{var h=a*r-i*t;return h*h/o}}var A,M,e;X.getTextLocation=function(r,o,a,i){if((r!==M||i!==e)&&(A={},M=r,e=i),A[a])return A[a];var n=r.getPointAtLength(H(a-i/2,o)),s=r.getPointAtLength(H(a+i/2,o)),c=Math.atan((s.y-n.y)/(s.x-n.x)),h=r.getPointAtLength(H(a,o)),v=(h.x*4+n.x+s.x)/6,p=(h.y*4+n.y+s.y)/6,T={x:v,y:p,theta:c};return A[a]=T,T},X.clearLocationCache=function(){M=null},X.getVisibleSegment=function(r,o,a){var i=o.left,n=o.right,s=o.top,c=o.bottom,h=0,v=r.getTotalLength(),p=v,T,l;function _(S){var E=r.getPointAtLength(S);S===0?T=E:S===v&&(l=E);var m=E.x<i?i-E.x:E.x>n?E.x-n:0,b=E.y<s?s-E.y:E.y>c?E.y-c:0;return Math.sqrt(m*m+b*b)}for(var w=_(h);w;){if(h+=w+a,h>p)return;w=_(h)}for(w=_(p);w;){if(p-=w+a,h>p)return;w=_(p)}return{min:h,max:p,len:p-h,total:v,isClosed:h===0&&p===v&&Math.abs(T.x-l.x)<.1&&Math.abs(T.y-l.y)<.1}},X.findPointOnPath=function(r,o,a,i){i=i||{};for(var n=i.pathLength||r.getTotalLength(),s=i.tolerance||.001,c=i.iterationLimit||30,h=r.getPointAtLength(0)[a]>r.getPointAtLength(n)[a]?-1:1,v=0,p=0,T=n,l,_,w;v<c;){if(l=(p+T)/2,_=r.getPointAtLength(l),w=_[a]-o,Math.abs(w)<s)return _;h*w>0?T=l:p=l,v++}return _}}}),m2=Ye({"src/lib/throttle.js"(X){"use strict";var H={};X.throttle=function(A,M,e){var t=H[A],r=Date.now();if(!t){for(var o in H)H[o].ts<r-6e4&&delete H[o];t=H[A]={ts:0,timer:null}}g(t);function a(){e(),t.ts=Date.now(),t.onDone&&(t.onDone(),t.onDone=null)}if(r>t.ts+M){a();return}t.timer=setTimeout(function(){a(),t.timer=null},M)},X.done=function(x){var A=H[x];return!A||!A.timer?Promise.resolve():new Promise(function(M){var e=A.onDone;A.onDone=function(){e&&e(),M(),A.onDone=null}})},X.clear=function(x){if(x)g(H[x]),delete H[x];else for(var A in H)X.clear(A)};function g(x){x&&x.timer!==null&&(clearTimeout(x.timer),x.timer=null)}}}),HF=Ye({"src/lib/clear_responsive.js"(X,H){"use strict";H.exports=function(x){x._responsiveChartHandler&&(window.removeEventListener("resize",x._responsiveChartHandler),delete x._responsiveChartHandler)}}}),GF=Ye({"node_modules/is-mobile/index.js"(X,H){"use strict";H.exports=M,H.exports.isMobile=M,H.exports.default=M;var g=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,x=/CrOS/,A=/android|ipad|playbook|silk/i;function M(e){e||(e={});let t=e.ua;if(!t&&typeof navigator<"u"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=g.test(t)&&!x.test(t)||!!e.tablet&&A.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}}}),WF=Ye({"src/lib/preserve_drawing_buffer.js"(X,H){"use strict";var g=jo(),x=GF();H.exports=function(e){var t;if(e&&e.hasOwnProperty("userAgent")?t=e.userAgent:t=A(),typeof t!="string")return!0;var r=x({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var o=t.split(" "),a=1;a<o.length;a++){var i=o[a];if(i.indexOf("Safari")!==-1)for(var n=a-1;n>-1;n--){var s=o[n];if(s.substr(0,8)==="Version/"){var c=s.substr(8).split(".")[0];if(g(c)&&(c=+c),c>=13)return!0}}}return r};function A(){var M;return typeof navigator<"u"&&(M=navigator.userAgent),M&&M.headers&&typeof M.headers["user-agent"]=="string"&&(M=M.headers["user-agent"]),M}}}),ZF=Ye({"src/lib/make_trace_groups.js"(X,H){"use strict";var g=_n();H.exports=function(A,M,e){var t=A.selectAll("g."+e.replace(/\s/g,".")).data(M,function(o){return o[0].trace.uid});t.exit().remove(),t.enter().append("g").attr("class",e),t.order();var r=A.classed("rangeplot")?"nodeRangePlot3":"node3";return t.each(function(o){o[0][r]=g.select(this)}),t}}}),XF=Ye({"src/lib/localize.js"(X,H){"use strict";var g=Hn();H.exports=function(A,M){for(var e=A._context.locale,t=0;t<2;t++){for(var r=A._context.locales,o=0;o<2;o++){var a=(r[e]||{}).dictionary;if(a){var i=a[M];if(i)return i}r=g.localeRegistry}var n=e.split("-")[0];if(n===e)break;e=n}return M}}}),tS=Ye({"src/lib/filter_unique.js"(X,H){"use strict";H.exports=function(x){for(var A={},M=[],e=0,t=0;t<x.length;t++){var r=x[t];A[r]!==1&&(A[r]=1,M[e++]=r)}return M}}}),YF=Ye({"src/lib/filter_visible.js"(X,H){"use strict";H.exports=function(e){for(var t=A(e)?x:g,r=[],o=0;o<e.length;o++){var a=e[o];t(a)&&r.push(a)}return r};function g(M){return M.visible===!0}function x(M){var e=M[0].trace;return e.visible===!0&&e._length!==0}function A(M){return Array.isArray(M)&&Array.isArray(M[0])&&M[0][0]&&M[0][0].trace}}}),KF=Ye({"src/lib/increment.js"(X,H){"use strict";H.exports=function(x,A){if(!A)return x;var M=1/Math.abs(A),e=M>1?(M*x+M*A)/M:x+A,t=String(e).length;if(t>16){var r=String(A).length,o=String(x).length;if(t>=o+r){var a=parseFloat(e).toPrecision(12);a.indexOf("e+")===-1&&(e=+a)}}return e}}}),JF=Ye({"src/lib/clean_number.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;H.exports=function(e){return typeof e=="string"&&(e=e.replace(A,"")),g(e)?Number(e):x}}}),ta=Ye({"src/lib/index.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=Zy().format,M=jo(),e=ks(),t=e.FP_SAFE,r=-t,o=e.BADNUM,a=H.exports={};a.adjustFormat=function(ne){return!ne||/^\d[.]\df/.test(ne)||/[.]\d%/.test(ne)?ne:ne==="0.f"?"~f":/^\d%/.test(ne)?"~%":/^\ds/.test(ne)?"~s":!/^[~,.0$]/.test(ne)&&/[&fps]/.test(ne)?"~"+ne:ne};var i={};a.warnBadFormat=function(re){var ne=String(re);i[ne]||(i[ne]=1,a.warn('encountered bad format: "'+ne+'"'))},a.noFormat=function(re){return String(re)},a.numberFormat=function(re){var ne;try{ne=A(a.adjustFormat(re))}catch{return a.warnBadFormat(re),a.noFormat}return ne},a.nestedProperty=__(),a.keyedContainer=iF(),a.relativeAttr=nF(),a.isPlainObject=Zv(),a.toLogRange=c2(),a.relinkPrivateKeys=oF();var n=xp();a.isArrayBuffer=n.isArrayBuffer,a.isTypedArray=n.isTypedArray,a.isArrayOrTypedArray=n.isArrayOrTypedArray,a.isArray1D=n.isArray1D,a.ensureArray=n.ensureArray,a.concat=n.concat,a.maxRowLength=n.maxRowLength,a.minRowLength=n.minRowLength;var s=Xy();a.mod=s.mod,a.modHalf=s.modHalf;var c=sF();a.valObjectMeta=c.valObjectMeta,a.coerce=c.coerce,a.coerce2=c.coerce2,a.coerceFont=c.coerceFont,a.coercePattern=c.coercePattern,a.coerceHoverinfo=c.coerceHoverinfo,a.coerceSelectionMarkerOpacity=c.coerceSelectionMarkerOpacity,a.validate=c.validate;var h=NF();a.dateTime2ms=h.dateTime2ms,a.isDateTime=h.isDateTime,a.ms2DateTime=h.ms2DateTime,a.ms2DateTimeLocal=h.ms2DateTimeLocal,a.cleanDate=h.cleanDate,a.isJSDate=h.isJSDate,a.formatDate=h.formatDate,a.incrementMonth=h.incrementMonth,a.dateTick0=h.dateTick0,a.dfltRange=h.dfltRange,a.findExactDates=h.findExactDates,a.MIN_MS=h.MIN_MS,a.MAX_MS=h.MAX_MS;var v=v2();a.findBin=v.findBin,a.sorterAsc=v.sorterAsc,a.sorterDes=v.sorterDes,a.distinctVals=v.distinctVals,a.roundUp=v.roundUp,a.sort=v.sort,a.findIndexOfMin=v.findIndexOfMin,a.sortObjectKeys=Km();var p=UF();a.aggNums=p.aggNums,a.len=p.len,a.mean=p.mean,a.geometricMean=p.geometricMean,a.median=p.median,a.midRange=p.midRange,a.variance=p.variance,a.stdev=p.stdev,a.interp=p.interp;var T=h2();a.init2dArray=T.init2dArray,a.transposeRagged=T.transposeRagged,a.dot=T.dot,a.translationMatrix=T.translationMatrix,a.rotationMatrix=T.rotationMatrix,a.rotationXYMatrix=T.rotationXYMatrix,a.apply3DTransform=T.apply3DTransform,a.apply2DTransform=T.apply2DTransform,a.apply2DTransform2=T.apply2DTransform2,a.convertCssMatrix=T.convertCssMatrix,a.inverseTransformMatrix=T.inverseTransformMatrix;var l=jF();a.deg2rad=l.deg2rad,a.rad2deg=l.rad2deg,a.angleDelta=l.angleDelta,a.angleDist=l.angleDist,a.isFullCircle=l.isFullCircle,a.isAngleInsideSector=l.isAngleInsideSector,a.isPtInsideSector=l.isPtInsideSector,a.pathArc=l.pathArc,a.pathSector=l.pathSector,a.pathAnnulus=l.pathAnnulus;var _=VF();a.isLeftAnchor=_.isLeftAnchor,a.isCenterAnchor=_.isCenterAnchor,a.isRightAnchor=_.isRightAnchor,a.isTopAnchor=_.isTopAnchor,a.isMiddleAnchor=_.isMiddleAnchor,a.isBottomAnchor=_.isBottomAnchor;var w=qF();a.segmentsIntersect=w.segmentsIntersect,a.segmentDistance=w.segmentDistance,a.getTextLocation=w.getTextLocation,a.clearLocationCache=w.clearLocationCache,a.getVisibleSegment=w.getVisibleSegment,a.findPointOnPath=w.findPointOnPath;var S=Oo();a.extendFlat=S.extendFlat,a.extendDeep=S.extendDeep,a.extendDeepAll=S.extendDeepAll,a.extendDeepNoArrays=S.extendDeepNoArrays;var E=Ym();a.log=E.log,a.warn=E.warn,a.error=E.error;var m=Ky();a.counterRegex=m.counter;var b=m2();a.throttle=b.throttle,a.throttleDone=b.done,a.clearThrottle=b.clear;var d=b_();a.getGraphDiv=d.getGraphDiv,a.isPlotDiv=d.isPlotDiv,a.removeElement=d.removeElement,a.addStyleRule=d.addStyleRule,a.addRelatedStyleRule=d.addRelatedStyleRule,a.deleteRelatedStyleRule=d.deleteRelatedStyleRule,a.setStyleOnHover=d.setStyleOnHover,a.getFullTransformMatrix=d.getFullTransformMatrix,a.getElementTransformMatrix=d.getElementTransformMatrix,a.getElementAndAncestors=d.getElementAndAncestors,a.equalDomRects=d.equalDomRects,a.clearResponsive=HF(),a.preserveDrawingBuffer=WF(),a.makeTraceGroups=ZF(),a._=XF(),a.notifier=YA(),a.filterUnique=tS(),a.filterVisible=YF(),a.pushUnique=KA(),a.increment=KF(),a.cleanNumber=JF(),a.ensureNumber=function(ne){return M(ne)?(ne=Number(ne),ne>t||ne<r?o:ne):o},a.isIndex=function(re,ne){return ne!==void 0&&re>=ne?!1:M(re)&&re>=0&&re%1===0},a.noop=f2(),a.identity=T_(),a.repeat=function(re,ne){for(var j=new Array(ne),ee=0;ee<ne;ee++)j[ee]=re;return j},a.swapAttrs=function(re,ne,j,ee){j||(j="x"),ee||(ee="y");for(var ie=0;ie<ne.length;ie++){var fe=ne[ie],be=a.nestedProperty(re,fe.replace("?",j)),Ae=a.nestedProperty(re,fe.replace("?",ee)),Be=be.get();be.set(Ae.get()),Ae.set(Be)}},a.raiseToTop=function(ne){ne.parentNode.appendChild(ne)},a.cancelTransition=function(re){return re.transition().duration(0)},a.constrain=function(re,ne,j){return ne>j?Math.max(j,Math.min(ne,re)):Math.max(ne,Math.min(j,re))},a.bBoxIntersect=function(re,ne,j){return j=j||0,re.left<=ne.right+j&&ne.left<=re.right+j&&re.top<=ne.bottom+j&&ne.top<=re.bottom+j},a.simpleMap=function(re,ne,j,ee,ie){for(var fe=re.length,be=new Array(fe),Ae=0;Ae<fe;Ae++)be[Ae]=ne(re[Ae],j,ee,ie);return be},a.randstr=function re(ne,j,ee,ie){if(ee||(ee=16),j===void 0&&(j=24),j<=0)return"0";var fe=Math.log(Math.pow(2,j))/Math.log(ee),be="",Ae,Be,Ie;for(Ae=2;fe===1/0;Ae*=2)fe=Math.log(Math.pow(2,j/Ae))/Math.log(ee)*Ae;var Ze=fe-Math.floor(fe);for(Ae=0;Ae<Math.floor(fe);Ae++)Ie=Math.floor(Math.random()*ee).toString(ee),be=Ie+be;Ze&&(Be=Math.pow(ee,Ze),Ie=Math.floor(Math.random()*Be).toString(ee),be=Ie+be);var at=parseInt(be,ee);return ne&&ne[be]||at!==1/0&&at>=Math.pow(2,j)?ie>10?(a.warn("randstr failed uniqueness"),be):re(ne,j,ee,(ie||0)+1):be},a.OptionControl=function(re,ne){re||(re={}),ne||(ne="opt");var j={};return j.optionList=[],j._newoption=function(ee){ee[ne]=re,j[ee.name]=ee,j.optionList.push(ee)},j["_"+ne]=re,j},a.smooth=function(re,ne){if(ne=Math.round(ne)||0,ne<2)return re;var j=re.length,ee=2*j,ie=2*ne-1,fe=new Array(ie),be=new Array(j),Ae,Be,Ie,Ze;for(Ae=0;Ae<ie;Ae++)fe[Ae]=(1-Math.cos(Math.PI*(Ae+1)/ne))/(2*ne);for(Ae=0;Ae<j;Ae++){for(Ze=0,Be=0;Be<ie;Be++)Ie=Ae+Be+1-ne,Ie<-j?Ie-=ee*Math.round(Ie/ee):Ie>=ee&&(Ie-=ee*Math.floor(Ie/ee)),Ie<0?Ie=-1-Ie:Ie>=j&&(Ie=ee-1-Ie),Ze+=re[Ie]*fe[Be];be[Ae]=Ze}return be},a.syncOrAsync=function(re,ne,j){var ee,ie;function fe(){return a.syncOrAsync(re,ne,j)}for(;re.length;)if(ie=re.splice(0,1)[0],ee=ie(ne),ee&&ee.then)return ee.then(fe);return j&&j(ne)},a.stripTrailingSlash=function(re){return re.substr(-1)==="/"?re.substr(0,re.length-1):re},a.noneOrAll=function(re,ne,j){if(re){var ee=!1,ie=!0,fe,be;for(fe=0;fe<j.length;fe++)be=re[j[fe]],be!=null?ee=!0:ie=!1;if(ee&&!ie)for(fe=0;fe<j.length;fe++)re[j[fe]]=ne[j[fe]]}},a.mergeArray=function(re,ne,j,ee){var ie=typeof ee=="function";if(a.isArrayOrTypedArray(re))for(var fe=Math.min(re.length,ne.length),be=0;be<fe;be++){var Ae=re[be];ne[be][j]=ie?ee(Ae):Ae}},a.mergeArrayCastPositive=function(re,ne,j){return a.mergeArray(re,ne,j,function(ee){var ie=+ee;return isFinite(ie)&&ie>0?ie:0})},a.fillArray=function(re,ne,j,ee){if(ee=ee||a.identity,a.isArrayOrTypedArray(re))for(var ie=0;ie<ne.length;ie++)ne[ie][j]=ee(re[ie])},a.castOption=function(re,ne,j,ee){ee=ee||a.identity;var ie=a.nestedProperty(re,j).get();return a.isArrayOrTypedArray(ie)?Array.isArray(ne)&&a.isArrayOrTypedArray(ie[ne[0]])?ee(ie[ne[0]][ne[1]]):ee(ie[ne]):ie},a.extractOption=function(re,ne,j,ee){if(j in re)return re[j];var ie=a.nestedProperty(ne,ee).get();if(!Array.isArray(ie))return ie};function u(re){var ne={};for(var j in re)for(var ee=re[j],ie=0;ie<ee.length;ie++)ne[ee[ie]]=+j;return ne}a.tagSelected=function(re,ne,j){var ee=ne.selectedpoints,ie=ne._indexToPoints,fe;ie&&(fe=u(ie));function be(at){return at!==void 0&&at<re.length}for(var Ae=0;Ae<ee.length;Ae++){var Be=ee[Ae];if(a.isIndex(Be)||a.isArrayOrTypedArray(Be)&&a.isIndex(Be[0])&&a.isIndex(Be[1])){var Ie=fe?fe[Be]:Be,Ze=j?j[Ie]:Ie;be(Ze)&&(re[Ze].selected=1)}}},a.selIndices2selPoints=function(re){var ne=re.selectedpoints,j=re._indexToPoints;if(j){for(var ee=u(j),ie=[],fe=0;fe<ne.length;fe++){var be=ne[fe];if(a.isIndex(be)){var Ae=ee[be];a.isIndex(Ae)&&ie.push(Ae)}}return ie}else return ne},a.getTargetArray=function(re,ne){var j=ne.target;if(typeof j=="string"&&j){var ee=a.nestedProperty(re,j).get();return a.isArrayOrTypedArray(ee)?ee:!1}else if(a.isArrayOrTypedArray(j))return j;return!1};function y(re,ne,j){var ee={};typeof ne!="object"&&(ne={});var ie=j==="pieLike"?-1:3,fe=Object.keys(re),be,Ae,Be;for(be=0;be<fe.length;be++)Ae=fe[be],Be=re[Ae],!(Ae.charAt(0)==="_"||typeof Be=="function")&&(Ae==="module"?ee[Ae]=Be:Array.isArray(Be)?Ae==="colorscale"||ie===-1?ee[Ae]=Be.slice():ee[Ae]=Be.slice(0,ie):a.isTypedArray(Be)?ie===-1?ee[Ae]=Be.subarray():ee[Ae]=Be.subarray(0,ie):Be&&typeof Be=="object"?ee[Ae]=y(re[Ae],ne[Ae],j):ee[Ae]=Be);for(fe=Object.keys(ne),be=0;be<fe.length;be++)Ae=fe[be],Be=ne[Ae],(typeof Be!="object"||!(Ae in ee)||typeof ee[Ae]!="object")&&(ee[Ae]=Be);return ee}a.minExtend=y,a.titleCase=function(re){return re.charAt(0).toUpperCase()+re.substr(1)},a.containsAny=function(re,ne){for(var j=0;j<ne.length;j++)if(re.indexOf(ne[j])!==-1)return!0;return!1};var f=/Version\/[\d\.]+.*Safari/;a.isSafari=function(){return f.test(window.navigator.userAgent)};var P=/iPad|iPhone|iPod/;a.isIOS=function(){return P.test(window.navigator.userAgent)};var L=/Firefox\/(\d+)\.\d+/;a.getFirefoxVersion=function(){var re=L.exec(window.navigator.userAgent);if(re&&re.length===2){var ne=parseInt(re[1]);if(!isNaN(ne))return ne}return null},a.isD3Selection=function(re){return re instanceof g.selection},a.ensureSingle=function(re,ne,j,ee){var ie=re.select(ne+(j?"."+j:""));if(ie.size())return ie;var fe=re.append(ne);return j&&fe.classed(j,!0),ee&&fe.call(ee),fe},a.ensureSingleById=function(re,ne,j,ee){var ie=re.select(ne+"#"+j);if(ie.size())return ie;var fe=re.append(ne).attr("id",j);return ee&&fe.call(ee),fe},a.objectFromPath=function(re,ne){for(var j=re.split("."),ee,ie=ee={},fe=0;fe<j.length;fe++){var be=j[fe],Ae=null,Be=j[fe].match(/(.*)\[([0-9]+)\]/);Be?(be=Be[1],Ae=Be[2],ee=ee[be]=[],fe===j.length-1?ee[Ae]=ne:ee[Ae]={},ee=ee[Ae]):(fe===j.length-1?ee[be]=ne:ee[be]={},ee=ee[be])}return ie};var z=/^([^\[\.]+)\.(.+)?/,F=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;function B(re){return re.slice(0,2)==="__"}a.expandObjectPaths=function(re){var ne,j,ee,ie,fe,be,Ae;if(typeof re=="object"&&!Array.isArray(re)){for(j in re)if(re.hasOwnProperty(j))if(ne=j.match(z)){if(ie=re[j],ee=ne[1],B(ee))continue;delete re[j],re[ee]=a.extendDeepNoArrays(re[ee]||{},a.objectFromPath(j,a.expandObjectPaths(ie))[ee])}else if(ne=j.match(F)){if(ie=re[j],ee=ne[1],B(ee))continue;if(fe=parseInt(ne[2]),delete re[j],re[ee]=re[ee]||[],ne[3]===".")Ae=ne[4],be=re[ee][fe]=re[ee][fe]||{},a.extendDeepNoArrays(be,a.objectFromPath(Ae,a.expandObjectPaths(ie)));else{if(B(ee))continue;re[ee][fe]=a.expandObjectPaths(ie)}}else{if(B(j))continue;re[j]=a.expandObjectPaths(re[j])}}return re},a.numSeparate=function(re,ne,j){if(j||(j=!1),typeof ne!="string"||ne.length===0)throw new Error("Separator string required for formatting!");typeof re=="number"&&(re=String(re));var ee=/(\d+)(\d{3})/,ie=ne.charAt(0),fe=ne.charAt(1),be=re.split("."),Ae=be[0],Be=be.length>1?ie+be[1]:"";if(fe&&(be.length>1||Ae.length>4||j))for(;ee.test(Ae);)Ae=Ae.replace(ee,"$1"+fe+"$2");return Ae+Be},a.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var O=/^\w*$/;a.templateString=function(re,ne){var j={};return re.replace(a.TEMPLATE_STRING_REGEX,function(ee,ie){var fe;return O.test(ie)?fe=ne[ie]:(j[ie]=j[ie]||a.nestedProperty(ne,ie).get,fe=j[ie](!0)),fe!==void 0?fe:""})};var I={max:10,count:0,name:"hovertemplate"};a.hovertemplateString=function(){return se.apply(I,arguments)};var N={max:10,count:0,name:"texttemplate"};a.texttemplateString=function(){return se.apply(N,arguments)};var U=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function W(re){var ne=re.match(U);return ne?{key:ne[1],op:ne[2],number:Number(ne[3])}:{key:re,op:null,number:null}}var Q={max:10,count:0,name:"texttemplate",parseMultDiv:!0};a.texttemplateStringForShapes=function(){return se.apply(Q,arguments)};var ue=/^[:|\|]/;function se(re,ne,j){var ee=this,ie=arguments;return ne||(ne={}),re.replace(a.TEMPLATE_STRING_REGEX,function(fe,be,Ae){var Be=be==="xother"||be==="yother",Ie=be==="_xother"||be==="_yother",Ze=be==="_xother_"||be==="_yother_",at=be==="xother_"||be==="yother_",it=Be||Ie||at||Ze,et=be;(Ie||Ze)&&(et=et.substring(1)),(at||Ze)&&(et=et.substring(0,et.length-1));var lt=null,Me=null;if(ee.parseMultDiv){var ge=W(et);et=ge.key,lt=ge.op,Me=ge.number}var ce;if(it){if(ce=ne[et],ce===void 0)return""}else{var ze,tt;for(tt=3;tt<ie.length;tt++)if(ze=ie[tt],!!ze){if(ze.hasOwnProperty(et)){ce=ze[et];break}if(O.test(et)||(ce=a.nestedProperty(ze,et).get(!0)),ce!==void 0)break}}if(ce!==void 0&&(lt==="*"&&(ce*=Me),lt==="/"&&(ce/=Me)),ce===void 0&&ee)return ee.count<ee.max&&(a.warn("Variable '"+et+"' in "+ee.name+" could not be found!"),ce=fe),ee.count===ee.max&&a.warn("Too many "+ee.name+" warnings - additional warnings will be suppressed"),ee.count++,fe;if(Ae){var nt;if(Ae[0]===":"&&(nt=j?j.numberFormat:a.numberFormat,ce!==""&&(ce=nt(Ae.replace(ue,""))(ce))),Ae[0]==="|"){nt=j?j.timeFormat:x;var Qe=a.dateTime2ms(ce);ce=a.formatDate(Qe,Ae.replace(ue,""),!1,nt)}}else{var Ct=et+"Label";ne.hasOwnProperty(Ct)&&(ce=ne[Ct])}return it&&(ce="("+ce+")",(Ie||Ze)&&(ce=" "+ce),(at||Ze)&&(ce=ce+" ")),ce})}var he=48,G=57;a.subplotSort=function(re,ne){for(var j=Math.min(re.length,ne.length)+1,ee=0,ie=0,fe=0;fe<j;fe++){var be=re.charCodeAt(fe)||0,Ae=ne.charCodeAt(fe)||0,Be=be>=he&&be<=G,Ie=Ae>=he&&Ae<=G;if(Be&&(ee=10*ee+be-he),Ie&&(ie=10*ie+Ae-he),!Be||!Ie){if(ee!==ie)return ee-ie;if(be!==Ae)return be-Ae}}return ie-ee};var $=2e9;a.seedPseudoRandom=function(){$=2e9},a.pseudoRandom=function(){var re=$;return $=(69069*$+1)%4294967296,Math.abs($-re)<429496729?a.pseudoRandom():$/4294967296},a.fillText=function(re,ne,j){var ee=Array.isArray(j)?function(be){j.push(be)}:function(be){j.text=be},ie=a.extractOption(re,ne,"htx","hovertext");if(a.isValidTextValue(ie))return ee(ie);var fe=a.extractOption(re,ne,"tx","text");if(a.isValidTextValue(fe))return ee(fe)},a.isValidTextValue=function(re){return re||re===0},a.formatPercent=function(re,ne){ne=ne||0;for(var j=(Math.round(100*re*Math.pow(10,ne))*Math.pow(.1,ne)).toFixed(ne)+"%",ee=0;ee<ne;ee++)j.indexOf(".")!==-1&&(j=j.replace("0%","%"),j=j.replace(".%","%"));return j},a.isHidden=function(re){var ne=window.getComputedStyle(re).display;return!ne||ne==="none"},a.strTranslate=function(re,ne){return re||ne?"translate("+re+","+ne+")":""},a.strRotate=function(re){return re?"rotate("+re+")":""},a.strScale=function(re){return re!==1?"scale("+re+")":""},a.getTextTransform=function(re){var ne=re.noCenter,j=re.textX,ee=re.textY,ie=re.targetX,fe=re.targetY,be=re.anchorX||0,Ae=re.anchorY||0,Be=re.rotate,Ie=re.scale;return Ie?Ie>1&&(Ie=1):Ie=0,a.strTranslate(ie-Ie*(j+be),fe-Ie*(ee+Ae))+a.strScale(Ie)+(Be?"rotate("+Be+(ne?"":" "+j+" "+ee)+")":"")},a.setTransormAndDisplay=function(re,ne){re.attr("transform",a.getTextTransform(ne)),re.style("display",ne.scale?null:"none")},a.ensureUniformFontSize=function(re,ne){var j=a.extendFlat({},ne);return j.size=Math.max(ne.size,re._fullLayout.uniformtext.minsize||0),j},a.join2=function(re,ne,j){var ee=re.length;return ee>1?re.slice(0,-1).join(ne)+j+re[ee-1]:re.join(ne)},a.bigFont=function(re){return Math.round(1.2*re)};var J=a.getFirefoxVersion(),Z=J!==null&&J<86;a.getPositionFromD3Event=function(){return Z?[g.event.layerX,g.event.layerY]:[g.event.offsetX,g.event.offsetY]}}}),$F=Ye({"build/plotcss.js"(){"use strict";var X=ta(),H={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .modebar-group":"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;","X .modebar-btn":"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;","X .modebar-btn svg":"position:relative;top:2px;","X .modebar.vertical":"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;","X .modebar.vertical svg":"top:-1px;","X .modebar.vertical .modebar-group":"display:block;float:none;padding-left:0px;padding-bottom:8px;","X .modebar.vertical .modebar-group .modebar-btn":"display:block;text-align:center;","X [data-title]:before,X [data-title]:after":"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;","X [data-title]:hover:before,X [data-title]:hover:after":"display:block;opacity:1;","X [data-title]:before":'content:"";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(x in H)g=x.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),X.addStyleRule(g,H[x]);var g,x}}),rS=Ye({"node_modules/is-browser/client.js"(X,H){H.exports=!0}}),aS=Ye({"node_modules/has-hover/index.js"(X,H){"use strict";var g=rS(),x;typeof window.matchMedia=="function"?x=!window.matchMedia("(hover: none)").matches:x=g,H.exports=x}}),Wg=Ye({"node_modules/events/events.js"(X,H){"use strict";var g=typeof Reflect=="object"?Reflect:null,x=g&&typeof g.apply=="function"?g.apply:function(E,m,b){return Function.prototype.apply.call(E,m,b)},A;g&&typeof g.ownKeys=="function"?A=g.ownKeys:Object.getOwnPropertySymbols?A=function(E){return Object.getOwnPropertyNames(E).concat(Object.getOwnPropertySymbols(E))}:A=function(E){return Object.getOwnPropertyNames(E)};function M(S){console&&console.warn&&console.warn(S)}var e=Number.isNaN||function(E){return E!==E};function t(){t.init.call(this)}H.exports=t,H.exports.once=l,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._eventsCount=0,t.prototype._maxListeners=void 0;var r=10;function o(S){if(typeof S!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof S)}Object.defineProperty(t,"defaultMaxListeners",{enumerable:!0,get:function(){return r},set:function(S){if(typeof S!="number"||S<0||e(S))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+S+".");r=S}}),t.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},t.prototype.setMaxListeners=function(E){if(typeof E!="number"||E<0||e(E))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+E+".");return this._maxListeners=E,this};function a(S){return S._maxListeners===void 0?t.defaultMaxListeners:S._maxListeners}t.prototype.getMaxListeners=function(){return a(this)},t.prototype.emit=function(E){for(var m=[],b=1;b<arguments.length;b++)m.push(arguments[b]);var d=E==="error",u=this._events;if(u!==void 0)d=d&&u.error===void 0;else if(!d)return!1;if(d){var y;if(m.length>0&&(y=m[0]),y instanceof Error)throw y;var f=new Error("Unhandled error."+(y?" ("+y.message+")":""));throw f.context=y,f}var P=u[E];if(P===void 0)return!1;if(typeof P=="function")x(P,this,m);else for(var L=P.length,z=v(P,L),b=0;b<L;++b)x(z[b],this,m);return!0};function i(S,E,m,b){var d,u,y;if(o(m),u=S._events,u===void 0?(u=S._events=Object.create(null),S._eventsCount=0):(u.newListener!==void 0&&(S.emit("newListener",E,m.listener?m.listener:m),u=S._events),y=u[E]),y===void 0)y=u[E]=m,++S._eventsCount;else if(typeof y=="function"?y=u[E]=b?[m,y]:[y,m]:b?y.unshift(m):y.push(m),d=a(S),d>0&&y.length>d&&!y.warned){y.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+y.length+" "+String(E)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=S,f.type=E,f.count=y.length,M(f)}return S}t.prototype.addListener=function(E,m){return i(this,E,m,!1)},t.prototype.on=t.prototype.addListener,t.prototype.prependListener=function(E,m){return i(this,E,m,!0)};function n(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function s(S,E,m){var b={fired:!1,wrapFn:void 0,target:S,type:E,listener:m},d=n.bind(b);return d.listener=m,b.wrapFn=d,d}t.prototype.once=function(E,m){return o(m),this.on(E,s(this,E,m)),this},t.prototype.prependOnceListener=function(E,m){return o(m),this.prependListener(E,s(this,E,m)),this},t.prototype.removeListener=function(E,m){var b,d,u,y,f;if(o(m),d=this._events,d===void 0)return this;if(b=d[E],b===void 0)return this;if(b===m||b.listener===m)--this._eventsCount===0?this._events=Object.create(null):(delete d[E],d.removeListener&&this.emit("removeListener",E,b.listener||m));else if(typeof b!="function"){for(u=-1,y=b.length-1;y>=0;y--)if(b[y]===m||b[y].listener===m){f=b[y].listener,u=y;break}if(u<0)return this;u===0?b.shift():p(b,u),b.length===1&&(d[E]=b[0]),d.removeListener!==void 0&&this.emit("removeListener",E,f||m)}return this},t.prototype.off=t.prototype.removeListener,t.prototype.removeAllListeners=function(E){var m,b,d;if(b=this._events,b===void 0)return this;if(b.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):b[E]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete b[E]),this;if(arguments.length===0){var u=Object.keys(b),y;for(d=0;d<u.length;++d)y=u[d],y!=="removeListener"&&this.removeAllListeners(y);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(m=b[E],typeof m=="function")this.removeListener(E,m);else if(m!==void 0)for(d=m.length-1;d>=0;d--)this.removeListener(E,m[d]);return this};function c(S,E,m){var b=S._events;if(b===void 0)return[];var d=b[E];return d===void 0?[]:typeof d=="function"?m?[d.listener||d]:[d]:m?T(d):v(d,d.length)}t.prototype.listeners=function(E){return c(this,E,!0)},t.prototype.rawListeners=function(E){return c(this,E,!1)},t.listenerCount=function(S,E){return typeof S.listenerCount=="function"?S.listenerCount(E):h.call(S,E)},t.prototype.listenerCount=h;function h(S){var E=this._events;if(E!==void 0){var m=E[S];if(typeof m=="function")return 1;if(m!==void 0)return m.length}return 0}t.prototype.eventNames=function(){return this._eventsCount>0?A(this._events):[]};function v(S,E){for(var m=new Array(E),b=0;b<E;++b)m[b]=S[b];return m}function p(S,E){for(;E+1<S.length;E++)S[E]=S[E+1];S.pop()}function T(S){for(var E=new Array(S.length),m=0;m<E.length;++m)E[m]=S[m].listener||S[m];return E}function l(S,E){return new Promise(function(m,b){function d(y){S.removeListener(E,u),b(y)}function u(){typeof S.removeListener=="function"&&S.removeListener("error",d),m([].slice.call(arguments))}w(S,E,u,{once:!0}),E!=="error"&&_(S,d,{once:!0})})}function _(S,E,m){typeof S.on=="function"&&w(S,"error",E,m)}function w(S,E,m,b){if(typeof S.on=="function")b.once?S.once(E,m):S.on(E,m);else if(typeof S.addEventListener=="function")S.addEventListener(E,function d(u){b.once&&S.removeEventListener(E,d),m(u)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof S)}}}),$y=Ye({"src/lib/events.js"(X,H){"use strict";var g=Wg().EventEmitter,x={init:function(A){if(A._ev instanceof g)return A;var M=new g,e=new g;return A._ev=M,A._internalEv=e,A.on=M.on.bind(M),A.once=M.once.bind(M),A.removeListener=M.removeListener.bind(M),A.removeAllListeners=M.removeAllListeners.bind(M),A._internalOn=e.on.bind(e),A._internalOnce=e.once.bind(e),A._removeInternalListener=e.removeListener.bind(e),A._removeAllInternalListeners=e.removeAllListeners.bind(e),A.emit=function(t,r){M.emit(t,r),e.emit(t,r)},A},triggerHandler:function(A,M,e){var t,r=A._ev;if(!r)return;var o=r._events[M];if(!o)return;function a(n){if(n.listener){if(r.removeListener(M,n.listener),!n.fired)return n.fired=!0,n.listener.apply(r,[e])}else return n.apply(r,[e])}o=Array.isArray(o)?o:[o];var i;for(i=0;i<o.length-1;i++)a(o[i]);return t=a(o[i]),t},purge:function(A){return delete A._ev,delete A.on,delete A.once,delete A.removeListener,delete A.removeAllListeners,delete A.emit,delete A._ev,delete A._internalEv,delete A._internalOn,delete A._internalOnce,delete A._removeInternalListener,delete A._removeAllInternalListeners,A}};H.exports=x}}),QF=Ye({"src/lib/queue.js"(X,H){"use strict";var g=ta(),x=Gg().dfltConfig;function A(e,t){for(var r=[],o,a=0;a<t.length;a++)o=t[a],o===e?r[a]=o:typeof o=="object"?r[a]=Array.isArray(o)?g.extendDeep([],o):g.extendDeepAll({},o):r[a]=o;return r}var M={};M.add=function(e,t,r,o,a){var i,n;if(e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},n=e.undoQueue.index,e.autoplay){e.undoQueue.inSequence||(e.autoplay=!1);return}!e.undoQueue.sequence||e.undoQueue.beginSequence?(i={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},e.undoQueue.queue.splice(n,e.undoQueue.queue.length-n,i),e.undoQueue.index+=1):i=e.undoQueue.queue[n-1],e.undoQueue.beginSequence=!1,i&&(i.undo.calls.unshift(t),i.undo.args.unshift(r),i.redo.calls.push(o),i.redo.args.push(a)),e.undoQueue.queue.length>x.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)},M.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},M.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},M.undo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o<r.undo.calls.length;o++)M.plotDo(t,r.undo.calls[o],r.undo.args[o]);t.undoQueue.inSequence=!1,t.autoplay=!1}},M.redo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o<r.redo.calls.length;o++)M.plotDo(t,r.redo.calls[o],r.redo.args[o]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}},M.plotDo=function(e,t,r){e.autoplay=!0,r=A(e,r),t.apply(null,r)},H.exports=M}}),iS=Ye({"src/plots/frame_attributes.js"(X,H){"use strict";H.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}}}),Qy=Ye({"src/plot_api/plot_schema.js"(X){"use strict";var H=Hn(),g=ta(),x=Pl(),A=Jy(),M=iS(),e=w_(),t=Gg().configAttributes,r=Ou(),o=g.extendDeepAll,a=g.isPlainObject,i=g.isArrayOrTypedArray,n=g.nestedProperty,s=g.valObjectMeta,c="_isSubplotObj",h="_isLinkedToArray",v="_arrayAttrRegexps",p="_deprecated",T=[c,h,v,p];X.IS_SUBPLOT_OBJ=c,X.IS_LINKED_TO_ARRAY=h,X.DEPRECATED=p,X.UNDERSCORE_ATTRS=T,X.get=function(){var L={};return H.allTypes.forEach(function(z){L[z]=S(z)}),{defs:{valObjects:s,metaKeys:T.concat(["description","role","editType","impliedEdits"]),editType:{traces:r.traces,layout:r.layout},impliedEdits:{}},traces:L,layout:E(),frames:m(),animation:b(e),config:b(t)}},X.crawl=function(L,z,F,B){var O=F||0;B=B||"",Object.keys(L).forEach(function(I){var N=L[I];if(T.indexOf(I)===-1){var U=(B?B+".":"")+I;z(N,I,L,O,U),!X.isValObject(N)&&a(N)&&I!=="impliedEdits"&&X.crawl(N,z,O+1,U)}})},X.isValObject=function(L){return L&&L.valType!==void 0},X.findArrayAttributes=function(L){var z=[],F=[],B=[],O,I;function N(W,Q,ue,se){F=F.slice(0,se).concat([Q]),B=B.slice(0,se).concat([W&&W._isLinkedToArray]);var he=W&&(W.valType==="data_array"||W.arrayOk===!0)&&!(F[se-1]==="colorbar"&&(Q==="ticktext"||Q==="tickvals"));he&&U(O,0,"")}function U(W,Q,ue){var se=W[F[Q]],he=ue+F[Q];if(Q===F.length-1)i(se)&&z.push(I+he);else if(B[Q]){if(Array.isArray(se))for(var G=0;G<se.length;G++)a(se[G])&&U(se[G],Q+1,he+"["+G+"].")}else a(se)&&U(se,Q+1,he+".")}return O=L,I="",X.crawl(x,N),L._module&&L._module.attributes&&X.crawl(L._module.attributes,N),z},X.getTraceValObject=function(L,z){var F=z[0],B=1,O,I,N=L._module;if(N||(N=(H.modules[L.type||x.type.dflt]||{})._module),!N)return!1;if(O=N.attributes,I=O&&O[F],!I){var U=N.basePlotModule;U&&U.attributes&&(I=U.attributes[F])}return I||(I=x[F]),_(I,z,B)},X.getLayoutValObject=function(L,z){var F=l(L,z[0]);return _(F,z,1)};function l(L,z){var F,B,O,I,N=L._basePlotModules;if(N){var U;for(F=0;F<N.length;F++){if(O=N[F],O.attrRegex&&O.attrRegex.test(z)){if(O.layoutAttrOverrides)return O.layoutAttrOverrides;!U&&O.layoutAttributes&&(U=O.layoutAttributes)}var W=O.baseLayoutAttrOverrides;if(W&&z in W)return W[z]}if(U)return U}var Q=L._modules;if(Q){for(F=0;F<Q.length;F++)if(I=Q[F].layoutAttributes,I&&z in I)return I[z]}for(B in H.componentsRegistry){if(O=H.componentsRegistry[B],O.name==="colorscale"&&z.indexOf("coloraxis")===0)return O.layoutAttributes[z];if(!O.schema&&z===O.name)return O.layoutAttributes}return z in A?A[z]:!1}function _(L,z,F){if(!L)return!1;if(L._isLinkedToArray){if(w(z[F]))F++;else if(F<z.length)return!1}for(;F<z.length;F++){var B=L[z[F]];if(a(B))L=B;else break;if(F===z.length-1)break;if(L._isLinkedToArray){if(F++,!w(z[F]))return!1}else if(L.valType==="info_array"){F++;var O=z[F];if(!w(O))return!1;var I=L.items;if(Array.isArray(I)){if(O>=I.length)return!1;if(L.dimensions===2){if(F++,z.length===F)return L;var N=z[F];if(!w(N))return!1;L=I[O][N]}else L=I[O]}else L=I}}return L}function w(L){return L===Math.round(L)&&L>=0}function S(L){var z,F;z=H.modules[L]._module,F=z.basePlotModule;var B={};B.type=null;var O=o({},x),I=o({},z.attributes);X.crawl(I,function(W,Q,ue,se,he){n(O,he).set(void 0),W===void 0&&n(I,he).set(void 0)}),o(B,O),H.traceIs(L,"noOpacity")&&delete B.opacity,H.traceIs(L,"showLegend")||(delete B.showlegend,delete B.legendgroup),H.traceIs(L,"noHover")&&(delete B.hoverinfo,delete B.hoverlabel),z.selectPoints||delete B.selectedpoints,o(B,I),F.attributes&&o(B,F.attributes),B.type=L;var N={meta:z.meta||{},categories:z.categories||{},animatable:!!z.animatable,type:L,attributes:b(B)};if(z.layoutAttributes){var U={};o(U,z.layoutAttributes),N.layoutAttributes=b(U)}return z.animatable||X.crawl(N,function(W){X.isValObject(W)&&"anim"in W&&delete W.anim}),N}function E(){var L={},z,F;o(L,A);for(z in H.subplotsRegistry)if(F=H.subplotsRegistry[z],!!F.layoutAttributes)if(Array.isArray(F.attr))for(var B=0;B<F.attr.length;B++)f(L,F,F.attr[B]);else{var O=F.attr==="subplot"?F.name:F.attr;f(L,F,O)}for(z in H.componentsRegistry){F=H.componentsRegistry[z];var I=F.schema;if(I&&(I.subplots||I.layout)){var N=I.subplots;if(N&&N.xaxis&&!N.yaxis)for(var U in N.xaxis)delete L.yaxis[U];delete L.xaxis.shift,delete L.xaxis.autoshift}else F.name==="colorscale"?o(L,F.layoutAttributes):F.layoutAttributes&&P(L,F.layoutAttributes,F.name)}return{layoutAttributes:b(L)}}function m(){var L={frames:o({},M)};return b(L),L.frames}function b(L){return d(L),u(L),y(L),L}function d(L){function z(B){return{valType:"string",editType:"none"}}function F(B,O,I){X.isValObject(B)?(B.arrayOk===!0||B.valType==="data_array")&&(I[O+"src"]=z(O)):a(B)&&(B.role="object")}X.crawl(L,F)}function u(L){function z(F,B,O){if(F){var I=F[h];I&&(delete F[h],O[B]={items:{}},O[B].items[I]=F,O[B].role="object")}}X.crawl(L,z)}function y(L){function z(F){for(var B in F)if(a(F[B]))z(F[B]);else if(Array.isArray(F[B]))for(var O=0;O<F[B].length;O++)z(F[B][O]);else F[B]instanceof RegExp&&(F[B]=F[B].toString())}z(L)}function f(L,z,F){var B=n(L,F),O=o({},z.layoutAttributes);O[c]=!0,B.set(O)}function P(L,z,F){var B=n(L,F);B.set(o(B.get()||{},z))}}}),cl=Ye({"src/plot_api/plot_template.js"(X){"use strict";var H=ta(),g=Pl(),x="templateitemname",A={name:{valType:"string",editType:"none"}};A[x]={valType:"string",editType:"calc"},X.templatedArray=function(t,r){return r._isLinkedToArray=t,r.name=A.name,r[x]=A[x],r},X.traceTemplater=function(t){var r={},o,a;for(o in t)a=t[o],Array.isArray(a)&&a.length&&(r[o]=0);function i(n){o=H.coerce(n,{},g,"type");var s={type:o,_template:null};if(o in r){a=t[o];var c=r[o]%a.length;r[o]++,s._template=a[c]}return s}return{newTrace:i}},X.newContainer=function(t,r,o){var a=t._template,i=a&&(a[r]||o&&a[o]);H.isPlainObject(i)||(i=null);var n=t[r]={_template:i};return n},X.arrayTemplater=function(t,r,o){var a=t._template,i=a&&a[e(r)],n=a&&a[r];(!Array.isArray(n)||!n.length)&&(n=[]);var s={};function c(v){var p={name:v.name,_input:v},T=p[x]=v[x];if(!M(T))return p._template=i,p;for(var l=0;l<n.length;l++){var _=n[l];if(_.name===T)return s[T]=1,p._template=_,p}return p[o]=v[o]||!1,p._template=!1,p}function h(){for(var v=[],p=0;p<n.length;p++){var T=n[p],l=T.name;if(M(l)&&!s[l]){var _={_template:T,name:l,_input:{_templateitemname:l}};_[x]=T[x],v.push(_),s[l]=1}}return v}return{newItem:c,defaultItems:h}};function M(t){return t&&typeof t=="string"}function e(t){var r=t.length-1;return t.charAt(r)!=="s"&&H.warn("bad argument to arrayDefaultKey: "+t),t.substr(0,t.length-1)+"defaults"}X.arrayDefaultKey=e,X.arrayEditor=function(t,r,o){var a=(H.nestedProperty(t,r).get()||[]).length,i=o._index,n=i>=a&&(o._input||{})._templateitemname;n&&(i=a);var s=r+"["+i+"]",c;function h(){c={},n&&(c[s]={},c[s][x]=n)}h();function v(_,w){c[_]=w}function p(_,w){n?H.nestedProperty(c[s],_).set(w):c[s+"."+_]=w}function T(){var _=c;return h(),_}function l(_,w){_&&p(_,w);var S=T();for(var E in S)H.nestedProperty(t,E).set(S[E])}return{modifyBase:v,modifyItem:p,getUpdateObj:T,applyUpdate:l}}}}),wh=Ye({"src/plots/cartesian/constants.js"(X,H){"use strict";var g=Ky().counter;H.exports={idRegex:{x:g("x","( domain)?"),y:g("y","( domain)?")},attrRegex:g("[xy]axis"),xAxisMatch:g("xaxis"),yAxisMatch:g("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}}}),Xc=Ye({"src/plots/cartesian/axis_ids.js"(X){"use strict";var H=Hn(),g=wh();X.id2name=function(M){if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))){var e=M.split(" ")[0].substr(1);return e==="1"&&(e=""),M.charAt(0)+"axis"+e}},X.name2id=function(M){if(M.match(g.AX_NAME_PATTERN)){var e=M.substr(5);return e==="1"&&(e=""),M.charAt(0)+e}},X.cleanId=function(M,e,t){var r=/( domain)$/.test(M);if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))&&!(e&&M.charAt(0)!==e)&&!(r&&!t)){var o=M.split(" ")[0].substr(1).replace(/^0+/,"");return o==="1"&&(o=""),M.charAt(0)+o+(r&&t?" domain":"")}},X.list=function(A,M,e){var t=A._fullLayout;if(!t)return[];var r=X.listIds(A,M),o=new Array(r.length),a;for(a=0;a<r.length;a++){var i=r[a];o[a]=t[i.charAt(0)+"axis"+i.substr(1)]}if(!e){var n=t._subplots.gl3d||[];for(a=0;a<n.length;a++){var s=t[n[a]];M?o.push(s[M+"axis"]):o.push(s.xaxis,s.yaxis,s.zaxis)}}return o},X.listIds=function(A,M){var e=A._fullLayout;if(!e)return[];var t=e._subplots;return M?t[M+"axis"]:t.xaxis.concat(t.yaxis)},X.getFromId=function(A,M,e){var t=A._fullLayout;return M=M===void 0||typeof M!="string"?M:M.replace(" domain",""),e==="x"?M=M.replace(/y[0-9]*/,""):e==="y"&&(M=M.replace(/x[0-9]*/,"")),t[X.id2name(M)]},X.getFromTrace=function(A,M,e){var t=A._fullLayout,r=null;if(H.traceIs(M,"gl3d")){var o=M.scene;o.substr(0,5)==="scene"&&(r=t[o][e+"axis"])}else r=X.getFromId(A,M[e+"axis"]||e);return r},X.idSort=function(A,M){var e=A.charAt(0),t=M.charAt(0);return e!==t?e>t?1:-1:+(A.substr(1)||1)-+(M.substr(1)||1)},X.ref2id=function(A){return/^[xyz]/.test(A)?A.split(" ")[0]:!1};function x(A,M){if(M&&M.length){for(var e=0;e<M.length;e++)if(M[e][A])return!0}return!1}X.isLinked=function(A,M){return x(M,A._axisMatchGroups)||x(M,A._axisConstraintGroups)}}}),Jm=Ye({"src/components/shapes/handle_outline.js"(X,H){"use strict";function g(A){var M=A._fullLayout._zoomlayer;M&&M.selectAll(".outline-controllers").remove()}function x(A){var M=A._fullLayout._zoomlayer;M&&M.selectAll(".select-outline").remove(),A._fullLayout._outlining=!1}H.exports={clearOutlineControllers:g,clearOutline:x}}}),g2=Ye({"src/traces/scatter/layout_attributes.js"(X,H){"use strict";H.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}}}),jh=Ye({"src/plots/get_data.js"(X){"use strict";var H=Hn(),g=wh().SUBPLOT_PATTERN;X.getSubplotCalcData=function(x,A,M){var e=H.subplotsRegistry[A];if(!e)return[];for(var t=e.attr,r=[],o=0;o<x.length;o++){var a=x[o],i=a[0].trace;i[t]===M&&r.push(a)}return r},X.getModuleCalcData=function(x,A,M){var e=[],t=[],r;if(typeof A=="string"?r=H.getModule(A).plot:typeof A=="function"?r=A:r=A.plot,!r)return[e,x];for(var o=M,a=0;a<x.length;a++){var i=x[a],n=i[0].trace,s=n.zorder!==void 0;n.visible!==!0||n._length===0||(n._module&&n._module.plot===r&&(!s||n.zorder===o)?e.push(i):t.push(i))}return[e,t]},X.getSubplotData=function(A,M,e){if(!H.subplotsRegistry[M])return[];for(var t=H.subplotsRegistry[M].attr,r=[],o,a,i,n=0;n<A.length;n++)o=A[n],o[t]===e&&r.push(o);return r}}}),eO=Ye({"src/plots/command.js"(X){"use strict";var H=Hn(),g=ta();X.manageCommandObserver=function(r,o,a,i){var n={},s=!0;o&&o._commandObserver&&(n=o._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var c=X.hasSimpleAPICommandBindings(r,a,n.lookupTable);if(o&&o._commandObserver){if(c)return n;if(o._commandObserver.remove)return o._commandObserver.remove(),o._commandObserver=null,n}if(c){x(r,c,n.cache),n.check=function(){if(s){var T=x(r,c,n.cache);return T.changed&&i&&n.lookupTable[T.value]!==void 0&&(n.disable(),Promise.resolve(i({value:T.value,type:c.type,prop:c.prop,traces:c.traces,index:n.lookupTable[T.value]})).then(n.enable,n.enable)),T.changed}};for(var h=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],v=0;v<h.length;v++)r._internalOn(h[v],n.check);n.remove=function(){for(var p=0;p<h.length;p++)r._removeInternalListener(h[p],n.check)}}else g.log("Unable to automatically bind plot updates to API command"),n.lookupTable={},n.remove=function(){};return n.disable=function(){s=!1},n.enable=function(){s=!0},o&&(o._commandObserver=n),n},X.hasSimpleAPICommandBindings=function(r,o,a){var i,n=o.length,s;for(i=0;i<n;i++){var c,h=o[i],v=h.method,p=h.args;if(Array.isArray(p)||(p=[]),!v)return!1;var T=X.computeAPICommandBindings(r,v,p);if(T.length!==1)return!1;if(!s)s=T[0],Array.isArray(s.traces)&&s.traces.sort();else{if(c=T[0],c.type!==s.type||c.prop!==s.prop)return!1;if(Array.isArray(s.traces))if(Array.isArray(c.traces)){c.traces.sort();for(var l=0;l<s.traces.length;l++)if(s.traces[l]!==c.traces[l])return!1}else return!1;else if(c.prop!==s.prop)return!1}c=T[0];var _=c.value;if(Array.isArray(_))if(_.length===1)_=_[0];else return!1;a&&(a[_]=i)}return s};function x(r,o,a){var i,n,s,c=!1;if(o.type==="data")i=r._fullData[o.traces!==null?o.traces[0]:0];else if(o.type==="layout")i=r._fullLayout;else return!1;return n=g.nestedProperty(i,o.prop).get(),s=a[o.type]=a[o.type]||{},s.hasOwnProperty(o.prop)&&s[o.prop]!==n&&(c=!0),s[o.prop]=n,{changed:c,value:n}}X.executeAPICommand=function(r,o,a){if(o==="skip")return Promise.resolve();var i=H.apiMethodRegistry[o],n=[r];Array.isArray(a)||(a=[]);for(var s=0;s<a.length;s++)n.push(a[s]);return i.apply(null,n).catch(function(c){return g.warn("API call to Plotly."+o+" rejected.",c),Promise.reject(c)})},X.computeAPICommandBindings=function(r,o,a){var i;switch(Array.isArray(a)||(a=[]),o){case"restyle":i=e(r,a);break;case"relayout":i=M(r,a);break;case"update":i=e(r,[a[0],a[2]]).concat(M(r,[a[1]]));break;case"animate":i=A(r,a);break;default:i=[]}return i};function A(r,o){return Array.isArray(o[0])&&o[0].length===1&&["string","number"].indexOf(typeof o[0][0])!==-1?[{type:"layout",prop:"_currentFrame",value:o[0][0].toString()}]:[]}function M(r,o){var a=[],i=o[0],n={};if(typeof i=="string")n[i]=o[1];else if(g.isPlainObject(i))n=i;else return a;return t(n,function(s,c,h){a.push({type:"layout",prop:s,value:h})},"",0),a}function e(r,o){var a,i,n,s,c=[];if(i=o[0],n=o[1],a=o[2],s={},typeof i=="string")s[i]=n;else if(g.isPlainObject(i))s=i,a===void 0&&(a=n);else return c;return a===void 0&&(a=null),t(s,function(h,v,p){var T,l;if(Array.isArray(p)){l=p.slice();var _=Math.min(l.length,r.data.length);a&&(_=Math.min(_,a.length)),T=[];for(var w=0;w<_;w++)T[w]=a?a[w]:w}else l=p,T=a?a.slice():null;if(T===null)Array.isArray(l)&&(l=l[0]);else if(Array.isArray(T)){if(!Array.isArray(l)){var S=l;l=[];for(var E=0;E<T.length;E++)l[E]=S}l.length=Math.min(T.length,l.length)}c.push({type:"data",prop:h,traces:T,value:l})},"",0),c}function t(r,o,a,i){Object.keys(r).forEach(function(n){var s=r[n];if(n[0]!=="_"){var c=a+(i>0?".":"")+n;g.isPlainObject(s)?t(s,o,c,i+1):o(c,n,s)}})}}}),Gu=Ye({"src/plots/plots.js"(X,H){"use strict";var g=_n(),x=Np().timeFormatLocale,A=Zy().formatLocale,M=jo(),e=XA(),t=Hn(),r=Qy(),o=cl(),a=ta(),i=Fn(),n=ks().BADNUM,s=Xc(),c=Jm().clearOutline,h=g2(),v=w_(),p=iS(),T=jh().getModuleCalcData,l=a.relinkPrivateKeys,_=a._,w=H.exports={};a.extendFlat(w,t),w.attributes=Pl(),w.attributes.type.values=w.allTypes,w.fontAttrs=Au(),w.layoutAttributes=Jy();var S=eO();w.executeAPICommand=S.executeAPICommand,w.computeAPICommandBindings=S.computeAPICommandBindings,w.manageCommandObserver=S.manageCommandObserver,w.hasSimpleAPICommandBindings=S.hasSimpleAPICommandBindings,w.redrawText=function(G){return G=a.getGraphDiv(G),new Promise(function($){setTimeout(function(){G._fullLayout&&(t.getComponentMethod("annotations","draw")(G),t.getComponentMethod("legend","draw")(G),t.getComponentMethod("colorbar","draw")(G),$(w.previousPromises(G)))},300)})},w.resize=function(G){G=a.getGraphDiv(G);var $,J=new Promise(function(Z,re){(!G||a.isHidden(G))&&re(new Error("Resize must be passed a displayed plot div element.")),G._redrawTimer&&clearTimeout(G._redrawTimer),G._resolveResize&&($=G._resolveResize),G._resolveResize=Z,G._redrawTimer=setTimeout(function(){if(!G.layout||G.layout.width&&G.layout.height||a.isHidden(G)){Z(G);return}delete G.layout.width,delete G.layout.height;var ne=G.changed;G.autoplay=!0,t.call("relayout",G,{autosize:!0}).then(function(){G.changed=ne,G._resolveResize===Z&&(delete G._resolveResize,Z(G))})},100)});return $&&$(J),J},w.previousPromises=function(G){if((G._promises||[]).length)return Promise.all(G._promises).then(function(){G._promises=[]})},w.addLinks=function(G){if(!(!G._context.showLink&&!G._context.showSources)){var $=G._fullLayout,J=a.ensureSingle($._paper,"text","js-plot-link-container",function(ie){ie.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:i.defaultLine,"pointer-events":"all"}).each(function(){var fe=g.select(this);fe.append("tspan").classed("js-link-to-tool",!0),fe.append("tspan").classed("js-link-spacer",!0),fe.append("tspan").classed("js-sourcelinks",!0)})}),Z=J.node(),re={y:$._paper.attr("height")-9};document.body.contains(Z)&&Z.getComputedTextLength()>=$.width-20?(re["text-anchor"]="start",re.x=5):(re["text-anchor"]="end",re.x=$._paper.attr("width")-7),J.attr(re);var ne=J.select(".js-link-to-tool"),j=J.select(".js-link-spacer"),ee=J.select(".js-sourcelinks");G._context.showSources&&G._context.showSources(G),G._context.showLink&&E(G,ne),j.text(ne.text()&&ee.text()?" - ":"")}};function E(G,$){$.text("");var J=$.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(G._context.linkText+" \xBB");if(G._context.sendData)J.on("click",function(){w.sendDataToCloud(G)});else{var Z=window.location.pathname.split("/"),re=window.location.search;J.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+Z[2].split(".")[0]+"/"+Z[1]+re})}}w.sendDataToCloud=function(G){var $=(window.PLOTLYENV||{}).BASE_URL||G._context.plotlyServerURL;if($){G.emit("plotly_beforeexport");var J=g.select(G).append("div").attr("id","hiddenform").style("display","none"),Z=J.append("form").attr({action:$+"/external",method:"post",target:"_blank"}),re=Z.append("input").attr({type:"text",name:"data"});return re.node().value=w.graphJson(G,!1,"keepdata"),Z.node().submit(),J.remove(),G.emit("plotly_afterexport"),!1}};var m=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],b=["year","month","dayMonth","dayMonthYear"];w.supplyDefaults=function(G,$){var J=$&&$.skipUpdateCalc,Z=G._fullLayout||{};if(Z._skipDefaults){delete Z._skipDefaults;return}var re=G._fullLayout={},ne=G.layout||{},j=G._fullData||[],ee=G._fullData=[],ie=G.data||[],fe=G.calcdata||[],be=G._context||{},Ae;G._transitionData||w.createTransitionData(G),re._dfltTitle={plot:_(G,"Click to enter Plot title"),subtitle:_(G,"Click to enter Plot subtitle"),x:_(G,"Click to enter X axis title"),y:_(G,"Click to enter Y axis title"),colorbar:_(G,"Click to enter Colorscale title"),annotation:_(G,"new text")},re._traceWord=_(G,"trace");var Be=y(G,m);if(re._mapboxAccessToken=be.mapboxAccessToken,Z._initialAutoSizeIsDone){var Ie=Z.width,Ze=Z.height;w.supplyLayoutGlobalDefaults(ne,re,Be),ne.width||(re.width=Ie),ne.height||(re.height=Ze),w.sanitizeMargins(re)}else{w.supplyLayoutGlobalDefaults(ne,re,Be);var at=!ne.width||!ne.height,it=re.autosize,et=be.autosizable,lt=at&&(it||et);lt?w.plotAutoSize(G,ne,re):at&&w.sanitizeMargins(re),!it&&at&&(ne.width=re.width,ne.height=re.height)}re._d3locale=f(Be,re.separators),re._extraFormat=y(G,b),re._initialAutoSizeIsDone=!0,re._dataLength=ie.length,re._modules=[],re._visibleModules=[],re._basePlotModules=[];var Me=re._subplots=u(),ge=re._splomAxes={x:{},y:{}},ce=re._splomSubplots={};re._splomGridDflt={},re._scatterStackOpts={},re._firstScatter={},re._alignmentOpts={},re._colorAxes={},re._requestRangeslider={},re._traceUids=d(j,ie),w.supplyDataDefaults(ie,ee,ne,re);var ze=Object.keys(ge.x),tt=Object.keys(ge.y);if(ze.length>1&&tt.length>1){for(t.getComponentMethod("grid","sizeDefaults")(ne,re),Ae=0;Ae<ze.length;Ae++)a.pushUnique(Me.xaxis,ze[Ae]);for(Ae=0;Ae<tt.length;Ae++)a.pushUnique(Me.yaxis,tt[Ae]);for(var nt in ce)a.pushUnique(Me.cartesian,nt)}if(re._has=w._hasPlotType.bind(re),j.length===ee.length)for(Ae=0;Ae<ee.length;Ae++)l(ee[Ae],j[Ae]);w.supplyLayoutModuleDefaults(ne,re,ee,G._transitionData);var Qe=re._visibleModules,Ct=[];for(Ae=0;Ae<Qe.length;Ae++){var St=Qe[Ae].crossTraceDefaults;St&&a.pushUnique(Ct,St)}for(Ae=0;Ae<Ct.length;Ae++)Ct[Ae](ee,re);re._hasOnlyLargeSploms=re._basePlotModules.length===1&&re._basePlotModules[0].name==="splom"&&ze.length>15&&tt.length>15&&re.shapes.length===0&&re.images.length===0,w.linkSubplots(ee,re,j,Z),w.cleanPlot(ee,re,j,Z);var Ot=!!(Z._has&&Z._has("cartesian")),jt=!!(re._has&&re._has("cartesian")),ur=Ot,ar=jt;ur&&!ar?Z._bgLayer.remove():ar&&!ur&&(re._shouldCreateBgLayer=!0),Z._zoomlayer&&!G._dragging&&c({_fullLayout:Z}),P(ee,re),l(re,Z),t.getComponentMethod("colorscale","crossTraceDefaults")(ee,re),re._preGUI||(re._preGUI={}),re._tracePreGUI||(re._tracePreGUI={});var Cr=re._tracePreGUI,vr={},_r;for(_r in Cr)vr[_r]="old";for(Ae=0;Ae<ee.length;Ae++)_r=ee[Ae]._fullInput.uid,vr[_r]||(Cr[_r]={}),vr[_r]="new";for(_r in vr)vr[_r]==="old"&&delete Cr[_r];F(re),t.getComponentMethod("rangeslider","makeData")(re),!J&&fe.length===ee.length&&w.supplyDefaultsUpdateCalc(fe,ee)},w.supplyDefaultsUpdateCalc=function(G,$){for(var J=0;J<$.length;J++){var Z=$[J],re=(G[J]||[])[0];if(re&&re.trace){var ne=re.trace;if(ne._hasCalcTransform){var j=ne._arrayAttrs,ee,ie,fe;for(ee=0;ee<j.length;ee++)ie=j[ee],fe=a.nestedProperty(ne,ie).get().slice(),a.nestedProperty(Z,ie).set(fe)}re.trace=Z}}};function d(G,$){var J=$.length,Z=[],re,ne;for(re=0;re<G.length;re++){var j=G[re]._fullInput;j!==ne&&Z.push(j),ne=j}var ee=Z.length,ie=new Array(J),fe={};function be(Ie,Ze){ie[Ze]=Ie,fe[Ie]=1}function Ae(Ie,Ze){if(Ie&&typeof Ie=="string"&&!fe[Ie])return be(Ie,Ze),!0}for(re=0;re<J;re++){var Be=$[re].uid;typeof Be=="number"&&(Be=String(Be)),!Ae(Be,re)&&(re<ee&&Ae(Z[re].uid,re)||be(a.randstr(fe),re))}return ie}function u(){var G=t.collectableSubplotTypes,$={},J,Z;if(!G){G=[];var re=t.subplotsRegistry;for(var ne in re){var j=re[ne],ee=j.attr;if(ee&&(G.push(ne),Array.isArray(ee)))for(Z=0;Z<ee.length;Z++)a.pushUnique(G,ee[Z])}}for(J=0;J<G.length;J++)$[G[J]]=[];return $}function y(G,$){var J=G._context.locale;J||(J="en-US");var Z=!1,re={};function ne(Ae){for(var Be=!0,Ie=0;Ie<$.length;Ie++){var Ze=$[Ie];re[Ze]||(Ae[Ze]?re[Ze]=Ae[Ze]:Be=!1)}Be&&(Z=!0)}for(var j=0;j<2;j++){for(var ee=G._context.locales,ie=0;ie<2;ie++){var fe=(ee[J]||{}).format;if(fe&&(ne(fe),Z))break;ee=t.localeRegistry}var be=J.split("-")[0];if(Z||be===J)break;J=be}return Z||ne(t.localeRegistry.en.format),re}function f(G,$){return G.decimal=$.charAt(0),G.thousands=$.charAt(1),{numberFormat:function(J){try{J=A(G).format(a.adjustFormat(J))}catch{return a.warnBadFormat(J),a.noFormat}return J},timeFormat:x(G).utcFormat}}function P(G,$){var J,Z=[];$.meta&&(J=$._meta={meta:$.meta,layout:{meta:$.meta}});for(var re=0;re<G.length;re++){var ne=G[re];ne.meta?Z[ne.index]=ne._meta={meta:ne.meta}:$.meta&&(ne._meta={meta:$.meta}),$.meta&&(ne._meta.layout={meta:$.meta})}Z.length&&(J||(J=$._meta={}),J.data=Z)}w.createTransitionData=function(G){G._transitionData||(G._transitionData={}),G._transitionData._frames||(G._transitionData._frames=[]),G._transitionData._frameHash||(G._transitionData._frameHash={}),G._transitionData._counter||(G._transitionData._counter=0),G._transitionData._interruptCallbacks||(G._transitionData._interruptCallbacks=[])},w._hasPlotType=function(G){var $,J=this._basePlotModules||[];for($=0;$<J.length;$++)if(J[$].name===G)return!0;var Z=this._modules||[];for($=0;$<Z.length;$++){var re=Z[$].name;if(re===G)return!0;var ne=t.modules[re];if(ne&&ne.categories[G])return!0}return!1},w.cleanPlot=function(G,$,J,Z){var re,ne,j=Z._basePlotModules||[];for(re=0;re<j.length;re++){var ee=j[re];ee.clean&&ee.clean(G,$,J,Z)}var ie=Z._has&&Z._has("gl"),fe=$._has&&$._has("gl");ie&&!fe&&Z._glcontainer!==void 0&&(Z._glcontainer.selectAll(".gl-canvas").remove(),Z._glcontainer.selectAll(".no-webgl").remove(),Z._glcanvas=null);var be=!!Z._infolayer;e:for(re=0;re<J.length;re++){var Ae=J[re],Be=Ae.uid;for(ne=0;ne<G.length;ne++){var Ie=G[ne];if(Be===Ie.uid)continue e}be&&Z._infolayer.select(".cb"+Be).remove()}},w.linkSubplots=function(G,$,J,Z){var re,ne,j=Z._plots||{},ee=$._plots={},ie=$._subplots,fe={_fullData:G,_fullLayout:$},be=ie.cartesian||[];for(re=0;re<be.length;re++){var Ae=be[re],Be=j[Ae],Ie=s.getFromId(fe,Ae,"x"),Ze=s.getFromId(fe,Ae,"y"),at;for(Be?at=ee[Ae]=Be:(at=ee[Ae]={},at.id=Ae),Ie._counterAxes.push(Ze._id),Ze._counterAxes.push(Ie._id),Ie._subplotsWith.push(Ae),Ze._subplotsWith.push(Ae),at.xaxis=Ie,at.yaxis=Ze,at._hasClipOnAxisFalse=!1,ne=0;ne<G.length;ne++){var it=G[ne];if(it.xaxis===at.xaxis._id&&it.yaxis===at.yaxis._id&&it.cliponaxis===!1){at._hasClipOnAxisFalse=!0;break}}}var et=s.list(fe,null,!0),lt;for(re=0;re<et.length;re++){lt=et[re];var Me=null;lt.overlaying&&(Me=s.getFromId(fe,lt.overlaying),Me&&Me.overlaying&&(lt.overlaying=!1,Me=null)),lt._mainAxis=Me||lt,Me&&(lt.domain=Me.domain.slice()),lt._anchorAxis=lt.anchor==="free"?null:s.getFromId(fe,lt.anchor)}for(re=0;re<et.length;re++)if(lt=et[re],lt._counterAxes.sort(s.idSort),lt._subplotsWith.sort(a.subplotSort),lt._mainSubplot=L(lt,$),lt._counterAxes.length&&(lt.spikemode&&lt.spikemode.indexOf("across")!==-1||lt.automargin&&lt.mirror&&lt.anchor!=="free"||t.getComponentMethod("rangeslider","isVisible")(lt))){var ge=1,ce=0;for(ne=0;ne<lt._counterAxes.length;ne++){var ze=s.getFromId(fe,lt._counterAxes[ne]);ge=Math.min(ge,ze.domain[0]),ce=Math.max(ce,ze.domain[1])}ge<ce&&(lt._counterDomainMin=ge,lt._counterDomainMax=ce)}};function L(G,$){var J={_fullLayout:$},Z=G._id.charAt(0)==="x",re=G._mainAxis._anchorAxis,ne="",j="",ee="";if(re&&(ee=re._mainAxis._id,ne=Z?G._id+ee:ee+G._id),!ne||!$._plots[ne]){ne="";for(var ie=G._counterAxes,fe=0;fe<ie.length;fe++){var be=ie[fe],Ae=Z?G._id+be:be+G._id;j||(j=Ae);var Be=s.getFromId(J,be);if(ee&&Be.overlaying===ee){ne=Ae;break}}}return ne||j}w.clearExpandedTraceDefaultColors=function(G){var $,J,Z;function re(j,ee,ie,fe){J[fe]=ee,J.length=fe+1,j.valType==="color"&&j.dflt===void 0&&$.push(J.join("."))}for(J=[],$=G._module._colorAttrs,$||(G._module._colorAttrs=$=[],r.crawl(G._module.attributes,re)),Z=0;Z<$.length;Z++){var ne=a.nestedProperty(G,"_input."+$[Z]);ne.get()||a.nestedProperty(G,$[Z]).set(null)}},w.supplyDataDefaults=function(G,$,J,Z){var re=Z._modules,ne=Z._visibleModules,j=Z._basePlotModules,ee=0,ie=0,fe,be,Ae;Z._transformModules=[];function Be(lt){$.push(lt);var Me=lt._module;Me&&(a.pushUnique(re,Me),lt.visible===!0&&a.pushUnique(ne,Me),a.pushUnique(j,lt._module.basePlotModule),ee++,lt._input.visible!==!1&&ie++)}var Ie={},Ze=[],at=(J.template||{}).data||{},it=o.traceTemplater(at);for(fe=0;fe<G.length;fe++)Ae=G[fe],be=it.newTrace(Ae),be.uid=Z._traceUids[fe],w.supplyTraceDefaults(Ae,be,ie,Z,fe),be.index=fe,be._input=Ae,be._fullInput=be,Be(be),t.traceIs(be,"carpetAxis")&&(Ie[be.carpet]=be),t.traceIs(be,"carpetDependent")&&Ze.push(fe);for(fe=0;fe<Ze.length;fe++)if(be=$[Ze[fe]],!!be.visible){var et=Ie[be.carpet];if(be._carpet=et,!et||!et.visible){be.visible=!1;continue}be.xaxis=et.xaxis,be.yaxis=et.yaxis}},w.supplyAnimationDefaults=function(G){G=G||{};var $,J={};function Z(re,ne){return a.coerce(G||{},J,v,re,ne)}if(Z("mode"),Z("direction"),Z("fromcurrent"),Array.isArray(G.frame))for(J.frame=[],$=0;$<G.frame.length;$++)J.frame[$]=w.supplyAnimationFrameDefaults(G.frame[$]||{});else J.frame=w.supplyAnimationFrameDefaults(G.frame||{});if(Array.isArray(G.transition))for(J.transition=[],$=0;$<G.transition.length;$++)J.transition[$]=w.supplyAnimationTransitionDefaults(G.transition[$]||{});else J.transition=w.supplyAnimationTransitionDefaults(G.transition||{});return J},w.supplyAnimationFrameDefaults=function(G){var $={};function J(Z,re){return a.coerce(G||{},$,v.frame,Z,re)}return J("duration"),J("redraw"),$},w.supplyAnimationTransitionDefaults=function(G){var $={};function J(Z,re){return a.coerce(G||{},$,v.transition,Z,re)}return J("duration"),J("easing"),$},w.supplyFrameDefaults=function(G){var $={};function J(Z,re){return a.coerce(G,$,p,Z,re)}return J("group"),J("name"),J("traces"),J("baseframe"),J("data"),J("layout"),$},w.supplyTraceDefaults=function(G,$,J,Z,re){var ne=Z.colorway||i.defaults,j=ne[J%ne.length],ee;function ie(Me,ge){return a.coerce(G,$,w.attributes,Me,ge)}var fe=ie("visible");ie("type"),ie("name",Z._traceWord+" "+re),ie("uirevision",Z.uirevision);var be=w.getModule($);if($._module=be,be){var Ae=be.basePlotModule,Be=Ae.attr,Ie=Ae.attributes;if(Be&&Ie){var Ze=Z._subplots,at="";if(Array.isArray(Be))for(ee=0;ee<Be.length;ee++){var it=Be[ee],et=a.coerce(G,$,Ie,it);Ze[it]&&a.pushUnique(Ze[it],et),at+=et}else at=a.coerce(G,$,Ie,Be);Ze[Ae.name]&&a.pushUnique(Ze[Ae.name],at)}}if(fe&&(ie("customdata"),ie("ids"),ie("meta"),t.traceIs($,"showLegend")?(a.coerce(G,$,be.attributes.showlegend?be.attributes:w.attributes,"showlegend"),ie("legend"),ie("legendwidth"),ie("legendgroup"),ie("legendgrouptitle.text"),ie("legendrank"),$._dfltShowLegend=!0):$._dfltShowLegend=!1,be&&be.supplyDefaults(G,$,j,Z),t.traceIs($,"noOpacity")||ie("opacity"),t.traceIs($,"notLegendIsolatable")&&($.visible=!!$.visible),t.traceIs($,"noHover")||($.hovertemplate||a.coerceHoverinfo(G,$,Z),$.type!=="parcats"&&t.getComponentMethod("fx","supplyDefaults")(G,$,j,Z)),be&&be.selectPoints)){var lt=ie("selectedpoints");a.isTypedArray(lt)&&($.selectedpoints=Array.from(lt))}return $},w.supplyLayoutGlobalDefaults=function(G,$,J){function Z(Ae,Be){return a.coerce(G,$,w.layoutAttributes,Ae,Be)}var re=G.template;a.isPlainObject(re)&&($.template=re,$._template=re.layout,$._dataTemplate=re.data),Z("autotypenumbers");var ne=a.coerceFont(Z,"font"),j=ne.size;a.coerceFont(Z,"title.font",ne,{overrideDflt:{size:Math.round(j*1.4)}}),Z("title.text",$._dfltTitle.plot),Z("title.xref");var ee=Z("title.yref");Z("title.pad.t"),Z("title.pad.r"),Z("title.pad.b"),Z("title.pad.l");var ie=Z("title.automargin");Z("title.x"),Z("title.xanchor"),Z("title.y"),Z("title.yanchor"),Z("title.subtitle.text",$._dfltTitle.subtitle),a.coerceFont(Z,"title.subtitle.font",ne,{overrideDflt:{size:Math.round($.title.font.size*.7)}}),ie&&(ee==="paper"&&($.title.y!==0&&($.title.y=1),$.title.yanchor==="auto"&&($.title.yanchor=$.title.y===0?"top":"bottom")),ee==="container"&&($.title.y==="auto"&&($.title.y=1),$.title.yanchor==="auto"&&($.title.yanchor=$.title.y<.5?"bottom":"top")));var fe=Z("uniformtext.mode");fe&&Z("uniformtext.minsize"),Z("autosize",!(G.width&&G.height)),Z("width"),Z("height"),Z("minreducedwidth"),Z("minreducedheight"),Z("margin.l"),Z("margin.r"),Z("margin.t"),Z("margin.b"),Z("margin.pad"),Z("margin.autoexpand"),G.width&&G.height&&w.sanitizeMargins($),t.getComponentMethod("grid","sizeDefaults")(G,$),Z("paper_bgcolor"),Z("separators",J.decimal+J.thousands),Z("hidesources"),Z("colorway"),Z("datarevision");var be=Z("uirevision");Z("editrevision",be),Z("selectionrevision",be),t.getComponentMethod("modebar","supplyLayoutDefaults")(G,$),t.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(G,$,Z),t.getComponentMethod("selections","supplyDrawNewSelectionDefaults")(G,$,Z),Z("meta"),a.isPlainObject(G.transition)&&(Z("transition.duration"),Z("transition.easing"),Z("transition.ordering")),t.getComponentMethod("calendars","handleDefaults")(G,$,"calendar"),t.getComponentMethod("fx","supplyLayoutGlobalDefaults")(G,$,Z),a.coerce(G,$,h,"scattermode")};function z(G){return typeof G=="string"&&G.substr(G.length-2)==="px"&&parseFloat(G)}w.plotAutoSize=function($,J,Z){var re=$._context||{},ne=re.frameMargins,j,ee,ie=a.isPlotDiv($);if(ie&&$.emit("plotly_autosize"),re.fillFrame)j=window.innerWidth,ee=window.innerHeight,document.body.style.overflow="hidden";else{var fe=ie?window.getComputedStyle($):{};if(j=z(fe.width)||z(fe.maxWidth)||Z.width,ee=z(fe.height)||z(fe.maxHeight)||Z.height,M(ne)&&ne>0){var be=1-2*ne;j=Math.round(be*j),ee=Math.round(be*ee)}}var Ae=w.layoutAttributes.width.min,Be=w.layoutAttributes.height.min;j<Ae&&(j=Ae),ee<Be&&(ee=Be);var Ie=!J.width&&Math.abs(Z.width-j)>1,Ze=!J.height&&Math.abs(Z.height-ee)>1;(Ze||Ie)&&(Ie&&(Z.width=j),Ze&&(Z.height=ee)),$._initialAutoSize||($._initialAutoSize={width:j,height:ee}),w.sanitizeMargins(Z)},w.supplyLayoutModuleDefaults=function(G,$,J,Z){var re=t.componentsRegistry,ne=$._basePlotModules,j,ee,ie,fe=t.subplotsRegistry.cartesian;for(j in re)ie=re[j],ie.includeBasePlot&&ie.includeBasePlot(G,$);ne.length||ne.push(fe),$._has("cartesian")&&(t.getComponentMethod("grid","contentDefaults")(G,$),fe.finalizeSubplots(G,$));for(var be in $._subplots)$._subplots[be].sort(a.subplotSort);for(ee=0;ee<ne.length;ee++)ie=ne[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J);var Ae=$._modules;for(ee=0;ee<Ae.length;ee++)ie=Ae[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J);var Be=$._transformModules;for(ee=0;ee<Be.length;ee++)ie=Be[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J,Z);for(j in re)ie=re[j],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J)},w.purge=function(G){var $=G._fullLayout||{};$._glcontainer!==void 0&&($._glcontainer.selectAll(".gl-canvas").remove(),$._glcontainer.remove(),$._glcanvas=null),$._modeBar&&$._modeBar.destroy(),G._transitionData&&(G._transitionData._interruptCallbacks&&(G._transitionData._interruptCallbacks.length=0),G._transitionData._animationRaf&&window.cancelAnimationFrame(G._transitionData._animationRaf)),a.clearThrottle(),a.clearResponsive(G),delete G.data,delete G.layout,delete G._fullData,delete G._fullLayout,delete G.calcdata,delete G.empty,delete G.fid,delete G.undoqueue,delete G.undonum,delete G.autoplay,delete G.changed,delete G._promises,delete G._redrawTimer,delete G._hmlumcount,delete G._hmpixcount,delete G._transitionData,delete G._transitioning,delete G._initialAutoSize,delete G._transitioningWithDuration,delete G._dragging,delete G._dragged,delete G._dragdata,delete G._hoverdata,delete G._snapshotInProgress,delete G._editing,delete G._mouseDownTime,delete G._legendMouseDownTime,G.removeAllListeners&&G.removeAllListeners()},w.style=function(G){var $=G._fullLayout._visibleModules,J=[],Z;for(Z=0;Z<$.length;Z++){var re=$[Z];re.style&&a.pushUnique(J,re.style)}for(Z=0;Z<J.length;Z++)J[Z](G)},w.sanitizeMargins=function(G){if(!(!G||!G.margin)){var $=G.width,J=G.height,Z=G.margin,re=$-(Z.l+Z.r),ne=J-(Z.t+Z.b),j;re<0&&(j=($-1)/(Z.l+Z.r),Z.l=Math.floor(j*Z.l),Z.r=Math.floor(j*Z.r)),ne<0&&(j=(J-1)/(Z.t+Z.b),Z.t=Math.floor(j*Z.t),Z.b=Math.floor(j*Z.b))}},w.clearAutoMarginIds=function(G){G._fullLayout._pushmarginIds={}},w.allowAutoMargin=function(G,$){G._fullLayout._pushmarginIds[$]=1};function F(G){var $=G.margin;if(!G._size){var J=G._size={l:Math.round($.l),r:Math.round($.r),t:Math.round($.t),b:Math.round($.b),p:Math.round($.pad)};J.w=Math.round(G.width)-J.l-J.r,J.h=Math.round(G.height)-J.t-J.b}G._pushmargin||(G._pushmargin={}),G._pushmarginIds||(G._pushmarginIds={}),G._reservedMargin||(G._reservedMargin={})}var B=2,O=2;w.autoMargin=function(G,$,J){var Z=G._fullLayout,re=Z.width,ne=Z.height,j=Z.margin,ee=Z.minreducedwidth,ie=Z.minreducedheight,fe=a.constrain(re-j.l-j.r,B,ee),be=a.constrain(ne-j.t-j.b,O,ie),Ae=Math.max(0,re-fe),Be=Math.max(0,ne-be),Ie=Z._pushmargin,Ze=Z._pushmarginIds;if(j.autoexpand!==!1){if(!J)delete Ie[$],delete Ze[$];else{var at=J.pad;if(at===void 0&&(at=Math.min(12,j.l,j.r,j.t,j.b)),Ae){var it=(J.l+J.r)/Ae;it>1&&(J.l/=it,J.r/=it)}if(Be){var et=(J.t+J.b)/Be;et>1&&(J.t/=et,J.b/=et)}var lt=J.xl!==void 0?J.xl:J.x,Me=J.xr!==void 0?J.xr:J.x,ge=J.yt!==void 0?J.yt:J.y,ce=J.yb!==void 0?J.yb:J.y;Ie[$]={l:{val:lt,size:J.l+at},r:{val:Me,size:J.r+at},b:{val:ce,size:J.b+at},t:{val:ge,size:J.t+at}},Ze[$]=1}if(!Z._replotting)return w.doAutoMargin(G)}};function I(G){if("_redrawFromAutoMarginCount"in G._fullLayout)return!1;var $=s.list(G,"",!0);for(var J in $)if($[J].autoshift||$[J].shift)return!0;return!1}w.doAutoMargin=function(G){var $=G._fullLayout,J=$.width,Z=$.height;$._size||($._size={}),F($);var re=$._size,ne=$.margin,j={t:0,b:0,l:0,r:0},ee=a.extendFlat({},re),ie=ne.l,fe=ne.r,be=ne.t,Ae=ne.b,Be=$._pushmargin,Ie=$._pushmarginIds,Ze=$.minreducedwidth,at=$.minreducedheight;if(ne.autoexpand!==!1){for(var it in Be)Ie[it]||delete Be[it];var et=G._fullLayout._reservedMargin;for(var lt in et)for(var Me in et[lt]){var ge=et[lt][Me];j[Me]=Math.max(j[Me],ge)}Be.base={l:{val:0,size:ie},r:{val:1,size:fe},t:{val:1,size:be},b:{val:0,size:Ae}};for(var ce in j){var ze=0;for(var tt in Be)tt!=="base"&&M(Be[tt][ce].size)&&(ze=Be[tt][ce].size>ze?Be[tt][ce].size:ze);var nt=Math.max(0,ne[ce]-ze);j[ce]=Math.max(0,j[ce]-nt)}for(var Qe in Be){var Ct=Be[Qe].l||{},St=Be[Qe].b||{},Ot=Ct.val,jt=Ct.size,ur=St.val,ar=St.size,Cr=J-j.r-j.l,vr=Z-j.t-j.b;for(var _r in Be){if(M(jt)&&Be[_r].r){var yt=Be[_r].r.val,Fe=Be[_r].r.size;if(yt>Ot){var Ke=(jt*yt+(Fe-Cr)*Ot)/(yt-Ot),Ne=(Fe*(1-Ot)+(jt-Cr)*(1-yt))/(yt-Ot);Ke+Ne>ie+fe&&(ie=Ke,fe=Ne)}}if(M(ar)&&Be[_r].t){var Ee=Be[_r].t.val,Ve=Be[_r].t.size;if(Ee>ur){var ke=(ar*Ee+(Ve-vr)*ur)/(Ee-ur),Te=(Ve*(1-ur)+(ar-vr)*(1-Ee))/(Ee-ur);ke+Te>Ae+be&&(Ae=ke,be=Te)}}}}}var Le=a.constrain(J-ne.l-ne.r,B,Ze),rt=a.constrain(Z-ne.t-ne.b,O,at),dt=Math.max(0,J-Le),xt=Math.max(0,Z-rt);if(dt){var It=(ie+fe)/dt;It>1&&(ie/=It,fe/=It)}if(xt){var Bt=(Ae+be)/xt;Bt>1&&(Ae/=Bt,be/=Bt)}if(re.l=Math.round(ie)+j.l,re.r=Math.round(fe)+j.r,re.t=Math.round(be)+j.t,re.b=Math.round(Ae)+j.b,re.p=Math.round(ne.pad),re.w=Math.round(J)-re.l-re.r,re.h=Math.round(Z)-re.t-re.b,!$._replotting&&(w.didMarginChange(ee,re)||I(G))){"_redrawFromAutoMarginCount"in $?$._redrawFromAutoMarginCount++:$._redrawFromAutoMarginCount=1;var Gt=3*(1+Object.keys(Ie).length);if($._redrawFromAutoMarginCount<Gt)return t.call("_doPlot",G);$._size=ee,a.warn("Too many auto-margin redraws.")}N(G)};function N(G){var $=s.list(G,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(J){for(var Z=0;Z<$.length;Z++){var re=$[Z][J];re&&re()}})}var U=["l","r","t","b","p","w","h"];w.didMarginChange=function(G,$){for(var J=0;J<U.length;J++){var Z=U[J],re=G[Z],ne=$[Z];if(!M(re)||Math.abs(ne-re)>1)return!0}return!1},w.graphJson=function(G,$,J,Z,re,ne){(re&&$&&!G._fullData||re&&!$&&!G._fullLayout)&&w.supplyDefaults(G);var j=re?G._fullData:G.data,ee=re?G._fullLayout:G.layout,ie=(G._transitionData||{})._frames;function fe(Be,Ie){if(typeof Be=="function")return Ie?"_function_":null;if(a.isPlainObject(Be)){var Ze={},at;return Object.keys(Be).sort().forEach(function(Me){if(["_","["].indexOf(Me.charAt(0))===-1){if(typeof Be[Me]=="function"){Ie&&(Ze[Me]="_function");return}if(J==="keepdata"){if(Me.substr(Me.length-3)==="src")return}else if(J==="keepstream"){if(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0&&!a.isPlainObject(Be.stream))return}else if(J!=="keepall"&&(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0))return;Ze[Me]=fe(Be[Me],Ie)}}),Ze}var it=Array.isArray(Be),et=a.isTypedArray(Be);if((it||et)&&Be.dtype&&Be.shape){var lt=Be.bdata;return fe({dtype:Be.dtype,shape:Be.shape,bdata:a.isArrayBuffer(lt)?e.encode(lt):lt},Ie)}return it?Be.map(function(Me){return fe(Me,Ie)}):et?a.simpleMap(Be,a.identity):a.isJSDate(Be)?a.ms2DateTimeLocal(+Be):Be}var be={data:(j||[]).map(function(Be){var Ie=fe(Be);return $&&delete Ie.fit,Ie})};if(!$&&(be.layout=fe(ee),re)){var Ae=ee._size;be.layout.computed={margin:{b:Ae.b,l:Ae.l,r:Ae.r,t:Ae.t}}}return ie&&(be.frames=fe(ie)),ne&&(be.config=fe(G._context,!0)),Z==="object"?be:JSON.stringify(be)},w.modifyFrames=function(G,$){var J,Z,re,ne=G._transitionData._frames,j=G._transitionData._frameHash;for(J=0;J<$.length;J++)switch(Z=$[J],Z.type){case"replace":re=Z.value;var ee=(ne[Z.index]||{}).name,ie=re.name;ne[Z.index]=j[ie]=re,ie!==ee&&(delete j[ee],j[ie]=re);break;case"insert":re=Z.value,j[re.name]=re,ne.splice(Z.index,0,re);break;case"delete":re=ne[Z.index],delete j[re.name],ne.splice(Z.index,1);break}return Promise.resolve()},w.computeFrame=function(G,$){var J=G._transitionData._frameHash,Z,re,ne,j;if(!$)throw new Error("computeFrame must be given a string frame name");var ee=J[$.toString()];if(!ee)return!1;for(var ie=[ee],fe=[ee.name];ee.baseframe&&(ee=J[ee.baseframe.toString()])&&fe.indexOf(ee.name)===-1;)ie.push(ee),fe.push(ee.name);for(var be={};ee=ie.pop();)if(ee.layout&&(be.layout=w.extendLayout(be.layout,ee.layout)),ee.data){if(be.data||(be.data=[]),re=ee.traces,!re)for(re=[],Z=0;Z<ee.data.length;Z++)re[Z]=Z;for(be.traces||(be.traces=[]),Z=0;Z<ee.data.length;Z++)ne=re[Z],ne!=null&&(j=be.traces.indexOf(ne),j===-1&&(j=be.data.length,be.traces[j]=ne),be.data[j]=w.extendTrace(be.data[j],ee.data[Z]))}return be},w.recomputeFrameHash=function(G){for(var $=G._transitionData._frameHash={},J=G._transitionData._frames,Z=0;Z<J.length;Z++){var re=J[Z];re&&re.name&&($[re.name]=re)}},w.extendObjectWithContainers=function(G,$,J){var Z,re,ne,j,ee,ie,fe,be,Ae=a.extendDeepNoArrays({},$||{}),Be=a.expandObjectPaths(Ae),Ie={};if(J&&J.length)for(ne=0;ne<J.length;ne++)Z=a.nestedProperty(Be,J[ne]),re=Z.get(),re===void 0?a.nestedProperty(Ie,J[ne]).set(null):(Z.set(null),a.nestedProperty(Ie,J[ne]).set(re));if(G=a.extendDeepNoArrays(G||{},Be),J&&J.length){for(ne=0;ne<J.length;ne++)if(ee=a.nestedProperty(Ie,J[ne]),fe=ee.get(),!!fe){for(ie=a.nestedProperty(G,J[ne]),be=ie.get(),Array.isArray(be)||(be=[],ie.set(be)),j=0;j<fe.length;j++){var Ze=fe[j];Ze===null?be[j]=null:be[j]=w.extendObjectWithContainers(be[j],Ze)}ie.set(be)}}return G},w.dataArrayContainers=["transforms","dimensions"],w.layoutArrayContainers=t.layoutArrayContainers,w.extendTrace=function(G,$){return w.extendObjectWithContainers(G,$,w.dataArrayContainers)},w.extendLayout=function(G,$){return w.extendObjectWithContainers(G,$,w.layoutArrayContainers)},w.transition=function(G,$,J,Z,re,ne){var j={redraw:re.redraw},ee={},ie=[];return j.prepareFn=function(){for(var fe=Array.isArray($)?$.length:0,be=Z.slice(0,fe),Ae=0;Ae<be.length;Ae++){var Be=be[Ae],Ie=G._fullData[Be],Ze=Ie._module;if(Ze){if(Ze.animatable){var at=Ze.basePlotModule.name;ee[at]||(ee[at]=[]),ee[at].push(Be)}G.data[be[Ae]]=w.extendTrace(G.data[be[Ae]],$[Ae])}}var it=a.expandObjectPaths(a.extendDeepNoArrays({},J)),et=/^[xy]axis[0-9]*$/;for(var lt in it)et.test(lt)&&delete it[lt].range;w.extendLayout(G.layout,it),delete G.calcdata,w.supplyDefaults(G),w.doCalcdata(G);var Me=a.expandObjectPaths(J);if(Me){var ge=G._fullLayout._plots;for(var ce in ge){var ze=ge[ce],tt=ze.xaxis,nt=ze.yaxis,Qe=tt.range.slice(),Ct=nt.range.slice(),St=null,Ot=null,jt=null,ur=null;Array.isArray(Me[tt._name+".range"])?St=Me[tt._name+".range"].slice():Array.isArray((Me[tt._name]||{}).range)&&(St=Me[tt._name].range.slice()),Array.isArray(Me[nt._name+".range"])?Ot=Me[nt._name+".range"].slice():Array.isArray((Me[nt._name]||{}).range)&&(Ot=Me[nt._name].range.slice()),Qe&&St&&(tt.r2l(Qe[0])!==tt.r2l(St[0])||tt.r2l(Qe[1])!==tt.r2l(St[1]))&&(jt={xr0:Qe,xr1:St}),Ct&&Ot&&(nt.r2l(Ct[0])!==nt.r2l(Ot[0])||nt.r2l(Ct[1])!==nt.r2l(Ot[1]))&&(ur={yr0:Ct,yr1:Ot}),(jt||ur)&&ie.push(a.extendFlat({plotinfo:ze},jt,ur))}}return Promise.resolve()},j.runFn=function(fe){var be,Ae=G._fullLayout._basePlotModules,Be=ie.length,Ie;if(J)for(Ie=0;Ie<Ae.length;Ie++)Ae[Ie].transitionAxes&&Ae[Ie].transitionAxes(G,ie,ne,fe);Be?(be=a.extendFlat({},ne),be.duration=0,delete ee.cartesian):be=ne;for(var Ze in ee){var at=ee[Ze],it=G._fullData[at[0]]._module;it.basePlotModule.plot(G,at,be,fe)}},W(G,ne,j)},w.transitionFromReact=function(G,$,J,Z){var re=G._fullLayout,ne=re.transition,j={},ee=[];return j.prepareFn=function(){var ie=re._plots;j.redraw=!1,$.anim==="some"&&(j.redraw=!0),J.anim==="some"&&(j.redraw=!0);for(var fe in ie){var be=ie[fe],Ae=be.xaxis,Be=be.yaxis,Ie=Z[Ae._name].range.slice(),Ze=Z[Be._name].range.slice(),at=Ae.range.slice(),it=Be.range.slice();Ae.setScale(),Be.setScale();var et=null,lt=null;(Ae.r2l(Ie[0])!==Ae.r2l(at[0])||Ae.r2l(Ie[1])!==Ae.r2l(at[1]))&&(et={xr0:Ie,xr1:at}),(Be.r2l(Ze[0])!==Be.r2l(it[0])||Be.r2l(Ze[1])!==Be.r2l(it[1]))&&(lt={yr0:Ze,yr1:it}),(et||lt)&&ee.push(a.extendFlat({plotinfo:be},et,lt))}return Promise.resolve()},j.runFn=function(ie){for(var fe=G._fullData,be=G._fullLayout,Ae=be._basePlotModules,Be,Ie,Ze,at=[],it=0;it<fe.length;it++)at.push(it);function et(){if(G._fullLayout)for(var Me=0;Me<Ae.length;Me++)Ae[Me].transitionAxes&&Ae[Me].transitionAxes(G,ee,Be,ie)}function lt(){if(G._fullLayout)for(var Me=0;Me<Ae.length;Me++)Ae[Me].plot(G,Ze,Ie,ie)}ee.length&&$.anim?ne.ordering==="traces first"?(Be=a.extendFlat({},ne,{duration:0}),Ze=at,Ie=ne,setTimeout(et,ne.duration),lt()):(Be=ne,Ze=null,Ie=a.extendFlat({},ne,{duration:0}),setTimeout(lt,Be.duration),et()):ee.length?(Be=ne,et()):$.anim&&(Ze=at,Ie=ne,lt())},W(G,ne,j)};function W(G,$,J){var Z=!1;function re(Ae){var Be=Promise.resolve();if(!Ae)return Be;for(;Ae.length;)Be=Be.then(Ae.shift());return Be}function ne(Ae){if(Ae)for(;Ae.length;)Ae.shift()}function j(){return G.emit("plotly_transitioning",[]),new Promise(function(Ae){G._transitioning=!0,$.duration>0&&(G._transitioningWithDuration=!0),G._transitionData._interruptCallbacks.push(function(){Z=!0}),J.redraw&&G._transitionData._interruptCallbacks.push(function(){return t.call("redraw",G)}),G._transitionData._interruptCallbacks.push(function(){G.emit("plotly_transitioninterrupted",[])});var Be=0,Ie=0;function Ze(){return Be++,function(){Ie++,!Z&&Ie===Be&&ee(Ae)}}J.runFn(Ze),setTimeout(Ze())})}function ee(Ae){if(G._transitionData)return ne(G._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(J.redraw)return t.call("redraw",G)}).then(function(){G._transitioning=!1,G._transitioningWithDuration=!1,G.emit("plotly_transitioned",[])}).then(Ae)}function ie(){if(G._transitionData)return G._transitioning=!1,re(G._transitionData._interruptCallbacks)}var fe=[w.previousPromises,ie,J.prepareFn,w.rehover,w.reselect,j],be=a.syncOrAsync(fe,G);return(!be||!be.then)&&(be=Promise.resolve()),be.then(function(){return G})}w.doCalcdata=function(G,$){var J=s.list(G),Z=G._fullData,re=G._fullLayout,ne,j,ee,ie,fe=new Array(Z.length),be=(G.calcdata||[]).slice();for(G.calcdata=fe,re._numBoxes=0,re._numViolins=0,re._violinScaleGroupStats={},G._hmpixcount=0,G._hmlumcount=0,re._piecolormap={},re._sunburstcolormap={},re._treemapcolormap={},re._iciclecolormap={},re._funnelareacolormap={},ee=0;ee<Z.length;ee++)if(Array.isArray($)&&$.indexOf(ee)===-1){fe[ee]=be[ee];continue}for(ee=0;ee<Z.length;ee++)ne=Z[ee],ne._arrayAttrs=r.findArrayAttributes(ne),ne._extremes={};var Ae=re._subplots.polar||[];for(ee=0;ee<Ae.length;ee++)J.push(re[Ae[ee]].radialaxis,re[Ae[ee]].angularaxis);for(var Be in re._colorAxes){var Ie=re[Be];Ie.cauto!==!1&&(delete Ie.cmin,delete Ie.cmax)}var Ze=!1;function at(lt){if(ne=Z[lt],j=ne._module,ne.visible===!0&&ne.transforms){if(j&&j.calc){var Me=j.calc(G,ne);Me[0]&&Me[0].t&&Me[0].t._scene&&delete Me[0].t._scene.dirty}for(ie=0;ie<ne.transforms.length;ie++){var ge=ne.transforms[ie];j=transformsRegistry[ge.type],j&&j.calcTransform&&(ne._hasCalcTransform=!0,Ze=!0,j.calcTransform(G,ne,ge))}}}function it(lt,Me){if(ne=Z[lt],j=ne._module,!!j.isContainer===Me){var ge=[];if(ne.visible===!0&&ne._length!==0){delete ne._indexToPoints;var ce=ne.transforms||[];for(ie=ce.length-1;ie>=0;ie--)if(ce[ie].enabled){ne._indexToPoints=ce[ie]._indexToPoints;break}j&&j.calc&&(ge=j.calc(G,ne))}(!Array.isArray(ge)||!ge[0])&&(ge=[{x:n,y:n}]),ge[0].t||(ge[0].t={}),ge[0].trace=ne,fe[lt]=ge}}for(se(J,Z,re),ee=0;ee<Z.length;ee++)it(ee,!0);for(ee=0;ee<Z.length;ee++)at(ee);for(Ze&&se(J,Z,re),ee=0;ee<Z.length;ee++)it(ee,!0);for(ee=0;ee<Z.length;ee++)it(ee,!1);he(G);var et=ue(J,G);if(et.length){for(re._numBoxes=0,re._numViolins=0,ee=0;ee<et.length;ee++)it(et[ee],!0);for(ee=0;ee<et.length;ee++)it(et[ee],!1);he(G)}t.getComponentMethod("fx","calc")(G),t.getComponentMethod("errorbars","calc")(G)};var Q=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function ue(G,$){var J=[],Z,re,ne,j,ee;function ie(_r,yt,Fe){var Ke=yt._id.charAt(0);if(_r==="histogram2dcontour"){var Ne=yt._counterAxes[0],Ee=s.getFromId($,Ne),Ve=Ke==="x"||Ne==="x"&&Ee.type==="category",ke=Ke==="y"||Ne==="y"&&Ee.type==="category";return function(Te,Le){return Te===0||Le===0||Ve&&Te===Fe[Le].length-1||ke&&Le===Fe.length-1?-1:(Ke==="y"?Le:Te)-1}}else return function(Te,Le){return Ke==="y"?Le:Te}}var fe={min:function(_r){return a.aggNums(Math.min,null,_r)},max:function(_r){return a.aggNums(Math.max,null,_r)},sum:function(_r){return a.aggNums(function(yt,Fe){return yt+Fe},null,_r)},total:function(_r){return a.aggNums(function(yt,Fe){return yt+Fe},null,_r)},mean:function(_r){return a.mean(_r)},"geometric mean":function(_r){return a.geometricMean(_r)},median:function(_r){return a.median(_r)}};function be(_r,yt){return _r[1]-yt[1]}function Ae(_r,yt){return yt[1]-_r[1]}for(Z=0;Z<G.length;Z++){var Be=G[Z];if(Be.type==="category"){var Ie=Be.categoryorder.match(Q);if(Ie){var Ze=Ie[1],at=Ie[2],it=Be._id.charAt(0),et=it==="x",lt=[];for(re=0;re<Be._categories.length;re++)lt.push([Be._categories[re],[]]);for(re=0;re<Be._traceIndices.length;re++){var Me=Be._traceIndices[re],ge=$._fullData[Me];if(ge.visible===!0){var ce=ge.type;t.traceIs(ge,"histogram")&&(delete ge._xautoBinFinished,delete ge._yautoBinFinished);var ze=ce==="splom",tt=ce==="scattergl",nt=$.calcdata[Me];for(ne=0;ne<nt.length;ne++){var Qe=nt[ne],Ct,St;if(ze){var Ot=ge._axesDim[Be._id];if(!et){var jt=ge._diag[Ot][0];jt&&(Be=$._fullLayout[s.id2name(jt)])}var ur=Qe.trace.dimensions[Ot].values;for(j=0;j<ur.length;j++)for(Ct=Be._categoriesMap[ur[j]],ee=0;ee<Qe.trace.dimensions.length;ee++)if(ee!==Ot){var ar=Qe.trace.dimensions[ee];lt[Ct][1].push(ar.values[j])}}else if(tt){for(j=0;j<Qe.t.x.length;j++)et?(Ct=Qe.t.x[j],St=Qe.t.y[j]):(Ct=Qe.t.y[j],St=Qe.t.x[j]),lt[Ct][1].push(St);Qe.t&&Qe.t._scene&&delete Qe.t._scene.dirty}else if(Qe.hasOwnProperty("z")){St=Qe.z;var Cr=ie(ge.type,Be,St);for(j=0;j<St.length;j++)for(ee=0;ee<St[j].length;ee++)Ct=Cr(ee,j),Ct+1&&lt[Ct][1].push(St[j][ee])}else for(Ct=Qe.p,Ct===void 0&&(Ct=Qe[it]),St=Qe.s,St===void 0&&(St=Qe.v),St===void 0&&(St=et?Qe.y:Qe.x),Array.isArray(St)||(St===void 0?St=[]:St=[St]),j=0;j<St.length;j++)lt[Ct][1].push(St[j])}}}Be._categoriesValue=lt;var vr=[];for(re=0;re<lt.length;re++)vr.push([lt[re][0],fe[Ze](lt[re][1])]);vr.sort(at==="descending"?Ae:be),Be._categoriesAggregatedValue=vr,Be._initialCategories=vr.map(function(_r){return _r[0]}),J=J.concat(Be.sortByInitialCategories())}}}return J}function se(G,$,J){var Z={};function re(ie){ie.clearCalc(),ie.type==="multicategory"&&ie.setupMultiCategory($),Z[ie._id]=1}a.simpleMap(G,re);for(var ne=J._axisMatchGroups||[],j=0;j<ne.length;j++)for(var ee in ne[j])Z[ee]||re(J[s.id2name(ee)])}function he(G){var $=G._fullLayout,J=$._visibleModules,Z={},re,ne,j;for(ne=0;ne<J.length;ne++){var ee=J[ne],ie=ee.crossTraceCalc;if(ie){var fe=ee.basePlotModule.name;Z[fe]?a.pushUnique(Z[fe],ie):Z[fe]=[ie]}}for(j in Z){var be=Z[j],Ae=$._subplots[j];if(Array.isArray(Ae))for(re=0;re<Ae.length;re++){var Be=Ae[re],Ie=j==="cartesian"?$._plots[Be]:$[Be];for(ne=0;ne<be.length;ne++)be[ne](G,Ie,Be)}else for(ne=0;ne<be.length;ne++)be[ne](G)}}w.rehover=function(G){G._fullLayout._rehover&&G._fullLayout._rehover()},w.redrag=function(G){G._fullLayout._redrag&&G._fullLayout._redrag()},w.reselect=function(G){var $=G._fullLayout,J=(G.layout||{}).selections,Z=$._previousSelections;$._previousSelections=J;var re=$._reselect||JSON.stringify(J)!==JSON.stringify(Z);t.getComponentMethod("selections","reselect")(G,re)},w.generalUpdatePerTraceModule=function(G,$,J,Z){var re=$.traceHash,ne={},j;for(j=0;j<J.length;j++){var ee=J[j],ie=ee[0].trace;ie.visible&&(ne[ie.type]=ne[ie.type]||[],ne[ie.type].push(ee))}for(var fe in re)if(!ne[fe]){var be=re[fe][0],Ae=be[0].trace;Ae.visible=!1,ne[fe]=[be]}for(var Be in ne){var Ie=ne[Be],Ze=Ie[0][0].trace._module;Ze.plot(G,$,a.filterVisible(Ie),Z)}$.traceHash=ne},w.plotBasePlot=function(G,$,J,Z,re){var ne=t.getModule(G),j=T($.calcdata,ne)[0];ne.plot($,j,Z,re)},w.cleanBasePlot=function(G,$,J,Z,re){var ne=re._has&&re._has(G),j=J._has&&J._has(G);ne&&!j&&re["_"+G+"layer"].selectAll("g.trace").remove()}}}),vd=Ye({"src/constants/xmlns_namespaces.js"(X){"use strict";X.xmlns="http://www.w3.org/2000/xmlns/",X.svg="http://www.w3.org/2000/svg",X.xlink="http://www.w3.org/1999/xlink",X.svgAttrs={xmlns:X.svg,"xmlns:xlink":X.xlink}}}),oh=Ye({"src/constants/alignment.js"(X,H){"use strict";H.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}}}),jl=Ye({"src/lib/svg_text_utils.js"(X){"use strict";var H=_n(),g=ta(),x=g.strTranslate,A=vd(),M=oh().LINE_SPACING,e=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;X.convertToTspans=function(O,I,N){var U=O.text(),W=!O.attr("data-notex")&&I&&I._context.typesetMath&&typeof MathJax<"u"&&U.match(e),Q=H.select(O.node().parentNode);if(Q.empty())return;var ue=O.attr("class")?O.attr("class").split(" ")[0]:"text";ue+="-math",Q.selectAll("svg."+ue).remove(),Q.selectAll("g."+ue+"-group").remove(),O.style("display",null).attr({"data-unformatted":U,"data-math":"N"});function se(){Q.empty()||(ue=O.attr("class")+"-math",Q.select("svg."+ue).remove()),O.text("").style("white-space","pre");var he=L(O.node(),U);he&&O.style("pointer-events","all"),X.positionText(O),N&&N.call(O)}return W?(I&&I._promises||[]).push(new Promise(function(he){O.style("display","none");var G=parseInt(O.node().style.fontSize,10),$={fontSize:G};i(W[2],$,function(J,Z,re){Q.selectAll("svg."+ue).remove(),Q.selectAll("g."+ue+"-group").remove();var ne=J&&J.select("svg");if(!ne||!ne.node()){se(),he();return}var j=Q.append("g").classed(ue+"-group",!0).attr({"pointer-events":"none","data-unformatted":U,"data-math":"Y"});j.node().appendChild(ne.node()),Z&&Z.node()&&ne.node().insertBefore(Z.node().cloneNode(!0),ne.node().firstChild);var ee=re.width,ie=re.height;ne.attr({class:ue,height:ie,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var fe=O.node().style.fill||"black",be=ne.select("g");be.attr({fill:fe,stroke:fe});var Ae=be.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height;(Be>ee||Ie>ie)&&(ne.style("overflow","hidden"),Ae=ne.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height);var Ze=+O.attr("x"),at=+O.attr("y"),it=G||O.node().getBoundingClientRect().height,et=-it/4;if(ue[0]==="y")j.attr({transform:"rotate("+[-90,Ze,at]+")"+x(-Be/2,et-Ie/2)});else if(ue[0]==="l")at=et-Ie/2;else if(ue[0]==="a"&&ue.indexOf("atitle")!==0)Ze=0,at=et;else{var lt=O.attr("text-anchor");Ze=Ze-Be*(lt==="middle"?.5:lt==="end"?1:0),at=at+et-Ie/2}ne.attr({x:Ze,y:at}),N&&N.call(O,j),he(j)})})):se(),O};var t=/(<|&lt;|&#60;)/g,r=/(>|&gt;|&#62;)/g;function o(O){return O.replace(t,"\\lt ").replace(r,"\\gt ")}var a=[["$","$"],["\\(","\\)"]];function i(O,I,N){var U=parseInt((MathJax.version||"").split(".")[0]);if(U!==2&&U!==3){g.warn("No MathJax version:",MathJax.version);return}var W,Q,ue,se,he=function(){return Q=g.extendDeepAll({},MathJax.Hub.config),ue=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:a},displayAlign:"left"})},G=function(){Q=g.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=a},$=function(){if(W=MathJax.Hub.config.menuSettings.renderer,W!=="SVG")return MathJax.Hub.setRenderer("SVG")},J=function(){W=MathJax.config.startup.output,W!=="svg"&&(MathJax.config.startup.output="svg")},Z=function(){var fe="math-output-"+g.randstr({},64);se=H.select("body").append("div").attr({id:fe}).style({visibility:"hidden",position:"absolute","font-size":I.fontSize+"px"}).text(o(O));var be=se.node();return U===2?MathJax.Hub.Typeset(be):MathJax.typeset([be])},re=function(){var fe=se.select(U===2?".MathJax_SVG":".MathJax"),be=!fe.empty()&&se.select("svg").node();if(!be)g.log("There was an error in the tex syntax.",O),N();else{var Ae=be.getBoundingClientRect(),Be;U===2?Be=H.select("body").select("#MathJax_SVG_glyphs"):Be=fe.select("defs"),N(fe,Be,Ae)}se.remove()},ne=function(){if(W!=="SVG")return MathJax.Hub.setRenderer(W)},j=function(){W!=="svg"&&(MathJax.config.startup.output=W)},ee=function(){return ue!==void 0&&(MathJax.Hub.processSectionDelay=ue),MathJax.Hub.Config(Q)},ie=function(){MathJax.config=Q};U===2?MathJax.Hub.Queue(he,$,Z,re,ne,ee):U===3&&(G(),J(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){Z(),re(),j(),ie()}))}var n={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},s={sub:"0.3em",sup:"-0.6em"},c={sub:"-0.21em",sup:"0.42em"},h="\u200B",v=["http:","https:","mailto:","",void 0,":"],p=X.NEWLINES=/(\r\n?|\n)/g,T=/(<[^<>]*>)/,l=/<(\/?)([^ >]*)(\s+(.*))?>/i,_=/<br(\s+.*)?>/i;X.BR_TAG_ALL=/<br(\s+.*)?>/gi;var w=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,S=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,E=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,m=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function b(O,I){if(!O)return null;var N=O.match(I),U=N&&(N[3]||N[4]);return U&&f(U)}var d=/(^|;)\s*color:/;X.plainText=function(O,I){I=I||{};for(var N=I.len!==void 0&&I.len!==-1?I.len:1/0,U=I.allowedTags!==void 0?I.allowedTags:["br"],W="...",Q=W.length,ue=O.split(T),se=[],he="",G=0,$=0;$<ue.length;$++){var J=ue[$],Z=J.match(l),re=Z&&Z[2].toLowerCase();if(re)U.indexOf(re)!==-1&&(se.push(J),he=re);else{var ne=J.length;if(G+ne<N)se.push(J),G+=ne;else if(G<N){var j=N-G;he&&(he!=="br"||j<=Q||ne<=Q)&&se.pop(),N>Q?se.push(J.substr(0,j-Q)+W):se.push(J.substr(0,j));break}he=""}}return se.join("")};var u={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},y=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function f(O){return O.replace(y,function(I,N){var U;return N.charAt(0)==="#"?U=P(N.charAt(1)==="x"?parseInt(N.substr(2),16):parseInt(N.substr(1),10)):U=u[N],U||I})}X.convertEntities=f;function P(O){if(!(O>1114111)){var I=String.fromCodePoint;if(I)return I(O);var N=String.fromCharCode;return O<=65535?N(O):N((O>>10)+55232,O%1024+56320)}}function L(O,I){I=I.replace(p," ");var N=!1,U=[],W,Q=-1;function ue(){Q++;var Ie=document.createElementNS(A.svg,"tspan");H.select(Ie).attr({class:"line",dy:Q*M+"em"}),O.appendChild(Ie),W=Ie;var Ze=U;if(U=[{node:Ie}],Ze.length>1)for(var at=1;at<Ze.length;at++)se(Ze[at])}function se(Ie){var Ze=Ie.type,at={},it;if(Ze==="a"){it="a";var et=Ie.target,lt=Ie.href,Me=Ie.popup;lt&&(at={"xlink:xlink:show":et==="_blank"||et.charAt(0)!=="_"?"new":"replace",target:et,"xlink:xlink:href":lt},Me&&(at.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+Me+'");return false;'))}else it="tspan";Ie.style&&(at.style=Ie.style);var ge=document.createElementNS(A.svg,it);if(Ze==="sup"||Ze==="sub"){he(W,h),W.appendChild(ge);var ce=document.createElementNS(A.svg,"tspan");he(ce,h),H.select(ce).attr("dy",c[Ze]),at.dy=s[Ze],W.appendChild(ge),W.appendChild(ce)}else W.appendChild(ge);H.select(ge).attr(at),W=Ie.node=ge,U.push(Ie)}function he(Ie,Ze){Ie.appendChild(document.createTextNode(Ze))}function G(Ie){if(U.length===1){g.log("Ignoring unexpected end tag </"+Ie+">.",I);return}var Ze=U.pop();Ie!==Ze.type&&g.log("Start tag <"+Ze.type+"> doesnt match end tag <"+Ie+">. Pretending it did match.",I),W=U[U.length-1].node}var $=_.test(I);$?ue():(W=O,U=[{node:O}]);for(var J=I.split(T),Z=0;Z<J.length;Z++){var re=J[Z],ne=re.match(l),j=ne&&ne[2].toLowerCase(),ee=n[j];if(j==="br")ue();else if(ee===void 0)he(W,f(re));else if(ne[1])G(j);else{var ie=ne[4],fe={type:j},be=b(ie,w);if(be?(be=be.replace(d,"$1 fill:"),ee&&(be+=";"+ee)):ee&&(be=ee),be&&(fe.style=be),j==="a"){N=!0;var Ae=b(ie,S);if(Ae){var Be=z(Ae);Be&&(fe.href=Be,fe.target=b(ie,E)||"_blank",fe.popup=b(ie,m))}}se(fe)}}return N}function z(O){var I=encodeURI(decodeURI(O)),N=document.createElement("a"),U=document.createElement("a");N.href=O,U.href=I;var W=N.protocol,Q=U.protocol;return v.indexOf(W)!==-1&&v.indexOf(Q)!==-1?I:""}X.sanitizeHTML=function(I){I=I.replace(p," ");for(var N=document.createElement("p"),U=N,W=[],Q=I.split(T),ue=0;ue<Q.length;ue++){var se=Q[ue],he=se.match(l),G=he&&he[2].toLowerCase();if(G in n)if(he[1])W.length&&(U=W.pop());else{var $=he[4],J=b($,w),Z=J?{style:J}:{};if(G==="a"){var re=b($,S);if(re){var ne=z(re);if(ne){Z.href=ne;var j=b($,E);j&&(Z.target=j)}}}var ee=document.createElement(G);U.appendChild(ee),H.select(ee).attr(Z),U=ee,W.push(ee)}else U.appendChild(document.createTextNode(f(se)))}var ie="innerHTML";return N[ie]},X.lineCount=function(I){return I.selectAll("tspan.line").size()||1},X.positionText=function(I,N,U){return I.each(function(){var W=H.select(this);function Q(he,G){return G===void 0?(G=W.attr(he),G===null&&(W.attr(he,0),G=0)):W.attr(he,G),G}var ue=Q("x",N),se=Q("y",U);this.nodeName==="text"&&W.selectAll("tspan.line").attr({x:ue,y:se})})};function F(O,I,N){var U=N.horizontalAlign,W=N.verticalAlign||"top",Q=O.node().getBoundingClientRect(),ue=I.node().getBoundingClientRect(),se,he,G;return W==="bottom"?he=function(){return Q.bottom-se.height}:W==="middle"?he=function(){return Q.top+(Q.height-se.height)/2}:he=function(){return Q.top},U==="right"?G=function(){return Q.right-se.width}:U==="center"?G=function(){return Q.left+(Q.width-se.width)/2}:G=function(){return Q.left},function(){se=this.node().getBoundingClientRect();var $=G()-ue.left,J=he()-ue.top,Z=N.gd||{};if(N.gd){Z._fullLayout._calcInverseTransform(Z);var re=g.apply3DTransform(Z._fullLayout._invTransform)($,J);$=re[0],J=re[1]}return this.style({top:J+"px",left:$+"px","z-index":1e3}),this}}var B="1px ";X.makeTextShadow=function(O){var I=B,N=B,U=B;return I+N+U+O+", -"+I+"-"+N+U+O+", "+I+"-"+N+U+O+", -"+I+N+U+O},X.makeEditable=function(O,I){var N=I.gd,U=I.delegate,W=H.dispatch("edit","input","cancel"),Q=U||O;if(O.style({"pointer-events":U?"none":"all"}),O.size()!==1)throw new Error("boo");function ue(){he(),O.style({opacity:0});var G=Q.attr("class"),$;G?$="."+G.split(" ")[0]+"-math-group":$="[class*=-math-group]",$&&H.select(O.node().parentNode).select($).style({opacity:0})}function se(G){var $=G.node(),J=document.createRange();J.selectNodeContents($);var Z=window.getSelection();Z.removeAllRanges(),Z.addRange(J),$.focus()}function he(){var G=H.select(N),$=G.select(".svg-container"),J=$.append("div"),Z=O.node().style,re=parseFloat(Z.fontSize||12),ne=I.text;ne===void 0&&(ne=O.attr("data-unformatted")),J.classed("plugin-editable editable",!0).style({position:"absolute","font-family":Z.fontFamily||"Arial","font-size":re,color:I.fill||Z.fill||"black",opacity:1,"background-color":I.background||"transparent",outline:"#ffffff33 1px solid",margin:[-re/8+1,0,0,-1].join("px ")+"px",padding:"0","box-sizing":"border-box"}).attr({contenteditable:!0}).text(ne).call(F(O,$,I)).on("blur",function(){N._editing=!1,O.text(this.textContent).style({opacity:1});var j=H.select(this).attr("class"),ee;j?ee="."+j.split(" ")[0]+"-math-group":ee="[class*=-math-group]",ee&&H.select(O.node().parentNode).select(ee).style({opacity:0});var ie=this.textContent;H.select(this).transition().duration(0).remove(),H.select(document).on("mouseup",null),W.edit.call(O,ie)}).on("focus",function(){var j=this;N._editing=!0,H.select(document).on("mouseup",function(){if(H.event.target===j)return!1;document.activeElement===J.node()&&J.node().blur()})}).on("keyup",function(){H.event.which===27?(N._editing=!1,O.style({opacity:1}),H.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),W.cancel.call(O,this.textContent)):(W.input.call(O,this.textContent),H.select(this).call(F(O,$,I)))}).on("keydown",function(){H.event.which===13&&this.blur()}).call(se)}return I.immediate?ue():Q.on("click",ue),H.rebind(O,W,"on")}}}),Up=Ye({"src/components/colorscale/helpers.js"(X,H){"use strict";var g=_n(),x=bh(),A=jo(),M=ta(),e=Fn(),t=Hg().isValid;function r(p,T,l){var _=T?M.nestedProperty(p,T).get()||{}:p,w=_[l||"color"];w&&w._inputArray&&(w=w._inputArray);var S=!1;if(M.isArrayOrTypedArray(w)){for(var E=0;E<w.length;E++)if(A(w[E])){S=!0;break}}return M.isPlainObject(_)&&(S||_.showscale===!0||A(_.cmin)&&A(_.cmax)||t(_.colorscale)||M.isPlainObject(_.colorbar))}var o=["showscale","autocolorscale","colorscale","reversescale","colorbar"],a=["min","max","mid","auto"];function i(p){var T=p._colorAx,l=T||p,_={},w,S,E;for(S=0;S<o.length;S++)E=o[S],_[E]=l[E];if(T)for(w="c",S=0;S<a.length;S++)E=a[S],_[E]=l["c"+E];else{var m;for(S=0;S<a.length;S++){if(E=a[S],m="c"+E,m in l){_[E]=l[m];continue}m="z"+E,m in l&&(_[E]=l[m])}w=m.charAt(0)}return _._sync=function(b,d){var u=a.indexOf(b)!==-1?w+b:b;l[u]=l["_"+u]=d},_}function n(p){for(var T=i(p),l=T.min,_=T.max,w=T.reversescale?s(T.colorscale):T.colorscale,S=w.length,E=new Array(S),m=new Array(S),b=0;b<S;b++){var d=w[b];E[b]=l+d[0]*(_-l),m[b]=d[1]}return{domain:E,range:m}}function s(p){for(var T=p.length,l=new Array(T),_=T-1,w=0;_>=0;_--,w++){var S=p[_];l[w]=[1-S[0],S[1]]}return l}function c(p,T){T=T||{};for(var l=p.domain,_=p.range,w=_.length,S=new Array(w),E=0;E<w;E++){var m=x(_[E]).toRgb();S[E]=[m.r,m.g,m.b,m.a]}var b=g.scale.linear().domain(l).range(S).clamp(!0),d=T.noNumericCheck,u=T.returnArray,y;return d&&u?y=b:d?y=function(f){return v(b(f))}:u?y=function(f){return A(f)?b(f):x(f).isValid()?f:e.defaultLine}:y=function(f){return A(f)?v(b(f)):x(f).isValid()?f:e.defaultLine},y.domain=b.domain,y.range=function(){return _},y}function h(p,T){return c(n(p),T)}function v(p){var T={r:p[0],g:p[1],b:p[2],a:p[3]};return x(T).toRgbString()}H.exports={hasColorscale:r,extractOpts:i,extractScale:n,flipScale:s,makeColorScaleFunc:c,makeColorScaleFuncFromTrace:h}}}),Cc=Ye({"src/plots/cartesian/axis_format_attributes.js"(X,H){"use strict";var g=eS(),x=g.FORMAT_LINK,A=g.DATE_FORMAT_LINK;function M(r,o){return{valType:"string",dflt:"",editType:"none",description:(o?e:t)("hover text",r)+["By default the values are formatted using "+(o?"generic number format":"`"+r+"axis.hoverformat`")+"."].join(" ")}}function e(r,o){return["Sets the "+r+" formatting rule"+(o?"for `"+o+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+x+"."].join(" ")}function t(r,o){return e(r,o)+[" And for dates see: "+A+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}H.exports={axisHoverFormat:M,descriptionOnlyNumbers:e,descriptionWithDates:t}}}),Vh=Ye({"src/plots/cartesian/layout_attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Uh().dash,M=Oo().extendFlat,e=cl().templatedArray,t=Cc().descriptionWithDates,r=ks().ONEDAY,o=wh(),a=o.HOUR_PATTERN,i=o.WEEKDAY_PATTERN,n={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},s=M({},n,{values:n.values.slice().concat(["sync"])});function c(d){return{valType:"integer",min:0,dflt:d?5:0,editType:"ticks"}}var h={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},v={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},p={valType:"data_array",editType:"ticks"},T={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function l(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=5),u}function _(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=1),u}var w={valType:"color",dflt:x.defaultLine,editType:"ticks"},S={valType:"color",dflt:x.lightLine,editType:"ticks"};function E(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=1),u}var m=M({},A,{editType:"ticks"}),b={valType:"boolean",editType:"ticks"};H.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:x.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:g({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[o.idRegex.x.toString(),o.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"calc"},rangebreaks:e("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[i,a,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:r},editType:"calc"}),tickmode:s,nticks:c(),tick0:h,dtick:v,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:p,ticktext:{valType:"data_array",editType:"ticks"},ticks:T,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:l(),tickwidth:_(),tickcolor:w,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:M({},A,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:g({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:t("tick label")},tickformatstops:e("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:t("hover text")},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:x.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:b,gridcolor:S,gridwidth:E(),griddash:m,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:x.defaultLine,editType:"ticks"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:x.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"plot"},minor:{tickmode:n,nticks:c("minor"),tick0:h,dtick:v,tickvals:p,ticks:T,ticklen:l("minor"),tickwidth:_("minor"),tickcolor:w,gridcolor:S,gridwidth:E("minor"),griddash:m,showgrid:b,editType:"ticks"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),y2=Ye({"src/components/colorbar/attributes.js"(X,H){"use strict";var g=Vh(),x=Au(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:g.linecolor,outlinewidth:g.linewidth,bordercolor:g.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:g.minor.tickmode,nticks:g.nticks,tick0:g.tick0,dtick:g.dtick,tickvals:g.tickvals,ticktext:g.ticktext,ticks:A({},g.ticks,{dflt:""}),ticklabeloverflow:A({},g.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:g.ticklen,tickwidth:g.tickwidth,tickcolor:g.tickcolor,ticklabelstep:g.ticklabelstep,showticklabels:g.showticklabels,labelalias:g.labelalias,tickfont:x({}),tickangle:g.tickangle,tickformat:g.tickformat,tickformatstops:g.tickformatstops,tickprefix:g.tickprefix,showtickprefix:g.showtickprefix,ticksuffix:g.ticksuffix,showticksuffix:g.showticksuffix,separatethousands:g.separatethousands,exponentformat:g.exponentformat,minexponent:g.minexponent,showexponent:g.showexponent,title:{text:{valType:"string"},font:x({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")}}),tu=Ye({"src/components/colorscale/attributes.js"(X,H){"use strict";var g=y2(),x=Ky().counter,A=Km(),M=Hg().scales,e=A(M);function t(r){return"`"+r+"`"}H.exports=function(o,a){o=o||"",a=a||{};var i=a.cLetter||"c",n="onlyIfNumerical"in a?a.onlyIfNumerical:!!o,s="noScale"in a?a.noScale:o==="marker.line",c="showScaleDflt"in a?a.showScaleDflt:i==="z",h=typeof a.colorscaleDflt=="string"?M[a.colorscaleDflt]:null,v=a.editTypeOverride||"",p=o?o+".":"",T,l;"colorAttr"in a?(T=a.colorAttr,l=a.colorAttr):(T={z:"z",c:"color"}[i],l="in "+t(p+T));var _=n?" Has an effect only if "+l+" is set to a numerical array.":"",w=i+"auto",S=i+"min",E=i+"max",m=i+"mid",b=t(p+w),d=t(p+S),u=t(p+E),y=d+" and "+u,f={};f[S]=f[E]=void 0;var P={};P[w]=!1;var L={};return T==="color"&&(L.color={valType:"color",arrayOk:!0,editType:v||"style"},a.anim&&(L.color.anim=!0)),L[w]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:f},L[S]={valType:"number",dflt:null,editType:v||"plot",impliedEdits:P},L[E]={valType:"number",dflt:null,editType:v||"plot",impliedEdits:P},L[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:f},L.colorscale={valType:"colorscale",editType:"calc",dflt:h,impliedEdits:{autocolorscale:!1}},L.autocolorscale={valType:"boolean",dflt:a.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},L.reversescale={valType:"boolean",dflt:!1,editType:"plot"},s||(L.showscale={valType:"boolean",dflt:c,editType:"calc"},L.colorbar=g),a.noColorAxis||(L.coloraxis={valType:"subplotid",regex:x("coloraxis"),dflt:null,editType:"calc"}),L}}}),nS=Ye({"src/components/colorscale/layout_attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=tu(),A=Hg().scales;H.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:A.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:A.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:A.RdBu,editType:"calc"}},coloraxis:g({_isSubplotObj:!0,editType:"calc"},x("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}}}),oS=Ye({"src/components/colorbar/has_colorbar.js"(X,H){"use strict";var g=ta();H.exports=function(A){return g.isPlainObject(A.colorbar)}}}),sS=Ye({"src/plots/cartesian/clean_ticks.js"(X){"use strict";var H=jo(),g=ta(),x=ks(),A=x.ONEDAY,M=x.ONEWEEK;X.dtick=function(e,t){var r=t==="log",o=t==="date",a=t==="category",i=o?A:1;if(!e)return i;if(H(e))return e=Number(e),e<=0?i:a?Math.max(1,Math.round(e)):o?Math.max(.1,e):e;if(typeof e!="string"||!(o||r))return i;var n=e.charAt(0),s=e.substr(1);return s=H(s)?Number(s):0,s<=0||!(o&&n==="M"&&s===Math.round(s)||r&&n==="L"||r&&n==="D"&&(s===1||s===2))?i:e},X.tick0=function(e,t,r,o){if(t==="date")return g.cleanDate(e,g.dateTick0(r,o%M===0?1:0));if(!(o==="D1"||o==="D2"))return H(e)?Number(e):0}}}),Zg=Ye({"src/plots/cartesian/tick_value_defaults.js"(X,H){"use strict";var g=sS(),x=ta().isArrayOrTypedArray,A=xp().isTypedArraySpec,M=xp().decodeTypedArraySpec;H.exports=function(t,r,o,a,i){i||(i={});var n=i.isMinor,s=n?t.minor||{}:t,c=n?r.minor:r,h=n?"minor.":"";function v(m){var b=s[m];return A(b)&&(b=M(b)),b!==void 0?b:(c._template||{})[m]}var p=v("tick0"),T=v("dtick"),l=v("tickvals"),_=x(l)?"array":T?"linear":"auto",w=o(h+"tickmode",_);if(w==="auto"||w==="sync")o(h+"nticks");else if(w==="linear"){var S=c.dtick=g.dtick(T,a);c.tick0=g.tick0(p,a,r.calendar,S)}else if(a!=="multicategory"){var E=o(h+"tickvals");E===void 0?c.tickmode="auto":n||o("ticktext")}}}}),e1=Ye({"src/plots/cartesian/tick_mark_defaults.js"(X,H){"use strict";var g=ta(),x=Vh();H.exports=function(M,e,t,r){var o=r.isMinor,a=o?M.minor||{}:M,i=o?e.minor:e,n=o?x.minor:x,s=o?"minor.":"",c=g.coerce2(a,i,n,"ticklen",o?(e.ticklen||5)*.6:void 0),h=g.coerce2(a,i,n,"tickwidth",o?e.tickwidth||1:void 0),v=g.coerce2(a,i,n,"tickcolor",(o?e.tickcolor:void 0)||i.color),p=t(s+"ticks",!o&&r.outerTicks||c||h||v?"outside":"");p||(delete i.ticklen,delete i.tickwidth,delete i.tickcolor)}}}),lS=Ye({"src/plots/cartesian/show_dflt.js"(X,H){"use strict";H.exports=function(x){var A=["showexponent","showtickprefix","showticksuffix"],M=A.filter(function(t){return x[t]!==void 0}),e=function(t){return x[t]===x[M[0]]};if(M.every(e)||M.length===1)return x[M[0]]}}}),up=Ye({"src/plots/array_container_defaults.js"(X,H){"use strict";var g=ta(),x=cl();H.exports=function(M,e,t){var r=t.name,o=t.inclusionAttr||"visible",a=e[r],i=g.isArrayOrTypedArray(M[r])?M[r]:[],n=e[r]=[],s=x.arrayTemplater(e,r,o),c,h;for(c=0;c<i.length;c++){var v=i[c];g.isPlainObject(v)?h=s.newItem(v):(h=s.newItem({}),h[o]=!1),h._index=c,h[o]!==!1&&t.handleItemDefaults(v,h,e,t),n.push(h)}var p=s.defaultItems();for(c=0;c<p.length;c++)h=p[c],h._index=n.length,t.handleItemDefaults({},h,e,t,{}),n.push(h);if(g.isArrayOrTypedArray(a)){var T=Math.min(a.length,n.length);for(c=0;c<T;c++)g.relinkPrivateKeys(n[c],a[c])}return n}}}),$m=Ye({"src/plots/cartesian/tick_label_defaults.js"(X,H){"use strict";var g=ta(),x=Fn().contrast,A=Vh(),M=lS(),e=up();H.exports=function(o,a,i,n,s){s||(s={});var c=i("labelalias");g.isPlainObject(c)||delete a.labelalias;var h=M(o),v=i("showticklabels");if(v){s.noTicklabelshift||i("ticklabelshift"),s.noTicklabelstandoff||i("ticklabelstandoff");var p=s.font||{},T=a.color,l=a.ticklabelposition||"",_=l.indexOf("inside")!==-1?x(s.bgColor):T&&T!==A.color.dflt?T:p.color;if(g.coerceFont(i,"tickfont",p,{overrideDflt:{color:_}}),!s.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&i("ticklabelstep"),!s.noAng){var w=i("tickangle");!s.noAutotickangles&&w==="auto"&&i("autotickangles")}if(n!=="category"){var S=i("tickformat");e(o,a,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:t}),a.tickformatstops.length||delete a.tickformatstops,!s.noExp&&!S&&n!=="date"&&(i("showexponent",h),i("exponentformat"),i("minexponent"),i("separatethousands"))}}};function t(r,o){function a(n,s){return g.coerce(r,o,A.tickformatstops,n,s)}var i=a("enabled");i&&(a("dtickrange"),a("value"))}}}),Qm=Ye({"src/plots/cartesian/prefix_suffix_defaults.js"(X,H){"use strict";var g=lS();H.exports=function(A,M,e,t,r){r||(r={});var o=r.tickSuffixDflt,a=g(A),i=e("tickprefix");i&&e("showtickprefix",a);var n=e("ticksuffix",o);n&&e("showticksuffix",a)}}}),uS=Ye({"src/components/colorbar/defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Zg(),M=e1(),e=$m(),t=Qm(),r=y2();H.exports=function(a,i,n){var s=x.newContainer(i,"colorbar"),c=a.colorbar||{};function h(I,N){return g.coerce(c,s,r,I,N)}var v=n.margin||{t:0,b:0,l:0,r:0},p=n.width-v.l-v.r,T=n.height-v.t-v.b,l=h("orientation"),_=l==="v",w=h("thicknessmode");h("thickness",w==="fraction"?30/(_?p:T):30);var S=h("lenmode");h("len",S==="fraction"?1:_?T:p);var E=h("yref"),m=h("xref"),b=E==="paper",d=m==="paper",u,y,f,P="left";_?(f="middle",P=d?"left":"right",u=d?1.02:1,y=.5):(f=b?"bottom":"top",P="center",u=.5,y=b?1.02:1),g.coerce(c,s,{x:{valType:"number",min:d?-2:0,max:d?3:1,dflt:u}},"x"),g.coerce(c,s,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:y}},"y"),h("xanchor",P),h("xpad"),h("yanchor",f),h("ypad"),g.noneOrAll(c,s,["x","y"]),h("outlinecolor"),h("outlinewidth"),h("bordercolor"),h("borderwidth"),h("bgcolor");var L=g.coerce(c,s,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:_?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");h("ticklabeloverflow",L.indexOf("inside")!==-1?"hide past domain":"hide past div"),A(c,s,h,"linear");var z=n.font,F={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:z};L.indexOf("inside")!==-1&&(F.bgColor="black"),t(c,s,h,"linear",F),e(c,s,h,"linear",F),M(c,s,h,"linear",F),h("title.text",n._dfltTitle.colorbar);var B=s.showticklabels?s.tickfont:z,O=g.extendFlat({},z,{family:B.family,size:g.bigFont(B.size)});g.coerceFont(h,"title.font",O),h("title.side",_?"top":"right")}}}),sh=Ye({"src/components/colorscale/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=oS(),M=uS(),e=Hg().isValid,t=Hn().traceIs;function r(o,a){var i=a.slice(0,a.length-1);return a?x.nestedProperty(o,i).get()||{}:o}H.exports=function o(a,i,n,s,c){var h=c.prefix,v=c.cLetter,p="_module"in i,T=r(a,h),l=r(i,h),_=r(i._template||{},h)||{},w=function(){return delete a.coloraxis,delete i.coloraxis,o(a,i,n,s,c)};if(p){var S=n._colorAxes||{},E=s(h+"coloraxis");if(E){var m=t(i,"contour")&&x.nestedProperty(i,"contours.coloring").get()||"heatmap",b=S[E];b?(b[2].push(w),b[0]!==m&&(b[0]=!1,x.warn(["Ignoring coloraxis:",E,"setting","as it is linked to incompatible colorscales."].join(" ")))):S[E]=[m,i,[w]];return}}var d=T[v+"min"],u=T[v+"max"],y=g(d)&&g(u)&&d<u,f=s(h+v+"auto",!y);f?s(h+v+"mid"):(s(h+v+"min"),s(h+v+"max"));var P=T.colorscale,L=_.colorscale,z;if(P!==void 0&&(z=!e(P)),L!==void 0&&(z=!e(L)),s(h+"autocolorscale",z),s(h+"colorscale"),s(h+"reversescale"),h!=="marker.line."){var F;h&&p&&(F=A(T));var B=s(h+"showscale",F);B&&(h&&_&&(l._template=_),M(T,l,n))}}}}),tO=Ye({"src/components/colorscale/layout_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=nS(),M=sh();H.exports=function(t,r){function o(p,T){return g.coerce(t,r,A,p,T)}o("colorscale.sequential"),o("colorscale.sequentialminus"),o("colorscale.diverging");var a=r._colorAxes,i,n;function s(p,T){return g.coerce(i,n,A.coloraxis,p,T)}for(var c in a){var h=a[c];if(h[0])i=t[c]||{},n=x.newContainer(r,c,"coloraxis"),n._name=c,M(i,n,r,s,{prefix:"",cLetter:"c"});else{for(var v=0;v<h[2].length;v++)h[2][v]();delete r._colorAxes[c]}}}}}),rO=Ye({"src/components/colorscale/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=Up().extractOpts;H.exports=function(e,t){function r(h,v){var p=h["_"+v];p!==void 0&&(h[v]=p)}function o(h,v){var p=v.container?g.nestedProperty(h,v.container).get():h;if(p)if(p.coloraxis)p._colorAx=t[p.coloraxis];else{var T=A(p),l=T.auto;(l||T.min===void 0)&&r(p,v.min),(l||T.max===void 0)&&r(p,v.max),T.autocolorscale&&r(p,"colorscale")}}for(var a=0;a<e.length;a++){var i=e[a],n=i._module.colorbar;if(n)if(Array.isArray(n))for(var s=0;s<n.length;s++)o(i,n[s]);else o(i,n);x(i,"marker.line")&&o(i,{container:"marker.line",min:"cmin",max:"cmax"})}for(var c in t._colorAxes)o(t[c],{min:"cmin",max:"cmax"})}}}),jp=Ye({"src/components/colorscale/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Up().extractOpts;H.exports=function(e,t,r){var o=e._fullLayout,a=r.vals,i=r.containerStr,n=i?x.nestedProperty(t,i).get():t,s=A(n),c=s.auto!==!1,h=s.min,v=s.max,p=s.mid,T=function(){return x.aggNums(Math.min,null,a)},l=function(){return x.aggNums(Math.max,null,a)};if(h===void 0?h=T():c&&(n._colorAx&&g(h)?h=Math.min(h,T()):h=T()),v===void 0?v=l():c&&(n._colorAx&&g(v)?v=Math.max(v,l()):v=l()),c&&p!==void 0&&(v-p>p-h?h=p-(v-p):v-p<p-h&&(v=p+(p-h))),h===v&&(h-=.5,v+=.5),s._sync("min",h),s._sync("max",v),s.autocolorscale){var _;h*v<0?_=o.colorscale.diverging:h>=0?_=o.colorscale.sequential:_=o.colorscale.sequentialminus,s._sync("colorscale",_)}}}}),Su=Ye({"src/components/colorscale/index.js"(X,H){"use strict";var g=Hg(),x=Up();H.exports={moduleType:"component",name:"colorscale",attributes:tu(),layoutAttributes:nS(),supplyLayoutDefaults:tO(),handleDefaults:sh(),crossTraceDefaults:rO(),calc:jp(),scales:g.scales,defaultScale:g.defaultScale,getScale:g.get,isValidScale:g.isValid,hasColorscale:x.hasColorscale,extractOpts:x.extractOpts,extractScale:x.extractScale,flipScale:x.flipScale,makeColorScaleFunc:x.makeColorScaleFunc,makeColorScaleFuncFromTrace:x.makeColorScaleFuncFromTrace}}}),uu=Ye({"src/traces/scatter/subtypes.js"(X,H){"use strict";var g=ta(),x=xp().isTypedArraySpec;H.exports={hasLines:function(A){return A.visible&&A.mode&&A.mode.indexOf("lines")!==-1},hasMarkers:function(A){return A.visible&&(A.mode&&A.mode.indexOf("markers")!==-1||A.type==="splom")},hasText:function(A){return A.visible&&A.mode&&A.mode.indexOf("text")!==-1},isBubble:function(A){var M=A.marker;return g.isPlainObject(M)&&(g.isArrayOrTypedArray(M.size)||x(M.size))}}}}),t1=Ye({"src/traces/scatter/make_bubble_size_func.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){M||(M=2);var e=A.marker,t=e.sizeref||1,r=e.sizemin||0,o=e.sizemode==="area"?function(a){return Math.sqrt(a/t)}:function(a){return a/t};return function(a){var i=o(a/M);return g(i)&&i>0?Math.max(i,r):0}}}}),Qp=Ye({"src/components/fx/helpers.js"(X){"use strict";var H=ta();X.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},X.isTraceInSubplots=function(t,r){if(t.type==="splom"){for(var o=t.xaxes||[],a=t.yaxes||[],i=0;i<o.length;i++)for(var n=0;n<a.length;n++)if(r.indexOf(o[i]+a[n])!==-1)return!0;return!1}return r.indexOf(X.getSubplot(t))!==-1},X.flat=function(t,r){for(var o=new Array(t.length),a=0;a<t.length;a++)o[a]=r;return o},X.p2c=function(t,r){for(var o=new Array(t.length),a=0;a<t.length;a++)o[a]=t[a].p2c(r);return o},X.getDistanceFunction=function(t,r,o,a){return t==="closest"?a||X.quadrature(r,o):t.charAt(0)==="x"?r:o},X.getClosest=function(t,r,o){if(o.index!==!1)o.index>=0&&o.index<t.length?o.distance=0:o.index=!1;else for(var a=1/0,i=t.length,n=0;n<i;n++)a=r(t[n]),a<=o.distance&&(o.index=n,o.distance=a);return o},X.inbox=function(t,r,o){return t*r<0||t===0?o:1/0},X.quadrature=function(t,r){return function(o){var a=t(o),i=r(o);return Math.sqrt(a*a+i*i)}},X.makeEventData=function(t,r,o){var a="index"in t?t.index:t.pointNumber,i={data:r._input,fullData:r,curveNumber:r.index,pointNumber:a};if(r._indexToPoints){var n=r._indexToPoints[a];n.length===1?i.pointIndex=n[0]:i.pointIndices=n}else i.pointIndex=a;return r._module.eventData?i=r._module.eventData(i,t,r,o,a):("xVal"in t?i.x=t.xVal:"x"in t&&(i.x=t.x),"yVal"in t?i.y=t.yVal:"y"in t&&(i.y=t.y),t.xa&&(i.xaxis=t.xa),t.ya&&(i.yaxis=t.ya),t.zLabelVal!==void 0&&(i.z=t.zLabelVal)),X.appendArrayPointValue(i,r,a),i},X.appendArrayPointValue=function(t,r,o){var a=r._arrayAttrs;if(a)for(var i=0;i<a.length;i++){var n=a[i],s=x(n);if(t[s]===void 0){var c=H.nestedProperty(r,n).get(),h=A(c,o);h!==void 0&&(t[s]=h)}}},X.appendArrayMultiPointValues=function(t,r,o){var a=r._arrayAttrs;if(a)for(var i=0;i<a.length;i++){var n=a[i],s=x(n);if(t[s]===void 0){for(var c=H.nestedProperty(r,n).get(),h=new Array(o.length),v=0;v<o.length;v++)h[v]=A(c,o[v]);t[s]=h}}};var g={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function x(t){return g[t]||t}function A(t,r){if(Array.isArray(r)){if(Array.isArray(t)&&Array.isArray(t[r[0]]))return t[r[0]][r[1]]}else return t[r]}var M={x:!0,y:!0},e={"x unified":!0,"y unified":!0};X.isUnifiedHover=function(t){return typeof t!="string"?!1:!!e[t]},X.isXYhover=function(t){return typeof t!="string"?!1:!!M[t]}}}),A_=Ye({"node_modules/parse-svg-path/index.js"(X,H){H.exports=A;var g={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},x=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function A(t){var r=[];return t.replace(x,function(o,a,i){var n=a.toLowerCase();for(i=e(i),n=="m"&&i.length>2&&(r.push([a].concat(i.splice(0,2))),n="l",a=a=="m"?"l":"L");;){if(i.length==g[n])return i.unshift(a),r.push(i);if(i.length<g[n])throw new Error("malformed path data");r.push([a].concat(i.splice(0,g[n])))}}),r}var M=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function e(t){var r=t.match(M);return r?r.map(Number):[]}}}),aO=Ye({"src/components/drawing/symbol_defs.js"(X,H){"use strict";var g=A_(),x=function(v,p){return p?Math.round(v*(p=Math.pow(10,p)))/p:Math.round(v)},A="M0,0Z",M=Math.sqrt(2),e=Math.sqrt(3),t=Math.PI,r=Math.cos,o=Math.sin;H.exports={circle:{n:0,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_="M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z";return T?h(p,T,_):_}},square:{n:1,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")}},diamond:{n:2,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"Z")}},cross:{n:3,f:function(v,p,T){if(a(p))return A;var l=x(v*.4,2),_=x(v*1.2,2);return h(p,T,"M"+_+","+l+"H"+l+"V"+_+"H-"+l+"V"+l+"H-"+_+"V-"+l+"H-"+l+"V-"+_+"H"+l+"V-"+l+"H"+_+"Z")}},x:{n:4,f:function(v,p,T){if(a(p))return A;var l=x(v*.8/M,2),_="l"+l+","+l,w="l"+l+",-"+l,S="l-"+l+",-"+l,E="l-"+l+","+l;return h(p,T,"M0,"+l+_+w+S+w+S+E+S+E+_+E+_+"Z")}},"triangle-up":{n:5,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+l+","+_+"H"+l+"L0,-"+w+"Z")}},"triangle-down":{n:6,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+l+",-"+_+"H"+l+"L0,"+w+"Z")}},"triangle-left":{n:7,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M"+_+",-"+l+"V"+l+"L-"+w+",0Z")}},"triangle-right":{n:8,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+_+",-"+l+"V"+l+"L"+w+",0Z")}},"triangle-ne":{n:9,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M-"+_+",-"+l+"H"+l+"V"+_+"Z")}},"triangle-se":{n:10,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M"+l+",-"+_+"V"+l+"H-"+_+"Z")}},"triangle-sw":{n:11,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M"+_+","+l+"H-"+l+"V-"+_+"Z")}},"triangle-nw":{n:12,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M-"+l+","+_+"V-"+l+"H"+_+"Z")}},pentagon:{n:13,f:function(v,p,T){if(a(p))return A;var l=x(v*.951,2),_=x(v*.588,2),w=x(-v,2),S=x(v*-.309,2),E=x(v*.809,2);return h(p,T,"M"+l+","+S+"L"+_+","+E+"H-"+_+"L-"+l+","+S+"L0,"+w+"Z")}},hexagon:{n:14,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/2,2),w=x(v*e/2,2);return h(p,T,"M"+w+",-"+_+"V"+_+"L0,"+l+"L-"+w+","+_+"V-"+_+"L0,-"+l+"Z")}},hexagon2:{n:15,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/2,2),w=x(v*e/2,2);return h(p,T,"M-"+_+","+w+"H"+_+"L"+l+",0L"+_+",-"+w+"H-"+_+"L-"+l+",0Z")}},octagon:{n:16,f:function(v,p,T){if(a(p))return A;var l=x(v*.924,2),_=x(v*.383,2);return h(p,T,"M-"+_+",-"+l+"H"+_+"L"+l+",-"+_+"V"+_+"L"+_+","+l+"H-"+_+"L-"+l+","+_+"V-"+_+"Z")}},star:{n:17,f:function(v,p,T){if(a(p))return A;var l=v*1.4,_=x(l*.225,2),w=x(l*.951,2),S=x(l*.363,2),E=x(l*.588,2),m=x(-l,2),b=x(l*-.309,2),d=x(l*.118,2),u=x(l*.809,2),y=x(l*.382,2);return h(p,T,"M"+_+","+b+"H"+w+"L"+S+","+d+"L"+E+","+u+"L0,"+y+"L-"+E+","+u+"L-"+S+","+d+"L-"+w+","+b+"H-"+_+"L0,"+m+"Z")}},hexagram:{n:18,f:function(v,p,T){if(a(p))return A;var l=x(v*.66,2),_=x(v*.38,2),w=x(v*.76,2);return h(p,T,"M-"+w+",0l-"+_+",-"+l+"h"+w+"l"+_+",-"+l+"l"+_+","+l+"h"+w+"l-"+_+","+l+"l"+_+","+l+"h-"+w+"l-"+_+","+l+"l-"+_+",-"+l+"h-"+w+"Z")}},"star-triangle-up":{n:19,f:function(v,p,T){if(a(p))return A;var l=x(v*e*.8,2),_=x(v*.8,2),w=x(v*1.6,2),S=x(v*4,2),E="A "+S+","+S+" 0 0 1 ";return h(p,T,"M-"+l+","+_+E+l+","+_+E+"0,-"+w+E+"-"+l+","+_+"Z")}},"star-triangle-down":{n:20,f:function(v,p,T){if(a(p))return A;var l=x(v*e*.8,2),_=x(v*.8,2),w=x(v*1.6,2),S=x(v*4,2),E="A "+S+","+S+" 0 0 1 ";return h(p,T,"M"+l+",-"+_+E+"-"+l+",-"+_+E+"0,"+w+E+l+",-"+_+"Z")}},"star-square":{n:21,f:function(v,p,T){if(a(p))return A;var l=x(v*1.1,2),_=x(v*2,2),w="A "+_+","+_+" 0 0 1 ";return h(p,T,"M-"+l+",-"+l+w+"-"+l+","+l+w+l+","+l+w+l+",-"+l+w+"-"+l+",-"+l+"Z")}},"star-diamond":{n:22,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2),_=x(v*1.9,2),w="A "+_+","+_+" 0 0 1 ";return h(p,T,"M-"+l+",0"+w+"0,"+l+w+l+",0"+w+"0,-"+l+w+"-"+l+",0Z")}},"diamond-tall":{n:23,f:function(v,p,T){if(a(p))return A;var l=x(v*.7,2),_=x(v*1.4,2);return h(p,T,"M0,"+_+"L"+l+",0L0,-"+_+"L-"+l+",0Z")}},"diamond-wide":{n:24,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2),_=x(v*.7,2);return h(p,T,"M0,"+_+"L"+l+",0L0,-"+_+"L-"+l+",0Z")}},hourglass:{n:25,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"H-"+l+"L"+l+",-"+l+"H-"+l+"Z")},noDot:!0},bowtie:{n:26,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"V-"+l+"L-"+l+","+l+"V-"+l+"Z")},noDot:!0},"circle-cross":{n:27,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/M,2);return h(p,T,"M"+_+","+_+"L-"+_+",-"+_+"M"+_+",-"+_+"L-"+_+","+_+"M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l+"M"+l+",-"+l+"L-"+l+","+l+"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"ZM0,-"+l+"V"+l+"M-"+l+",0H"+l)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2),_=x(v*.65,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"ZM-"+_+",-"+_+"L"+_+","+_+"M-"+_+","+_+"L"+_+",-"+_)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l+"M"+l+",-"+l+"L-"+l+","+l)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*.85,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+_+","+_+"L-"+_+",-"+_+"M"+_+",-"+_+"L-"+_+","+_)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(v,p,T){if(a(p))return A;var l=x(v/2,2),_=x(v,2);return h(p,T,"M"+l+","+_+"V-"+_+"M"+(l-_)+",-"+_+"V"+_+"M"+_+","+l+"H-"+_+"M-"+_+","+(l-_)+"H"+_)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+l+","+w+"L0,0M"+l+","+w+"L0,0M0,-"+_+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+l+",-"+w+"L0,0M"+l+",-"+w+"L0,0M0,"+_+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M"+w+","+l+"L0,0M"+w+",-"+l+"L0,0M-"+_+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+w+","+l+"L0,0M-"+w+",-"+l+"L0,0M"+_+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M"+l+",0H-"+l)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M0,"+l+"V-"+l)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+",-"+l+"L-"+l+","+l)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M0,0L-"+l+","+_+"H"+l+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M0,0L-"+l+",-"+_+"H"+l+"Z")},noDot:!0},"arrow-left":{n:47,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,0L"+l+",-"+_+"V"+_+"Z")},noDot:!0},"arrow-right":{n:48,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,0L-"+l+",-"+_+"V"+_+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M-"+l+",0H"+l+"M0,0L-"+l+","+_+"H"+l+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M-"+l+",0H"+l+"M0,0L-"+l+",-"+_+"H"+l+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,-"+_+"V"+_+"M0,0L"+l+",-"+_+"V"+_+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,-"+_+"V"+_+"M0,0L-"+l+",-"+_+"V"+_+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(v,p,T){if(a(p))return A;var l=t/2.5,_=2*v*r(l),w=2*v*o(l);return h(p,T,"M0,0L"+-_+","+w+"L"+_+","+w+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(v,p,T){if(a(p))return A;var l=t/4,_=2*v*r(l),w=2*v*o(l);return h(p,T,"M0,0L"+-_+","+w+"A "+2*v+","+2*v+" 0 0 1 "+_+","+w+"Z")},backoff:.4,noDot:!0}};function a(v){return v===null}var i,n,s,c;function h(v,p,T){if((!v||v%360===0)&&!p)return T;if(s===v&&c===p&&i===T)return n;s=v,c=p,i=T;function l(z,F){var B=r(z),O=o(z),I=F[0],N=F[1]+(p||0);return[I*B-N*O,I*O+N*B]}for(var _=v/180*t,w=0,S=0,E=g(T),m="",b=0;b<E.length;b++){var d=E[b],u=d[0],y=w,f=S;if(u==="M"||u==="L")w=+d[1],S=+d[2];else if(u==="m"||u==="l")w+=+d[1],S+=+d[2];else if(u==="H")w=+d[1];else if(u==="h")w+=+d[1];else if(u==="V")S=+d[1];else if(u==="v")S+=+d[1];else if(u==="A"){w=+d[1],S=+d[2];var P=l(_,[+d[6],+d[7]]);d[6]=P[0],d[7]=P[1],d[3]=+d[3]+v}(u==="H"||u==="V")&&(u="L"),(u==="h"||u==="v")&&(u="l"),(u==="m"||u==="l")&&(w-=y,S-=f);var L=l(_,[w,S]);(u==="H"||u==="V")&&(u="L"),(u==="M"||u==="L"||u==="m"||u==="l")&&(d[1]=L[0],d[2]=L[1]),d[0]=u,m+=d[0]+d.slice(1).join(",")}return n=m,m}}}),Bo=Ye({"src/components/drawing/index.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=jo(),e=bh(),t=Hn(),r=Fn(),o=Su(),a=x.strTranslate,i=jl(),n=vd(),s=oh(),c=s.LINE_SPACING,h=Xm().DESELECTDIM,v=uu(),p=t1(),T=Qp().appendArrayPointValue,l=H.exports={};l.font=function(Me,ge){var ce=ge.variant,ze=ge.style,tt=ge.weight,nt=ge.color,Qe=ge.size,Ct=ge.family,St=ge.shadow,Ot=ge.lineposition,jt=ge.textcase;Ct&&Me.style("font-family",Ct),Qe+1&&Me.style("font-size",Qe+"px"),nt&&Me.call(r.fill,nt),tt&&Me.style("font-weight",tt),ze&&Me.style("font-style",ze),ce&&Me.style("font-variant",ce),jt&&Me.style("text-transform",_(S(jt))),St&&Me.style("text-shadow",St==="auto"?i.makeTextShadow(r.contrast(nt)):_(St)),Ot&&Me.style("text-decoration-line",_(E(Ot)))};function _(Me){return Me==="none"?void 0:Me}var w={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function S(Me){return w[Me]}function E(Me){return Me.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}l.setPosition=function(Me,ge,ce){Me.attr("x",ge).attr("y",ce)},l.setSize=function(Me,ge,ce){Me.attr("width",ge).attr("height",ce)},l.setRect=function(Me,ge,ce,ze,tt){Me.call(l.setPosition,ge,ce).call(l.setSize,ze,tt)},l.translatePoint=function(Me,ge,ce,ze){var tt=ce.c2p(Me.x),nt=ze.c2p(Me.y);if(M(tt)&&M(nt)&&ge.node())ge.node().nodeName==="text"?ge.attr("x",tt).attr("y",nt):ge.attr("transform",a(tt,nt));else return!1;return!0},l.translatePoints=function(Me,ge,ce){Me.each(function(ze){var tt=g.select(this);l.translatePoint(ze,tt,ge,ce)})},l.hideOutsideRangePoint=function(Me,ge,ce,ze,tt,nt){ge.attr("display",ce.isPtWithinRange(Me,tt)&&ze.isPtWithinRange(Me,nt)?null:"none")},l.hideOutsideRangePoints=function(Me,ge){if(ge._hasClipOnAxisFalse){var ce=ge.xaxis,ze=ge.yaxis;Me.each(function(tt){var nt=tt[0].trace,Qe=nt.xcalendar,Ct=nt.ycalendar,St=t.traceIs(nt,"bar-like")?".bartext":".point,.textpoint";Me.selectAll(St).each(function(Ot){l.hideOutsideRangePoint(Ot,g.select(this),ce,ze,Qe,Ct)})})}},l.crispRound=function(Me,ge,ce){return!ge||!M(ge)?ce||0:Me._context.staticPlot?ge:ge<1?1:Math.round(ge)},l.singleLineStyle=function(Me,ge,ce,ze,tt){ge.style("fill","none");var nt=(((Me||[])[0]||{}).trace||{}).line||{},Qe=ce||nt.width||0,Ct=tt||nt.dash||"";r.stroke(ge,ze||nt.color),l.dashLine(ge,Ct,Qe)},l.lineGroupStyle=function(Me,ge,ce,ze){Me.style("fill","none").each(function(tt){var nt=(((tt||[])[0]||{}).trace||{}).line||{},Qe=ge||nt.width||0,Ct=ze||nt.dash||"";g.select(this).call(r.stroke,ce||nt.color).call(l.dashLine,Ct,Qe)})},l.dashLine=function(Me,ge,ce){ce=+ce||0,ge=l.dashStyle(ge,ce),Me.style({"stroke-dasharray":ge,"stroke-width":ce+"px"})},l.dashStyle=function(Me,ge){ge=+ge||1;var ce=Math.max(ge,3);return Me==="solid"?Me="":Me==="dot"?Me=ce+"px,"+ce+"px":Me==="dash"?Me=3*ce+"px,"+3*ce+"px":Me==="longdash"?Me=5*ce+"px,"+5*ce+"px":Me==="dashdot"?Me=3*ce+"px,"+ce+"px,"+ce+"px,"+ce+"px":Me==="longdashdot"&&(Me=5*ce+"px,"+2*ce+"px,"+ce+"px,"+2*ce+"px"),Me};function m(Me,ge,ce,ze){var tt=ge.fillpattern,nt=ge.fillgradient,Qe=tt&&l.getPatternAttr(tt.shape,0,"");if(Qe){var Ct=l.getPatternAttr(tt.bgcolor,0,null),St=l.getPatternAttr(tt.fgcolor,0,null),Ot=tt.fgopacity,jt=l.getPatternAttr(tt.size,0,8),ur=l.getPatternAttr(tt.solidity,0,.3),ar=ge.uid;l.pattern(Me,"point",ce,ar,Qe,jt,ur,void 0,tt.fillmode,Ct,St,Ot)}else if(nt&&nt.type!=="none"){var Cr=nt.type,vr="scatterfill-"+ge.uid;if(ze&&(vr="legendfill-"+ge.uid),!ze&&(nt.start!==void 0||nt.stop!==void 0)){var _r,yt;Cr==="horizontal"?(_r={x:nt.start,y:0},yt={x:nt.stop,y:0}):Cr==="vertical"&&(_r={x:0,y:nt.start},yt={x:0,y:nt.stop}),_r.x=ge._xA.c2p(_r.x===void 0?ge._extremes.x.min[0].val:_r.x,!0),_r.y=ge._yA.c2p(_r.y===void 0?ge._extremes.y.min[0].val:_r.y,!0),yt.x=ge._xA.c2p(yt.x===void 0?ge._extremes.x.max[0].val:yt.x,!0),yt.y=ge._yA.c2p(yt.y===void 0?ge._extremes.y.max[0].val:yt.y,!0),Me.call(L,ce,vr,"linear",nt.colorscale,"fill",_r,yt,!0,!1)}else Cr==="horizontal"&&(Cr=Cr+"reversed"),Me.call(l.gradient,ce,vr,Cr,nt.colorscale,"fill")}else ge.fillcolor&&Me.call(r.fill,ge.fillcolor)}l.singleFillStyle=function(Me,ge){var ce=g.select(Me.node()),ze=ce.data(),tt=((ze[0]||[])[0]||{}).trace||{};m(Me,tt,ge,!1)},l.fillGroupStyle=function(Me,ge,ce){Me.style("stroke-width",0).each(function(ze){var tt=g.select(this);ze[0].trace&&m(tt,ze[0].trace,ge,ce)})};var b=aO();l.symbolNames=[],l.symbolFuncs=[],l.symbolBackOffs=[],l.symbolNeedLines={},l.symbolNoDot={},l.symbolNoFill={},l.symbolList=[],Object.keys(b).forEach(function(Me){var ge=b[Me],ce=ge.n;l.symbolList.push(ce,String(ce),Me,ce+100,String(ce+100),Me+"-open"),l.symbolNames[ce]=Me,l.symbolFuncs[ce]=ge.f,l.symbolBackOffs[ce]=ge.backoff||0,ge.needLine&&(l.symbolNeedLines[ce]=!0),ge.noDot?l.symbolNoDot[ce]=!0:l.symbolList.push(ce+200,String(ce+200),Me+"-dot",ce+300,String(ce+300),Me+"-open-dot"),ge.noFill&&(l.symbolNoFill[ce]=!0)});var d=l.symbolNames.length,u="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";l.symbolNumber=function(Me){if(M(Me))Me=+Me;else if(typeof Me=="string"){var ge=0;Me.indexOf("-open")>0&&(ge=100,Me=Me.replace("-open","")),Me.indexOf("-dot")>0&&(ge+=200,Me=Me.replace("-dot","")),Me=l.symbolNames.indexOf(Me),Me>=0&&(Me+=ge)}return Me%100>=d||Me>=400?0:Math.floor(Math.max(Me,0))};function y(Me,ge,ce,ze){var tt=Me%100;return l.symbolFuncs[tt](ge,ce,ze)+(Me>=200?u:"")}var f=A("~f"),P={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};l.gradient=function(Me,ge,ce,ze,tt,nt){var Qe=P[ze];return L(Me,ge,ce,Qe.type,tt,nt,Qe.start,Qe.stop,!1,Qe.reversed)};function L(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot){var jt=tt.length,ur;ze==="linear"?ur={node:"linearGradient",attrs:{x1:Qe.x,y1:Qe.y,x2:Ct.x,y2:Ct.y,gradientUnits:St?"userSpaceOnUse":"objectBoundingBox"},reversed:Ot}:ze==="radial"&&(ur={node:"radialGradient",reversed:Ot});for(var ar=new Array(jt),Cr=0;Cr<jt;Cr++)ur.reversed?ar[jt-1-Cr]=[f((1-tt[Cr][0])*100),tt[Cr][1]]:ar[Cr]=[f(tt[Cr][0]*100),tt[Cr][1]];var vr=ge._fullLayout,_r="g"+vr._uid+"-"+ce,yt=vr._defs.select(".gradients").selectAll("#"+_r).data([ze+ar.join(";")],x.identity);yt.exit().remove(),yt.enter().append(ur.node).each(function(){var Fe=g.select(this);ur.attrs&&Fe.attr(ur.attrs),Fe.attr("id",_r);var Ke=Fe.selectAll("stop").data(ar);Ke.exit().remove(),Ke.enter().append("stop"),Ke.each(function(Ne){var Ee=e(Ne[1]);g.select(this).attr({offset:Ne[0]+"%","stop-color":r.tinyRGB(Ee),"stop-opacity":Ee.getAlpha()})})}),Me.style(nt,re(_r,ge)).style(nt+"-opacity",null),Me.classed("gradient_filled",!0)}l.pattern=function(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur){var ar=ge==="legend";Ct&&(St==="overlay"?(Ot=Ct,jt=r.contrast(Ot)):(Ot=void 0,jt=Ct));var Cr=ce._fullLayout,vr="p"+Cr._uid+"-"+ze,_r,yt,Fe=function(Bt,Gt,Kt,sr,sa){return sr+(sa-sr)*(Bt-Gt)/(Kt-Gt)},Ke,Ne,Ee,Ve,ke={},Te=e(jt),Le=r.tinyRGB(Te),rt=Te.getAlpha(),dt=ur*rt;switch(tt){case"/":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M-"+_r/4+","+yt/4+"l"+_r/2+",-"+yt/2+"M0,"+yt+"L"+_r+",0M"+_r/4*3+","+yt/4*5+"l"+_r/2+",-"+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"\\":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M"+_r/4*3+",-"+yt/4+"l"+_r/2+","+yt/2+"M0,0L"+_r+","+yt+"M-"+_r/4+","+yt/4*3+"l"+_r/2+","+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"x":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M-"+_r/4+","+yt/4+"l"+_r/2+",-"+yt/2+"M0,"+yt+"L"+_r+",0M"+_r/4*3+","+yt/4*5+"l"+_r/2+",-"+yt/2+"M"+_r/4*3+",-"+yt/4+"l"+_r/2+","+yt/2+"M0,0L"+_r+","+yt+"M-"+_r/4+","+yt/4*3+"l"+_r/2+","+yt/2,Ne=nt-nt*Math.sqrt(1-Qe),Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"|":_r=nt,yt=nt,Ve="path",Ke="M"+_r/2+",0L"+_r/2+","+yt,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"-":_r=nt,yt=nt,Ve="path",Ke="M0,"+yt/2+"L"+_r+","+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"+":_r=nt,yt=nt,Ve="path",Ke="M"+_r/2+",0L"+_r/2+","+yt+"M0,"+yt/2+"L"+_r+","+yt/2,Ne=nt-nt*Math.sqrt(1-Qe),Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case".":_r=nt,yt=nt,Qe<Math.PI/4?Ee=Math.sqrt(Qe*nt*nt/Math.PI):Ee=Fe(Qe,Math.PI/4,1,nt/2,nt/Math.sqrt(2)),Ve="circle",ke={cx:_r/2,cy:yt/2,r:Ee,opacity:dt,fill:Le};break}var xt=[tt||"noSh",Ot||"noBg",jt||"noFg",nt,Qe].join(";"),It=Cr._defs.select(".patterns").selectAll("#"+vr).data([xt],x.identity);It.exit().remove(),It.enter().append("pattern").each(function(){var Bt=g.select(this);if(Bt.attr({id:vr,width:_r+"px",height:yt+"px",patternUnits:"userSpaceOnUse",patternTransform:ar?"scale(0.8)":""}),Ot){var Gt=e(Ot),Kt=r.tinyRGB(Gt),sr=Gt.getAlpha(),sa=Bt.selectAll("rect").data([0]);sa.exit().remove(),sa.enter().append("rect").attr({width:_r+"px",height:yt+"px",fill:Kt,"fill-opacity":sr})}var Aa=Bt.selectAll(Ve).data([0]);Aa.exit().remove(),Aa.enter().append(Ve).attr(ke)}),Me.style("fill",re(vr,ce)).style("fill-opacity",null),Me.classed("pattern_filled",!0)},l.initGradients=function(Me){var ge=Me._fullLayout,ce=x.ensureSingle(ge._defs,"g","gradients");ce.selectAll("linearGradient,radialGradient").remove(),g.select(Me).selectAll(".gradient_filled").classed("gradient_filled",!1)},l.initPatterns=function(Me){var ge=Me._fullLayout,ce=x.ensureSingle(ge._defs,"g","patterns");ce.selectAll("pattern").remove(),g.select(Me).selectAll(".pattern_filled").classed("pattern_filled",!1)},l.getPatternAttr=function(Me,ge,ce){return Me&&x.isArrayOrTypedArray(Me)?ge<Me.length?Me[ge]:ce:Me},l.pointStyle=function(Me,ge,ce,ze){if(Me.size()){var tt=l.makePointStyleFns(ge);Me.each(function(nt){l.singlePointStyle(nt,g.select(this),ge,tt,ce,ze)})}},l.singlePointStyle=function(Me,ge,ce,ze,tt,nt){var Qe=ce.marker,Ct=Qe.line;if(nt&&nt.i>=0&&Me.i===void 0&&(Me.i=nt.i),ge.style("opacity",ze.selectedOpacityFn?ze.selectedOpacityFn(Me):Me.mo===void 0?Qe.opacity:Me.mo),ze.ms2mrc){var St;Me.ms==="various"||Qe.size==="various"?St=3:St=ze.ms2mrc(Me.ms),Me.mrc=St,ze.selectedSizeFn&&(St=Me.mrc=ze.selectedSizeFn(Me));var Ot=l.symbolNumber(Me.mx||Qe.symbol)||0;Me.om=Ot%200>=100;var jt=lt(Me,ce),ur=ee(Me,ce);ge.attr("d",y(Ot,St,jt,ur))}var ar=!1,Cr,vr,_r;if(Me.so)_r=Ct.outlierwidth,vr=Ct.outliercolor,Cr=Qe.outliercolor;else{var yt=(Ct||{}).width;_r=(Me.mlw+1||yt+1||(Me.trace?(Me.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in Me?vr=Me.mlcc=ze.lineScale(Me.mlc):x.isArrayOrTypedArray(Ct.color)?vr=r.defaultLine:vr=Ct.color,x.isArrayOrTypedArray(Qe.color)&&(Cr=r.defaultLine,ar=!0),"mc"in Me?Cr=Me.mcc=ze.markerScale(Me.mc):Cr=Qe.color||Qe.colors||"rgba(0,0,0,0)",ze.selectedColorFn&&(Cr=ze.selectedColorFn(Me))}if(Me.om)ge.call(r.stroke,Cr).style({"stroke-width":(_r||1)+"px",fill:"none"});else{ge.style("stroke-width",(Me.isBlank?0:_r)+"px");var Fe=Qe.gradient,Ke=Me.mgt;Ke?ar=!0:Ke=Fe&&Fe.type,x.isArrayOrTypedArray(Ke)&&(Ke=Ke[0],P[Ke]||(Ke=0));var Ne=Qe.pattern,Ee=Ne&&l.getPatternAttr(Ne.shape,Me.i,"");if(Ke&&Ke!=="none"){var Ve=Me.mgc;Ve?ar=!0:Ve=Fe.color;var ke=ce.uid;ar&&(ke+="-"+Me.i),l.gradient(ge,tt,ke,Ke,[[0,Ve],[1,Cr]],"fill")}else if(Ee){var Te=!1,Le=Ne.fgcolor;!Le&&nt&&nt.color&&(Le=nt.color,Te=!0);var rt=l.getPatternAttr(Le,Me.i,nt&&nt.color||null),dt=l.getPatternAttr(Ne.bgcolor,Me.i,null),xt=Ne.fgopacity,It=l.getPatternAttr(Ne.size,Me.i,8),Bt=l.getPatternAttr(Ne.solidity,Me.i,.3);Te=Te||Me.mcc||x.isArrayOrTypedArray(Ne.shape)||x.isArrayOrTypedArray(Ne.bgcolor)||x.isArrayOrTypedArray(Ne.fgcolor)||x.isArrayOrTypedArray(Ne.size)||x.isArrayOrTypedArray(Ne.solidity);var Gt=ce.uid;Te&&(Gt+="-"+Me.i),l.pattern(ge,"point",tt,Gt,Ee,It,Bt,Me.mcc,Ne.fillmode,dt,rt,xt)}else x.isArrayOrTypedArray(Cr)?r.fill(ge,Cr[Me.i]):r.fill(ge,Cr);_r&&r.stroke(ge,vr)}},l.makePointStyleFns=function(Me){var ge={},ce=Me.marker;return ge.markerScale=l.tryColorscale(ce,""),ge.lineScale=l.tryColorscale(ce,"line"),t.traceIs(Me,"symbols")&&(ge.ms2mrc=v.isBubble(Me)?p(Me):function(){return(ce.size||6)/2}),Me.selectedpoints&&x.extendFlat(ge,l.makeSelectedPointStyleFns(Me)),ge},l.makeSelectedPointStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.marker||{},nt=ce.marker||{},Qe=ze.marker||{},Ct=tt.opacity,St=nt.opacity,Ot=Qe.opacity,jt=St!==void 0,ur=Ot!==void 0;(x.isArrayOrTypedArray(Ct)||jt||ur)&&(ge.selectedOpacityFn=function(Ee){var Ve=Ee.mo===void 0?tt.opacity:Ee.mo;return Ee.selected?jt?St:Ve:ur?Ot:h*Ve});var ar=tt.color,Cr=nt.color,vr=Qe.color;(Cr||vr)&&(ge.selectedColorFn=function(Ee){var Ve=Ee.mcc||ar;return Ee.selected?Cr||Ve:vr||Ve});var _r=tt.size,yt=nt.size,Fe=Qe.size,Ke=yt!==void 0,Ne=Fe!==void 0;return t.traceIs(Me,"symbols")&&(Ke||Ne)&&(ge.selectedSizeFn=function(Ee){var Ve=Ee.mrc||_r/2;return Ee.selected?Ke?yt/2:Ve:Ne?Fe/2:Ve}),ge},l.makeSelectedTextStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.textfont||{},nt=ce.textfont||{},Qe=ze.textfont||{},Ct=tt.color,St=nt.color,Ot=Qe.color;return ge.selectedTextColorFn=function(jt){var ur=jt.tc||Ct;return jt.selected?St||ur:Ot||(St?ur:r.addOpacity(ur,h))},ge},l.selectedPointStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedPointStyleFns(ge),ze=ge.marker||{},tt=[];ce.selectedOpacityFn&&tt.push(function(nt,Qe){nt.style("opacity",ce.selectedOpacityFn(Qe))}),ce.selectedColorFn&&tt.push(function(nt,Qe){r.fill(nt,ce.selectedColorFn(Qe))}),ce.selectedSizeFn&&tt.push(function(nt,Qe){var Ct=Qe.mx||ze.symbol||0,St=ce.selectedSizeFn(Qe);nt.attr("d",y(l.symbolNumber(Ct),St,lt(Qe,ge),ee(Qe,ge))),Qe.mrc2=St}),tt.length&&Me.each(function(nt){for(var Qe=g.select(this),Ct=0;Ct<tt.length;Ct++)tt[Ct](Qe,nt)})}},l.tryColorscale=function(Me,ge){var ce=ge?x.nestedProperty(Me,ge).get():Me;if(ce){var ze=ce.color;if((ce.colorscale||ce._colorAx)&&x.isArrayOrTypedArray(ze))return o.makeColorScaleFuncFromTrace(ce)}return x.identity};var z={start:1,end:-1,middle:0,bottom:1,top:-1};function F(Me,ge,ce,ze,tt){var nt=g.select(Me.node().parentNode),Qe=ge.indexOf("top")!==-1?"top":ge.indexOf("bottom")!==-1?"bottom":"middle",Ct=ge.indexOf("left")!==-1?"end":ge.indexOf("right")!==-1?"start":"middle",St=ze?ze/.8+1:0,Ot=(i.lineCount(Me)-1)*c+1,jt=z[Ct]*St,ur=ce*.75+z[Qe]*St+(z[Qe]-1)*Ot*ce/2;Me.attr("text-anchor",Ct),tt||nt.attr("transform",a(jt,ur))}function B(Me,ge){var ce=Me.ts||ge.textfont.size;return M(ce)&&ce>0?ce:0}l.textPointStyle=function(Me,ge,ce){if(Me.size()){var ze;if(ge.selectedpoints){var tt=l.makeSelectedTextStyleFns(ge);ze=tt.selectedTextColorFn}var nt=ge.texttemplate,Qe=ce._fullLayout;Me.each(function(Ct){var St=g.select(this),Ot=nt?x.extractOption(Ct,ge,"txt","texttemplate"):x.extractOption(Ct,ge,"tx","text");if(!Ot&&Ot!==0){St.remove();return}if(nt){var jt=ge._module.formatLabels,ur=jt?jt(Ct,ge,Qe):{},ar={};T(ar,ge,Ct.i);var Cr=ge._meta||{};Ot=x.texttemplateString(Ot,ur,Qe._d3locale,ar,Ct,Cr)}var vr=Ct.tp||ge.textposition,_r=B(Ct,ge),yt=ze?ze(Ct):Ct.tc||ge.textfont.color;St.call(l.font,{family:Ct.tf||ge.textfont.family,weight:Ct.tw||ge.textfont.weight,style:Ct.ty||ge.textfont.style,variant:Ct.tv||ge.textfont.variant,textcase:Ct.tC||ge.textfont.textcase,lineposition:Ct.tE||ge.textfont.lineposition,shadow:Ct.tS||ge.textfont.shadow,size:_r,color:yt}).text(Ot).call(i.convertToTspans,ce).call(F,vr,_r,Ct.mrc)})}},l.selectedTextStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedTextStyleFns(ge);Me.each(function(ze){var tt=g.select(this),nt=ce.selectedTextColorFn(ze),Qe=ze.tp||ge.textposition,Ct=B(ze,ge);r.fill(tt,nt);var St=t.traceIs(ge,"bar-like");F(tt,Qe,Ct,ze.mrc2||ze.mrc,St)})}};var O=.5;l.smoothopen=function(Me,ge){if(Me.length<3)return"M"+Me.join("L");var ce="M"+Me[0],ze=[],tt;for(tt=1;tt<Me.length-1;tt++)ze.push(ue(Me[tt-1],Me[tt],Me[tt+1],ge));for(ce+="Q"+ze[0][0]+" "+Me[1],tt=2;tt<Me.length-1;tt++)ce+="C"+ze[tt-2][1]+" "+ze[tt-1][0]+" "+Me[tt];return ce+="Q"+ze[Me.length-3][1]+" "+Me[Me.length-1],ce},l.smoothclosed=function(Me,ge){if(Me.length<3)return"M"+Me.join("L")+"Z";var ce="M"+Me[0],ze=Me.length-1,tt=[ue(Me[ze],Me[0],Me[1],ge)],nt;for(nt=1;nt<ze;nt++)tt.push(ue(Me[nt-1],Me[nt],Me[nt+1],ge));for(tt.push(ue(Me[ze-1],Me[ze],Me[0],ge)),nt=1;nt<=ze;nt++)ce+="C"+tt[nt-1][1]+" "+tt[nt][0]+" "+Me[nt];return ce+="C"+tt[ze][1]+" "+tt[0][0]+" "+Me[0]+"Z",ce};var I,N;function U(Me,ge,ce){return ce&&(Me=G(Me)),ge?Q(Me[1]):W(Me[0])}function W(Me){var ge=g.round(Me,2);return I=ge,ge}function Q(Me){var ge=g.round(Me,2);return N=ge,ge}function ue(Me,ge,ce,ze){var tt=Me[0]-ge[0],nt=Me[1]-ge[1],Qe=ce[0]-ge[0],Ct=ce[1]-ge[1],St=Math.pow(tt*tt+nt*nt,O/2),Ot=Math.pow(Qe*Qe+Ct*Ct,O/2),jt=(Ot*Ot*tt-St*St*Qe)*ze,ur=(Ot*Ot*nt-St*St*Ct)*ze,ar=3*Ot*(St+Ot),Cr=3*St*(St+Ot);return[[W(ge[0]+(ar&&jt/ar)),Q(ge[1]+(ar&&ur/ar))],[W(ge[0]-(Cr&&jt/Cr)),Q(ge[1]-(Cr&&ur/Cr))]]}var se={hv:function(Me,ge,ce){return"H"+W(ge[0])+"V"+U(ge,1,ce)},vh:function(Me,ge,ce){return"V"+Q(ge[1])+"H"+U(ge,0,ce)},hvh:function(Me,ge,ce){return"H"+W((Me[0]+ge[0])/2)+"V"+Q(ge[1])+"H"+U(ge,0,ce)},vhv:function(Me,ge,ce){return"V"+Q((Me[1]+ge[1])/2)+"H"+W(ge[0])+"V"+U(ge,1,ce)}},he=function(Me,ge,ce){return"L"+U(ge,0,ce)+","+U(ge,1,ce)};l.steps=function(Me){var ge=se[Me]||he;return function(ce){for(var ze="M"+W(ce[0][0])+","+Q(ce[0][1]),tt=ce.length,nt=1;nt<tt;nt++)ze+=ge(ce[nt-1],ce[nt],nt===tt-1);return ze}};function G(Me,ge){var ce=Me.backoff,ze=Me.trace,tt=Me.d,nt=Me.i;if(ce&&ze&&ze.marker&&ze.marker.angle%360===0&&ze.line&&ze.line.shape!=="spline"){var Qe=x.isArrayOrTypedArray(ce),Ct=Me,St=ge?ge[0]:I||0,Ot=ge?ge[1]:N||0,jt=Ct[0],ur=Ct[1],ar=jt-St,Cr=ur-Ot,vr=Math.atan2(Cr,ar),_r=Qe?ce[nt]:ce;if(_r==="auto"){var yt=Ct.i;ze.type==="scatter"&&yt--;var Fe=Ct.marker,Ke=Fe.symbol;x.isArrayOrTypedArray(Ke)&&(Ke=Ke[yt]);var Ne=Fe.size;x.isArrayOrTypedArray(Ne)&&(Ne=Ne[yt]),_r=Fe?l.symbolBackOffs[l.symbolNumber(Ke)]*Ne:0,_r+=l.getMarkerStandoff(tt[yt],ze)||0}var Ee=jt-_r*Math.cos(vr),Ve=ur-_r*Math.sin(vr);(Ee<=jt&&Ee>=St||Ee>=jt&&Ee<=St)&&(Ve<=ur&&Ve>=Ot||Ve>=ur&&Ve<=Ot)&&(Me=[Ee,Ve])}return Me}l.applyBackoff=G,l.makeTester=function(){var Me=x.ensureSingleById(g.select("body"),"svg","js-plotly-tester",function(ce){ce.attr(n.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),ge=x.ensureSingle(Me,"path","js-reference-point",function(ce){ce.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});l.tester=Me,l.testref=ge},l.savedBBoxes={};var $=0,J=1e4;l.bBox=function(Me,ge,ce){ce||(ce=Z(Me));var ze;if(ce){if(ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}else if(Me.childNodes.length===1){var tt=Me.childNodes[0];if(ce=Z(tt),ce){var nt=+tt.getAttribute("x")||0,Qe=+tt.getAttribute("y")||0,Ct=tt.getAttribute("transform");if(!Ct){var St=l.bBox(tt,!1,ce);return nt&&(St.left+=nt,St.right+=nt),Qe&&(St.top+=Qe,St.bottom+=Qe),St}if(ce+="~"+nt+"~"+Qe+"~"+Ct,ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}}var Ot,jt;ge?Ot=Me:(jt=l.tester.node(),Ot=Me.cloneNode(!0),jt.appendChild(Ot)),g.select(Ot).attr("transform",null).call(i.positionText,0,0);var ur=Ot.getBoundingClientRect(),ar=l.testref.node().getBoundingClientRect();ge||jt.removeChild(Ot);var Cr={height:ur.height,width:ur.width,left:ur.left-ar.left,top:ur.top-ar.top,right:ur.right-ar.left,bottom:ur.bottom-ar.top};return $>=J&&(l.savedBBoxes={},$=0),ce&&(l.savedBBoxes[ce]=Cr),$++,x.extendFlat({},Cr)};function Z(Me){var ge=Me.getAttribute("data-unformatted");if(ge!==null)return ge+Me.getAttribute("data-math")+Me.getAttribute("text-anchor")+Me.getAttribute("style")}l.setClipUrl=function(Me,ge,ce){Me.attr("clip-path",re(ge,ce))};function re(Me,ge){if(!Me)return null;var ce=ge._context,ze=ce._exportedPlot?"":ce._baseUrl||"";return ze?"url('"+ze+"#"+Me+"')":"url(#"+Me+")"}l.getTranslate=function(Me){var ge=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||0,y:+tt[1]||0}},l.setTranslate=function(Me,ge,ce){var ze=/(\btranslate\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||0,ce=ce||0,Qe=Qe.replace(ze,"").trim(),Qe+=a(ge,ce),Qe=Qe.trim(),Me[nt]("transform",Qe),Qe},l.getScale=function(Me){var ge=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||1,y:+tt[1]||1}},l.setScale=function(Me,ge,ce){var ze=/(\bscale\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||1,ce=ce||1,Qe=Qe.replace(ze,"").trim(),Qe+="scale("+ge+","+ce+")",Qe=Qe.trim(),Me[nt]("transform",Qe),Qe};var ne=/\s*sc.*/;l.setPointGroupScale=function(Me,ge,ce){if(ge=ge||1,ce=ce||1,!!Me){var ze=ge===1&&ce===1?"":"scale("+ge+","+ce+")";Me.each(function(){var tt=(this.getAttribute("transform")||"").replace(ne,"");tt+=ze,tt=tt.trim(),this.setAttribute("transform",tt)})}};var j=/translate\([^)]*\)\s*$/;l.setTextPointsScale=function(Me,ge,ce){Me&&Me.each(function(){var ze,tt=g.select(this),nt=tt.select("text");if(nt.node()){var Qe=parseFloat(nt.attr("x")||0),Ct=parseFloat(nt.attr("y")||0),St=(tt.attr("transform")||"").match(j);ge===1&&ce===1?ze=[]:ze=[a(Qe,Ct),"scale("+ge+","+ce+")",a(-Qe,-Ct)],St&&ze.push(St),tt.attr("transform",ze.join(""))}})};function ee(Me,ge){var ce;return Me&&(ce=Me.mf),ce===void 0&&(ce=ge.marker&&ge.marker.standoff||0),!ge._geo&&!ge._xA?-ce:ce}l.getMarkerStandoff=ee;var ie=Math.atan2,fe=Math.cos,be=Math.sin;function Ae(Me,ge){var ce=ge[0],ze=ge[1];return[ce*fe(Me)-ze*be(Me),ce*be(Me)+ze*fe(Me)]}var Be,Ie,Ze,at,it,et;function lt(Me,ge){var ce=Me.ma;ce===void 0&&(ce=ge.marker.angle,(!ce||x.isArrayOrTypedArray(ce))&&(ce=0));var ze,tt,nt=ge.marker.angleref;if(nt==="previous"||nt==="north"){if(ge._geo){var Qe=ge._geo.project(Me.lonlat);ze=Qe[0],tt=Qe[1]}else{var Ct=ge._xA,St=ge._yA;if(Ct&&St)ze=Ct.c2p(Me.x),tt=St.c2p(Me.y);else return 90}if(ge._geo){var Ot=Me.lonlat[0],jt=Me.lonlat[1],ur=ge._geo.project([Ot,jt+1e-5]),ar=ge._geo.project([Ot+1e-5,jt]),Cr=ie(ar[1]-tt,ar[0]-ze),vr=ie(ur[1]-tt,ur[0]-ze),_r;if(nt==="north")_r=ce/180*Math.PI;else if(nt==="previous"){var yt=Ot/180*Math.PI,Fe=jt/180*Math.PI,Ke=Be/180*Math.PI,Ne=Ie/180*Math.PI,Ee=Ke-yt,Ve=fe(Ne)*be(Ee),ke=be(Ne)*fe(Fe)-fe(Ne)*be(Fe)*fe(Ee);_r=-ie(Ve,ke)-Math.PI,Be=Ot,Ie=jt}var Te=Ae(Cr,[fe(_r),0]),Le=Ae(vr,[be(_r),0]);ce=ie(Te[1]+Le[1],Te[0]+Le[0])/Math.PI*180,nt==="previous"&&!(et===ge.uid&&Me.i===it+1)&&(ce=null)}if(nt==="previous"&&!ge._geo)if(et===ge.uid&&Me.i===it+1&&M(ze)&&M(tt)){var rt=ze-Ze,dt=tt-at,xt=ge.line&&ge.line.shape||"",It=xt.slice(xt.length-1);It==="h"&&(dt=0),It==="v"&&(rt=0),ce+=ie(dt,rt)/Math.PI*180+90}else ce=null}return Ze=ze,at=tt,it=Me.i,et=ge.uid,ce}l.getMarkerAngle=lt}}),Xg=Ye({"src/components/titles/index.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=Bo(),o=Fn(),a=jl(),i=Xm(),n=oh().OPPOSITE_SIDE,s=/ [XY][0-9]* /,c=1.6,h=1.6;function v(p,T,l){var _=p._fullLayout,w=l.propContainer,S=l.propName,E=l.placeholder,m=l.traceIndex,b=l.avoid||{},d=l.attributes,u=l.transform,y=l.containerGroup,f=1,P=w.title,L=(P&&P.text?P.text:"").trim(),z=!1,F=P&&P.font?P.font:{},B=F.family,O=F.size,I=F.color,N=F.weight,U=F.style,W=F.variant,Q=F.textcase,ue=F.lineposition,se=F.shadow,he=l.subtitlePropName,G=!!he,$=l.subtitlePlaceholder,J=(w.title||{}).subtitle||{text:"",font:{}},Z=J.text.trim(),re=!1,ne=1,j=J.font,ee=j.family,ie=j.size,fe=j.color,be=j.weight,Ae=j.style,Be=j.variant,Ie=j.textcase,Ze=j.lineposition,at=j.shadow,it;S==="title.text"?it="titleText":S.indexOf("axis")!==-1?it="axisTitleText":S.indexOf("colorbar"!==-1)&&(it="colorbarTitleText");var et=p._context.edits[it];function lt(ar,Cr){return ar===void 0||Cr===void 0?!1:ar.replace(s," % ")===Cr.replace(s," % ")}L===""?f=0:lt(L,E)&&(et||(L=""),f=.2,z=!0),G&&(Z===""?ne=0:lt(Z,$)&&(et||(Z=""),ne=.2,re=!0)),l._meta?L=e.templateString(L,l._meta):_._meta&&(L=e.templateString(L,_._meta));var Me=L||Z||et,ge;y||(y=e.ensureSingle(_._infolayer,"g","g-"+T),ge=_._hColorbarMoveTitle);var ce=y.selectAll("text."+T).data(Me?[0]:[]);ce.enter().append("text"),ce.text(L).attr("class",T),ce.exit().remove();var ze=null,tt=T+"-subtitle",nt=Z||et;if(G&&nt&&(ze=y.selectAll("text."+tt).data(nt?[0]:[]),ze.enter().append("text"),ze.text(Z).attr("class",tt),ze.exit().remove()),!Me)return y;function Qe(ar,Cr){e.syncOrAsync([Ct,St],{title:ar,subtitle:Cr})}function Ct(ar){var Cr=ar.title,vr=ar.subtitle,_r;!u&&ge&&(u={}),u?(_r="",u.rotate&&(_r+="rotate("+[u.rotate,d.x,d.y]+")"),(u.offset||ge)&&(_r+=t(0,(u.offset||0)-(ge||0)))):_r=null,Cr.attr("transform",_r);function yt(ke){if(ke){var Te=g.select(ke.node().parentNode).select("."+tt);if(!Te.empty()){var Le=ke.node().getBBox();if(Le.height){var rt=Le.y+Le.height+c*ie;Te.attr("y",rt)}}}}if(Cr.style("opacity",f*o.opacity(I)).call(r.font,{color:o.rgb(I),size:g.round(O,2),family:B,weight:N,style:U,variant:W,textcase:Q,shadow:se,lineposition:ue}).attr(d).call(a.convertToTspans,p,yt),vr){var Fe=y.select("."+T+"-math-group"),Ke=Cr.node().getBBox(),Ne=Fe.node()?Fe.node().getBBox():void 0,Ee=Ne?Ne.y+Ne.height+c*ie:Ke.y+Ke.height+h*ie,Ve=e.extendFlat({},d,{y:Ee});vr.attr("transform",_r),vr.style("opacity",ne*o.opacity(fe)).call(r.font,{color:o.rgb(fe),size:g.round(ie,2),family:ee,weight:be,style:Ae,variant:Be,textcase:Ie,shadow:at,lineposition:Ze}).attr(Ve).call(a.convertToTspans,p)}return A.previousPromises(p)}function St(ar){var Cr=ar.title,vr=g.select(Cr.node().parentNode);if(b&&b.selection&&b.side&&L){vr.attr("transform",null);var _r=n[b.side],yt=b.side==="left"||b.side==="top"?-1:1,Fe=x(b.pad)?b.pad:2,Ke=r.bBox(vr.node()),Ne={t:0,b:0,l:0,r:0},Ee=p._fullLayout._reservedMargin;for(var Ve in Ee)for(var ke in Ee[Ve]){var Te=Ee[Ve][ke];Ne[ke]=Math.max(Ne[ke],Te)}var Le={left:Ne.l,top:Ne.t,right:_.width-Ne.r,bottom:_.height-Ne.b},rt=b.maxShift||yt*(Le[b.side]-Ke[b.side]),dt=0;if(rt<0)dt=rt;else{var xt=b.offsetLeft||0,It=b.offsetTop||0;Ke.left-=xt,Ke.right-=xt,Ke.top-=It,Ke.bottom-=It,b.selection.each(function(){var Gt=r.bBox(this);e.bBoxIntersect(Ke,Gt,Fe)&&(dt=Math.max(dt,yt*(Gt[b.side]-Ke[_r])+Fe))}),dt=Math.min(rt,dt),w._titleScoot=Math.abs(dt)}if(dt>0||rt<0){var Bt={left:[-dt,0],right:[dt,0],top:[0,-dt],bottom:[0,dt]}[b.side];vr.attr("transform",t(Bt[0],Bt[1]))}}}ce.call(Qe,ze);function Ot(ar,Cr){ar.text(Cr).on("mouseover.opacity",function(){g.select(this).transition().duration(i.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){g.select(this).transition().duration(i.HIDE_PLACEHOLDER).style("opacity",0)})}if(et&&(L?ce.on(".opacity",null):(Ot(ce,E),z=!0),ce.call(a.makeEditable,{gd:p}).on("edit",function(ar){m!==void 0?M.call("_guiRestyle",p,S,ar,m):M.call("_guiRelayout",p,S,ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,d.x,d.y)}),G)){if(G&&!L){var jt=ce.node().getBBox(),ur=jt.y+jt.height+h*ie;ze.attr("y",ur)}Z?ze.on(".opacity",null):(Ot(ze,$),re=!0),ze.call(a.makeEditable,{gd:p}).on("edit",function(ar){M.call("_guiRelayout",p,"title.subtitle.text",ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,ze.attr("x"),ze.attr("y"))})}return ce.classed("js-placeholder",z),ze&&ze.classed("js-placeholder",re),y}H.exports={draw:v,SUBTITLE_PADDING_EM:h,SUBTITLE_PADDING_MATHJAX_EM:c}}}),wv=Ye({"src/plots/cartesian/set_convert.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=ta(),M=A.numberFormat,e=jo(),t=A.cleanNumber,r=A.ms2DateTime,o=A.dateTime2ms,a=A.ensureNumber,i=A.isArrayOrTypedArray,n=ks(),s=n.FP_SAFE,c=n.BADNUM,h=n.LOG_CLIP,v=n.ONEWEEK,p=n.ONEDAY,T=n.ONEHOUR,l=n.ONEMIN,_=n.ONESEC,w=Xc(),S=wh(),E=S.HOUR_PATTERN,m=S.WEEKDAY_PATTERN;function b(u){return Math.pow(10,u)}function d(u){return u!=null}H.exports=function(y,f){f=f||{};var P=y._id||"x",L=P.charAt(0);function z(Z,re){if(Z>0)return Math.log(Z)/Math.LN10;if(Z<=0&&re&&y.range&&y.range.length===2){var ne=y.range[0],j=y.range[1];return .5*(ne+j-2*h*Math.abs(ne-j))}else return c}function F(Z,re,ne,j){if((j||{}).msUTC&&e(Z))return+Z;var ee=o(Z,ne||y.calendar);if(ee===c)if(e(Z)){Z=+Z;var ie=Math.floor(A.mod(Z+.05,1)*10),fe=Math.round(Z-ie/10);ee=o(new Date(fe))+ie/10}else return c;return ee}function B(Z,re,ne){return r(Z,re,ne||y.calendar)}function O(Z){return y._categories[Math.round(Z)]}function I(Z){if(d(Z)){if(y._categoriesMap===void 0&&(y._categoriesMap={}),y._categoriesMap[Z]!==void 0)return y._categoriesMap[Z];y._categories.push(typeof Z=="number"?String(Z):Z);var re=y._categories.length-1;return y._categoriesMap[Z]=re,re}return c}function N(Z,re){for(var ne=new Array(re),j=0;j<re;j++){var ee=(Z[0]||[])[j],ie=(Z[1]||[])[j];ne[j]=U([ee,ie])}return ne}function U(Z){if(y._categoriesMap)return y._categoriesMap[Z]}function W(Z){var re=U(Z);if(re!==void 0)return re;if(e(Z))return+Z}function Q(Z){return e(Z)?+Z:U(Z)}function ue(Z,re,ne){return g.round(ne+re*Z,2)}function se(Z,re,ne){return(Z-ne)/re}var he=function(re){return e(re)?ue(re,y._m,y._b):c},G=function(Z){return se(Z,y._m,y._b)};if(y.rangebreaks){var $=L==="y";he=function(Z){if(!e(Z))return c;var re=y._rangebreaks.length;if(!re)return ue(Z,y._m,y._b);var ne=$;y.range[0]>y.range[1]&&(ne=!ne);for(var j=ne?-1:1,ee=j*Z,ie=0,fe=0;fe<re;fe++){var be=j*y._rangebreaks[fe].min,Ae=j*y._rangebreaks[fe].max;if(ee<be)break;if(ee>Ae)ie=fe+1;else{ie=ee<(be+Ae)/2?fe:fe+1;break}}var Be=y._B[ie]||0;return isFinite(Be)?ue(Z,y._m2,Be):0},G=function(Z){var re=y._rangebreaks.length;if(!re)return se(Z,y._m,y._b);for(var ne=0,j=0;j<re&&!(Z<y._rangebreaks[j].pmin);j++)Z>y._rangebreaks[j].pmax&&(ne=j+1);return se(Z,y._m2,y._B[ne])}}y.c2l=y.type==="log"?z:a,y.l2c=y.type==="log"?b:a,y.l2p=he,y.p2l=G,y.c2p=y.type==="log"?function(Z,re){return he(z(Z,re))}:he,y.p2c=y.type==="log"?function(Z){return b(G(Z))}:G,["linear","-"].indexOf(y.type)!==-1?(y.d2r=y.r2d=y.d2c=y.r2c=y.d2l=y.r2l=t,y.c2d=y.c2r=y.l2d=y.l2r=a,y.d2p=y.r2p=function(Z){return y.l2p(t(Z))},y.p2d=y.p2r=G,y.cleanPos=a):y.type==="log"?(y.d2r=y.d2l=function(Z,re){return z(t(Z),re)},y.r2d=y.r2c=function(Z){return b(t(Z))},y.d2c=y.r2l=t,y.c2d=y.l2r=a,y.c2r=z,y.l2d=b,y.d2p=function(Z,re){return y.l2p(y.d2r(Z,re))},y.p2d=function(Z){return b(G(Z))},y.r2p=function(Z){return y.l2p(t(Z))},y.p2r=G,y.cleanPos=a):y.type==="date"?(y.d2r=y.r2d=A.identity,y.d2c=y.r2c=y.d2l=y.r2l=F,y.c2d=y.c2r=y.l2d=y.l2r=B,y.d2p=y.r2p=function(Z,re,ne){return y.l2p(F(Z,0,ne))},y.p2d=y.p2r=function(Z,re,ne){return B(G(Z),re,ne)},y.cleanPos=function(Z){return A.cleanDate(Z,c,y.calendar)}):y.type==="category"?(y.d2c=y.d2l=I,y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=Q(Z);return re!==void 0?re:y.fraction2r(.5)},y.l2r=y.c2r=a,y.r2l=Q,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return typeof Z=="string"&&Z!==""?Z:a(Z)}):y.type==="multicategory"&&(y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=W(Z);return re!==void 0?re:y.fraction2r(.5)},y.r2c_just_indices=U,y.l2r=y.c2r=a,y.r2l=W,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return Array.isArray(Z)||typeof Z=="string"&&Z!==""?Z:a(Z)},y.setupMultiCategory=function(Z){var re=y._traceIndices,ne,j,ee=y._matchGroup;if(ee&&y._categories.length===0){for(var ie in ee)if(ie!==P){var fe=f[w.id2name(ie)];re=re.concat(fe._traceIndices)}}var be=[[0,{}],[0,{}]],Ae=[];for(ne=0;ne<re.length;ne++){var Be=Z[re[ne]];if(L in Be){var Ie=Be[L],Ze=Be._length||A.minRowLength(Ie);if(i(Ie[0])&&i(Ie[1]))for(j=0;j<Ze;j++){var at=Ie[0][j],it=Ie[1][j];d(at)&&d(it)&&(Ae.push([at,it]),at in be[0][1]||(be[0][1][at]=be[0][0]++),it in be[1][1]||(be[1][1][it]=be[1][0]++))}}}for(Ae.sort(function(et,lt){var Me=be[0][1],ge=Me[et[0]]-Me[lt[0]];if(ge)return ge;var ce=be[1][1];return ce[et[1]]-ce[lt[1]]}),ne=0;ne<Ae.length;ne++)I(Ae[ne])}),y.fraction2r=function(Z){var re=y.r2l(y.range[0]),ne=y.r2l(y.range[1]);return y.l2r(re+Z*(ne-re))},y.r2fraction=function(Z){var re=y.r2l(y.range[0]),ne=y.r2l(y.range[1]);return(y.r2l(Z)-re)/(ne-re)},y.limitRange=function(Z){var re=y.minallowed,ne=y.maxallowed;if(!(re===void 0&&ne===void 0)){Z||(Z="range");var j=A.nestedProperty(y,Z).get(),ee=A.simpleMap(j,y.r2l),ie=ee[1]<ee[0];ie&&ee.reverse();var fe=A.simpleMap([re,ne],y.r2l);if(re!==void 0&&ee[0]<fe[0]&&(j[ie?1:0]=re),ne!==void 0&&ee[1]>fe[1]&&(j[ie?0:1]=ne),j[0]===j[1]){var be=y.l2r(re),Ae=y.l2r(ne);if(re!==void 0){var Be=be+1;ne!==void 0&&(Be=Math.min(Be,Ae)),j[ie?1:0]=Be}if(ne!==void 0){var Ie=Ae+1;re!==void 0&&(Ie=Math.max(Ie,be)),j[ie?0:1]=Ie}}}},y.cleanRange=function(Z,re){y._cleanRange(Z,re),y.limitRange(Z)},y._cleanRange=function(Z,re){re||(re={}),Z||(Z="range");var ne=A.nestedProperty(y,Z).get(),j,ee;if(y.type==="date"?ee=A.dfltRange(y.calendar):L==="y"?ee=S.DFLTRANGEY:y._name==="realaxis"?ee=[0,1]:ee=re.dfltRange||S.DFLTRANGEX,ee=ee.slice(),(y.rangemode==="tozero"||y.rangemode==="nonnegative")&&(ee[0]=0),!ne||ne.length!==2){A.nestedProperty(y,Z).set(ee);return}var ie=ne[0]===null,fe=ne[1]===null;for(y.type==="date"&&!y.autorange&&(ne[0]=A.cleanDate(ne[0],c,y.calendar),ne[1]=A.cleanDate(ne[1],c,y.calendar)),j=0;j<2;j++)if(y.type==="date"){if(!A.isDateTime(ne[j],y.calendar)){y[Z]=ee;break}if(y.r2l(ne[0])===y.r2l(ne[1])){var be=A.constrain(y.r2l(ne[0]),A.MIN_MS+1e3,A.MAX_MS-1e3);ne[0]=y.l2r(be-1e3),ne[1]=y.l2r(be+1e3);break}}else{if(!e(ne[j]))if(!(ie||fe)&&e(ne[1-j]))ne[j]=ne[1-j]*(j?10:.1);else{y[Z]=ee;break}if(ne[j]<-s?ne[j]=-s:ne[j]>s&&(ne[j]=s),ne[0]===ne[1]){var Ae=Math.max(1,Math.abs(ne[0]*1e-6));ne[0]-=Ae,ne[1]+=Ae}}},y.setScale=function(Z){var re=f._size;if(y.overlaying){var ne=w.getFromId({_fullLayout:f},y.overlaying);y.domain=ne.domain}var j=Z&&y._r?"_r":"range",ee=y.calendar;y.cleanRange(j);var ie=y.r2l(y[j][0],ee),fe=y.r2l(y[j][1],ee),be=L==="y";if(be?(y._offset=re.t+(1-y.domain[1])*re.h,y._length=re.h*(y.domain[1]-y.domain[0]),y._m=y._length/(ie-fe),y._b=-y._m*fe):(y._offset=re.l+y.domain[0]*re.w,y._length=re.w*(y.domain[1]-y.domain[0]),y._m=y._length/(fe-ie),y._b=-y._m*ie),y._rangebreaks=[],y._lBreaks=0,y._m2=0,y._B=[],y.rangebreaks){var Ae,Be;if(y._rangebreaks=y.locateBreaks(Math.min(ie,fe),Math.max(ie,fe)),y._rangebreaks.length){for(Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],y._lBreaks+=Math.abs(Be.max-Be.min);var Ie=be;ie>fe&&(Ie=!Ie),Ie&&y._rangebreaks.reverse();var Ze=Ie?-1:1;for(y._m2=Ze*y._length/(Math.abs(fe-ie)-y._lBreaks),y._B.push(-y._m2*(be?fe:ie)),Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],y._B.push(y._B[y._B.length-1]-Ze*y._m2*(Be.max-Be.min));for(Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],Be.pmin=he(Be.min),Be.pmax=he(Be.max)}}if(!isFinite(y._m)||!isFinite(y._b)||y._length<0)throw f._replotting=!1,new Error("Something went wrong with axis scaling")},y.maskBreaks=function(Z){var re=y.rangebreaks||[],ne,j,ee,ie,fe;re._cachedPatterns||(re._cachedPatterns=re.map(function(Me){return Me.enabled&&Me.bounds?A.simpleMap(Me.bounds,Me.pattern?t:y.d2c):null})),re._cachedValues||(re._cachedValues=re.map(function(Me){return Me.enabled&&Me.values?A.simpleMap(Me.values,y.d2c).sort(A.sorterAsc):null}));for(var be=0;be<re.length;be++){var Ae=re[be];if(Ae.enabled){if(Ae.bounds){var Be=Ae.pattern;switch(ne=re._cachedPatterns[be],j=ne[0],ee=ne[1],Be){case m:fe=new Date(Z),ie=fe.getUTCDay(),j>ee&&(ee+=7,ie<j&&(ie+=7));break;case E:fe=new Date(Z);var Ie=fe.getUTCHours(),Ze=fe.getUTCMinutes(),at=fe.getUTCSeconds(),it=fe.getUTCMilliseconds();ie=Ie+(Ze/60+at/3600+it/36e5),j>ee&&(ee+=24,ie<j&&(ie+=24));break;case"":ie=Z;break}if(ie>=j&&ie<ee)return c}else for(var et=re._cachedValues[be],lt=0;lt<et.length;lt++)if(j=et[lt],ee=j+Ae.dvalue,Z>=j&&Z<ee)return c}}return Z},y.locateBreaks=function(Z,re){var ne,j,ee,ie,fe=[];if(!y.rangebreaks)return fe;var be=y.rangebreaks.slice().sort(function(ce,ze){return ce.pattern===m&&ze.pattern===E?-1:ze.pattern===m&&ce.pattern===E?1:0}),Ae=function(ce,ze){if(ce=A.constrain(ce,Z,re),ze=A.constrain(ze,Z,re),ce!==ze){for(var tt=!0,nt=0;nt<fe.length;nt++){var Qe=fe[nt];ce<Qe.max&&ze>=Qe.min&&(ce<Qe.min&&(Qe.min=ce),ze>Qe.max&&(Qe.max=ze),tt=!1)}tt&&fe.push({min:ce,max:ze})}};for(ne=0;ne<be.length;ne++){var Be=be[ne];if(Be.enabled)if(Be.bounds){var Ie=Z,Ze=re;Be.pattern&&(Ie=Math.floor(Ie)),j=A.simpleMap(Be.bounds,Be.pattern?t:y.r2l),ee=j[0],ie=j[1];var at=new Date(Ie),it,et;switch(Be.pattern){case m:et=v,it=((ie<ee?7:0)+(ie-ee))*p,Ie+=ee*p-(at.getUTCDay()*p+at.getUTCHours()*T+at.getUTCMinutes()*l+at.getUTCSeconds()*_+at.getUTCMilliseconds());break;case E:et=p,it=((ie<ee?24:0)+(ie-ee))*T,Ie+=ee*T-(at.getUTCHours()*T+at.getUTCMinutes()*l+at.getUTCSeconds()*_+at.getUTCMilliseconds());break;default:Ie=Math.min(j[0],j[1]),Ze=Math.max(j[0],j[1]),et=Ze-Ie,it=et}for(var lt=Ie;lt<Ze;lt+=et)Ae(lt,lt+it)}else for(var Me=A.simpleMap(Be.values,y.d2c),ge=0;ge<Me.length;ge++)ee=Me[ge],ie=ee+Be.dvalue,Ae(ee,ie)}return fe.sort(function(ce,ze){return ce.min-ze.min}),fe},y.makeCalcdata=function(Z,re,ne){var j,ee,ie,fe,be=y.type,Ae=be==="date"&&Z[re+"calendar"];if(re in Z){if(j=Z[re],fe=Z._length||A.minRowLength(j),A.isTypedArray(j)&&(be==="linear"||be==="log")){if(fe===j.length)return j;if(j.subarray)return j.subarray(0,fe)}if(be==="multicategory")return N(j,fe);for(ee=new Array(fe),ie=0;ie<fe;ie++)ee[ie]=y.d2c(j[ie],0,Ae,ne)}else{var Be=re+"0"in Z?y.d2c(Z[re+"0"],0,Ae):0,Ie=Z["d"+re]?Number(Z["d"+re]):1;for(j=Z[{x:"y",y:"x"}[re]],fe=Z._length||j.length,ee=new Array(fe),ie=0;ie<fe;ie++)ee[ie]=Be+ie*Ie}if(y.rangebreaks)for(ie=0;ie<fe;ie++)ee[ie]=y.maskBreaks(ee[ie]);return ee},y.isValidRange=function(Z,re){return Array.isArray(Z)&&Z.length===2&&(re&&Z[0]===null||e(y.r2l(Z[0])))&&(re&&Z[1]===null||e(y.r2l(Z[1])))},y.getAutorangeDflt=function(Z,re){var ne=!y.isValidRange(Z,"nullOk");return ne&&re&&re.reverseDflt?ne="reversed":Z&&(Z[0]===null&&Z[1]===null?ne=!0:Z[0]===null&&Z[1]!==null?ne="min":Z[0]!==null&&Z[1]===null&&(ne="max")),ne},y.isReversed=function(){var Z=y.autorange;return Z==="reversed"||Z==="min reversed"||Z==="max reversed"},y.isPtWithinRange=function(Z,re){var ne=y.c2l(Z[L],null,re),j=y.r2l(y.range[0]),ee=y.r2l(y.range[1]);return j<ee?j<=ne&&ne<=ee:ee<=ne&&ne<=j},y._emptyCategories=function(){y._categories=[],y._categoriesMap={}},y.clearCalc=function(){var Z=y._matchGroup;if(Z){var re=null,ne=null;for(var j in Z){var ee=f[w.id2name(j)];if(ee._categories){re=ee._categories,ne=ee._categoriesMap;break}}re&&ne?(y._categories=re,y._categoriesMap=ne):y._emptyCategories()}else y._emptyCategories();if(y._initialCategories)for(var ie=0;ie<y._initialCategories.length;ie++)I(y._initialCategories[ie])},y.sortByInitialCategories=function(){var Z=[];if(y._emptyCategories(),y._initialCategories)for(var re=0;re<y._initialCategories.length;re++)I(y._initialCategories[re]);Z=Z.concat(y._traceIndices);var ne=y._matchGroup;for(var j in ne)if(P!==j){var ee=f[w.id2name(j)];ee._categories=y._categories,ee._categoriesMap=y._categoriesMap,Z=Z.concat(ee._traceIndices)}return Z};var J=f._d3locale;y.type==="date"&&(y._dateFormat=J?J.timeFormat:x,y._extraFormat=f._extraFormat),y._separators=f.separators,y._numFormat=J?J.numberFormat:M,delete y._minDtick,delete y._forceTick0}}}),r1=Ye({"src/plots/cartesian/axis_autotype.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=x.isArrayOrTypedArray,e=x.isDateTime,t=x.cleanNumber,r=Math.round;H.exports=function(v,p,T){var l=v,_=T.noMultiCategory;if(M(l)&&!l.length)return"-";if(!_&&c(l))return"multicategory";if(_&&Array.isArray(l[0])){for(var w=[],S=0;S<l.length;S++)if(M(l[S]))for(var E=0;E<l[S].length;E++)w.push(l[S][E]);l=w}if(i(l,p))return"date";var m=T.autotypenumbers!=="strict";return s(l,m)?"category":a(l,m)?"linear":"-"};function o(h,v){return v?g(h):typeof h=="number"}function a(h,v){for(var p=h.length,T=0;T<p;T++)if(o(h[T],v))return!0;return!1}function i(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;S<p;S+=T){var E=r(S),m=h[E],b=String(m);w[b]||(w[b]=1,e(m,v)&&l++,g(m)&&_++)}return l>_*2}function n(h){return Math.max(1,(h-1)/1e3)}function s(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;S<p;S+=T){var E=r(S),m=h[E],b=String(m);if(!w[b]){w[b]=1;var d=typeof m;d==="boolean"?_++:(v?t(m)!==A:d==="number")?l++:d==="string"&&_++}}return _>l*2}function c(h){return M(h[0])&&M(h[1])}}}),Yd=Ye({"src/plots/cartesian/autorange.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=ks().FP_SAFE,e=Hn(),t=Bo(),r=Xc(),o=r.getFromId,a=r.isLinked;H.exports={applyAutorangeOptions:y,getAutoRange:i,makePadFn:s,doAutoRange:p,findExtremes:T,concatExtremes:v};function i(f,P){var L,z,F=[],B=f._fullLayout,O=s(B,P,0),I=s(B,P,1),N=v(f,P),U=N.min,W=N.max;if(U.length===0||W.length===0)return A.simpleMap(P.range,P.r2l);var Q=U[0].val,ue=W[0].val;for(L=1;L<U.length&&Q===ue;L++)Q=Math.min(Q,U[L].val);for(L=1;L<W.length&&Q===ue;L++)ue=Math.max(ue,W[L].val);var se=P.autorange,he=se==="reversed"||se==="min reversed"||se==="max reversed";if(!he&&P.range){var G=A.simpleMap(P.range,P.r2l);he=G[1]<G[0]}P.autorange==="reversed"&&(P.autorange=!0);var $=P.rangemode,J=$==="tozero",Z=$==="nonnegative",re=P._length,ne=re/10,j=0,ee,ie,fe,be,Ae,Be;for(L=0;L<U.length;L++)for(ee=U[L],z=0;z<W.length;z++)ie=W[z],Be=ie.val-ee.val-n(P,ee.val,ie.val),Be>0&&(Ae=re-O(ee)-I(ie),Ae>ne?Be/Ae>j&&(fe=ee,be=ie,j=Be/Ae):Be/re>j&&(fe={val:ee.val,nopad:1},be={val:ie.val,nopad:1},j=Be/re));function Ie(lt,Me){return Math.max(lt,I(Me))}if(Q===ue){var Ze=Q-1,at=Q+1;if(J)if(Q===0)F=[0,1];else{var it=(Q>0?W:U).reduce(Ie,0),et=Q/(1-Math.min(.5,it/re));F=Q>0?[0,et]:[et,0]}else Z?F=[Math.max(0,Ze),Math.max(1,at)]:F=[Ze,at]}else J?(fe.val>=0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:0,nopad:1})):Z&&(fe.val-j*O(fe)<0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:1,nopad:1})),j=(be.val-fe.val-n(P,ee.val,ie.val))/(re-O(fe)-I(be)),F=[fe.val-j*O(fe),be.val+j*I(be)];return F=y(F,P),P.limitRange&&P.limitRange(),he&&F.reverse(),A.simpleMap(F,P.l2r||Number)}function n(f,P,L){var z=0;if(f.rangebreaks)for(var F=f.locateBreaks(P,L),B=0;B<F.length;B++){var O=F[B];z+=O.max-O.min}return z}function s(f,P,L){var z=.05*P._length,F=P._anchorAxis||{};if((P.ticklabelposition||"").indexOf("inside")!==-1||(F.ticklabelposition||"").indexOf("inside")!==-1){var B=P.isReversed();if(!B){var O=A.simpleMap(P.range,P.r2l);B=O[1]<O[0]}B&&(L=!L)}var I=0;return a(f,P._id)||(I=h(f,P,L)),z=Math.max(I,z),P.constrain==="domain"&&P._inputDomain&&(z*=(P._inputDomain[1]-P._inputDomain[0])/(P.domain[1]-P.domain[0])),function(U){return U.nopad?0:U.pad+(U.extrapad?z:I)}}var c=3;function h(f,P,L){var z=0,F=P._id.charAt(0)==="x";for(var B in f._plots){var O=f._plots[B];if(!(P._id!==O.xaxis._id&&P._id!==O.yaxis._id)){var I=(F?O.yaxis:O.xaxis)||{};if((I.ticklabelposition||"").indexOf("inside")!==-1&&(!L&&(I.side==="left"||I.side==="bottom")||L&&(I.side==="top"||I.side==="right"))){if(I._vals){var N=A.deg2rad(I._tickAngles[I._id+"tick"]||0),U=Math.abs(Math.cos(N)),W=Math.abs(Math.sin(N));if(!I._vals[0].bb){var Q=I._id+"tick",ue=I._selections[Q];ue.each(function(Z){var re=g.select(this),ne=re.select(".text-math-group");ne.empty()&&(Z.bb=t.bBox(re.node()))})}for(var se=0;se<I._vals.length;se++){var he=I._vals[se],G=he.bb;if(G){var $=2*c+G.width,J=2*c+G.height;z=Math.max(z,F?Math.max($*U,J*W):Math.max(J*U,$*W))}}}I.ticks==="inside"&&I.ticklabelposition==="inside"&&(z+=I.ticklen||0)}}}return z}function v(f,P,L){var z=P._id,F=f._fullData,B=f._fullLayout,O=[],I=[],N,U,W;function Q($,J){for(N=0;N<J.length;N++){var Z=$[J[N]],re=(Z._extremes||{})[z];if(Z.visible===!0&&re){for(U=0;U<re.min.length;U++)W=re.min[U],l(O,W.val,W.pad,{extrapad:W.extrapad});for(U=0;U<re.max.length;U++)W=re.max[U],_(I,W.val,W.pad,{extrapad:W.extrapad})}}}if(Q(F,P._traceIndices),Q(B.annotations||[],P._annIndices||[]),Q(B.shapes||[],P._shapeIndices||[]),P._matchGroup&&!L){for(var ue in P._matchGroup)if(ue!==P._id){var se=o(f,ue),he=v(f,se,!0),G=P._length/se._length;for(U=0;U<he.min.length;U++)W=he.min[U],l(O,W.val,W.pad*G,{extrapad:W.extrapad});for(U=0;U<he.max.length;U++)W=he.max[U],_(I,W.val,W.pad*G,{extrapad:W.extrapad})}}return{min:O,max:I}}function p(f,P,L){if(P.setScale(),P.autorange){P.range=L?L.slice():i(f,P),P._r=P.range.slice(),P._rl=A.simpleMap(P._r,P.r2l);var z=P._input,F={};F[P._attr+".range"]=P.range,F[P._attr+".autorange"]=P.autorange,e.call("_storeDirectGUIEdit",f.layout,f._fullLayout._preGUI,F),z.range=P.range.slice(),z.autorange=P.autorange}var B=P._anchorAxis;if(B&&B.rangeslider){var O=B.rangeslider[P._name];O&&O.rangemode==="auto"&&(O.range=i(f,P)),B._input.rangeslider[P._name]=A.extendFlat({},O)}}function T(f,P,L){L||(L={}),f._m||f.setScale();var z=[],F=[],B=P.length,O=L.padded||!1,I=L.tozero&&(f.type==="linear"||f.type==="-"),N=f.type==="log",U=!1,W=L.vpadLinearized||!1,Q,ue,se,he,G,$,J,Z,re;function ne(Ie){if(Array.isArray(Ie))return U=!0,function(at){return Math.max(Number(Ie[at]||0),0)};var Ze=Math.max(Number(Ie||0),0);return function(){return Ze}}var j=ne((f._m>0?L.ppadplus:L.ppadminus)||L.ppad||0),ee=ne((f._m>0?L.ppadminus:L.ppadplus)||L.ppad||0),ie=ne(L.vpadplus||L.vpad),fe=ne(L.vpadminus||L.vpad);if(!U){if(Z=1/0,re=-1/0,N)for(Q=0;Q<B;Q++)ue=P[Q],ue<Z&&ue>0&&(Z=ue),ue>re&&ue<M&&(re=ue);else for(Q=0;Q<B;Q++)ue=P[Q],ue<Z&&ue>-M&&(Z=ue),ue>re&&ue<M&&(re=ue);P=[Z,re],B=2}var be={tozero:I,extrapad:O};function Ae(Ie){se=P[Ie],x(se)&&($=j(Ie),J=ee(Ie),W?(he=f.c2l(se)-fe(Ie),G=f.c2l(se)+ie(Ie)):(Z=se-fe(Ie),re=se+ie(Ie),N&&Z<re/10&&(Z=re/10),he=f.c2l(Z),G=f.c2l(re)),I&&(he=Math.min(0,he),G=Math.max(0,G)),S(he)&&l(z,he,J,be),S(G)&&_(F,G,$,be))}var Be=Math.min(6,B);for(Q=0;Q<Be;Q++)Ae(Q);for(Q=B-1;Q>=Be;Q--)Ae(Q);return{min:z,max:F,opts:L}}function l(f,P,L,z){w(f,P,L,z,E)}function _(f,P,L,z){w(f,P,L,z,m)}function w(f,P,L,z,F){for(var B=z.tozero,O=z.extrapad,I=!0,N=0;N<f.length&&I;N++){var U=f[N];if(F(U.val,P)&&U.pad>=L&&(U.extrapad||!O)){I=!1;break}else F(P,U.val)&&U.pad<=L&&(O||!U.extrapad)&&(f.splice(N,1),N--)}if(I){var W=B&&P===0;f.push({val:P,pad:W?0:L,extrapad:W?!1:O})}}function S(f){return x(f)&&Math.abs(f)<M}function E(f,P){return f<=P}function m(f,P){return f>=P}function b(f,P){var L=P.autorangeoptions;return L&&L.minallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.minallowed:L&&L.clipmin!==void 0&&u(P,L.clipmin,L.clipmax)?Math.max(f,P.d2l(L.clipmin)):f}function d(f,P){var L=P.autorangeoptions;return L&&L.maxallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.maxallowed:L&&L.clipmax!==void 0&&u(P,L.clipmin,L.clipmax)?Math.min(f,P.d2l(L.clipmax)):f}function u(f,P,L){return P!==void 0&&L!==void 0?(P=f.d2l(P),L=f.d2l(L),P<L):!0}function y(f,P){if(!P||!P.autorangeoptions)return f;var L=f[0],z=f[1],F=P.autorangeoptions.include;if(F!==void 0){var B=P.d2l(L),O=P.d2l(z);A.isArrayOrTypedArray(F)||(F=[F]);for(var I=0;I<F.length;I++){var N=P.d2l(F[I]);B>=N&&(B=N,L=N),O<=N&&(O=N,z=N)}}return L=b(L,P),z=d(z,P),[L,z]}}}),Co=Ye({"src/plots/cartesian/axes.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=jl(),o=Xg(),a=Fn(),i=Bo(),n=Vh(),s=sS(),c=ks(),h=c.ONEMAXYEAR,v=c.ONEAVGYEAR,p=c.ONEMINYEAR,T=c.ONEMAXQUARTER,l=c.ONEAVGQUARTER,_=c.ONEMINQUARTER,w=c.ONEMAXMONTH,S=c.ONEAVGMONTH,E=c.ONEMINMONTH,m=c.ONEWEEK,b=c.ONEDAY,d=b/2,u=c.ONEHOUR,y=c.ONEMIN,f=c.ONESEC,P=c.ONEMILLI,L=c.ONEMICROSEC,z=c.MINUS_SIGN,F=c.BADNUM,B={K:"zeroline"},O={K:"gridline",L:"path"},I={K:"minor-gridline",L:"path"},N={K:"tick",L:"path"},U={K:"tick",L:"text"},W={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Q=oh(),ue=Q.MID_SHIFT,se=Q.CAP_SHIFT,he=Q.LINE_SPACING,G=Q.OPPOSITE_SIDE,$=3,J=H.exports={};J.setConvert=wv();var Z=r1(),re=Xc(),ne=re.idSort,j=re.isLinked;J.id2name=re.id2name,J.name2id=re.name2id,J.cleanId=re.cleanId,J.list=re.list,J.listIds=re.listIds,J.getFromId=re.getFromId,J.getFromTrace=re.getFromTrace;var ee=Yd();J.getAutoRange=ee.getAutoRange,J.findExtremes=ee.findExtremes;var ie=1e-4;function fe(mt){var gt=(mt[1]-mt[0])*ie;return[mt[0]-gt,mt[1]+gt]}J.coerceRef=function(mt,gt,Er,kr,br,Tr){var Mr=kr.charAt(kr.length-1),Fr=Er._fullLayout._subplots[Mr+"axis"],Lr=kr+"ref",Jr={};return br||(br=Fr[0]||(typeof Tr=="string"?Tr:Tr[0])),Tr||(Tr=br),Fr=Fr.concat(Fr.map(function(oa){return oa+" domain"})),Jr[Lr]={valType:"enumerated",values:Fr.concat(Tr?typeof Tr=="string"?[Tr]:Tr:[]),dflt:br},e.coerce(mt,gt,Jr,Lr)},J.getRefType=function(mt){return mt===void 0?mt:mt==="paper"?"paper":mt==="pixel"?"pixel":/( domain)$/.test(mt)?"domain":"range"},J.coercePosition=function(mt,gt,Er,kr,br,Tr){var Mr,Fr,Lr=J.getRefType(kr);if(Lr!=="range")Mr=e.ensureNumber,Fr=Er(br,Tr);else{var Jr=J.getFromId(gt,kr);Tr=Jr.fraction2r(Tr),Fr=Er(br,Tr),Mr=Jr.cleanPos}mt[br]=Mr(Fr)},J.cleanPosition=function(mt,gt,Er){var kr=Er==="paper"||Er==="pixel"?e.ensureNumber:J.getFromId(gt,Er).cleanPos;return kr(mt)},J.redrawComponents=function(mt,gt){gt=gt||J.listIds(mt);var Er=mt._fullLayout;function kr(br,Tr,Mr,Fr){for(var Lr=M.getComponentMethod(br,Tr),Jr={},oa=0;oa<gt.length;oa++)for(var ca=Er[J.id2name(gt[oa])],kt=ca[Mr],ir=0;ir<kt.length;ir++){var mr=kt[ir];if(!Jr[mr]&&(Lr(mt,mr),Jr[mr]=1,Fr))return}}kr("annotations","drawOne","_annIndices"),kr("shapes","drawOne","_shapeIndices"),kr("images","draw","_imgIndices",!0),kr("selections","drawOne","_selectionIndices")};var be=J.getDataConversions=function(mt,gt,Er,kr){var br,Tr=Er==="x"||Er==="y"||Er==="z"?Er:kr;if(e.isArrayOrTypedArray(Tr)){if(br={type:Z(kr,void 0,{autotypenumbers:mt._fullLayout.autotypenumbers}),_categories:[]},J.setConvert(br),br.type==="category")for(var Mr=0;Mr<kr.length;Mr++)br.d2c(kr[Mr])}else br=J.getFromTrace(mt,gt,Tr);return br?{d2c:br.d2c,c2d:br.c2d}:Tr==="ids"?{d2c:Be,c2d:Be}:{d2c:Ae,c2d:Ae}};function Ae(mt){return+mt}function Be(mt){return String(mt)}J.getDataToCoordFunc=function(mt,gt,Er,kr){return be(mt,gt,Er,kr).d2c},J.counterLetter=function(mt){var gt=mt.charAt(0);if(gt==="x")return"y";if(gt==="y")return"x"},J.minDtick=function(mt,gt,Er,kr){["log","category","multicategory"].indexOf(mt.type)!==-1||!kr?mt._minDtick=0:mt._minDtick===void 0?(mt._minDtick=gt,mt._forceTick0=Er):mt._minDtick&&((mt._minDtick/gt+1e-6)%1<2e-6&&((Er-mt._forceTick0)/gt%1+1.000001)%1<2e-6?(mt._minDtick=gt,mt._forceTick0=Er):((gt/mt._minDtick+1e-6)%1>2e-6||((Er-mt._forceTick0)/mt._minDtick%1+1.000001)%1>2e-6)&&(mt._minDtick=0))},J.saveRangeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br=0;br<Er.length;br++){var Tr=Er[br],Mr=Tr._rangeInitial0===void 0&&Tr._rangeInitial1===void 0,Fr=Mr||Tr.range[0]!==Tr._rangeInitial0||Tr.range[1]!==Tr._rangeInitial1,Lr=Tr.autorange;(Mr&&Lr!==!0||gt&&Fr)&&(Tr._rangeInitial0=Lr==="min"||Lr==="max reversed"?void 0:Tr.range[0],Tr._rangeInitial1=Lr==="max"||Lr==="min reversed"?void 0:Tr.range[1],Tr._autorangeInitial=Lr,kr=!0)}return kr},J.saveShowSpikeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br="on",Tr=0;Tr<Er.length;Tr++){var Mr=Er[Tr],Fr=Mr._showSpikeInitial===void 0,Lr=Fr||Mr.showspikes!==Mr._showspikes;(Fr||gt&&Lr)&&(Mr._showSpikeInitial=Mr.showspikes,kr=!0),br==="on"&&!Mr.showspikes&&(br="off")}return mt._fullLayout._cartesianSpikesEnabled=br,kr},J.autoBin=function(mt,gt,Er,kr,br,Tr){var Mr=e.aggNums(Math.min,null,mt),Fr=e.aggNums(Math.max,null,mt);if(gt.type==="category"||gt.type==="multicategory")return{start:Mr-.5,end:Fr+.5,size:Math.max(1,Math.round(Tr)||1),_dataSpan:Fr-Mr};br||(br=gt.calendar);var Lr;if(gt.type==="log"?Lr={type:"linear",range:[Mr,Fr]}:Lr={type:gt.type,range:e.simpleMap([Mr,Fr],gt.c2r,0,br),calendar:br},J.setConvert(Lr),Tr=Tr&&s.dtick(Tr,Lr.type),Tr)Lr.dtick=Tr,Lr.tick0=s.tick0(void 0,Lr.type,br);else{var Jr;if(Er)Jr=(Fr-Mr)/Er;else{var oa=e.distinctVals(mt),ca=Math.pow(10,Math.floor(Math.log(oa.minDiff)/Math.LN10)),kt=ca*e.roundUp(oa.minDiff/ca,[.9,1.9,4.9,9.9],!0);Jr=Math.max(kt,2*e.stdev(mt)/Math.pow(mt.length,kr?.25:.4)),x(Jr)||(Jr=1)}J.autoTicks(Lr,Jr)}var ir=Lr.dtick,mr=J.tickIncrement(J.tickFirst(Lr),ir,"reverse",br),$r,ma;if(typeof ir=="number")mr=Ie(mr,mt,Lr,Mr,Fr),ma=1+Math.floor((Fr-mr)/ir),$r=mr+ma*ir;else for(Lr.dtick.charAt(0)==="M"&&(mr=Ze(mr,mt,ir,Mr,br)),$r=mr,ma=0;$r<=Fr;)$r=J.tickIncrement($r,ir,!1,br),ma++;return{start:gt.c2r(mr,0,br),end:gt.c2r($r,0,br),size:ir,_dataSpan:Fr-Mr}};function Ie(mt,gt,Er,kr,br){var Tr=0,Mr=0,Fr=0,Lr=0;function Jr(ir){return(1+(ir-mt)*100/Er.dtick)%100<2}for(var oa=0;oa<gt.length;oa++)gt[oa]%1===0?Fr++:x(gt[oa])||Lr++,Jr(gt[oa])&&Tr++,Jr(gt[oa]+Er.dtick/2)&&Mr++;var ca=gt.length-Lr;if(Fr===ca&&Er.type!=="date")Er.dtick<1?mt=kr-.5*Er.dtick:(mt-=.5,mt+Er.dtick<kr&&(mt+=Er.dtick));else if(Mr<ca*.1&&(Tr>ca*.3||Jr(kr)||Jr(br))){var kt=Er.dtick/2;mt+=mt+kt<kr?kt:-kt}return mt}function Ze(mt,gt,Er,kr,br){var Tr=e.findExactDates(gt,br),Mr=.8;if(Tr.exactDays>Mr){var Fr=Number(Er.substr(1));Tr.exactYears>Mr&&Fr%12===0?mt=J.tickIncrement(mt,"M6","reverse")+b*1.5:Tr.exactMonths>Mr?mt=J.tickIncrement(mt,"M1","reverse")+b*15.5:mt-=d;var Lr=J.tickIncrement(mt,Er);if(Lr<=kr)return Lr}return mt}J.prepMinorTicks=function(mt,gt,Er){if(!gt.minor.dtick){delete mt.dtick;var kr=gt.dtick&&x(gt._tmin),br;if(kr){var Tr=J.tickIncrement(gt._tmin,gt.dtick,!0);br=[gt._tmin,Tr*.99+gt._tmin*.01]}else{var Mr=e.simpleMap(gt.range,gt.r2l);br=[Mr[0],.8*Mr[0]+.2*Mr[1]]}if(mt.range=e.simpleMap(br,gt.l2r),mt._isMinor=!0,J.prepTicks(mt,Er),kr){var Fr=x(gt.dtick),Lr=x(mt.dtick),Jr=Fr?gt.dtick:+gt.dtick.substring(1),oa=Lr?mt.dtick:+mt.dtick.substring(1);Fr&&Lr?at(Jr,oa)?Jr===2*m&&oa===2*b&&(mt.dtick=m):Jr===2*m&&oa===3*b?mt.dtick=m:Jr===m&&!(gt._input.minor||{}).nticks?mt.dtick=b:it(Jr/oa,2.5)?mt.dtick=Jr/2:mt.dtick=Jr:String(gt.dtick).charAt(0)==="M"?Lr?mt.dtick="M1":at(Jr,oa)?Jr>=12&&oa===2&&(mt.dtick="M3"):mt.dtick=gt.dtick:String(mt.dtick).charAt(0)==="L"?String(gt.dtick).charAt(0)==="L"?at(Jr,oa)||(mt.dtick=it(Jr/oa,2.5)?gt.dtick/2:gt.dtick):mt.dtick="D1":mt.dtick==="D2"&&+gt.dtick>1&&(mt.dtick=1)}mt.range=gt.range}gt.minor._tick0Init===void 0&&(mt.tick0=gt.tick0)};function at(mt,gt){return Math.abs((mt/gt+.5)%1-.5)<.001}function it(mt,gt){return Math.abs(mt/gt-1)<.001}J.prepTicks=function(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l,void 0,void 0,gt);if(mt.tickmode==="auto"||!mt.dtick){var kr=mt.nticks,br;kr||(mt.type==="category"||mt.type==="multicategory"?(br=mt.tickfont?e.bigFont(mt.tickfont.size||12):15,kr=mt._length/br):(br=mt._id.charAt(0)==="y"?40:80,kr=e.constrain(mt._length/br,4,9)+1),mt._name==="radialaxis"&&(kr*=2)),mt.minor&&mt.minor.tickmode!=="array"||mt.tickmode==="array"&&(kr*=100),mt._roughDTick=Math.abs(Er[1]-Er[0])/kr,J.autoTicks(mt,mt._roughDTick),mt._minDtick>0&&mt.dtick<mt._minDtick*2&&(mt.dtick=mt._minDtick,mt.tick0=mt.l2r(mt._forceTick0))}mt.ticklabelmode==="period"&&lt(mt),mt.tick0||(mt.tick0=mt.type==="date"?"2000-01-01":0),mt.type==="date"&&mt.dtick<.1&&(mt.dtick=.1),ar(mt)};function et(mt){return+mt.substring(1)}function lt(mt){var gt;function Er(){return!(x(mt.dtick)||mt.dtick.charAt(0)!=="M")}var kr=Er(),br=J.getTickFormat(mt);if(br){var Tr=mt._dtickInit!==mt.dtick;/%[fLQsSMX]/.test(br)||(/%[HI]/.test(br)?(gt=u,Tr&&!kr&&mt.dtick<u&&(mt.dtick=u)):/%p/.test(br)?(gt=d,Tr&&!kr&&mt.dtick<d&&(mt.dtick=d)):/%[Aadejuwx]/.test(br)?(gt=b,Tr&&!kr&&mt.dtick<b&&(mt.dtick=b)):/%[UVW]/.test(br)?(gt=m,Tr&&!kr&&mt.dtick<m&&(mt.dtick=m)):/%[Bbm]/.test(br)?(gt=S,Tr&&(kr?et(mt.dtick)<1:mt.dtick<E)&&(mt.dtick="M1")):/%[q]/.test(br)?(gt=l,Tr&&(kr?et(mt.dtick)<3:mt.dtick<_)&&(mt.dtick="M3")):/%[Yy]/.test(br)&&(gt=v,Tr&&(kr?et(mt.dtick)<12:mt.dtick<p)&&(mt.dtick="M12")))}kr=Er(),kr&&mt.tick0===mt._dowTick0&&(mt.tick0=mt._rawTick0),mt._definedDelta=gt}function Me(mt,gt,Er){for(var kr=0;kr<mt.length;kr++){var br=mt[kr].value,Tr=kr,Mr=kr+1;kr<mt.length-1?(Tr=kr,Mr=kr+1):kr>0?(Tr=kr-1,Mr=kr):(Tr=kr,Mr=kr);var Fr=mt[Tr].value,Lr=mt[Mr].value,Jr=Math.abs(Lr-Fr),oa=Er||Jr,ca=0;oa>=p?Jr>=p&&Jr<=h?ca=Jr:ca=v:Er===l&&oa>=_?Jr>=_&&Jr<=T?ca=Jr:ca=l:oa>=E?Jr>=E&&Jr<=w?ca=Jr:ca=S:Er===m&&oa>=m?ca=m:oa>=b?ca=b:Er===d&&oa>=d?ca=d:Er===u&&oa>=u&&(ca=u);var kt;ca>=Jr&&(ca=Jr,kt=!0);var ir=br+ca;if(gt.rangebreaks&&ca>0){for(var mr=84,$r=0,ma=0;ma<mr;ma++){var Ba=(ma+.5)/mr;gt.maskBreaks(br*(1-Ba)+Ba*ir)!==F&&$r++}ca*=$r/mr,ca||(mt[kr].drop=!0),kt&&Jr>m&&(ca=Jr)}(ca>0||kr===0)&&(mt[kr].periodX=br+ca/2)}}J.calcTicks=function(gt,Er){for(var kr=gt.type,br=gt.calendar,Tr=gt.ticklabelstep,Mr=gt.ticklabelmode==="period",Fr=gt.range[0]>gt.range[1],Lr=!gt.ticklabelindex||e.isArrayOrTypedArray(gt.ticklabelindex)?gt.ticklabelindex:[gt.ticklabelindex],Jr=e.simpleMap(gt.range,gt.r2l,void 0,void 0,Er),oa=Jr[1]<Jr[0],ca=Math.min(Jr[0],Jr[1]),kt=Math.max(Jr[0],Jr[1]),ir=Math.max(1e3,gt._length||0),mr=[],$r=[],ma=[],Ba=[],Ca=[],da=gt.minor&&(gt.minor.ticks||gt.minor.showgrid),Sa=1;Sa>=(da?0:1);Sa--){var Ti=!Sa;Sa?(gt._dtickInit=gt.dtick,gt._tick0Init=gt.tick0):(gt.minor._dtickInit=gt.minor.dtick,gt.minor._tick0Init=gt.minor.tick0);var ai=Sa?gt:e.extendFlat({},gt,gt.minor);if(Ti?J.prepMinorTicks(ai,gt,Er):J.prepTicks(ai,Er),ai.tickmode==="array"){Sa?(ma=[],mr=ze(gt,!Ti)):(Ba=[],$r=ze(gt,!Ti));continue}if(ai.tickmode==="sync"){ma=[],mr=ce(gt);continue}var an=fe(Jr),sn=an[0],Mn=an[1],On=x(ai.dtick),$n=kr==="log"&&!(On||ai.dtick.charAt(0)==="L"),Cn=J.tickFirst(ai,Er);if(Sa){if(gt._tmin=Cn,Cn<sn!==oa)break;(kr==="category"||kr==="multicategory")&&(Mn=oa?Math.max(-.5,Mn):Math.min(gt._categories.length-.5,Mn))}var Lo=null,Xi=Cn,Jo;if(Sa){var zo;On?zo=gt.dtick:kr==="date"?typeof gt.dtick=="string"&&gt.dtick.charAt(0)==="M"&&(zo=S*gt.dtick.substring(1)):zo=gt._roughDTick,Jo=Math.round((gt.r2l(Xi)-gt.r2l(gt.tick0))/zo)-1}var as=ai.dtick;for(ai.rangebreaks&&ai._tick0Init!==ai.tick0&&(Xi=Xr(Xi,gt),oa||(Xi=J.tickIncrement(Xi,as,!oa,br))),Sa&&Mr&&(Xi=J.tickIncrement(Xi,as,!oa,br),Jo--);oa?Xi>=Mn:Xi<=Mn;Xi=J.tickIncrement(Xi,as,oa,br)){if(Sa&&Jo++,ai.rangebreaks&&!oa){if(Xi<sn)continue;if(ai.maskBreaks(Xi)===F&&Xr(Xi,ai)>=kt)break}if(ma.length>ir||Xi===Lo)break;Lo=Xi;var Pn={value:Xi};Sa?($n&&Xi!==(Xi|0)&&(Pn.simpleLabel=!0),Tr>1&&Jo%Tr&&(Pn.skipLabel=!0),ma.push(Pn)):(Pn.minor=!0,Ba.push(Pn))}}if(!Ba||Ba.length<2)Lr=!1;else{var go=(Ba[1].value-Ba[0].value)*(Fr?-1:1);$a(go,gt.tickformat)||(Lr=!1)}if(!Lr)Ca=ma;else{var In=ma.concat(Ba);Mr&&ma.length&&(In=In.slice(1)),In=In.sort(function(Yn,_s){return Yn.value-_s.value}).filter(function(Yn,_s,Yo){return _s===0||Yn.value!==Yo[_s-1].value});var Do=In.map(function(Yn,_s){return Yn.minor===void 0&&!Yn.skipLabel?_s:null}).filter(function(Yn){return Yn!==null});Do.forEach(function(Yn){Lr.map(function(_s){var Yo=Yn+_s;Yo>=0&&Yo<In.length&&e.pushUnique(Ca,In[Yo])})})}if(da){var Ho=gt.minor.ticks==="inside"&&gt.ticks==="outside"||gt.minor.ticks==="outside"&&gt.ticks==="inside";if(!Ho){for(var Qo=ma.map(function(Yn){return Yn.value}),Xn=[],po=0;po<Ba.length;po++){var ys=Ba[po],Is=ys.value;if(Qo.indexOf(Is)===-1){for(var Fs=!1,$o=0;!Fs&&$o<ma.length;$o++)1e7+ma[$o].value===1e7+Is&&(Fs=!0);Fs||Xn.push(ys)}}Ba=Xn}}Mr&&Me(Ca,gt,gt._definedDelta);var fi;if(gt.rangebreaks){var mn=gt._id.charAt(0)==="y",ol=1;gt.tickmode==="auto"&&(ol=gt.tickfont?gt.tickfont.size:12);var Os=NaN;for(fi=ma.length-1;fi>-1;fi--){if(ma[fi].drop){ma.splice(fi,1);continue}ma[fi].value=Xr(ma[fi].value,gt);var so=gt.c2p(ma[fi].value);(mn?Os>so-ol:Os<so+ol)?ma.splice(oa?fi+1:fi,1):Os=so}}pa(gt)&&Math.abs(Jr[1]-Jr[0])===360&&ma.pop(),gt._tmax=(ma[ma.length-1]||{}).value,gt._prevDateHead="",gt._inCalcTicks=!0;var Ns,fs=function(Yn){Yn.text="",gt._prevDateHead=Ns};ma=ma.concat(Ba);function al(Yn,_s){var Yo=J.tickText(Yn,_s.value,!1,_s.simpleLabel),Nn=_s.periodX;return Nn!==void 0&&(Yo.periodX=Nn,(Nn>kt||Nn<ca)&&(Nn>kt&&(Yo.periodX=kt),Nn<ca&&(Yo.periodX=ca),fs(Yo))),Yo}var vl;for(fi=0;fi<ma.length;fi++){var ji=ma[fi].minor,To=ma[fi].value;ji?(Lr&&Ca.indexOf(ma[fi])!==-1?vl=al(gt,ma[fi]):vl={x:To},vl.minor=!0,$r.push(vl)):(Ns=gt._prevDateHead,vl=al(gt,ma[fi]),(ma[fi].skipLabel||Lr&&Ca.indexOf(ma[fi])===-1)&&fs(vl),mr.push(vl))}return mr=mr.concat($r),gt._inCalcTicks=!1,Mr&&mr.length&&(mr[0].noTick=!0),mr};function ge(mt,gt){return mt.rangebreaks&&(gt=gt.filter(function(Er){return mt.maskBreaks(Er.x)!==F})),gt}function ce(mt){var gt=mt._mainAxis,Er=[];if(gt._vals){for(var kr=0;kr<gt._vals.length;kr++)if(!gt._vals[kr].noTick){var br=gt.l2p(gt._vals[kr].x),Tr=mt.p2l(br),Mr=J.tickText(mt,Tr);gt._vals[kr].minor&&(Mr.minor=!0,Mr.text=""),Er.push(Mr)}}return Er=ge(mt,Er),Er}function ze(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l),kr=fe(Er),br=Math.min(kr[0],kr[1]),Tr=Math.max(kr[0],kr[1]),Mr=mt.type==="category"?mt.d2l_noadd:mt.d2l;mt.type==="log"&&String(mt.dtick).charAt(0)!=="L"&&(mt.dtick="L"+Math.pow(10,Math.floor(Math.min(mt.range[0],mt.range[1]))-1));for(var Fr=[],Lr=0;Lr<=1;Lr++)if(!(gt!==void 0&&(gt&&Lr||gt===!1&&!Lr))&&!(Lr&&!mt.minor)){var Jr=Lr?mt.minor.tickvals:mt.tickvals,oa=Lr?[]:mt.ticktext;if(Jr){e.isArrayOrTypedArray(oa)||(oa=[]);for(var ca=0;ca<Jr.length;ca++){var kt=Mr(Jr[ca]);if(kt>br&&kt<Tr){var ir=J.tickText(mt,kt,!1,String(oa[ca]));Lr&&(ir.minor=!0,ir.text=""),Fr.push(ir)}}}}return Fr=ge(mt,Fr),Fr}var tt=[2,5,10],nt=[1,2,3,6,12],Qe=[1,2,5,10,15,30],Ct=[1,2,3,7,14],St=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],Ot=[-.301,0,.301,.699,1],jt=[15,30,45,90,180];function ur(mt,gt,Er){return gt*e.roundUp(mt/gt,Er)}J.autoTicks=function(mt,gt,Er){var kr;function br(ca){return Math.pow(ca,Math.floor(Math.log(gt)/Math.LN10))}if(mt.type==="date"){mt.tick0=e.dateTick0(mt.calendar,0);var Tr=2*gt;if(Tr>v)gt/=v,kr=br(10),mt.dtick="M"+12*ur(gt,kr,tt);else if(Tr>S)gt/=S,mt.dtick="M"+ur(gt,1,nt);else if(Tr>b){if(mt.dtick=ur(gt,b,mt._hasDayOfWeekBreaks?[1,2,7,14]:Ct),!Er){var Mr=J.getTickFormat(mt),Fr=mt.ticklabelmode==="period";Fr&&(mt._rawTick0=mt.tick0),/%[uVW]/.test(Mr)?mt.tick0=e.dateTick0(mt.calendar,2):mt.tick0=e.dateTick0(mt.calendar,1),Fr&&(mt._dowTick0=mt.tick0)}}else Tr>u?mt.dtick=ur(gt,u,nt):Tr>y?mt.dtick=ur(gt,y,Qe):Tr>f?mt.dtick=ur(gt,f,Qe):(kr=br(10),mt.dtick=ur(gt,kr,tt))}else if(mt.type==="log"){mt.tick0=0;var Lr=e.simpleMap(mt.range,mt.r2l);if(mt._isMinor&&(gt*=1.5),gt>.7)mt.dtick=Math.ceil(gt);else if(Math.abs(Lr[1]-Lr[0])<1){var Jr=1.5*Math.abs((Lr[1]-Lr[0])/gt);gt=Math.abs(Math.pow(10,Lr[1])-Math.pow(10,Lr[0]))/Jr,kr=br(10),mt.dtick="L"+ur(gt,kr,tt)}else mt.dtick=gt>.3?"D2":"D1"}else mt.type==="category"||mt.type==="multicategory"?(mt.tick0=0,mt.dtick=Math.ceil(Math.max(gt,1))):pa(mt)?(mt.tick0=0,kr=1,mt.dtick=ur(gt,kr,jt)):(mt.tick0=0,kr=br(10),mt.dtick=ur(gt,kr,tt));if(mt.dtick===0&&(mt.dtick=1),!x(mt.dtick)&&typeof mt.dtick!="string"){var oa=mt.dtick;throw mt.dtick=1,"ax.dtick error: "+String(oa)}};function ar(mt){var gt=mt.dtick;if(mt._tickexponent=0,!x(gt)&&typeof gt!="string"&&(gt=1),(mt.type==="category"||mt.type==="multicategory")&&(mt._tickround=null),mt.type==="date"){var Er=mt.r2l(mt.tick0),kr=mt.l2r(Er).replace(/(^-|i)/g,""),br=kr.length;if(String(gt).charAt(0)==="M")br>10||kr.substr(5)!=="01-01"?mt._tickround="d":mt._tickround=+gt.substr(1)%12===0?"y":"m";else if(gt>=b&&br<=10||gt>=b*15)mt._tickround="d";else if(gt>=y&&br<=16||gt>=u)mt._tickround="M";else if(gt>=f&&br<=19||gt>=y)mt._tickround="S";else{var Tr=mt.l2r(Er+gt).replace(/^-/,"").length;mt._tickround=Math.max(br,Tr)-20,mt._tickround<0&&(mt._tickround=4)}}else if(x(gt)||gt.charAt(0)==="L"){var Mr=mt.range.map(mt.r2d||Number);x(gt)||(gt=Number(gt.substr(1))),mt._tickround=2-Math.floor(Math.log(gt)/Math.LN10+.01);var Fr=Math.max(Math.abs(Mr[0]),Math.abs(Mr[1])),Lr=Math.floor(Math.log(Fr)/Math.LN10+.01),Jr=mt.minexponent===void 0?3:mt.minexponent;Math.abs(Lr)>Jr&&(ke(mt.exponentformat)&&!Te(Lr)?mt._tickexponent=3*Math.round((Lr-1)/3):mt._tickexponent=Lr)}else mt._tickround=null}J.tickIncrement=function(mt,gt,Er,kr){var br=Er?-1:1;if(x(gt))return e.increment(mt,br*gt);var Tr=gt.charAt(0),Mr=br*Number(gt.substr(1));if(Tr==="M")return e.incrementMonth(mt,Mr,kr);if(Tr==="L")return Math.log(Math.pow(10,mt)+Mr)/Math.LN10;if(Tr==="D"){var Fr=gt==="D2"?Ot:St,Lr=mt+br*.01,Jr=e.roundUp(e.mod(Lr,1),Fr,Er);return Math.floor(Lr)+Math.log(g.round(Math.pow(10,Jr),1))/Math.LN10}throw"unrecognized dtick "+String(gt)},J.tickFirst=function(mt,gt){var Er=mt.r2l||Number,kr=e.simpleMap(mt.range,Er,void 0,void 0,gt),br=kr[1]<kr[0],Tr=br?Math.floor:Math.ceil,Mr=fe(kr)[0],Fr=mt.dtick,Lr=Er(mt.tick0);if(x(Fr)){var Jr=Tr((Mr-Lr)/Fr)*Fr+Lr;return(mt.type==="category"||mt.type==="multicategory")&&(Jr=e.constrain(Jr,0,mt._categories.length-1)),Jr}var oa=Fr.charAt(0),ca=Number(Fr.substr(1));if(oa==="M"){for(var kt=0,ir=Lr,mr,$r,ma;kt<10;){if(mr=J.tickIncrement(ir,Fr,br,mt.calendar),(mr-Mr)*(ir-Mr)<=0)return br?Math.min(ir,mr):Math.max(ir,mr);$r=(Mr-(ir+mr)/2)/(mr-ir),ma=oa+(Math.abs(Math.round($r))||1)*ca,ir=J.tickIncrement(ir,ma,$r<0?!br:br,mt.calendar),kt++}return e.error("tickFirst did not converge",mt),ir}else{if(oa==="L")return Math.log(Tr((Math.pow(10,Mr)-Lr)/ca)*ca+Lr)/Math.LN10;if(oa==="D"){var Ba=Fr==="D2"?Ot:St,Ca=e.roundUp(e.mod(Mr,1),Ba,br);return Math.floor(Mr)+Math.log(g.round(Math.pow(10,Ca),1))/Math.LN10}else throw"unrecognized dtick "+String(Fr)}},J.tickText=function(mt,gt,Er,kr){var br=Cr(mt,gt),Tr=mt.tickmode==="array",Mr=Er||Tr,Fr=mt.type,Lr=Fr==="category"?mt.d2l_noadd:mt.d2l,Jr,oa=function(ma){var Ba=mt.l2p(ma);return Ba>=0&&Ba<=mt._length?ma:null};if(Tr&&e.isArrayOrTypedArray(mt.ticktext)){var ca=e.simpleMap(mt.range,mt.r2l),kt=(Math.abs(ca[1]-ca[0])-(mt._lBreaks||0))/1e4;for(Jr=0;Jr<mt.ticktext.length&&!(Math.abs(gt-Lr(mt.tickvals[Jr]))<kt);Jr++);if(Jr<mt.ticktext.length)return br.text=String(mt.ticktext[Jr]),br.xbnd=[oa(br.x-.5),oa(br.x+mt.dtick-.5)],br}function ir(ma){if(ma===void 0)return!0;if(Er)return ma==="none";var Ba={first:mt._tmin,last:mt._tmax}[ma];return ma!=="all"&&gt!==Ba}var mr=Er?"never":mt.exponentformat!=="none"&&ir(mt.showexponent)?"hide":"";if(Fr==="date"?vr(mt,br,Er,Mr):Fr==="log"?_r(mt,br,Er,Mr,mr):Fr==="category"?yt(mt,br):Fr==="multicategory"?Fe(mt,br,Er):pa(mt)?Ne(mt,br,Er,Mr,mr):Ke(mt,br,Er,Mr,mr),kr||(mt.tickprefix&&!ir(mt.showtickprefix)&&(br.text=mt.tickprefix+br.text),mt.ticksuffix&&!ir(mt.showticksuffix)&&(br.text+=mt.ticksuffix)),mt.labelalias&&mt.labelalias.hasOwnProperty(br.text)){var $r=mt.labelalias[br.text];typeof $r=="string"&&(br.text=$r)}return(mt.tickson==="boundaries"||mt.showdividers)&&(br.xbnd=[oa(br.x-.5),oa(br.x+mt.dtick-.5)]),br},J.hoverLabelText=function(mt,gt,Er){Er&&(mt=e.extendFlat({},mt,{hoverformat:Er}));var kr=e.isArrayOrTypedArray(gt)?gt[0]:gt,br=e.isArrayOrTypedArray(gt)?gt[1]:void 0;if(br!==void 0&&br!==kr)return J.hoverLabelText(mt,kr,Er)+" - "+J.hoverLabelText(mt,br,Er);var Tr=mt.type==="log"&&kr<=0,Mr=J.tickText(mt,mt.c2l(Tr?-kr:kr),"hover").text;return Tr?kr===0?"0":z+Mr:Mr};function Cr(mt,gt,Er){var kr=mt.tickfont||{};return{x:gt,dx:0,dy:0,text:Er||"",fontSize:kr.size,font:kr.family,fontWeight:kr.weight,fontStyle:kr.style,fontVariant:kr.variant,fontTextcase:kr.textcase,fontLineposition:kr.lineposition,fontShadow:kr.shadow,fontColor:kr.color}}function vr(mt,gt,Er,kr){var br=mt._tickround,Tr=Er&&mt.hoverformat||J.getTickFormat(mt);kr=!Tr&&kr,kr&&(x(br)?br=4:br={y:"m",m:"d",d:"M",M:"S",S:4}[br]);var Mr=e.formatDate(gt.x,Tr,br,mt._dateFormat,mt.calendar,mt._extraFormat),Fr,Lr=Mr.indexOf(`
+`);if(Lr!==-1&&(Fr=Mr.substr(Lr+1),Mr=Mr.substr(0,Lr)),kr&&(Fr!==void 0&&(Mr==="00:00:00"||Mr==="00:00")?(Mr=Fr,Fr=""):Mr.length===8&&(Mr=Mr.replace(/:00$/,""))),Fr)if(Er)br==="d"?Mr+=", "+Fr:Mr=Fr+(Mr?", "+Mr:"");else if(!mt._inCalcTicks||mt._prevDateHead!==Fr)mt._prevDateHead=Fr,Mr+="<br>"+Fr;else{var Jr=Ea(mt),oa=mt._trueSide||mt.side;(!Jr&&oa==="top"||Jr&&oa==="bottom")&&(Mr+="<br> ")}gt.text=Mr}function _r(mt,gt,Er,kr,br){var Tr=mt.dtick,Mr=gt.x,Fr=mt.tickformat,Lr=typeof Tr=="string"&&Tr.charAt(0);if(br==="never"&&(br=""),kr&&Lr!=="L"&&(Tr="L3",Lr="L"),Fr||Lr==="L")gt.text=Le(Math.pow(10,Mr),mt,br,kr);else if(x(Tr)||Lr==="D"&&e.mod(Mr+.01,1)<.1){var Jr=Math.round(Mr),oa=Math.abs(Jr),ca=mt.exponentformat;ca==="power"||ke(ca)&&Te(Jr)?(Jr===0?gt.text=1:Jr===1?gt.text="10":gt.text="10<sup>"+(Jr>1?"":z)+oa+"</sup>",gt.fontSize*=1.25):(ca==="e"||ca==="E")&&oa>2?gt.text="1"+ca+(Jr>0?"+":z)+oa:(gt.text=Le(Math.pow(10,Mr),mt,"","fakehover"),Tr==="D1"&&mt._id.charAt(0)==="y"&&(gt.dy-=gt.fontSize/6))}else if(Lr==="D")gt.text=String(Math.round(Math.pow(10,e.mod(Mr,1)))),gt.fontSize*=.75;else throw"unrecognized dtick "+String(Tr);if(mt.dtick==="D1"){var kt=String(gt.text).charAt(0);(kt==="0"||kt==="1")&&(mt._id.charAt(0)==="y"?gt.dx-=gt.fontSize/4:(gt.dy+=gt.fontSize/2,gt.dx+=(mt.range[1]>mt.range[0]?1:-1)*gt.fontSize*(Mr<0?.5:.25)))}}function yt(mt,gt){var Er=mt._categories[Math.round(gt.x)];Er===void 0&&(Er=""),gt.text=String(Er)}function Fe(mt,gt,Er){var kr=Math.round(gt.x),br=mt._categories[kr]||[],Tr=br[1]===void 0?"":String(br[1]),Mr=br[0]===void 0?"":String(br[0]);Er?gt.text=Mr+" - "+Tr:(gt.text=Tr,gt.text2=Mr)}function Ke(mt,gt,Er,kr,br){br==="never"?br="":mt.showexponent==="all"&&Math.abs(gt.x/mt.dtick)<1e-6&&(br="hide"),gt.text=Le(gt.x,mt,br,kr)}function Ne(mt,gt,Er,kr,br){if(mt.thetaunit==="radians"&&!Er){var Tr=gt.x/180;if(Tr===0)gt.text="0";else{var Mr=Ee(Tr);if(Mr[1]>=100)gt.text=Le(e.deg2rad(gt.x),mt,br,kr);else{var Fr=gt.x<0;Mr[1]===1?Mr[0]===1?gt.text="\u03C0":gt.text=Mr[0]+"\u03C0":gt.text=["<sup>",Mr[0],"</sup>","\u2044","<sub>",Mr[1],"</sub>","\u03C0"].join(""),Fr&&(gt.text=z+gt.text)}}}else gt.text=Le(gt.x,mt,br,kr)}function Ee(mt){function gt(Fr,Lr){return Math.abs(Fr-Lr)<=1e-6}function Er(Fr,Lr){return gt(Lr,0)?Fr:Er(Lr,Fr%Lr)}function kr(Fr){for(var Lr=1;!gt(Math.round(Fr*Lr)/Lr,Fr);)Lr*=10;return Lr}var br=kr(mt),Tr=mt*br,Mr=Math.abs(Er(Tr,br));return[Math.round(Tr/Mr),Math.round(br/Mr)]}var Ve=["f","p","n","\u03BC","m","","k","M","G","T"];function ke(mt){return mt==="SI"||mt==="B"}function Te(mt){return mt>14||mt<-15}function Le(mt,gt,Er,kr){var br=mt<0,Tr=gt._tickround,Mr=Er||gt.exponentformat||"B",Fr=gt._tickexponent,Lr=J.getTickFormat(gt),Jr=gt.separatethousands;if(kr){var oa={exponentformat:Mr,minexponent:gt.minexponent,dtick:gt.showexponent==="none"?gt.dtick:x(mt)&&Math.abs(mt)||1,range:gt.showexponent==="none"?gt.range.map(gt.r2d):[0,mt||1]};ar(oa),Tr=(Number(oa._tickround)||0)+4,Fr=oa._tickexponent,gt.hoverformat&&(Lr=gt.hoverformat)}if(Lr)return gt._numFormat(Lr)(mt).replace(/-/g,z);var ca=Math.pow(10,-Tr)/2;if(Mr==="none"&&(Fr=0),mt=Math.abs(mt),mt<ca)mt="0",br=!1;else{if(mt+=ca,Fr&&(mt*=Math.pow(10,-Fr),Tr+=Fr),Tr===0)mt=String(Math.floor(mt));else if(Tr<0){mt=String(Math.round(mt)),mt=mt.substr(0,mt.length+Tr);for(var kt=Tr;kt<0;kt++)mt+="0"}else{mt=String(mt);var ir=mt.indexOf(".")+1;ir&&(mt=mt.substr(0,ir+Tr).replace(/\.?0+$/,""))}mt=e.numSeparate(mt,gt._separators,Jr)}if(Fr&&Mr!=="hide"){ke(Mr)&&Te(Fr)&&(Mr="power");var mr;Fr<0?mr=z+-Fr:Mr!=="power"?mr="+"+Fr:mr=String(Fr),Mr==="e"||Mr==="E"?mt+=Mr+mr:Mr==="power"?mt+="\xD710<sup>"+mr+"</sup>":Mr==="B"&&Fr===9?mt+="B":ke(Mr)&&(mt+=Ve[Fr/3+5])}return br?z+mt:mt}J.getTickFormat=function(mt){var gt;function Er(Lr){return typeof Lr!="string"?Lr:Number(Lr.replace("M",""))*S}function kr(Lr,Jr){var oa=["L","D"];if(typeof Lr==typeof Jr){if(typeof Lr=="number")return Lr-Jr;var ca=oa.indexOf(Lr.charAt(0)),kt=oa.indexOf(Jr.charAt(0));return ca===kt?Number(Lr.replace(/(L|D)/g,""))-Number(Jr.replace(/(L|D)/g,"")):ca-kt}else return typeof Lr=="number"?1:-1}function br(Lr,Jr,oa){var ca=oa||function(mr){return mr},kt=Jr[0],ir=Jr[1];return(!kt&&typeof kt!="number"||ca(kt)<=ca(Lr))&&(!ir&&typeof ir!="number"||ca(ir)>=ca(Lr))}function Tr(Lr,Jr){var oa=Jr[0]===null,ca=Jr[1]===null,kt=kr(Lr,Jr[0])>=0,ir=kr(Lr,Jr[1])<=0;return(oa||kt)&&(ca||ir)}var Mr,Fr;if(mt.tickformatstops&&mt.tickformatstops.length>0)switch(mt.type){case"date":case"linear":{for(gt=0;gt<mt.tickformatstops.length;gt++)if(Fr=mt.tickformatstops[gt],Fr.enabled&&br(mt.dtick,Fr.dtickrange,Er)){Mr=Fr;break}break}case"log":{for(gt=0;gt<mt.tickformatstops.length;gt++)if(Fr=mt.tickformatstops[gt],Fr.enabled&&Tr(mt.dtick,Fr.dtickrange)){Mr=Fr;break}break}default:}return Mr?Mr.value:mt.tickformat},J.getSubplots=function(mt,gt){var Er=mt._fullLayout._subplots,kr=Er.cartesian.concat(Er.gl2d||[]),br=gt?J.findSubplotsWithAxis(kr,gt):kr;return br.sort(function(Tr,Mr){var Fr=Tr.substr(1).split("y"),Lr=Mr.substr(1).split("y");return Fr[0]===Lr[0]?+Fr[1]-+Lr[1]:+Fr[0]-+Lr[0]}),br},J.findSubplotsWithAxis=function(mt,gt){for(var Er=new RegExp(gt._id.charAt(0)==="x"?"^"+gt._id+"y":gt._id+"$"),kr=[],br=0;br<mt.length;br++){var Tr=mt[br];Er.test(Tr)&&kr.push(Tr)}return kr},J.makeClipPaths=function(mt){var gt=mt._fullLayout;if(!gt._hasOnlyLargeSploms){var Er={_offset:0,_length:gt.width,_id:""},kr={_offset:0,_length:gt.height,_id:""},br=J.list(mt,"x",!0),Tr=J.list(mt,"y",!0),Mr=[],Fr,Lr;for(Fr=0;Fr<br.length;Fr++)for(Mr.push({x:br[Fr],y:kr}),Lr=0;Lr<Tr.length;Lr++)Fr===0&&Mr.push({x:Er,y:Tr[Lr]}),Mr.push({x:br[Fr],y:Tr[Lr]});var Jr=gt._clips.selectAll(".axesclip").data(Mr,function(oa){return oa.x._id+oa.y._id});Jr.enter().append("clipPath").classed("axesclip",!0).attr("id",function(oa){return"clip"+gt._uid+oa.x._id+oa.y._id}).append("rect"),Jr.exit().remove(),Jr.each(function(oa){g.select(this).select("rect").attr({x:oa.x._offset||0,y:oa.y._offset||0,width:oa.x._length||1,height:oa.y._length||1})})}},J.draw=function(mt,gt,Er){var kr=mt._fullLayout;gt==="redraw"&&kr._paper.selectAll("g.subplot").each(function(Lr){var Jr=Lr[0],oa=kr._plots[Jr];if(oa){var ca=oa.xaxis,kt=oa.yaxis;oa.xaxislayer.selectAll("."+ca._id+"tick").remove(),oa.yaxislayer.selectAll("."+kt._id+"tick").remove(),oa.xaxislayer.selectAll("."+ca._id+"tick2").remove(),oa.yaxislayer.selectAll("."+kt._id+"tick2").remove(),oa.xaxislayer.selectAll("."+ca._id+"divider").remove(),oa.yaxislayer.selectAll("."+kt._id+"divider").remove(),oa.minorGridlayer&&oa.minorGridlayer.selectAll("path").remove(),oa.gridlayer&&oa.gridlayer.selectAll("path").remove(),oa.zerolinelayer&&oa.zerolinelayer.selectAll("path").remove(),kr._infolayer.select(".g-"+ca._id+"title").remove(),kr._infolayer.select(".g-"+kt._id+"title").remove()}});var br=!gt||gt==="redraw"?J.listIds(mt):gt,Tr=J.list(mt),Mr=Tr.filter(function(Lr){return Lr.autoshift}).map(function(Lr){return Lr.overlaying});br.map(function(Lr){var Jr=J.getFromId(mt,Lr);if(Jr.tickmode==="sync"&&Jr.overlaying){var oa=br.findIndex(function(ca){return ca===Jr.overlaying});oa>=0&&br.unshift(br.splice(oa,1).shift())}});var Fr={false:{left:0,right:0}};return e.syncOrAsync(br.map(function(Lr){return function(){if(Lr){var Jr=J.getFromId(mt,Lr);Er||(Er={}),Er.axShifts=Fr,Er.overlayingShiftedAx=Mr;var oa=J.drawOne(mt,Jr,Er);return Jr._shiftPusher&&qa(Jr,Jr._fullDepth||0,Fr,!0),Jr._r=Jr.range.slice(),Jr._rl=e.simpleMap(Jr._r,Jr.r2l),oa}}}))},J.drawOne=function(mt,gt,Er){Er=Er||{};var kr=Er.axShifts||{},br=Er.overlayingShiftedAx||[],Tr,Mr,Fr;gt.setScale();var Lr=mt._fullLayout,Jr=gt._id,oa=Jr.charAt(0),ca=J.counterLetter(Jr),kt=Lr._plots[gt._mainSubplot];if(!kt)return;if(gt._shiftPusher=gt.autoshift||br.indexOf(gt._id)!==-1||br.indexOf(gt.overlaying)!==-1,gt._shiftPusher&gt.anchor==="free"){var ir=gt.linewidth/2||0;gt.ticks==="inside"&&(ir+=gt.ticklen),qa(gt,ir,kr,!0),qa(gt,gt.shift||0,kr,!1)}(Er.skipTitle!==!0||gt._shift===void 0)&&(gt._shift=ya(gt,kr));var mr=kt[oa+"axislayer"],$r=gt._mainLinePosition,ma=$r+=gt._shift,Ba=gt._mainMirrorPosition,Ca=gt._vals=J.calcTicks(gt),da=[gt.mirror,ma,Ba].join("_");for(Tr=0;Tr<Ca.length;Tr++)Ca[Tr].axInfo=da;gt._selections={},gt._tickAngles&&(gt._prevTickAngles=gt._tickAngles),gt._tickAngles={},gt._depth=null;var Sa={};function Ti(ji){var To=Jr+(ji||"tick");return Sa[To]||(Sa[To]=Bt(gt,To,ma)),Sa[To]}if(gt.visible){var ai=J.makeTransTickFn(gt),an=J.makeTransTickLabelFn(gt),sn,Mn,On=gt.ticks==="inside",$n=gt.ticks==="outside";if(gt.tickson==="boundaries"){var Cn=dt(gt,Ca);Mn=J.clipEnds(gt,Cn),sn=On?Mn:Cn}else Mn=J.clipEnds(gt,Ca),sn=On&&gt.ticklabelmode!=="period"?Mn:Ca;var Lo=gt._gridVals=Mn,Xi=It(gt,Ca);if(!Lr._hasOnlyLargeSploms){var Jo=gt._subplotsWith,zo={};for(Tr=0;Tr<Jo.length;Tr++){Mr=Jo[Tr],Fr=Lr._plots[Mr];var as=Fr[ca+"axis"],Pn=as._mainAxis._id;if(!zo[Pn]){zo[Pn]=1;var go=oa==="x"?"M0,"+as._offset+"v"+as._length:"M"+as._offset+",0h"+as._length;J.drawGrid(mt,gt,{vals:Lo,counterAxis:as,layer:Fr.gridlayer.select("."+Jr),minorLayer:Fr.minorGridlayer.select("."+Jr),path:go,transFn:ai}),J.drawZeroLine(mt,gt,{counterAxis:as,layer:Fr.zerolinelayer,path:go,transFn:ai})}}}var In,Do=J.getTickSigns(gt),Ho=J.getTickSigns(gt,"minor");if(gt.ticks||gt.minor&&gt.minor.ticks){var Qo=J.makeTickPath(gt,ma,Do[2]),Xn=J.makeTickPath(gt,ma,Ho[2],{minor:!0}),po,ys,Is,Fs;if(gt._anchorAxis&&gt.mirror&&gt.mirror!==!0?(po=J.makeTickPath(gt,Ba,Do[3]),ys=J.makeTickPath(gt,Ba,Ho[3],{minor:!0}),Is=Qo+po,Fs=Xn+ys):(po="",ys="",Is=Qo,Fs=Xn),gt.showdividers&&$n&&gt.tickson==="boundaries"){var $o={};for(Tr=0;Tr<Xi.length;Tr++)$o[Xi[Tr].x]=1;In=function(ji){return $o[ji.x]?po:Is}}else In=function(ji){return ji.minor?Fs:Is}}if(J.drawTicks(mt,gt,{vals:sn,layer:mr,path:In,transFn:ai}),gt.mirror==="allticks"){var fi=Object.keys(gt._linepositions||{});for(Tr=0;Tr<fi.length;Tr++){Mr=fi[Tr],Fr=Lr._plots[Mr];var mn=gt._linepositions[Mr]||[],ol=mn[0],Os=mn[1],so=mn[2],Ns=J.makeTickPath(gt,ol,so?Do[0]:Ho[0],{minor:so})+J.makeTickPath(gt,Os,so?Do[1]:Ho[1],{minor:so});J.drawTicks(mt,gt,{vals:sn,layer:Fr[oa+"axislayer"],path:Ns,transFn:ai})}}var fs=[];if(fs.push(function(){return J.drawLabels(mt,gt,{vals:Ca,layer:mr,plotinfo:Fr,transFn:an,labelFns:J.makeLabelFns(gt,ma)})}),gt.type==="multicategory"){var al={x:2,y:10}[oa];fs.push(function(){var ji={x:"height",y:"width"}[oa],To=Ti()[ji]+al+(gt._tickAngles[Jr+"tick"]?gt.tickfont.size*he:0);return J.drawLabels(mt,gt,{vals:xt(gt,Ca),layer:mr,cls:Jr+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:ai,labelFns:J.makeLabelFns(gt,ma+To*Do[4])})}),fs.push(function(){return gt._depth=Do[4]*(Ti("tick2")[gt.side]-ma),sa(mt,gt,{vals:Xi,layer:mr,path:J.makeTickPath(gt,ma,Do[4],{len:gt._depth}),transFn:ai})})}else gt.title.hasOwnProperty("standoff")&&fs.push(function(){gt._depth=Do[4]*(Ti()[gt.side]-ma)});var vl=M.getComponentMethod("rangeslider","isVisible")(gt);return!Er.skipTitle&&!(vl&&gt.side==="bottom")&&fs.push(function(){return La(mt,gt)}),fs.push(function(){var ji=gt.side.charAt(0),To=G[gt.side].charAt(0),Yn=J.getPxPosition(mt,gt),_s=$n?gt.ticklen:0,Yo,Nn,Wl,Zu;(gt.automargin||vl||gt._shiftPusher)&&(gt.type==="multicategory"?Yo=Ti("tick2"):(Yo=Ti(),oa==="x"&&ji==="b"&&(gt._depth=Math.max(Yo.width>0?Yo.bottom-Yn:0,_s))));var ml=0,Bu=0;if(gt._shiftPusher&&(ml=Math.max(_s,Yo.height>0?ji==="l"?Yn-Yo.left:Yo.right-Yn:0),gt.title.text!==Lr._dfltTitle[oa]&&(Bu=(gt._titleStandoff||0)+(gt._titleScoot||0),ji==="l"&&(Bu+=Aa(gt))),gt._fullDepth=Math.max(ml,Bu)),gt.automargin){Nn={x:0,y:0,r:0,l:0,t:0,b:0};var El=[0,1],qs=typeof gt._shift=="number"?gt._shift:0;if(oa==="x"){if(ji==="b"?Nn[ji]=gt._depth:(Nn[ji]=gt._depth=Math.max(Yo.width>0?Yn-Yo.top:0,_s),El.reverse()),Yo.width>0){var Jl=Yo.right-(gt._offset+gt._length);Jl>0&&(Nn.xr=1,Nn.r=Jl);var Nu=gt._offset-Yo.left;Nu>0&&(Nn.xl=0,Nn.l=Nu)}}else if(ji==="l"?(gt._depth=Math.max(Yo.height>0?Yn-Yo.left:0,_s),Nn[ji]=gt._depth-qs):(gt._depth=Math.max(Yo.height>0?Yo.right-Yn:0,_s),Nn[ji]=gt._depth+qs,El.reverse()),Yo.height>0){var Ic=Yo.bottom-(gt._offset+gt._length);Ic>0&&(Nn.yb=0,Nn.b=Ic);var Xu=gt._offset-Yo.top;Xu>0&&(Nn.yt=1,Nn.t=Xu)}Nn[ca]=gt.anchor==="free"?gt.position:gt._anchorAxis.domain[El[0]],gt.title.text!==Lr._dfltTitle[oa]&&(Nn[ji]+=Aa(gt)+(gt.title.standoff||0)),gt.mirror&&gt.anchor!=="free"&&(Wl={x:0,y:0,r:0,l:0,t:0,b:0},Wl[To]=gt.linewidth,gt.mirror&&gt.mirror!==!0&&(Wl[To]+=_s),gt.mirror===!0||gt.mirror==="ticks"?Wl[ca]=gt._anchorAxis.domain[El[1]]:(gt.mirror==="all"||gt.mirror==="allticks")&&(Wl[ca]=[gt._counterDomainMin,gt._counterDomainMax][El[1]]))}vl&&(Zu=M.getComponentMethod("rangeslider","autoMarginOpts")(mt,gt)),typeof gt.automargin=="string"&&(rt(Nn,gt.automargin),rt(Wl,gt.automargin)),A.autoMargin(mt,ni(gt),Nn),A.autoMargin(mt,Wt(gt),Wl),A.autoMargin(mt,zt(gt),Zu)}),e.syncOrAsync(fs)}};function rt(mt,gt){if(mt){var Er=Object.keys(W).reduce(function(kr,br){return gt.indexOf(br)!==-1&&W[br].forEach(function(Tr){kr[Tr]=1}),kr},{});Object.keys(mt).forEach(function(kr){Er[kr]||(kr.length===1?mt[kr]=0:delete mt[kr])})}}function dt(mt,gt){var Er=[],kr,br=function(Tr,Mr){var Fr=Tr.xbnd[Mr];Fr!==null&&Er.push(e.extendFlat({},Tr,{x:Fr}))};if(gt.length){for(kr=0;kr<gt.length;kr++)br(gt[kr],0);br(gt[kr-1],1)}return Er}function xt(mt,gt){for(var Er=[],kr={},br=0;br<gt.length;br++){var Tr=gt[br];kr[Tr.text2]?kr[Tr.text2].push(Tr.x):kr[Tr.text2]=[Tr.x]}for(var Mr in kr)Er.push(Cr(mt,e.interp(kr[Mr],.5),Mr));return Er}function It(mt,gt){var Er=[],kr,br,Tr=gt.length&&gt[gt.length-1].x<gt[0].x,Mr=function(Lr,Jr){var oa=Lr.xbnd[Jr];oa!==null&&Er.push(e.extendFlat({},Lr,{x:oa}))};if(mt.showdividers&&gt.length){for(kr=0;kr<gt.length;kr++){var Fr=gt[kr];Fr.text2!==br&&Mr(Fr,Tr?1:0),br=Fr.text2}Mr(gt[kr-1],Tr?0:1)}return Er}function Bt(mt,gt,Er){var kr,br,Tr,Mr;if(mt._selections[gt].size())kr=1/0,br=-1/0,Tr=1/0,Mr=-1/0,mt._selections[gt].each(function(){var Lr=Ua(this),Jr=i.bBox(Lr.node().parentNode);kr=Math.min(kr,Jr.top),br=Math.max(br,Jr.bottom),Tr=Math.min(Tr,Jr.left),Mr=Math.max(Mr,Jr.right)});else{var Fr=J.makeLabelFns(mt,Er);kr=br=Fr.yFn({dx:0,dy:0,fontSize:0}),Tr=Mr=Fr.xFn({dx:0,dy:0,fontSize:0})}return{top:kr,bottom:br,left:Tr,right:Mr,height:br-kr,width:Mr-Tr}}J.getTickSigns=function(mt,gt){var Er=mt._id.charAt(0),kr={x:"top",y:"right"}[Er],br=mt.side===kr?1:-1,Tr=[-1,1,br,-br],Mr=gt?(mt.minor||{}).ticks:mt.ticks;return Mr!=="inside"==(Er==="x")&&(Tr=Tr.map(function(Fr){return-Fr})),mt.side&&Tr.push({l:-1,t:-1,r:1,b:1}[mt.side.charAt(0)]),Tr},J.makeTransTickFn=function(mt){return mt._id.charAt(0)==="x"?function(gt){return t(mt._offset+mt.l2p(gt.x),0)}:function(gt){return t(0,mt._offset+mt.l2p(gt.x))}},J.makeTransTickLabelFn=function(mt){var gt=Kt(mt),Er=mt.ticklabelshift||0,kr=mt.ticklabelstandoff||0,br=gt[0],Tr=gt[1],Mr=mt.range[0]>mt.range[1],Fr=mt.ticklabelposition&&mt.ticklabelposition.indexOf("inside")!==-1,Lr=!Fr;if(Er){var Jr=Mr?-1:1;Er=Er*Jr}if(kr){var oa=mt.side,ca=Fr&&(oa==="top"||oa==="left")||Lr&&(oa==="bottom"||oa==="right")?1:-1;kr=kr*ca}return mt._id.charAt(0)==="x"?function(kt){return t(br+mt._offset+mt.l2p(Gt(kt))+Er,Tr+kr)}:function(kt){return t(Tr+kr,br+mt._offset+mt.l2p(Gt(kt))+Er)}};function Gt(mt){return mt.periodX!==void 0?mt.periodX:mt.x}function Kt(mt){var gt=mt.ticklabelposition||"",Er=function(ir){return gt.indexOf(ir)!==-1},kr=Er("top"),br=Er("left"),Tr=Er("right"),Mr=Er("bottom"),Fr=Er("inside"),Lr=Mr||br||kr||Tr;if(!Lr&&!Fr)return[0,0];var Jr=mt.side,oa=Lr?(mt.tickwidth||0)/2:0,ca=$,kt=mt.tickfont?mt.tickfont.size:12;return(Mr||kr)&&(oa+=kt*se,ca+=(mt.linewidth||0)/2),(br||Tr)&&(oa+=(mt.linewidth||0)/2,ca+=$),Fr&&Jr==="top"&&(ca-=kt*(1-se)),(br||kr)&&(oa=-oa),(Jr==="bottom"||Jr==="right")&&(ca=-ca),[Lr?oa:0,Fr?ca:0]}J.makeTickPath=function(mt,gt,Er,kr){kr||(kr={});var br=kr.minor;if(br&&!mt.minor)return"";var Tr=kr.len!==void 0?kr.len:br?mt.minor.ticklen:mt.ticklen,Mr=mt._id.charAt(0),Fr=(mt.linewidth||1)/2;return Mr==="x"?"M0,"+(gt+Fr*Er)+"v"+Tr*Er:"M"+(gt+Fr*Er)+",0h"+Tr*Er},J.makeLabelFns=function(mt,gt,Er){var kr=mt.ticklabelposition||"",br=function(Cn){return kr.indexOf(Cn)!==-1},Tr=br("top"),Mr=br("left"),Fr=br("right"),Lr=br("bottom"),Jr=Lr||Mr||Tr||Fr,oa=br("inside"),ca=kr==="inside"&&mt.ticks==="inside"||!oa&&mt.ticks==="outside"&&mt.tickson!=="boundaries",kt=0,ir=0,mr=ca?mt.ticklen:0;if(oa?mr*=-1:Jr&&(mr=0),ca&&(kt+=mr,Er)){var $r=e.deg2rad(Er);kt=mr*Math.cos($r)+1,ir=mr*Math.sin($r)}mt.showticklabels&&(ca||mt.showline)&&(kt+=.2*mt.tickfont.size),kt+=(mt.linewidth||1)/2*(oa?-1:1);var ma={labelStandoff:kt,labelShift:ir},Ba,Ca,da,Sa,Ti=0,ai=mt.side,an=mt._id.charAt(0),sn=mt.tickangle,Mn;if(an==="x")Mn=!oa&&ai==="bottom"||oa&&ai==="top",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=ir*Sa,Ca=gt+kt*Sa,da=Mn?1:-.2,Math.abs(sn)===90&&(oa?da+=ue:sn===-90&&ai==="bottom"?da=se:sn===90&&ai==="top"?da=ue:da=.5,Ti=ue/2*(sn/90)),ma.xFn=function(Cn){return Cn.dx+Ba+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*da},ma.anchorFn=function(Cn,Lo){if(Jr){if(Mr)return"end";if(Fr)return"start"}return!x(Lo)||Lo===0||Lo===180?"middle":Lo*Sa<0!==oa?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return Lo<-60||Lo>60?-.5*Xi:mt.side==="top"!==oa?-Xi:0};else if(an==="y"){if(Mn=!oa&&ai==="left"||oa&&ai==="right",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=kt,Ca=ir*Sa,da=0,!oa&&Math.abs(sn)===90&&(sn===-90&&ai==="left"||sn===90&&ai==="right"?da=se:da=.5),oa){var On=x(sn)?+sn:0;if(On!==0){var $n=e.deg2rad(On);Ti=Math.abs(Math.sin($n))*se*Sa,da=0}}ma.xFn=function(Cn){return Cn.dx+gt-(Ba+Cn.fontSize*da)*Sa+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*ue},ma.anchorFn=function(Cn,Lo){return x(Lo)&&Math.abs(Lo)===90?"middle":Mn?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return mt.side==="right"&&(Lo*=-1),Lo<-30?-Xi:Lo<30?-.5*Xi:0}}return ma};function sr(mt){return[mt.text,mt.x,mt.axInfo,mt.font,mt.fontSize,mt.fontColor].join("_")}J.drawTicks=function(mt,gt,Er){Er=Er||{};var kr=gt._id+"tick",br=[].concat(gt.minor&&gt.minor.ticks?Er.vals.filter(function(Mr){return Mr.minor&&!Mr.noTick}):[]).concat(gt.ticks?Er.vals.filter(function(Mr){return!Mr.minor&&!Mr.noTick}):[]),Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("ticks",1).classed("crisp",Er.crisp!==!1).each(function(Mr){return a.stroke(g.select(this),Mr.minor?gt.minor.tickcolor:gt.tickcolor)}).style("stroke-width",function(Mr){return i.crispRound(mt,Mr.minor?gt.minor.tickwidth:gt.tickwidth,1)+"px"}).attr("d",Er.path).style("display",null),Fa(gt,[N]),Tr.attr("transform",Er.transFn)},J.drawGrid=function(mt,gt,Er){if(Er=Er||{},gt.tickmode!=="sync"){var kr=gt._id+"grid",br=gt.minor&&gt.minor.showgrid,Tr=br?Er.vals.filter(function(Ba){return Ba.minor}):[],Mr=gt.showgrid?Er.vals.filter(function(Ba){return!Ba.minor}):[],Fr=Er.counterAxis;if(Fr&&J.shouldShowZeroLine(mt,gt,Fr))for(var Lr=gt.tickmode==="array",Jr=0;Jr<Mr.length;Jr++){var oa=Mr[Jr].x;if(Lr?!oa:Math.abs(oa)<gt.dtick/100)if(Mr=Mr.slice(0,Jr).concat(Mr.slice(Jr+1)),Lr)Jr--;else break}gt._gw=i.crispRound(mt,gt.gridwidth,1);for(var ca=br?i.crispRound(mt,gt.minor.gridwidth,1):0,kt=Er.layer,ir=Er.minorLayer,mr=1;mr>=0;mr--){var $r=mr?kt:ir;if($r){var ma=$r.selectAll("path."+kr).data(mr?Mr:Tr,sr);ma.exit().remove(),ma.enter().append("path").classed(kr,1).classed("crisp",Er.crisp!==!1),ma.attr("transform",Er.transFn).attr("d",Er.path).each(function(Ba){return a.stroke(g.select(this),Ba.minor?gt.minor.gridcolor:gt.gridcolor||"#ddd")}).style("stroke-dasharray",function(Ba){return i.dashStyle(Ba.minor?gt.minor.griddash:gt.griddash,Ba.minor?gt.minor.gridwidth:gt.gridwidth)}).style("stroke-width",function(Ba){return(Ba.minor?ca:gt._gw)+"px"}).style("display",null),typeof Er.path=="function"&&ma.attr("d",Er.path)}}Fa(gt,[O,I])}},J.drawZeroLine=function(mt,gt,Er){Er=Er||Er;var kr=gt._id+"zl",br=J.shouldShowZeroLine(mt,gt,Er.counterAxis),Tr=Er.layer.selectAll("path."+kr).data(br?[{x:0,id:gt._id}]:[]);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("zl",1).classed("crisp",Er.crisp!==!1).each(function(){Er.layer.selectAll("path").sort(function(Mr,Fr){return ne(Mr.id,Fr.id)})}),Tr.attr("transform",Er.transFn).attr("d",Er.path).call(a.stroke,gt.zerolinecolor||a.defaultLine).style("stroke-width",i.crispRound(mt,gt.zerolinewidth,gt._gw||1)+"px").style("display",null),Fa(gt,[B])},J.drawLabels=function(mt,gt,Er){Er=Er||{};var kr=mt._fullLayout,br=gt._id,Tr=Er.cls||br+"tick",Mr=Er.vals.filter(function(Pn){return Pn.text}),Fr=Er.labelFns,Lr=Er.secondary?0:gt.tickangle,Jr=(gt._prevTickAngles||{})[Tr],oa=Er.layer.selectAll("g."+Tr).data(gt.showticklabels?Mr:[],sr),ca=[];oa.enter().append("g").classed(Tr,1).append("text").attr("text-anchor","middle").each(function(Pn){var go=g.select(this),In=mt._promises.length;go.call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn)).call(i.font,{family:Pn.font,size:Pn.fontSize,color:Pn.fontColor,weight:Pn.fontWeight,style:Pn.fontStyle,variant:Pn.fontVariant,textcase:Pn.fontTextcase,lineposition:Pn.fontLineposition,shadow:Pn.fontShadow}).text(Pn.text).call(r.convertToTspans,mt),mt._promises[In]?ca.push(mt._promises.pop().then(function(){kt(go,Lr)})):kt(go,Lr)}),Fa(gt,[U]),oa.exit().remove(),Er.repositionOnUpdate&&oa.each(function(Pn){g.select(this).select("text").call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn))});function kt(Pn,go){Pn.each(function(In){var Do=g.select(this),Ho=Do.select(".text-math-group"),Qo=Fr.anchorFn(In,go),Xn=Er.transFn.call(Do.node(),In)+(x(go)&&+go!=0?" rotate("+go+","+Fr.xFn(In)+","+(Fr.yFn(In)-In.fontSize/2)+")":""),po=r.lineCount(Do),ys=he*In.fontSize,Is=Fr.heightFn(In,x(go)?+go:0,(po-1)*ys);if(Is&&(Xn+=t(0,Is)),Ho.empty()){var Fs=Do.select("text");Fs.attr({transform:Xn,"text-anchor":Qo}),Fs.style("opacity",1),gt._adjustTickLabelsOverflow&&gt._adjustTickLabelsOverflow()}else{var $o=i.bBox(Ho.node()).width,fi=$o*{end:-.5,start:.5}[Qo];Ho.attr("transform",Xn+t(fi,0))}})}gt._adjustTickLabelsOverflow=function(){var Pn=gt.ticklabeloverflow;if(!(!Pn||Pn==="allow")){var go=Pn.indexOf("hide")!==-1,In=gt._id.charAt(0)==="x",Do=0,Ho=In?mt._fullLayout.width:mt._fullLayout.height;if(Pn.indexOf("domain")!==-1){var Qo=e.simpleMap(gt.range,gt.r2l);Do=gt.l2p(Qo[0])+gt._offset,Ho=gt.l2p(Qo[1])+gt._offset}var Xn=Math.min(Do,Ho),po=Math.max(Do,Ho),ys=gt.side,Is=1/0,Fs=-1/0;oa.each(function(ol){var Os=g.select(this),so=Os.select(".text-math-group");if(so.empty()){var Ns=i.bBox(Os.node()),fs=0;In?(Ns.right>po||Ns.left<Xn)&&(fs=1):(Ns.bottom>po||Ns.top+(gt.tickangle?0:ol.fontSize/4)<Xn)&&(fs=1);var al=Os.select("text");fs?go&&al.style("opacity",0):(al.style("opacity",1),ys==="bottom"||ys==="right"?Is=Math.min(Is,In?Ns.top:Ns.left):Is=-1/0,ys==="top"||ys==="left"?Fs=Math.max(Fs,In?Ns.bottom:Ns.right):Fs=1/0)}});for(var $o in kr._plots){var fi=kr._plots[$o];if(!(gt._id!==fi.xaxis._id&&gt._id!==fi.yaxis._id)){var mn=In?fi.yaxis:fi.xaxis;mn&&(mn["_visibleLabelMin_"+gt._id]=Is,mn["_visibleLabelMax_"+gt._id]=Fs)}}}},gt._hideCounterAxisInsideTickLabels=function(Pn){var go=gt._id.charAt(0)==="x",In=[];for(var Do in kr._plots){var Ho=kr._plots[Do];gt._id!==Ho.xaxis._id&&gt._id!==Ho.yaxis._id||In.push(go?Ho.yaxis:Ho.xaxis)}In.forEach(function(Qo,Xn){Qo&&Ea(Qo)&&(Pn||[B,I,O,N,U]).forEach(function(po){var ys=po.K==="tick"&&po.L==="text"&&gt.ticklabelmode==="period",Is=kr._plots[gt._mainSubplot],Fs;po.K===B.K?Fs=Is.zerolinelayer.selectAll("."+gt._id+"zl"):po.K===I.K?Fs=Is.minorGridlayer.selectAll("."+gt._id):po.K===O.K?Fs=Is.gridlayer.selectAll("."+gt._id):Fs=Is[gt._id.charAt(0)+"axislayer"],Fs.each(function(){var $o=g.select(this);po.L&&($o=$o.selectAll(po.L)),$o.each(function(fi){var mn=gt.l2p(ys?Gt(fi):fi.x)+gt._offset,ol=g.select(this);mn<gt["_visibleLabelMax_"+Qo._id]&&mn>gt["_visibleLabelMin_"+Qo._id]?ol.style("display","none"):po.K==="tick"&&!Xn&&ol.style("display",null)})})})})},kt(oa,Jr+1?Jr:Lr);function ir(){return ca.length&&Promise.all(ca)}var mr=null;function $r(){if(kt(oa,Lr),Mr.length&&gt.autotickangles&&(gt.type!=="log"||String(gt.dtick).charAt(0)!=="D")){mr=gt.autotickangles[0];var Pn=0,go=[],In,Do=1;oa.each(function(Yo){Pn=Math.max(Pn,Yo.fontSize);var Nn=gt.l2p(Yo.x),Wl=Ua(this),Zu=i.bBox(Wl.node());Do=Math.max(Do,r.lineCount(Wl)),go.push({top:0,bottom:10,height:10,left:Nn-Zu.width/2,right:Nn+Zu.width/2+2,width:Zu.width+2})});var Ho=(gt.tickson==="boundaries"||gt.showdividers)&&!Er.secondary,Qo=Mr.length,Xn=Math.abs((Mr[Qo-1].x-Mr[0].x)*gt._m)/(Qo-1),po=Ho?Xn/2:Xn,ys=Ho?gt.ticklen:Pn*1.25*Do,Is=Math.sqrt(Math.pow(po,2)+Math.pow(ys,2)),Fs=po/Is,$o=gt.autotickangles.map(function(Yo){return Yo*Math.PI/180}),fi=$o.find(function(Yo){return Math.abs(Math.cos(Yo))<=Fs});fi===void 0&&(fi=$o.reduce(function(Yo,Nn){return Math.abs(Math.cos(Yo))<Math.abs(Math.cos(Nn))?Yo:Nn},$o[0]));var mn=fi*(180/Math.PI);if(Ho){var ol=2;for(gt.ticks&&(ol+=gt.tickwidth/2),In=0;In<go.length;In++){var Os=Mr[In].xbnd,so=go[In];if(Os[0]!==null&&so.left-gt.l2p(Os[0])<ol||Os[1]!==null&&gt.l2p(Os[1])-so.right<ol){mr=mn;break}}}else{var Ns=gt.ticklabelposition||"",fs=function(Yo){return Ns.indexOf(Yo)!==-1},al=fs("top"),vl=fs("left"),ji=fs("right"),To=fs("bottom"),Yn=To||vl||al||ji,_s=Yn?(gt.tickwidth||0)+2*$:0;for(In=0;In<go.length-1;In++)if(e.bBoxIntersect(go[In],go[In+1],_s)){mr=mn;break}}mr&&kt(oa,mr)}}gt._selections&&(gt._selections[Tr]=oa);var ma=[ir];gt.automargin&&kr._redrawFromAutoMarginCount&&Jr===90?(mr=Jr,ma.push(function(){kt(oa,Jr)})):ma.push($r),gt._tickAngles&&ma.push(function(){gt._tickAngles[Tr]=mr===null?x(Lr)?Lr:0:mr});var Ba=function(){var Pn=0,go=0;return oa.each(function(In,Do){var Ho=Ua(this),Qo=Ho.select(".text-math-group");if(Qo.empty()){var Xn;gt._vals[Do]&&(Xn=gt._vals[Do].bb||i.bBox(Ho.node()),gt._vals[Do].bb=Xn),Pn=Math.max(Pn,Xn.width),go=Math.max(go,Xn.height)}}),{labelsMaxW:Pn,labelsMaxH:go}},Ca=gt._anchorAxis;if(Ca&&(Ca.autorange||Ca.insiderange)&&Ea(gt)&&!j(kr,gt._id)&&(kr._insideTickLabelsUpdaterange||(kr._insideTickLabelsUpdaterange={}),Ca.autorange&&(kr._insideTickLabelsUpdaterange[Ca._name+".autorange"]=Ca.autorange,ma.push(Ba)),Ca.insiderange)){var da=Ba(),Sa=gt._id.charAt(0)==="y"?da.labelsMaxW:da.labelsMaxH;Sa+=2*$,gt.ticklabelposition==="inside"&&(Sa+=gt.ticklen||0);var Ti=gt.side==="right"||gt.side==="top"?1:-1,ai=Ti===1?1:0,an=Ti===1?0:1,sn=[];sn[an]=Ca.range[an];var Mn=Ca.range,On=Ca.r2p(Mn[ai]),$n=Ca.r2p(Mn[an]),Cn=kr._insideTickLabelsUpdaterange[Ca._name+".range"];if(Cn){var Lo=Ca.r2p(Cn[ai]),Xi=Ca.r2p(Cn[an]),Jo=Ti*(gt._id.charAt(0)==="y"?1:-1);Jo*On<Jo*Lo&&(On=Lo,sn[ai]=Mn[ai]=Cn[ai]),Jo*$n>Jo*Xi&&($n=Xi,sn[an]=Mn[an]=Cn[an])}var zo=Math.abs($n-On);zo-Sa>0?(zo-=Sa,Sa*=1+Sa/zo):Sa=0,gt._id.charAt(0)!=="y"&&(Sa=-Sa),sn[ai]=Ca.p2r(Ca.r2p(Mn[ai])+Ti*Sa),Ca.autorange==="min"||Ca.autorange==="max reversed"?(sn[0]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0):(Ca.autorange==="max"||Ca.autorange==="min reversed")&&(sn[1]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0),kr._insideTickLabelsUpdaterange[Ca._name+".range"]=sn}var as=e.syncOrAsync(ma);return as&&as.then&&mt._promises.push(as),as};function sa(mt,gt,Er){var kr=gt._id+"divider",br=Er.vals,Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().insert("path",":first-child").classed(kr,1).classed("crisp",1).call(a.stroke,gt.dividercolor).style("stroke-width",i.crispRound(mt,gt.dividerwidth,1)+"px"),Tr.attr("transform",Er.transFn).attr("d",Er.path)}J.getPxPosition=function(mt,gt){var Er=mt._fullLayout._size,kr=gt._id.charAt(0),br=gt.side,Tr;if(gt.anchor!=="free"?Tr=gt._anchorAxis:kr==="x"?Tr={_offset:Er.t+(1-(gt.position||0))*Er.h,_length:0}:kr==="y"&&(Tr={_offset:Er.l+(gt.position||0)*Er.w+gt._shift,_length:0}),br==="top"||br==="left")return Tr._offset;if(br==="bottom"||br==="right")return Tr._offset+Tr._length};function Aa(mt){var gt=mt.title.font.size,Er=(mt.title.text.match(r.BR_TAG_ALL)||[]).length;return mt.title.hasOwnProperty("standoff")?gt*(se+Er*he):Er?gt*(Er+1)*he:gt}function La(mt,gt){var Er=mt._fullLayout,kr=gt._id,br=kr.charAt(0),Tr=gt.title.font.size,Mr,Fr=(gt.title.text.match(r.BR_TAG_ALL)||[]).length;if(gt.title.hasOwnProperty("standoff"))gt.side==="bottom"||gt.side==="right"?Mr=gt._depth+gt.title.standoff+Tr*se:(gt.side==="top"||gt.side==="left")&&(Mr=gt._depth+gt.title.standoff+Tr*(ue+Fr*he));else{var Lr=Ea(gt);if(gt.type==="multicategory")Mr=gt._depth;else{var Jr=1.5*Tr;Lr&&(Jr=.5*Tr,gt.ticks==="outside"&&(Jr+=gt.ticklen)),Mr=10+Jr+(gt.linewidth?gt.linewidth-1:0)}Lr||(br==="x"?Mr+=gt.side==="top"?Tr*(gt.showticklabels?1:0):Tr*(gt.showticklabels?1.5:.5):Mr+=gt.side==="right"?Tr*(gt.showticklabels?1:.5):Tr*(gt.showticklabels?.5:0))}var oa=J.getPxPosition(mt,gt),ca,kt,ir;br==="x"?(kt=gt._offset+gt._length/2,ir=gt.side==="top"?oa-Mr:oa+Mr):(ir=gt._offset+gt._length/2,kt=gt.side==="right"?oa+Mr:oa-Mr,ca={rotate:"-90",offset:0});var mr;if(gt.type!=="multicategory"){var $r=gt._selections[gt._id+"tick"];if(mr={selection:$r,side:gt.side},$r&&$r.node()&&$r.node().parentNode){var ma=i.getTranslate($r.node().parentNode);mr.offsetLeft=ma.x,mr.offsetTop=ma.y}gt.title.hasOwnProperty("standoff")&&(mr.pad=0)}return gt._titleStandoff=Mr,o.draw(mt,kr+"title",{propContainer:gt,propName:gt._name+".title.text",placeholder:Er._dfltTitle[br],avoid:mr,transform:ca,attributes:{x:kt,y:ir,"text-anchor":"middle"}})}J.shouldShowZeroLine=function(mt,gt,Er){var kr=e.simpleMap(gt.range,gt.r2l);return kr[0]*kr[1]<=0&&gt.zeroline&&(gt.type==="linear"||gt.type==="-")&&!(gt.rangebreaks&&gt.maskBreaks(0)===F)&&(ka(gt,0)||!Ga(mt,gt,Er,kr)||Ma(mt,gt))},J.clipEnds=function(mt,gt){return gt.filter(function(Er){return ka(mt,Er.x)})};function ka(mt,gt){var Er=mt.l2p(gt);return Er>1&&Er<mt._length-1}function Ga(mt,gt,Er,kr){var br=Er._mainAxis;if(!br)return;var Tr=mt._fullLayout,Mr=gt._id.charAt(0),Fr=J.counterLetter(gt._id),Lr=gt._offset+(Math.abs(kr[0])<Math.abs(kr[1])==(Mr==="x")?0:gt._length);function Jr(mr){if(!mr.showline||!mr.linewidth)return!1;var $r=Math.max((mr.linewidth+gt.zerolinewidth)/2,1);function ma(da){return typeof da=="number"&&Math.abs(da-Lr)<$r}if(ma(mr._mainLinePosition)||ma(mr._mainMirrorPosition))return!0;var Ba=mr._linepositions||{};for(var Ca in Ba)if(ma(Ba[Ca][0])||ma(Ba[Ca][1]))return!0}var oa=Tr._plots[Er._mainSubplot];if(!(oa.mainplotinfo||oa).overlays.length)return Jr(Er,Lr);for(var ca=J.list(mt,Fr),kt=0;kt<ca.length;kt++){var ir=ca[kt];if(ir._mainAxis===br&&Jr(ir,Lr))return!0}}function Ma(mt,gt){for(var Er=mt._fullData,kr=gt._mainSubplot,br=gt._id.charAt(0),Tr=0;Tr<Er.length;Tr++){var Mr=Er[Tr];if(Mr.visible===!0&&Mr.xaxis+Mr.yaxis===kr&&(M.traceIs(Mr,"bar-like")&&Mr.orientation==={x:"h",y:"v"}[br]||Mr.fill&&Mr.fill.charAt(Mr.fill.length-1)===br))return!0}return!1}function Ua(mt){var gt=g.select(mt),Er=gt.select(".text-math-group");return Er.empty()?gt.select("text"):Er}J.allowAutoMargin=function(mt){for(var gt=J.list(mt,"",!0),Er=0;Er<gt.length;Er++){var kr=gt[Er];kr.automargin&&(A.allowAutoMargin(mt,ni(kr)),kr.mirror&&A.allowAutoMargin(mt,Wt(kr))),M.getComponentMethod("rangeslider","isVisible")(kr)&&A.allowAutoMargin(mt,zt(kr))}};function ni(mt){return mt._id+".automargin"}function Wt(mt){return ni(mt)+".mirror"}function zt(mt){return mt._id+".rangeslider"}J.swap=function(mt,gt){for(var Er=Vt(mt,gt),kr=0;kr<Er.length;kr++)xr(mt,Er[kr].x,Er[kr].y)};function Vt(mt,gt){var Er=[],kr,br;for(kr=0;kr<gt.length;kr++){var Tr=[],Mr=mt._fullData[gt[kr]].xaxis,Fr=mt._fullData[gt[kr]].yaxis;if(!(!Mr||!Fr)){for(br=0;br<Er.length;br++)(Er[br].x.indexOf(Mr)!==-1||Er[br].y.indexOf(Fr)!==-1)&&Tr.push(br);if(!Tr.length){Er.push({x:[Mr],y:[Fr]});continue}var Lr=Er[Tr[0]],Jr;if(Tr.length>1)for(br=1;br<Tr.length;br++)Jr=Er[Tr[br]],Ut(Lr.x,Jr.x),Ut(Lr.y,Jr.y);Ut(Lr.x,[Mr]),Ut(Lr.y,[Fr])}}return Er}function Ut(mt,gt){for(var Er=0;Er<gt.length;Er++)mt.indexOf(gt[Er])===-1&&mt.push(gt[Er])}function xr(mt,gt,Er){var kr=[],br=[],Tr=mt.layout,Mr,Fr;for(Mr=0;Mr<gt.length;Mr++)kr.push(J.getFromId(mt,gt[Mr]));for(Mr=0;Mr<Er.length;Mr++)br.push(J.getFromId(mt,Er[Mr]));var Lr=Object.keys(n),Jr=["anchor","domain","overlaying","position","side","tickangle","editType"],oa=["linear","log"];for(Mr=0;Mr<Lr.length;Mr++){var ca=Lr[Mr],kt=kr[0][ca],ir=br[0][ca],mr=!0,$r=!1,ma=!1;if(!(ca.charAt(0)==="_"||typeof kt=="function"||Jr.indexOf(ca)!==-1)){for(Fr=1;Fr<kr.length&&mr;Fr++){var Ba=kr[Fr][ca];ca==="type"&&oa.indexOf(kt)!==-1&&oa.indexOf(Ba)!==-1&&kt!==Ba?$r=!0:Ba!==kt&&(mr=!1)}for(Fr=1;Fr<br.length&&mr;Fr++){var Ca=br[Fr][ca];ca==="type"&&oa.indexOf(ir)!==-1&&oa.indexOf(Ca)!==-1&&ir!==Ca?ma=!0:br[Fr][ca]!==ir&&(mr=!1)}mr&&($r&&(Tr[kr[0]._name].type="linear"),ma&&(Tr[br[0]._name].type="linear"),Zr(Tr,ca,kr,br,mt._fullLayout._dfltTitle))}}for(Mr=0;Mr<mt._fullLayout.annotations.length;Mr++){var da=mt._fullLayout.annotations[Mr];gt.indexOf(da.xref)!==-1&&Er.indexOf(da.yref)!==-1&&e.swapAttrs(Tr.annotations[Mr],["?"])}}function Zr(mt,gt,Er,kr,br){var Tr=e.nestedProperty,Mr=Tr(mt[Er[0]._name],gt).get(),Fr=Tr(mt[kr[0]._name],gt).get(),Lr;for(gt==="title"&&(Mr&&Mr.text===br.x&&(Mr.text=br.y),Fr&&Fr.text===br.y&&(Fr.text=br.x)),Lr=0;Lr<Er.length;Lr++)Tr(mt,Er[Lr]._name+"."+gt).set(Fr);for(Lr=0;Lr<kr.length;Lr++)Tr(mt,kr[Lr]._name+"."+gt).set(Mr)}function pa(mt){return mt._id==="angularaxis"}function Xr(mt,gt){for(var Er=gt._rangebreaks.length,kr=0;kr<Er;kr++){var br=gt._rangebreaks[kr];if(mt>=br.min&&mt<br.max)return br.max}return mt}function Ea(mt){return(mt.ticklabelposition||"").indexOf("inside")!==-1}function Fa(mt,gt){Ea(mt._anchorAxis||{})&&mt._hideCounterAxisInsideTickLabels&&mt._hideCounterAxisInsideTickLabels(gt)}function qa(mt,gt,Er,kr){var br=mt.anchor!=="free"&&(mt.overlaying===void 0||mt.overlaying===!1)?mt._id:mt.overlaying,Tr;kr?Tr=mt.side==="right"?gt:-gt:Tr=gt,br in Er||(Er[br]={}),mt.side in Er[br]||(Er[br][mt.side]=0),Er[br][mt.side]+=Tr}function ya(mt,gt){return mt.autoshift?gt[mt.overlaying][mt.side]:mt.shift||0}function $a(mt,gt){return/%f/.test(gt)?mt>=L:/%L/.test(gt)?mt>=P:/%[SX]/.test(gt)?mt>=f:/%M/.test(gt)?mt>=y:/%[HI]/.test(gt)?mt>=u:/%p/.test(gt)?mt>=d:/%[Aadejuwx]/.test(gt)?mt>=b:/%[UVW]/.test(gt)?mt>=m:/%[Bbm]/.test(gt)?mt>=E:/%[q]/.test(gt)?mt>=_:/%[Yy]/.test(gt)?mt>=p:!0}}}),cS=Ye({"src/plots/cartesian/autorange_options_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e,t;if(M){var r=A==="reversed"||A==="min reversed"||A==="max reversed";e=M[r?1:0],t=M[r?0:1]}var o=x("autorangeoptions.minallowed",t===null?e:void 0),a=x("autorangeoptions.maxallowed",e===null?t:void 0);o===void 0&&x("autorangeoptions.clipmin"),a===void 0&&x("autorangeoptions.clipmax"),x("autorangeoptions.include")}}}),fS=Ye({"src/plots/cartesian/range_defaults.js"(X,H){"use strict";var g=cS();H.exports=function(A,M,e,t){var r=M._template||{},o=M.type||r.type||"-";e("minallowed"),e("maxallowed");var a=e("range");if(!a){var i;!t.noInsiderange&&o!=="log"&&(i=e("insiderange"),i&&(i[0]===null||i[1]===null)&&(M.insiderange=!1,i=void 0),i&&(a=e("range",i)))}var n=M.getAutorangeDflt(a,t),s=e("autorange",n),c;a&&(a[0]===null&&a[1]===null||(a[0]===null||a[1]===null)&&(s==="reversed"||s===!0)||a[0]!==null&&(s==="min"||s==="max reversed")||a[1]!==null&&(s==="max"||s==="min reversed"))&&(a=void 0,delete M.range,M.autorange=!0,c=!0),c||(n=M.getAutorangeDflt(a,t),s=e("autorange",n)),s&&(g(e,s,a),(o==="linear"||o==="-")&&e("rangemode")),M.cleanRange()}}}),iO=Ye({"node_modules/mouse-event-offset/index.js"(X,H){var g={left:0,top:0};H.exports=x;function x(M,e,t){e=e||M.currentTarget||M.srcElement,Array.isArray(t)||(t=[0,0]);var r=M.clientX||0,o=M.clientY||0,a=A(e);return t[0]=r-a.left,t[1]=o-a.top,t}function A(M){return M===window||M===document||M===document.body?g:M.getBoundingClientRect()}}}),_2=Ye({"node_modules/has-passive-events/index.js"(X,H){"use strict";var g=rS();function x(){var A=!1;try{var M=Object.defineProperty({},"passive",{get:function(){A=!0}});window.addEventListener("test",null,M),window.removeEventListener("test",null,M)}catch{A=!1}return A}H.exports=g&&x()}}),nO=Ye({"src/components/dragelement/align.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=(x-M)/(e-M),o=r+A/(e-M),a=(r+o)/2;return t==="left"||t==="bottom"?r:t==="center"||t==="middle"?a:t==="right"||t==="top"?o:r<2/3-a?r:o>4/3-a?o:a}}}),oO=Ye({"src/components/dragelement/cursor.js"(X,H){"use strict";var g=ta(),x=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];H.exports=function(M,e,t,r){return t==="left"?M=0:t==="center"?M=1:t==="right"?M=2:M=g.constrain(Math.floor(M*3),0,2),r==="bottom"?e=0:r==="middle"?e=1:r==="top"?e=2:e=g.constrain(Math.floor(e*3),0,2),x[e][M]}}}),sO=Ye({"src/components/dragelement/unhover.js"(X,H){"use strict";var g=$y(),x=m2(),A=b_().getGraphDiv,M=x_(),e=H.exports={};e.wrapped=function(t,r,o){t=A(t),t._fullLayout&&x.clear(t._fullLayout._uid+M.HOVERID),e.raw(t,r,o)},e.raw=function(r,o){var a=r._fullLayout,i=r._hoverdata;o||(o={}),!(o.target&&!r._dragged&&g.triggerHandler(r,"plotly_beforehover",o)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,o.target&&i&&r.emit("plotly_unhover",{event:o,points:i}))}}}),bp=Ye({"src/components/dragelement/index.js"(X,H){"use strict";var g=iO(),x=aS(),A=_2(),M=ta().removeElement,e=wh(),t=H.exports={};t.align=nO(),t.getCursor=oO();var r=sO();t.unhover=r.wrapped,t.unhoverRaw=r.raw,t.init=function(n){var s=n.gd,c=1,h=s._context.doubleClickDelay,v=n.element,p,T,l,_,w,S,E,m;s._mouseDownTime||(s._mouseDownTime=0),v.style.pointerEvents="all",v.onmousedown=u,A?(v._ontouchstart&&v.removeEventListener("touchstart",v._ontouchstart),v._ontouchstart=u,v.addEventListener("touchstart",u,{passive:!1})):v.ontouchstart=u;function b(P,L,z){return Math.abs(P)<z&&(P=0),Math.abs(L)<z&&(L=0),[P,L]}var d=n.clampFn||b;function u(P){s._dragged=!1,s._dragging=!0;var L=a(P);p=L[0],T=L[1],E=P.target,S=P,m=P.buttons===2||P.ctrlKey,typeof P.clientX>"u"&&typeof P.clientY>"u"&&(P.clientX=p,P.clientY=T),l=new Date().getTime(),l-s._mouseDownTime<h?c+=1:(c=1,s._mouseDownTime=l),n.prepFn&&n.prepFn(P,p,T),x&&!m?(w=o(),w.style.cursor=window.getComputedStyle(v).cursor):x||(w=document,_=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(v).cursor),document.addEventListener("mouseup",f),document.addEventListener("touchend",f),n.dragmode!==!1&&(P.preventDefault(),document.addEventListener("mousemove",y),document.addEventListener("touchmove",y,{passive:!1}))}function y(P){P.preventDefault();var L=a(P),z=n.minDrag||e.MINDRAG,F=d(L[0]-p,L[1]-T,z),B=F[0],O=F[1];(B||O)&&(s._dragged=!0,t.unhover(s,P)),s._dragged&&n.moveFn&&!m&&(s._dragdata={element:v,dx:B,dy:O},n.moveFn(B,O))}function f(P){if(delete s._dragdata,n.dragmode!==!1&&(P.preventDefault(),document.removeEventListener("mousemove",y),document.removeEventListener("touchmove",y)),document.removeEventListener("mouseup",f),document.removeEventListener("touchend",f),x?M(w):_&&(w.documentElement.style.cursor=_,_=null),!s._dragging){s._dragged=!1;return}if(s._dragging=!1,new Date().getTime()-s._mouseDownTime>h&&(c=Math.max(c-1,1)),s._dragged)n.doneFn&&n.doneFn();else{var L;S.target===E?L=S:(L={target:E,srcElement:E,toElement:E},Object.keys(S).concat(Object.keys(S.__proto__)).forEach(z=>{var F=S[z];!L[z]&&typeof F!="function"&&(L[z]=F)})),n.clickFn&&n.clickFn(c,L),m||E.dispatchEvent(new MouseEvent("click",P))}s._dragging=!1,s._dragged=!1}};function o(){var i=document.createElement("div");i.className="dragcover";var n=i.style;return n.position="fixed",n.left=0,n.right=0,n.top=0,n.bottom=0,n.zIndex=999999999,n.background="none",document.body.appendChild(i),i}t.coverSlip=o;function a(i){return g(i.changedTouches?i.changedTouches[0]:i,document.body)}}}),Kd=Ye({"src/lib/setcursor.js"(X,H){"use strict";H.exports=function(x,A){(x.attr("class")||"").split(" ").forEach(function(M){M.indexOf("cursor-")===0&&x.classed(M,!1)}),A&&x.classed("cursor-"+A,!0)}}}),lO=Ye({"src/lib/override_cursor.js"(X,H){"use strict";var g=Kd(),x="data-savedcursor",A="!!";H.exports=function(e,t){var r=e.attr(x);if(t){if(!r){for(var o=(e.attr("class")||"").split(" "),a=0;a<o.length;a++){var i=o[a];i.indexOf("cursor-")===0&&e.attr(x,i.substr(7)).classed(i,!1)}e.attr(x)||e.attr(x,A)}g(e,t)}else r&&(e.attr(x,null),r===A?g(e):g(e,r))}}}),hS=Ye({"src/components/legend/attributes.js"(X,H){"use strict";var g=Au(),x=Gf();H.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:x.defaultLine,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:g({editType:"legend"}),grouptitlefont:g({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:g({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}}}),x2=Ye({"src/components/legend/helpers.js"(X){"use strict";X.isGrouped=function(g){return(g.traceorder||"").indexOf("grouped")!==-1},X.isVertical=function(g){return g.orientation!=="h"},X.isReversed=function(g){return(g.traceorder||"").indexOf("reversed")!==-1}}}),pS=Ye({"src/components/legend/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=cl(),M=Pl(),e=hS(),t=Jy(),r=x2();function o(a,i,n,s){var c=i[a]||{},h=A.newContainer(n,a);function v(he,G){return x.coerce(c,h,e,he,G)}var p=x.coerceFont(v,"font",n.font);v("bgcolor",n.paper_bgcolor),v("bordercolor");var T=v("visible");if(T){for(var l,_=function(he,G){var $=l._input,J=l;return x.coerce($,J,M,he,G)},w=n.font||{},S=x.coerceFont(v,"grouptitlefont",w,{overrideDflt:{size:Math.round(w.size*1.1)}}),E=0,m=!1,b="normal",d=(n.shapes||[]).filter(function(he){return he.showlegend}),u=s.concat(d).filter(function(he){return a===(he.legend||"legend")}),y=0;y<u.length;y++)if(l=u[y],!!l.visible){var f=l._isShape;(l.showlegend||l._dfltShowLegend&&!(l._module&&l._module.attributes&&l._module.attributes.showlegend&&l._module.attributes.showlegend.dflt===!1))&&(E++,l.showlegend&&(m=!0,(!f&&g.traceIs(l,"pie-like")||l._input.showlegend===!0)&&E++),x.coerceFont(_,"legendgrouptitle.font",S)),(!f&&g.traceIs(l,"bar")&&n.barmode==="stack"||["tonextx","tonexty"].indexOf(l.fill)!==-1)&&(b=r.isGrouped({traceorder:b})?"grouped+reversed":"reversed"),l.legendgroup!==void 0&&l.legendgroup!==""&&(b=r.isReversed({traceorder:b})?"reversed+grouped":"grouped")}var P=x.coerce(i,n,t,"showlegend",m&&E>(a==="legend"?1:0));if(P===!1&&(n[a]=void 0),!(P===!1&&!c.uirevision)&&(v("uirevision",n.uirevision),P!==!1)){v("borderwidth");var L=v("orientation"),z=v("yref"),F=v("xref"),B=L==="h",O=z==="paper",I=F==="paper",N,U,W,Q="left";B?(N=0,g.getComponentMethod("rangeslider","isVisible")(i.xaxis)?O?(U=1.1,W="bottom"):(U=1,W="top"):O?(U=-.1,W="top"):(U=0,W="bottom")):(U=1,W="auto",I?N=1.02:(N=1,Q="right")),x.coerce(c,h,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:N}},"x"),x.coerce(c,h,{y:{valType:"number",editType:"legend",min:O?-2:0,max:O?3:1,dflt:U}},"y"),v("traceorder",b),r.isGrouped(n[a])&&v("tracegroupgap"),v("entrywidth"),v("entrywidthmode"),v("indentation"),v("itemsizing"),v("itemwidth"),v("itemclick"),v("itemdoubleclick"),v("groupclick"),v("xanchor",Q),v("yanchor",W),v("valign"),x.noneOrAll(c,h,["x","y"]);var ue=v("title.text");if(ue){v("title.side",B?"left":"top");var se=x.extendFlat({},p,{size:x.bigFont(p.size)});x.coerceFont(v,"title.font",se)}}}}H.exports=function(i,n,s){var c,h=s.slice(),v=n.shapes;if(v)for(c=0;c<v.length;c++){var p=v[c];if(p.showlegend){var T={_input:p._input,visible:p.visible,showlegend:p.showlegend,legend:p.legend};h.push(T)}}var l=["legend"];for(c=0;c<h.length;c++)x.pushUnique(l,h[c].legend);for(n._legends=[],c=0;c<l.length;c++){var _=l[c];o(_,i,n,h),n[_]&&n[_].visible&&(n[_]._id=_),n._legends.push(_)}}}}),uO=Ye({"src/components/legend/handle_click.js"(X,H){"use strict";var g=Hn(),x=ta(),A=x.pushUnique,M=!0;H.exports=function(t,r,o){var a=r._fullLayout;if(r._dragged||r._editing)return;var i=a.legend.itemclick,n=a.legend.itemdoubleclick,s=a.legend.groupclick;o===1&&i==="toggle"&&n==="toggleothers"&&M&&r.data&&r._context.showTips&&x.notifier(x._(r,"Double-click on legend to isolate one trace"),"long"),M=!1;var c;if(o===1?c=i:o===2&&(c=n),!c)return;var h=s==="togglegroup",v=a.hiddenlabels?a.hiddenlabels.slice():[],p=t.data()[0][0];if(p.groupTitle&&p.noClick)return;var T=r._fullData,l=(a.shapes||[]).filter(function(Me){return Me.showlegend}),_=T.concat(l),w=p.trace;w._isShape&&(w=w._fullInput);var S=w.legendgroup,E,m,b,d,u,y,f={},P=[],L=[],z=[];function F(Me,ge){var ce=P.indexOf(Me),ze=f.visible;return ze||(ze=f.visible=[]),P.indexOf(Me)===-1&&(P.push(Me),ce=P.length-1),ze[ce]=ge,ce}var B=(a.shapes||[]).map(function(Me){return Me._input}),O=!1;function I(Me,ge){B[Me].visible=ge,O=!0}function N(Me,ge){if(!(p.groupTitle&&!h)){var ce=Me._fullInput||Me,ze=ce._isShape,tt=ce.index;tt===void 0&&(tt=ce._index);var nt=ce.visible===!1?!1:ge;ze?I(tt,nt):F(tt,nt)}}var U=w.legend,W=w._fullInput,Q=W&&W._isShape;if(!Q&&g.traceIs(w,"pie-like")){var ue=p.label,se=v.indexOf(ue);if(c==="toggle")se===-1?v.push(ue):v.splice(se,1);else if(c==="toggleothers"){var he=se!==-1,G=[];for(E=0;E<r.calcdata.length;E++){var $=r.calcdata[E];for(m=0;m<$.length;m++){var J=$[m],Z=J.label;U===$[0].trace.legend&&ue!==Z&&(v.indexOf(Z)===-1&&(he=!0),A(v,Z),G.push(Z))}}if(!he)for(var re=0;re<G.length;re++){var ne=v.indexOf(G[re]);ne!==-1&&v.splice(ne,1)}}g.call("_guiRelayout",r,"hiddenlabels",v)}else{var j=S&&S.length,ee=[],ie;if(j)for(E=0;E<_.length;E++)ie=_[E],ie.visible&&ie.legendgroup===S&&ee.push(E);if(c==="toggle"){var fe;switch(w.visible){case!0:fe="legendonly";break;case!1:fe=!1;break;case"legendonly":fe=!0;break}if(j)if(h)for(E=0;E<_.length;E++){var be=_[E];be.visible!==!1&&be.legendgroup===S&&N(be,fe)}else N(w,fe);else N(w,fe)}else if(c==="toggleothers"){var Ae,Be,Ie,Ze,at,it=!0;for(E=0;E<_.length;E++)if(at=_[E],Ae=at===w,Ie=at.showlegend!==!0,!(Ae||Ie)&&(Be=j&&at.legendgroup===S,!Be&&at.legend===U&&at.visible===!0&&!g.traceIs(at,"notLegendIsolatable"))){it=!1;break}for(E=0;E<_.length;E++)if(at=_[E],!(at.visible===!1||at.legend!==U)&&!g.traceIs(at,"notLegendIsolatable"))switch(w.visible){case"legendonly":N(at,!0);break;case!0:Ze=it?!0:"legendonly",Ae=at===w,Ie=at.showlegend!==!0&&!at.legendgroup,Be=Ae||j&&at.legendgroup===S,N(at,Be||Ie?!0:Ze);break}}for(E=0;E<L.length;E++)if(b=L[E],!!b){var et=b.constructUpdate(),lt=Object.keys(et);for(m=0;m<lt.length;m++)d=lt[m],y=f[d]=f[d]||[],y[z[E]]=et[d]}for(u=Object.keys(f),E=0;E<u.length;E++)for(d=u[E],m=0;m<P.length;m++)f[d].hasOwnProperty(m)||(f[d][m]=void 0);O?g.call("_guiUpdate",r,f,{shapes:B},P):g.call("_guiRestyle",r,f,P)}}}}),dS=Ye({"src/components/legend/constants.js"(X,H){"use strict";H.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}}}),cO=Ye({"src/components/legend/get_legend_data.js"(X,H){"use strict";var g=Hn(),x=x2();H.exports=function(M,e,t){var r=e._inHover,o=x.isGrouped(e),a=x.isReversed(e),i={},n=[],s=!1,c={},h=0,v=0,p,T;function l(N,U,W){if(e.visible!==!1&&!(t&&N!==e._id))if(U===""||!x.isGrouped(e)){var Q="~~i"+h;n.push(Q),i[Q]=[W],h++}else n.indexOf(U)===-1?(n.push(U),s=!0,i[U]=[W]):i[U].push(W)}for(p=0;p<M.length;p++){var _=M[p],w=_[0],S=w.trace,E=S.legend,m=S.legendgroup;if(!(!r&&(!S.visible||!S.showlegend)))if(g.traceIs(S,"pie-like"))for(c[m]||(c[m]={}),T=0;T<_.length;T++){var b=_[T].label;c[m][b]||(l(E,m,{label:b,color:_[T].color,i:_[T].i,trace:S,pts:_[T].pts}),c[m][b]=!0,v=Math.max(v,(b||"").length))}else l(E,m,w),v=Math.max(v,(S.name||"").length)}if(!n.length)return[];var d=!s||!o,u=[];for(p=0;p<n.length;p++){var y=i[n[p]];d?u.push(y[0]):u.push(y)}for(d&&(u=[u]),p=0;p<u.length;p++){var f=1/0;for(T=0;T<u[p].length;T++){var P=u[p][T].trace.legendrank;f>P&&(f=P)}u[p][0]._groupMinRank=f,u[p][0]._preGroupSort=p}var L=function(N,U){return N[0]._groupMinRank-U[0]._groupMinRank||N[0]._preGroupSort-U[0]._preGroupSort},z=function(N,U){return N.trace.legendrank-U.trace.legendrank||N._preSort-U._preSort};for(u.forEach(function(N,U){N[0]._preGroupSort=U}),u.sort(L),p=0;p<u.length;p++){u[p].forEach(function(N,U){N._preSort=U}),u[p].sort(z);var F=u[p][0].trace,B=null;for(T=0;T<u[p].length;T++){var O=u[p][T].trace.legendgrouptitle;if(O&&O.text){B=O,r&&(O.font=e._groupTitleFont);break}}if(a&&u[p].reverse(),B){var I=!1;for(T=0;T<u[p].length;T++)if(g.traceIs(u[p][T].trace,"pie-like")){I=!0;break}u[p].unshift({i:-1,groupTitle:B,noClick:I,trace:{showlegend:F.showlegend,legendgroup:F.legendgroup,visible:e.groupclick==="toggleitem"?!0:F.visible}})}for(T=0;T<u[p].length;T++)u[p][T]=[u[p][T]]}return e._lgroupsLength=u.length,e._maxNameLength=v,u}}}),eg=Ye({"src/traces/pie/helpers.js"(X){"use strict";var H=ta();function g(x){return x.indexOf("e")!==-1?x.replace(/[.]?0+e/,"e"):x.indexOf(".")!==-1?x.replace(/[.]?0+$/,""):x}X.formatPiePercent=function(A,M){var e=g((A*100).toPrecision(3));return H.numSeparate(e,M)+"%"},X.formatPieValue=function(A,M){var e=g(A.toPrecision(10));return H.numSeparate(e,M)},X.getFirstFilled=function(A,M){if(H.isArrayOrTypedArray(A))for(var e=0;e<M.length;e++){var t=A[M[e]];if(t||t===0||t==="")return t}},X.castOption=function(A,M){if(H.isArrayOrTypedArray(A))return X.getFirstFilled(A,M);if(A)return A},X.getRotationAngle=function(x){return(x==="auto"?0:x)*Math.PI/180}}}),fO=Ye({"src/traces/pie/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r){var o=t.marker.pattern;o&&o.shape?g.pointStyle(M,t,r,e):x.fill(M,e.color)}}}),a1=Ye({"src/traces/pie/style_one.js"(X,H){"use strict";var g=Fn(),x=eg().castOption,A=fO();H.exports=function(e,t,r,o){var a=r.marker.line,i=x(a.color,t.pts)||g.defaultLine,n=x(a.width,t.pts)||0;e.call(A,t,r,o).style("stroke-width",n).call(g.stroke,i)}}}),vS=Ye({"src/components/legend/style.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=A.strTranslate,e=Bo(),t=Fn(),r=Up().extractOpts,o=uu(),a=a1(),i=eg().castOption,n=dS(),s=12,c=5,h=2,v=10,p=5;H.exports=function(S,E,m){var b=E._fullLayout;m||(m=b.legend);var d=m.itemsizing==="constant",u=m.itemwidth,y=(u+n.itemGap*2)/2,f=M(y,0),P=function(G,$,J,Z){var re;if(G+1)re=G;else if($&&$.width>0)re=$.width;else return 0;return d?Z:Math.min(re,J)};S.each(function(G){var $=g.select(this),J=A.ensureSingle($,"g","layers");J.style("opacity",G[0].trace.opacity);var Z=m.indentation,re=m.valign,ne=G[0].lineHeight,j=G[0].height;if(re==="middle"&&Z===0||!ne||!j)J.attr("transform",null);else{var ee={top:1,bottom:-1}[re],ie=ee*(.5*(ne-j+3))||0,fe=m.indentation;J.attr("transform",M(fe,ie))}var be=J.selectAll("g.legendfill").data([G]);be.enter().append("g").classed("legendfill",!0);var Ae=J.selectAll("g.legendlines").data([G]);Ae.enter().append("g").classed("legendlines",!0);var Be=J.selectAll("g.legendsymbols").data([G]);Be.enter().append("g").classed("legendsymbols",!0),Be.selectAll("g.legendpoints").data([G]).enter().append("g").classed("legendpoints",!0)}).each(he).each(F).each(O).each(B).each(N).each(ue).each(Q).each(L).each(z).each(U).each(W);function L(G){var $=l(G),J=$.showFill,Z=$.showLine,re=$.showGradientLine,ne=$.showGradientFill,j=$.anyFill,ee=$.anyLine,ie=G[0],fe=ie.trace,be,Ae,Be=r(fe),Ie=Be.colorscale,Ze=Be.reversescale,at=function(ze){if(ze.size())if(J)e.fillGroupStyle(ze,E,!0);else{var tt="legendfill-"+fe.uid;e.gradient(ze,E,tt,T(Ze),Ie,"fill")}},it=function(ze){if(ze.size()){var tt="legendline-"+fe.uid;e.lineGroupStyle(ze),e.gradient(ze,E,tt,T(Ze),Ie,"stroke")}},et=o.hasMarkers(fe)||!j?"M5,0":ee?"M5,-2":"M5,-3",lt=g.select(this),Me=lt.select(".legendfill").selectAll("path").data(J||ne?[G]:[]);if(Me.enter().append("path").classed("js-fill",!0),Me.exit().remove(),Me.attr("d",et+"h"+u+"v6h-"+u+"z").call(at),Z||re){var ge=P(void 0,fe.line,v,c);Ae=A.minExtend(fe,{line:{width:ge}}),be=[A.minExtend(ie,{trace:Ae})]}var ce=lt.select(".legendlines").selectAll("path").data(Z||re?[be]:[]);ce.enter().append("path").classed("js-line",!0),ce.exit().remove(),ce.attr("d",et+(re?"l"+u+",0.0001":"h"+u)).call(Z?e.lineGroupStyle:it)}function z(G){var $=l(G),J=$.anyFill,Z=$.anyLine,re=$.showLine,ne=$.showMarker,j=G[0],ee=j.trace,ie=!ne&&!Z&&!J&&o.hasText(ee),fe,be;function Ae(Me,ge,ce,ze){var tt=A.nestedProperty(ee,Me).get(),nt=A.isArrayOrTypedArray(tt)&&ge?ge(tt):tt;if(d&&nt&&ze!==void 0&&(nt=ze),ce){if(nt<ce[0])return ce[0];if(nt>ce[1])return ce[1]}return nt}function Be(Me){return j._distinct&&j.index&&Me[j.index]?Me[j.index]:Me[0]}if(ne||ie||re){var Ie={},Ze={};if(ne){Ie.mc=Ae("marker.color",Be),Ie.mx=Ae("marker.symbol",Be),Ie.mo=Ae("marker.opacity",A.mean,[.2,1]),Ie.mlc=Ae("marker.line.color",Be),Ie.mlw=Ae("marker.line.width",A.mean,[0,5],h),Ze.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var at=Ae("marker.size",A.mean,[2,16],s);Ie.ms=at,Ze.marker.size=at}re&&(Ze.line={width:Ae("line.width",Be,[0,10],c)}),ie&&(Ie.tx="Aa",Ie.tp=Ae("textposition",Be),Ie.ts=10,Ie.tc=Ae("textfont.color",Be),Ie.tf=Ae("textfont.family",Be),Ie.tw=Ae("textfont.weight",Be),Ie.ty=Ae("textfont.style",Be),Ie.tv=Ae("textfont.variant",Be),Ie.tC=Ae("textfont.textcase",Be),Ie.tE=Ae("textfont.lineposition",Be),Ie.tS=Ae("textfont.shadow",Be)),fe=[A.minExtend(j,Ie)],be=A.minExtend(ee,Ze),be.selectedpoints=null,be.texttemplate=null}var it=g.select(this).select("g.legendpoints"),et=it.selectAll("path.scatterpts").data(ne?fe:[]);et.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",f),et.exit().remove(),et.call(e.pointStyle,be,E),ne&&(fe[0].mrc=3);var lt=it.selectAll("g.pointtext").data(ie?fe:[]);lt.enter().append("g").classed("pointtext",!0).append("text").attr("transform",f),lt.exit().remove(),lt.selectAll("text").call(e.textPointStyle,be,E)}function F(G){var $=G[0].trace,J=$.type==="waterfall";if(G[0]._distinct&&J){var Z=G[0].trace[G[0].dir].marker;return G[0].mc=Z.color,G[0].mlw=Z.line.width,G[0].mlc=Z.line.color,I(G,this,"waterfall")}var re=[];$.visible&&J&&(re=G[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var ne=g.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(re);ne.enter().append("path").classed("legendwaterfall",!0).attr("transform",f).style("stroke-miterlimit",1),ne.exit().remove(),ne.each(function(j){var ee=g.select(this),ie=$[j[0]].marker,fe=P(void 0,ie.line,p,h);ee.attr("d",j[1]).style("stroke-width",fe+"px").call(t.fill,ie.color),fe&&ee.call(t.stroke,ie.line.color)})}function B(G){I(G,this)}function O(G){I(G,this,"funnel")}function I(G,$,J){var Z=G[0].trace,re=Z.marker||{},ne=re.line||{},j=re.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",ee=J?Z.visible&&Z.type===J:x.traceIs(Z,"bar"),ie=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ee?[G]:[]);ie.enter().append("path").classed("legend"+J,!0).attr("d",j).attr("transform",f),ie.exit().remove(),ie.each(function(fe){var be=g.select(this),Ae=fe[0],Be=P(Ae.mlw,re.line,p,h);be.style("stroke-width",Be+"px");var Ie=Ae.mcc;if(!m._inHover&&"mc"in Ae){var Ze=r(re),at=Ze.mid;at===void 0&&(at=(Ze.max+Ze.min)/2),Ie=e.tryColorscale(re,"")(at)}var it=Ie||Ae.mc||re.color,et=re.pattern,lt=et&&e.getPatternAttr(et.shape,0,"");if(lt){var Me=e.getPatternAttr(et.bgcolor,0,null),ge=e.getPatternAttr(et.fgcolor,0,null),ce=et.fgopacity,ze=_(et.size,8,10),tt=_(et.solidity,.5,1),nt="legend-"+Z.uid;be.call(e.pattern,"legend",E,nt,lt,ze,tt,Ie,et.fillmode,Me,ge,ce)}else be.call(t.fill,it);Be&&t.stroke(be,Ae.mlc||ne.color)})}function N(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendbox").data($.visible&&x.traceIs($,"box-violin")?[G]:[]);J.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),J.exit().remove(),J.each(function(){var Z=g.select(this);if(($.boxpoints==="all"||$.points==="all")&&t.opacity($.fillcolor)===0&&t.opacity(($.line||{}).color)===0){var re=A.minExtend($,{marker:{size:d?s:A.constrain($.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});J.call(e.pointStyle,re,E)}else{var ne=P(void 0,$.line,p,h);Z.style("stroke-width",ne+"px").call(t.fill,$.fillcolor),ne&&t.stroke(Z,$.line.color)}})}function U(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendcandle").data($.visible&&$.type==="candlestick"?[G,G]:[]);J.enter().append("path").classed("legendcandle",!0).attr("d",function(Z,re){return re?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("stroke-width",ee+"px").call(t.fill,j.fillcolor),ee&&t.stroke(ne,j.line.color)})}function W(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendohlc").data($.visible&&$.type==="ohlc"?[G,G]:[]);J.enter().append("path").classed("legendohlc",!0).attr("d",function(Z,re){return re?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("fill","none").call(e.dashLine,j.line.dash,ee),ee&&t.stroke(ne,j.line.color)})}function Q(G){se(G,this,"pie")}function ue(G){se(G,this,"funnelarea")}function se(G,$,J){var Z=G[0],re=Z.trace,ne=J?re.visible&&re.type===J:x.traceIs(re,J),j=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ne?[G]:[]);if(j.enter().append("path").classed("legend"+J,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),j.exit().remove(),j.size()){var ee=re.marker||{},ie=P(i(ee.line.width,Z.pts),ee.line,p,h),fe="pieLike",be=A.minExtend(re,{marker:{line:{width:ie}}},fe),Ae=A.minExtend(Z,{trace:be},fe);a(j,Ae,be,E)}}function he(G){var $=G[0].trace,J,Z=[];if($.visible)switch($.type){case"histogram2d":case"heatmap":Z=[["M-15,-2V4H15V-2Z"]],J=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":Z=[["M-6,-6V6H6V-6Z"]],J=!0;break;case"densitymapbox":case"densitymap":Z=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],J="radial";break;case"cone":Z=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],J=!1;break;case"streamtube":Z=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],J=!1;break;case"surface":Z=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],J=!0;break;case"mesh3d":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!1;break;case"volume":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!0;break;case"isosurface":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],J=!1;break}var re=g.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(Z);re.enter().append("path").classed("legend3dandfriends",!0).attr("transform",f).style("stroke-miterlimit",1),re.exit().remove(),re.each(function(ne,j){var ee=g.select(this),ie=r($),fe=ie.colorscale,be=ie.reversescale,Ae=function(at){if(at.size()){var it="legendfill-"+$.uid;e.gradient(at,E,it,T(be,J==="radial"),fe,"fill")}},Be;if(fe){if(!J){var Ze=fe.length;Be=j===0?fe[be?Ze-1:0][1]:j===1?fe[be?0:Ze-1][1]:fe[Math.floor((Ze-1)/2)][1]}}else{var Ie=$.vertexcolor||$.facecolor||$.color;Be=A.isArrayOrTypedArray(Ie)?Ie[j]||Ie[0]:Ie}ee.attr("d",ne[0]),Be?ee.call(t.fill,Be):ee.call(Ae)})}};function T(w,S){var E=S?"radial":"horizontal";return E+(w?"":"reversed")}function l(w){var S=w[0].trace,E=S.contours,m=o.hasLines(S),b=o.hasMarkers(S),d=S.visible&&S.fill&&S.fill!=="none",u=!1,y=!1;if(E){var f=E.coloring;f==="lines"?u=!0:m=f==="none"||f==="heatmap"||E.showlines,E.type==="constraint"?d=E._operation!=="=":(f==="fill"||f==="heatmap")&&(y=!0)}return{showMarker:b,showLine:m,showFill:d,showGradientLine:u,showGradientFill:y,anyLine:m||u,anyFill:d||y}}function _(w,S,E){return w&&A.isArrayOrTypedArray(w)?S:w>E?E:w}}}),mS=Ye({"src/components/legend/draw.js"(X,H){"use strict";var g=_n(),x=ta(),A=Gu(),M=Hn(),e=$y(),t=bp(),r=Bo(),o=Fn(),a=jl(),i=uO(),n=dS(),s=oh(),c=s.LINE_SPACING,h=s.FROM_TL,v=s.FROM_BR,p=cO(),T=vS(),l=x2(),_=1,w=/^legend[0-9]*$/;H.exports=function(U,W){if(W)E(U,W);else{var Q=U._fullLayout,ue=Q._legends,se=Q._infolayer.selectAll('[class^="legend"]');se.each(function(){var J=g.select(this),Z=J.attr("class"),re=Z.split(" ")[0];re.match(w)&&ue.indexOf(re)===-1&&J.remove()});for(var he=0;he<ue.length;he++){var G=ue[he],$=U._fullLayout[G];E(U,$)}}};function S(N,U,W){if(!(U.title.side!=="top center"&&U.title.side!=="top right")){var Q=U.title.font,ue=Q.size*c,se=0,he=N.node(),G=r.bBox(he).width;U.title.side==="top center"?se=.5*(U._width-2*W-2*n.titlePad-G):U.title.side==="top right"&&(se=U._width-2*W-2*n.titlePad-G),a.positionText(N,W+n.titlePad+se,W+ue)}}function E(N,U){var W=U||{},Q=N._fullLayout,ue=I(W),se,he,G=W._inHover;if(G?(he=W.layer,se="hover"):(he=Q._infolayer,se=ue),!!he){se+=Q._uid,N._legendMouseDownTime||(N._legendMouseDownTime=0);var $;if(G){if(!W.entries)return;$=p(W.entries,W)}else{for(var J=(N.calcdata||[]).slice(),Z=Q.shapes,re=0;re<Z.length;re++){var ne=Z[re];if(ne.showlegend){var j={_isShape:!0,_fullInput:ne,index:ne._index,name:ne.name||ne.label.text||"shape "+ne._index,legend:ne.legend,legendgroup:ne.legendgroup,legendgrouptitle:ne.legendgrouptitle,legendrank:ne.legendrank,legendwidth:ne.legendwidth,showlegend:ne.showlegend,visible:ne.visible,opacity:ne.opacity,mode:ne.type==="line"?"lines":"markers",line:ne.line,marker:{line:ne.line,color:ne.fillcolor,size:12,symbol:ne.type==="rect"?"square":ne.type==="circle"?"circle":"hexagon2"}};J.push([{trace:j}])}}$=Q.showlegend&&p(J,W,Q._legends.length>1)}var ee=Q.hiddenlabels||[];if(!G&&(!Q.showlegend||!$.length))return he.selectAll("."+ue).remove(),Q._topdefs.select("#"+se).remove(),A.autoMargin(N,ue);var ie=x.ensureSingle(he,"g",ue,function(et){G||et.attr("pointer-events","all")}),fe=x.ensureSingleById(Q._topdefs,"clipPath",se,function(et){et.append("rect")}),be=x.ensureSingle(ie,"rect","bg",function(et){et.attr("shape-rendering","crispEdges")});be.call(o.stroke,W.bordercolor).call(o.fill,W.bgcolor).style("stroke-width",W.borderwidth+"px");var Ae=x.ensureSingle(ie,"g","scrollbox"),Be=W.title;W._titleWidth=0,W._titleHeight=0;var Ie;Be.text?(Ie=x.ensureSingle(Ae,"text",ue+"titletext"),Ie.attr("text-anchor","start").call(r.font,Be.font).text(Be.text),f(Ie,Ae,N,W,_)):Ae.selectAll("."+ue+"titletext").remove();var Ze=x.ensureSingle(ie,"rect","scrollbar",function(et){et.attr(n.scrollBarEnterAttrs).call(o.fill,n.scrollBarColor)}),at=Ae.selectAll("g.groups").data($);at.enter().append("g").attr("class","groups"),at.exit().remove();var it=at.selectAll("g.traces").data(x.identity);it.enter().append("g").attr("class","traces"),it.exit().remove(),it.style("opacity",function(et){var lt=et[0].trace;return M.traceIs(lt,"pie-like")?ee.indexOf(et[0].label)!==-1?.5:1:lt.visible==="legendonly"?.5:1}).each(function(){g.select(this).call(d,N,W)}).call(T,N,W).each(function(){G||g.select(this).call(y,N,ue)}),x.syncOrAsync([A.previousPromises,function(){return z(N,at,it,W)},function(){var et=Q._size,lt=W.borderwidth,Me=W.xref==="paper",ge=W.yref==="paper";if(Be.text&&S(Ie,W,lt),!G){var ce,ze;Me?ce=et.l+et.w*W.x-h[B(W)]*W._width:ce=Q.width*W.x-h[B(W)]*W._width,ge?ze=et.t+et.h*(1-W.y)-h[O(W)]*W._effHeight:ze=Q.height*(1-W.y)-h[O(W)]*W._effHeight;var tt=F(N,ue,ce,ze);if(tt)return;if(Q.margin.autoexpand){var nt=ce,Qe=ze;ce=Me?x.constrain(ce,0,Q.width-W._width):nt,ze=ge?x.constrain(ze,0,Q.height-W._effHeight):Qe,ce!==nt&&x.log("Constrain "+ue+".x to make legend fit inside graph"),ze!==Qe&&x.log("Constrain "+ue+".y to make legend fit inside graph")}r.setTranslate(ie,ce,ze)}if(Ze.on(".drag",null),ie.on("wheel",null),G||W._height<=W._maxHeight||N._context.staticPlot){var Ct=W._effHeight;G&&(Ct=W._height),be.attr({width:W._width-lt,height:Ct-lt,x:lt/2,y:lt/2}),r.setTranslate(Ae,0,0),fe.select("rect").attr({width:W._width-2*lt,height:Ct-2*lt,x:lt,y:lt}),r.setClipUrl(Ae,se,N),r.setRect(Ze,0,0,0,0),delete W._scrollY}else{var St=Math.max(n.scrollBarMinHeight,W._effHeight*W._effHeight/W._height),Ot=W._effHeight-St-2*n.scrollBarMargin,jt=W._height-W._effHeight,ur=Ot/jt,ar=Math.min(W._scrollY||0,jt);be.attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-lt,x:lt/2,y:lt/2}),fe.select("rect").attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-2*lt,x:lt,y:lt+ar}),r.setClipUrl(Ae,se,N),Ee(ar,St,ur),ie.on("wheel",function(){ar=x.constrain(W._scrollY+g.event.deltaY/Ot*jt,0,jt),Ee(ar,St,ur),ar!==0&&ar!==jt&&g.event.preventDefault()});var Cr,vr,_r,yt=function(rt,dt,xt){var It=(xt-dt)/ur+rt;return x.constrain(It,0,jt)},Fe=function(rt,dt,xt){var It=(dt-xt)/ur+rt;return x.constrain(It,0,jt)},Ke=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"?Cr=rt.changedTouches[0].clientY:Cr=rt.clientY,_r=ar}).on("drag",function(){var rt=g.event.sourceEvent;rt.buttons===2||rt.ctrlKey||(rt.type==="touchmove"?vr=rt.changedTouches[0].clientY:vr=rt.clientY,ar=yt(_r,Cr,vr),Ee(ar,St,ur))});Ze.call(Ke);var Ne=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"&&(Cr=rt.changedTouches[0].clientY,_r=ar)}).on("drag",function(){var rt=g.event.sourceEvent;rt.type==="touchmove"&&(vr=rt.changedTouches[0].clientY,ar=Fe(_r,Cr,vr),Ee(ar,St,ur))});Ae.call(Ne)}function Ee(rt,dt,xt){W._scrollY=N._fullLayout[ue]._scrollY=rt,r.setTranslate(Ae,0,-rt),r.setRect(Ze,W._width,n.scrollBarMargin+rt*xt,n.scrollBarWidth,dt),fe.select("rect").attr("y",lt+rt)}if(N._context.edits.legendPosition){var Ve,ke,Te,Le;ie.classed("cursor-move",!0),t.init({element:ie.node(),gd:N,prepFn:function(rt){if(rt.target!==Ze.node()){var dt=r.getTranslate(ie);Te=dt.x,Le=dt.y}},moveFn:function(rt,dt){if(Te!==void 0&&Le!==void 0){var xt=Te+rt,It=Le+dt;r.setTranslate(ie,xt,It),Ve=t.align(xt,W._width,et.l,et.l+et.w,W.xanchor),ke=t.align(It+W._height,-W._height,et.t+et.h,et.t,W.yanchor)}},doneFn:function(){if(Ve!==void 0&&ke!==void 0){var rt={};rt[ue+".x"]=Ve,rt[ue+".y"]=ke,M.call("_guiRelayout",N,rt)}},clickFn:function(rt,dt){var xt=he.selectAll("g.traces").filter(function(){var It=this.getBoundingClientRect();return dt.clientX>=It.left&&dt.clientX<=It.right&&dt.clientY>=It.top&&dt.clientY<=It.bottom});xt.size()>0&&b(N,ie,xt,rt,dt)}})}}],N)}}function m(N,U,W){var Q=N[0],ue=Q.width,se=U.entrywidthmode,he=Q.trace.legendwidth||U.entrywidth;return se==="fraction"?U._maxWidth*he:W+(he||ue)}function b(N,U,W,Q,ue){var se=W.data()[0][0].trace,he={event:ue,node:W.node(),curveNumber:se.index,expandedIndex:se.index,data:N.data,layout:N.layout,frames:N._transitionData._frames,config:N._context,fullData:N._fullData,fullLayout:N._fullLayout};se._group&&(he.group=se._group),M.traceIs(se,"pie-like")&&(he.label=W.datum()[0].label);var G=e.triggerHandler(N,"plotly_legendclick",he);if(Q===1){if(G===!1)return;U._clickTimeout=setTimeout(function(){N._fullLayout&&i(W,N,Q)},N._context.doubleClickDelay)}else if(Q===2){U._clickTimeout&&clearTimeout(U._clickTimeout),N._legendMouseDownTime=0;var $=e.triggerHandler(N,"plotly_legenddoubleclick",he);$!==!1&&G!==!1&&i(W,N,Q)}}function d(N,U,W){var Q=I(W),ue=N.data()[0][0],se=ue.trace,he=M.traceIs(se,"pie-like"),G=!W._inHover&&U._context.edits.legendText&&!he,$=W._maxNameLength,J,Z;ue.groupTitle?(J=ue.groupTitle.text,Z=ue.groupTitle.font):(Z=W.font,W.entries?J=ue.text:(J=he?ue.label:se.name,se._meta&&(J=x.templateString(J,se._meta))));var re=x.ensureSingle(N,"text",Q+"text");re.attr("text-anchor","start").call(r.font,Z).text(G?u(J,$):J);var ne=W.indentation+W.itemwidth+n.itemGap*2;a.positionText(re,ne,0),G?re.call(a.makeEditable,{gd:U,text:J}).call(f,N,U,W).on("edit",function(j){this.text(u(j,$)).call(f,N,U,W);var ee=ue.trace._fullInput||{},ie={};return ie.name=j,ee._isShape?M.call("_guiRelayout",U,"shapes["+se.index+"].name",ie.name):M.call("_guiRestyle",U,ie,se.index)}):f(re,N,U,W)}function u(N,U){var W=Math.max(4,U);if(N&&N.trim().length>=W/2)return N;N=N||"";for(var Q=W-N.length;Q>0;Q--)N+=" ";return N}function y(N,U,W){var Q=U._context.doubleClickDelay,ue,se=1,he=x.ensureSingle(N,"rect",W+"toggle",function(G){U._context.staticPlot||G.style("cursor","pointer").attr("pointer-events","all"),G.call(o.fill,"rgba(0,0,0,0)")});U._context.staticPlot||(he.on("mousedown",function(){ue=new Date().getTime(),ue-U._legendMouseDownTime<Q?se+=1:(se=1,U._legendMouseDownTime=ue)}),he.on("mouseup",function(){if(!(U._dragged||U._editing)){var G=U._fullLayout[W];new Date().getTime()-U._legendMouseDownTime>Q&&(se=Math.max(se-1,1)),b(U,G,N,se,g.event)}}))}function f(N,U,W,Q,ue){Q._inHover&&N.attr("data-notex",!0),a.convertToTspans(N,W,function(){P(U,W,Q,ue)})}function P(N,U,W,Q){var ue=N.data()[0][0];if(!W._inHover&&ue&&!ue.trace.showlegend){N.remove();return}var se=N.select("g[class*=math-group]"),he=se.node(),G=I(W);W||(W=U._fullLayout[G]);var $=W.borderwidth,J;Q===_?J=W.title.font:ue.groupTitle?J=ue.groupTitle.font:J=W.font;var Z=J.size*c,re,ne;if(he){var j=r.bBox(he);re=j.height,ne=j.width,Q===_?r.setTranslate(se,$,$+re*.75):r.setTranslate(se,0,re*.25)}else{var ee="."+G+(Q===_?"title":"")+"text",ie=N.select(ee),fe=a.lineCount(ie),be=ie.node();if(re=Z*fe,ne=be?r.bBox(be).width:0,Q===_)W.title.side==="left"&&(ne+=n.itemGap*2),a.positionText(ie,$+n.titlePad,$+Z);else{var Ae=n.itemGap*2+W.indentation+W.itemwidth;ue.groupTitle&&(Ae=n.itemGap,ne-=W.indentation+W.itemwidth),a.positionText(ie,Ae,-Z*((fe-1)/2-.3))}}Q===_?(W._titleWidth=ne,W._titleHeight=re):(ue.lineHeight=Z,ue.height=Math.max(re,16)+3,ue.width=ne)}function L(N){var U=0,W=0,Q=N.title.side;return Q&&(Q.indexOf("left")!==-1&&(U=N._titleWidth),Q.indexOf("top")!==-1&&(W=N._titleHeight)),[U,W]}function z(N,U,W,Q){var ue=N._fullLayout,se=I(Q);Q||(Q=ue[se]);var he=ue._size,G=l.isVertical(Q),$=l.isGrouped(Q),J=Q.entrywidthmode==="fraction",Z=Q.borderwidth,re=2*Z,ne=n.itemGap,j=Q.indentation+Q.itemwidth+ne*2,ee=2*(Z+ne),ie=O(Q),fe=Q.y<0||Q.y===0&&ie==="top",be=Q.y>1||Q.y===1&&ie==="bottom",Ae=Q.tracegroupgap,Be={};Q._maxHeight=Math.max(fe||be?ue.height/2:he.h,30);var Ie=0;Q._width=0,Q._height=0;var Ze=L(Q);if(G)W.each(function(_r){var yt=_r[0].height;r.setTranslate(this,Z+Ze[0],Z+Ze[1]+Q._height+yt/2+ne),Q._height+=yt,Q._width=Math.max(Q._width,_r[0].width)}),Ie=j+Q._width,Q._width+=ne+j+re,Q._height+=ee,$&&(U.each(function(_r,yt){r.setTranslate(this,0,yt*Q.tracegroupgap)}),Q._height+=(Q._lgroupsLength-1)*Q.tracegroupgap);else{var at=B(Q),it=Q.x<0||Q.x===0&&at==="right",et=Q.x>1||Q.x===1&&at==="left",lt=be||fe,Me=ue.width/2;Q._maxWidth=Math.max(it?lt&&at==="left"?he.l+he.w:Me:et?lt&&at==="right"?he.r+he.w:Me:he.w,2*j);var ge=0,ce=0;W.each(function(_r){var yt=m(_r,Q,j);ge=Math.max(ge,yt),ce+=yt}),Ie=null;var ze=0;if($){var tt=0,nt=0,Qe=0;U.each(function(){var _r=0,yt=0;g.select(this).selectAll("g.traces").each(function(Ke){var Ne=m(Ke,Q,j),Ee=Ke[0].height;r.setTranslate(this,Ze[0],Ze[1]+Z+ne+Ee/2+yt),yt+=Ee,_r=Math.max(_r,Ne),Be[Ke[0].trace.legendgroup]=_r});var Fe=_r+ne;nt>0&&Fe+Z+nt>Q._maxWidth?(ze=Math.max(ze,nt),nt=0,Qe+=tt+Ae,tt=yt):tt=Math.max(tt,yt),r.setTranslate(this,nt,Qe),nt+=Fe}),Q._width=Math.max(ze,nt)+Z,Q._height=Qe+tt+ee}else{var Ct=W.size(),St=ce+re+(Ct-1)*ne<Q._maxWidth,Ot=0,jt=0,ur=0,ar=0;W.each(function(_r){var yt=_r[0].height,Fe=m(_r,Q,j,$),Ke=St?Fe:ge;J||(Ke+=ne),Ke+Z+jt-ne>=Q._maxWidth&&(ze=Math.max(ze,ar),jt=0,ur+=Ot,Q._height+=Ot,Ot=0),r.setTranslate(this,Ze[0]+Z+jt,Ze[1]+Z+ur+yt/2+ne),ar=jt+Fe+ne,jt+=Ke,Ot=Math.max(Ot,yt)}),St?(Q._width=jt+re,Q._height=Ot+ee):(Q._width=Math.max(ze,ar)+re,Q._height+=Ot+ee)}}Q._width=Math.ceil(Math.max(Q._width+Ze[0],Q._titleWidth+2*(Z+n.titlePad))),Q._height=Math.ceil(Math.max(Q._height+Ze[1],Q._titleHeight+2*(Z+n.itemGap))),Q._effHeight=Math.min(Q._height,Q._maxHeight);var Cr=N._context.edits,vr=Cr.legendText||Cr.legendPosition;W.each(function(_r){var yt=g.select(this).select("."+se+"toggle"),Fe=_r[0].height,Ke=_r[0].trace.legendgroup,Ne=m(_r,Q,j);$&&Ke!==""&&(Ne=Be[Ke]);var Ee=vr?j:Ie||Ne;!G&&!J&&(Ee+=ne/2),r.setRect(yt,0,-Fe/2,Ee,Fe)})}function F(N,U,W,Q){var ue=N._fullLayout,se=ue[U],he=B(se),G=O(se),$=se.xref==="paper",J=se.yref==="paper";N._fullLayout._reservedMargin[U]={};var Z=se.y<.5?"b":"t",re=se.x<.5?"l":"r",ne={r:ue.width-W,l:W+se._width,b:ue.height-Q,t:Q+se._effHeight};if($&&J)return A.autoMargin(N,U,{x:se.x,y:se.y,l:se._width*h[he],r:se._width*v[he],b:se._effHeight*v[G],t:se._effHeight*h[G]});$?N._fullLayout._reservedMargin[U][Z]=ne[Z]:J||se.orientation==="v"?N._fullLayout._reservedMargin[U][re]=ne[re]:N._fullLayout._reservedMargin[U][Z]=ne[Z]}function B(N){return x.isRightAnchor(N)?"right":x.isCenterAnchor(N)?"center":"left"}function O(N){return x.isBottomAnchor(N)?"bottom":x.isMiddleAnchor(N)?"middle":"top"}function I(N){return N._id||"legend"}}}),gS=Ye({"src/components/fx/hover.js"(X){"use strict";var H=_n(),g=jo(),x=bh(),A=ta(),M=A.pushUnique,e=A.strTranslate,t=A.strRotate,r=$y(),o=jl(),a=lO(),i=Bo(),n=Fn(),s=bp(),c=Co(),h=wh().zindexSeparator,v=Hn(),p=Qp(),T=x_(),l=pS(),_=mS(),w=T.YANGLE,S=Math.PI*w/180,E=1/Math.sin(S),m=Math.cos(S),b=Math.sin(S),d=T.HOVERARROWSIZE,u=T.HOVERTEXTPAD,y={box:!0,ohlc:!0,violin:!0,candlestick:!0},f={scatter:!0,scattergl:!0,splom:!0};function P(j,ee){return j.distance-ee.distance}X.hover=function(ee,ie,fe,be){ee=A.getGraphDiv(ee);var Ae=ie.target;A.throttle(ee._fullLayout._uid+T.HOVERID,T.HOVERMINTIME,function(){L(ee,ie,fe,be,Ae)})},X.loneHover=function(ee,ie){var fe=!0;Array.isArray(ee)||(fe=!1,ee=[ee]);var be=ie.gd,Ae=Z(be),Be=re(be),Ie=ee.map(function(ze){var tt=ze._x0||ze.x0||ze.x||0,nt=ze._x1||ze.x1||ze.x||0,Qe=ze._y0||ze.y0||ze.y||0,Ct=ze._y1||ze.y1||ze.y||0,St=ze.eventData;if(St){var Ot=Math.min(tt,nt),jt=Math.max(tt,nt),ur=Math.min(Qe,Ct),ar=Math.max(Qe,Ct),Cr=ze.trace;if(v.traceIs(Cr,"gl3d")){var vr=be._fullLayout[Cr.scene]._scene.container,_r=vr.offsetLeft,yt=vr.offsetTop;Ot+=_r,jt+=_r,ur+=yt,ar+=yt}St.bbox={x0:Ot+Be,x1:jt+Be,y0:ur+Ae,y1:ar+Ae},ie.inOut_bbox&&ie.inOut_bbox.push(St.bbox)}else St=!1;return{color:ze.color||n.defaultLine,x0:ze.x0||ze.x||0,x1:ze.x1||ze.x||0,y0:ze.y0||ze.y||0,y1:ze.y1||ze.y||0,xLabel:ze.xLabel,yLabel:ze.yLabel,zLabel:ze.zLabel,text:ze.text,name:ze.name,idealAlign:ze.idealAlign,borderColor:ze.borderColor,fontFamily:ze.fontFamily,fontSize:ze.fontSize,fontColor:ze.fontColor,fontWeight:ze.fontWeight,fontStyle:ze.fontStyle,fontVariant:ze.fontVariant,nameLength:ze.nameLength,textAlign:ze.textAlign,trace:ze.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:ze.hovertemplate||!1,hovertemplateLabels:ze.hovertemplateLabels||!1,eventData:St}}),Ze=!1,at=B(Ie,{gd:be,hovermode:"closest",rotateLabels:Ze,bgColor:ie.bgColor||n.background,container:H.select(ie.container),outerContainer:ie.outerContainer||ie.container}),it=at.hoverLabels,et=5,lt=0,Me=0;it.sort(function(ze,tt){return ze.y0-tt.y0}).each(function(ze,tt){var nt=ze.y0-ze.by/2;nt-et<lt?ze.offset=lt-nt+et:ze.offset=0,lt=nt+ze.by+ze.offset,tt===ie.anchorIndex&&(Me=ze.offset)}).each(function(ze){ze.offset-=Me});var ge=be._fullLayout._invScaleX,ce=be._fullLayout._invScaleY;return W(it,Ze,ge,ce),fe?it:it.node()};function L(j,ee,ie,fe,be){ie||(ie="xy"),typeof ie=="string"&&(ie=ie.split(h)[0]);var Ae=Array.isArray(ie)?ie:[ie],Be,Ie=j._fullLayout,Ze=Ie.hoversubplots,at=Ie._plots||[],it=at[ie],et=Ie._has("cartesian"),lt=ee.hovermode||Ie.hovermode,Me=(lt||"").charAt(0)==="x",ge=(lt||"").charAt(0)==="y",ce,ze;if(et&&(Me||ge)&&Ze==="axis"){for(var tt=Ae.length,nt=0;nt<tt;nt++)if(Be=Ae[nt],at[Be]){ce=c.getFromId(j,Be,"x"),ze=c.getFromId(j,Be,"y");var Qe=(Me?ce:ze)._subplotsWith;if(Qe&&Qe.length)for(var Ct=0;Ct<Qe.length;Ct++)M(Ae,Qe[Ct])}}if(it&&Ze!=="single"){var St=it.overlays.map(function(Xi){return Xi.id});Ae=Ae.concat(St)}for(var Ot=Ae.length,jt=new Array(Ot),ur=new Array(Ot),ar=!1,Cr=0;Cr<Ot;Cr++)if(Be=Ae[Cr],at[Be])ar=!0,jt[Cr]=at[Be].xaxis,ur[Cr]=at[Be].yaxis;else if(Ie[Be]&&Ie[Be]._subplot){var vr=Ie[Be]._subplot;jt[Cr]=vr.xaxis,ur[Cr]=vr.yaxis}else{A.warn("Unrecognized subplot: "+Be);return}if(lt&&!ar&&(lt="closest"),["x","y","closest","x unified","y unified"].indexOf(lt)===-1||!j.calcdata||j.querySelector(".zoombox")||j._dragging)return s.unhoverRaw(j,ee);var _r=Ie.hoverdistance;_r===-1&&(_r=1/0);var yt=Ie.spikedistance;yt===-1&&(yt=1/0);var Fe=[],Ke=[],Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr={hLinePoint:null,vLinePoint:null},sa=!1;if(Array.isArray(ee))for(lt="array",Ve=0;Ve<ee.length;Ve++)Te=j.calcdata[ee[Ve].curveNumber||0],Te&&(Le=Te[0].trace,Te[0].trace.hoverinfo!=="skip"&&(Ke.push(Te),Le.orientation==="h"&&(sa=!0)));else{var Aa=j.calcdata.slice();for(Aa.sort(function(Xi,Jo){var zo=Xi[0].trace.zorder||0,as=Jo[0].trace.zorder||0;return zo-as}),ke=0;ke<Aa.length;ke++)Te=Aa[ke],Le=Te[0].trace,Le.hoverinfo!=="skip"&&p.isTraceInSubplots(Le,Ae)&&(Ke.push(Te),Le.orientation==="h"&&(sa=!0));var La=!be,ka,Ga;if(La)"xpx"in ee?ka=ee.xpx:ka=jt[0]._length/2,"ypx"in ee?Ga=ee.ypx:Ga=ur[0]._length/2;else{if(r.triggerHandler(j,"plotly_beforehover",ee)===!1)return;var Ma=be.getBoundingClientRect();ka=ee.clientX-Ma.left,Ga=ee.clientY-Ma.top,Ie._calcInverseTransform(j);var Ua=A.apply3DTransform(Ie._invTransform)(ka,Ga);if(ka=Ua[0],Ga=Ua[1],ka<0||ka>jt[0]._length||Ga<0||Ga>ur[0]._length)return s.unhoverRaw(j,ee)}if(ee.pointerX=ka+jt[0]._offset,ee.pointerY=Ga+ur[0]._offset,"xval"in ee?Ne=p.flat(Ae,ee.xval):Ne=p.p2c(jt,ka),"yval"in ee?Ee=p.flat(Ae,ee.yval):Ee=p.p2c(ur,Ga),!g(Ne[0])||!g(Ee[0]))return A.warn("Fx.hover failed",ee,j),s.unhoverRaw(j,ee)}var ni=1/0;function Wt(Xi,Jo){for(ke=0;ke<Ke.length;ke++)if(Te=Ke[ke],!(!Te||!Te[0]||!Te[0].trace)&&(Le=Te[0].trace,!(Le.visible!==!0||Le._length===0)&&["carpet","contourcarpet"].indexOf(Le._module.name)===-1)){if(xt=lt,p.isUnifiedHover(xt)&&(xt=xt.charAt(0)),Le.type==="splom"?(dt=0,rt=Ae[dt]):(rt=p.getSubplot(Le),dt=Ae.indexOf(rt)),Gt={cd:Te,trace:Le,xa:jt[dt],ya:ur[dt],maxHoverDistance:_r,maxSpikeDistance:yt,index:!1,distance:Math.min(ni,_r),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:n.defaultLine,name:Le.name,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},Ie[rt]&&(Gt.subplot=Ie[rt]._subplot),Ie._splomScenes&&Ie._splomScenes[Le.uid]&&(Gt.scene=Ie._splomScenes[Le.uid]),xt==="array"){var zo=ee[ke];"pointNumber"in zo?(Gt.index=zo.pointNumber,xt="closest"):(xt="","xval"in zo&&(It=zo.xval,xt="x"),"yval"in zo&&(Bt=zo.yval,xt=xt?"closest":"y"))}else Xi!==void 0&&Jo!==void 0?(It=Xi,Bt=Jo):(It=Ne[dt],Bt=Ee[dt]);if(Kt=Fe.length,_r!==0)if(Le._module&&Le._module.hoverPoints){var as=Le._module.hoverPoints(Gt,It,Bt,xt,{finiteRange:!0,hoverLayer:Ie._hoverlayer,hoversubplots:Ze,gd:j});if(as)for(var Pn,go=0;go<as.length;go++)Pn=as[go],g(Pn.x0)&&g(Pn.y0)&&Fe.push(Q(Pn,lt))}else A.log("Unrecognized trace type in hover:",Le);if(lt==="closest"&&Fe.length>Kt&&(Fe.splice(0,Kt),ni=Fe[0].distance),et&&yt!==0&&Fe.length===0){Gt.distance=yt,Gt.index=!1;var In=Le._module.hoverPoints(Gt,It,Bt,"closest",{hoverLayer:Ie._hoverlayer});if(In&&(In=In.filter(function(ys){return ys.spikeDistance<=yt})),In&&In.length){var Do,Ho=In.filter(function(ys){return ys.xa.showspikes&&ys.xa.spikesnap!=="hovered data"});if(Ho.length){var Qo=Ho[0];g(Qo.x0)&&g(Qo.y0)&&(Do=Vt(Qo),(!sr.vLinePoint||sr.vLinePoint.spikeDistance>Do.spikeDistance)&&(sr.vLinePoint=Do))}var Xn=In.filter(function(ys){return ys.ya.showspikes&&ys.ya.spikesnap!=="hovered data"});if(Xn.length){var po=Xn[0];g(po.x0)&&g(po.y0)&&(Do=Vt(po),(!sr.hLinePoint||sr.hLinePoint.spikeDistance>Do.spikeDistance)&&(sr.hLinePoint=Do))}}}}}Wt();function zt(Xi,Jo,zo){for(var as=null,Pn=1/0,go,In=0;In<Xi.length;In++)ce&&ce._id!==Xi[In].xa._id||ze&&ze._id!==Xi[In].ya._id||(go=Xi[In].spikeDistance,zo&&In===0&&(go=-1/0),go<=Pn&&go<=Jo&&(as=Xi[In],Pn=go));return as}function Vt(Xi){return Xi?{xa:Xi.xa,ya:Xi.ya,x:Xi.xSpike!==void 0?Xi.xSpike:(Xi.x0+Xi.x1)/2,y:Xi.ySpike!==void 0?Xi.ySpike:(Xi.y0+Xi.y1)/2,distance:Xi.distance,spikeDistance:Xi.spikeDistance,curveNumber:Xi.trace.index,color:Xi.color,pointNumber:Xi.index}:null}var Ut={fullLayout:Ie,container:Ie._hoverlayer,event:ee},xr=j._spikepoints,Zr={vLinePoint:sr.vLinePoint,hLinePoint:sr.hLinePoint};j._spikepoints=Zr;var pa=function(){var Xi=Fe.filter(function(zo){return ce&&ce._id===zo.xa._id&&ze&&ze._id===zo.ya._id}),Jo=Fe.filter(function(zo){return!(ce&&ce._id===zo.xa._id&&ze&&ze._id===zo.ya._id)});Xi.sort(P),Jo.sort(P),Fe=Xi.concat(Jo),Fe=$(Fe,lt)};pa();var Xr=lt.charAt(0),Ea=(Xr==="x"||Xr==="y")&&Fe[0]&&f[Fe[0].trace.type];if(et&&yt!==0&&Fe.length!==0){var Fa=Fe.filter(function(Xi){return Xi.ya.showspikes}),qa=zt(Fa,yt,Ea);sr.hLinePoint=Vt(qa);var ya=Fe.filter(function(Xi){return Xi.xa.showspikes}),$a=zt(ya,yt,Ea);sr.vLinePoint=Vt($a)}if(Fe.length===0){var mt=s.unhoverRaw(j,ee);return et&&(sr.hLinePoint!==null||sr.vLinePoint!==null)&&he(xr)&&ue(j,sr,Ut),mt}if(et&&he(xr)&&ue(j,sr,Ut),p.isXYhover(xt)&&Fe[0].length!==0&&Fe[0].trace.type!=="splom"){var gt=Fe[0];y[gt.trace.type]?Fe=Fe.filter(function(Xi){return Xi.trace.index===gt.trace.index}):Fe=[gt];var Er=Fe.length,kr=J("x",gt,Ie),br=J("y",gt,Ie);Wt(kr,br);var Tr=[],Mr={},Fr=0,Lr=function(Xi){var Jo=y[Xi.trace.type]?z(Xi):Xi.trace.index;if(!Mr[Jo])Fr++,Mr[Jo]=Fr,Tr.push(Xi);else{var zo=Mr[Jo]-1,as=Tr[zo];zo>0&&Math.abs(Xi.distance)<Math.abs(as.distance)&&(Tr[zo]=Xi)}},Jr;for(Jr=0;Jr<Er;Jr++)Lr(Fe[Jr]);for(Jr=Fe.length-1;Jr>Er-1;Jr--)Lr(Fe[Jr]);Fe=Tr,pa()}var oa=j._hoverdata,ca=[],kt=Z(j),ir=re(j);for(Ve=0;Ve<Fe.length;Ve++){var mr=Fe[Ve],$r=p.makeEventData(mr,mr.trace,mr.cd);if(mr.hovertemplate!==!1){var ma=!1;mr.cd[mr.index]&&mr.cd[mr.index].ht&&(ma=mr.cd[mr.index].ht),mr.hovertemplate=ma||mr.trace.hovertemplate||!1}if(mr.xa&&mr.ya){var Ba=mr.x0+mr.xa._offset,Ca=mr.x1+mr.xa._offset,da=mr.y0+mr.ya._offset,Sa=mr.y1+mr.ya._offset,Ti=Math.min(Ba,Ca),ai=Math.max(Ba,Ca),an=Math.min(da,Sa),sn=Math.max(da,Sa);$r.bbox={x0:Ti+ir,x1:ai+ir,y0:an+kt,y1:sn+kt}}mr.eventData=[$r],ca.push($r)}j._hoverdata=ca;var Mn=lt==="y"&&(Ke.length>1||Fe.length>1)||lt==="closest"&&sa&&Fe.length>1,On=n.combine(Ie.plot_bgcolor||n.background,Ie.paper_bgcolor),$n=B(Fe,{gd:j,hovermode:lt,rotateLabels:Mn,bgColor:On,container:Ie._hoverlayer,outerContainer:Ie._paper.node(),commonLabelOpts:Ie.hoverlabel,hoverdistance:Ie.hoverdistance}),Cn=$n.hoverLabels;if(p.isUnifiedHover(lt)||(I(Cn,Mn,Ie,$n.commonLabelBoundingBox),W(Cn,Mn,Ie._invScaleX,Ie._invScaleY)),be&&be.tagName){var Lo=v.getComponentMethod("annotations","hasClickToShow")(j,ca);a(H.select(be),Lo?"pointer":"")}!be||fe||!se(j,ee,oa)||(oa&&j.emit("plotly_unhover",{event:ee,points:oa}),j.emit("plotly_hover",{event:ee,points:j._hoverdata,xaxes:jt,yaxes:ur,xvals:Ne,yvals:Ee}))}function z(j){return[j.trace.index,j.index,j.x0,j.y0,j.name,j.attr,j.xa?j.xa._id:"",j.ya?j.ya._id:""].join(",")}var F=/<extra>([\s\S]*)<\/extra>/;function B(j,ee){var ie=ee.gd,fe=ie._fullLayout,be=ee.hovermode,Ae=ee.rotateLabels,Be=ee.bgColor,Ie=ee.container,Ze=ee.outerContainer,at=ee.commonLabelOpts||{};if(j.length===0)return[[]];var it=ee.fontFamily||T.HOVERFONT,et=ee.fontSize||T.HOVERFONTSIZE,lt=ee.fontWeight||fe.font.weight,Me=ee.fontStyle||fe.font.style,ge=ee.fontVariant||fe.font.variant,ce=ee.fontTextcase||fe.font.textcase,ze=ee.fontLineposition||fe.font.lineposition,tt=ee.fontShadow||fe.font.shadow,nt=j[0],Qe=nt.xa,Ct=nt.ya,St=be.charAt(0),Ot=St+"Label",jt=nt[Ot];if(jt===void 0&&Qe.type==="multicategory")for(var ur=0;ur<j.length&&(jt=j[ur][Ot],jt===void 0);ur++);var ar=ne(ie,Ze),Cr=ar.top,vr=ar.width,_r=ar.height,yt=jt!==void 0&&nt.distance<=ee.hoverdistance&&(be==="x"||be==="y");if(yt){var Fe=!0,Ke,Ne;for(Ke=0;Ke<j.length;Ke++)if(Fe&&j[Ke].zLabel===void 0&&(Fe=!1),Ne=j[Ke].hoverinfo||j[Ke].trace.hoverinfo,Ne){var Ee=Array.isArray(Ne)?Ne:Ne.split("+");if(Ee.indexOf("all")===-1&&Ee.indexOf(be)===-1){yt=!1;break}}Fe&&(yt=!1)}var Ve=Ie.selectAll("g.axistext").data(yt?[0]:[]);Ve.enter().append("g").classed("axistext",!0),Ve.exit().remove();var ke={minX:0,maxX:0,minY:0,maxY:0};if(Ve.each(function(){var ya=H.select(this),$a=A.ensureSingle(ya,"path","",function(Ti){Ti.style({"stroke-width":"1px"})}),mt=A.ensureSingle(ya,"text","",function(Ti){Ti.attr("data-notex",1)}),gt=at.bgcolor||n.defaultLine,Er=at.bordercolor||n.contrast(gt),kr=n.contrast(gt),br=at.font,Tr={weight:br.weight||lt,style:br.style||Me,variant:br.variant||ge,textcase:br.textcase||ce,lineposition:br.lineposition||ze,shadow:br.shadow||tt,family:br.family||it,size:br.size||et,color:br.color||kr};$a.style({fill:gt,stroke:Er}),mt.text(jt).call(i.font,Tr).call(o.positionText,0,0).call(o.convertToTspans,ie),ya.attr("transform","");var Mr=ne(ie,mt.node()),Fr,Lr;if(be==="x"){var Jr=Qe.side==="top"?"-":"";mt.attr("text-anchor","middle").call(o.positionText,0,Qe.side==="top"?Cr-Mr.bottom-d-u:Cr-Mr.top+d+u),Fr=Qe._offset+(nt.x0+nt.x1)/2,Lr=Ct._offset+(Qe.side==="top"?0:Ct._length);var oa=Mr.width/2+u,ca=Fr;Fr<oa?ca=oa:Fr>fe.width-oa&&(ca=fe.width-oa),$a.attr("d","M"+(Fr-ca)+",0L"+(Fr-ca+d)+","+Jr+d+"H"+oa+"v"+Jr+(u*2+Mr.height)+"H"+-oa+"V"+Jr+d+"H"+(Fr-ca-d)+"Z"),Fr=ca,ke.minX=Fr-oa,ke.maxX=Fr+oa,Qe.side==="top"?(ke.minY=Lr-(u*2+Mr.height),ke.maxY=Lr-u):(ke.minY=Lr+u,ke.maxY=Lr+(u*2+Mr.height))}else{var kt,ir,mr;Ct.side==="right"?(kt="start",ir=1,mr="",Fr=Qe._offset+Qe._length):(kt="end",ir=-1,mr="-",Fr=Qe._offset),Lr=Ct._offset+(nt.y0+nt.y1)/2,mt.attr("text-anchor",kt),$a.attr("d","M0,0L"+mr+d+","+d+"V"+(u+Mr.height/2)+"h"+mr+(u*2+Mr.width)+"V-"+(u+Mr.height/2)+"H"+mr+d+"V-"+d+"Z"),ke.minY=Lr-(u+Mr.height/2),ke.maxY=Lr+(u+Mr.height/2),Ct.side==="right"?(ke.minX=Fr+d,ke.maxX=Fr+d+(u*2+Mr.width)):(ke.minX=Fr-d-(u*2+Mr.width),ke.maxX=Fr-d);var $r=Mr.height/2,ma=Cr-Mr.top-$r,Ba="clip"+fe._uid+"commonlabel"+Ct._id,Ca;if(Fr<Mr.width+2*u+d){Ca="M-"+(d+u)+"-"+$r+"h-"+(Mr.width-u)+"V"+$r+"h"+(Mr.width-u)+"Z";var da=Mr.width-Fr+u;o.positionText(mt,da,ma),kt==="end"&&mt.selectAll("tspan").each(function(){var Ti=H.select(this),ai=i.tester.append("text").text(Ti.text()).call(i.font,Tr),an=ne(ie,ai.node());Math.round(an.width)<Math.round(Mr.width)&&Ti.attr("x",da-an.width),ai.remove()})}else o.positionText(mt,ir*(u+d),ma),Ca=null;var Sa=fe._topclips.selectAll("#"+Ba).data(Ca?[0]:[]);Sa.enter().append("clipPath").attr("id",Ba).append("path"),Sa.exit().remove(),Sa.select("path").attr("d",Ca),i.setClipUrl(mt,Ca?Ba:null,ie)}ya.attr("transform",e(Fr,Lr))}),p.isUnifiedHover(be)){Ie.selectAll("g.hovertext").remove();var Te=j.filter(function(ya){return ya.hoverinfo!=="none"});if(Te.length===0)return[];var Le=fe.hoverlabel,rt=Le.font,dt={showlegend:!0,legend:{title:{text:jt,font:rt},font:rt,bgcolor:Le.bgcolor,bordercolor:Le.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:fe.legend?fe.legend.traceorder:void 0,orientation:"v"}},xt={font:rt};l(dt,xt,ie._fullData);var It=xt.legend;It.entries=[];for(var Bt=0;Bt<Te.length;Bt++){var Gt=Te[Bt];if(Gt.hoverinfo!=="none"){var Kt=O(Gt,!0,be,fe,jt),sr=Kt[0],sa=Kt[1];Gt.name=sa,sa!==""?Gt.text=sa+" : "+sr:Gt.text=sr;var Aa=Gt.cd[Gt.index];Aa&&(Aa.mc&&(Gt.mc=Aa.mc),Aa.mcc&&(Gt.mc=Aa.mcc),Aa.mlc&&(Gt.mlc=Aa.mlc),Aa.mlcc&&(Gt.mlc=Aa.mlcc),Aa.mlw&&(Gt.mlw=Aa.mlw),Aa.mrc&&(Gt.mrc=Aa.mrc),Aa.dir&&(Gt.dir=Aa.dir)),Gt._distinct=!0,It.entries.push([Gt])}}It.entries.sort(function(ya,$a){return ya[0].trace.index-$a[0].trace.index}),It.layer=Ie,It._inHover=!0,It._groupTitleFont=Le.grouptitlefont,_(ie,It);var La=Ie.select("g.legend"),ka=ne(ie,La.node()),Ga=ka.width+2*u,Ma=ka.height+2*u,Ua=Te[0],ni=(Ua.x0+Ua.x1)/2,Wt=(Ua.y0+Ua.y1)/2,zt=!(v.traceIs(Ua.trace,"bar-like")||v.traceIs(Ua.trace,"box-violin")),Vt,Ut;St==="y"?zt?(Ut=Wt-u,Vt=Wt+u):(Ut=Math.min.apply(null,Te.map(function(ya){return Math.min(ya.y0,ya.y1)})),Vt=Math.max.apply(null,Te.map(function(ya){return Math.max(ya.y0,ya.y1)}))):Ut=Vt=A.mean(Te.map(function(ya){return(ya.y0+ya.y1)/2}))-Ma/2;var xr,Zr;St==="x"?zt?(xr=ni+u,Zr=ni-u):(xr=Math.max.apply(null,Te.map(function(ya){return Math.max(ya.x0,ya.x1)})),Zr=Math.min.apply(null,Te.map(function(ya){return Math.min(ya.x0,ya.x1)}))):xr=Zr=A.mean(Te.map(function(ya){return(ya.x0+ya.x1)/2}))-Ga/2;var pa=Qe._offset,Xr=Ct._offset;Vt+=Xr,xr+=pa,Zr+=pa-Ga,Ut+=Xr-Ma;var Ea,Fa;return xr+Ga<vr&&xr>=0?Ea=xr:Zr+Ga<vr&&Zr>=0?Ea=Zr:pa+Ga<vr?Ea=pa:xr-ni<ni-Zr+Ga?Ea=vr-Ga:Ea=0,Ea+=u,Vt+Ma<_r&&Vt>=0?Fa=Vt:Ut+Ma<_r&&Ut>=0?Fa=Ut:Xr+Ma<_r?Fa=Xr:Vt-Wt<Wt-Ut+Ma?Fa=_r-Ma:Fa=0,Fa+=u,La.attr("transform",e(Ea-1,Fa-1)),La}var qa=Ie.selectAll("g.hovertext").data(j,function(ya){return z(ya)});return qa.enter().append("g").classed("hovertext",!0).each(function(){var ya=H.select(this);ya.append("rect").call(n.fill,n.addOpacity(Be,.8)),ya.append("text").classed("name",!0),ya.append("path").style("stroke-width","1px"),ya.append("text").classed("nums",!0).call(i.font,{weight:lt,style:Me,variant:ge,textcase:ce,lineposition:ze,shadow:tt,family:it,size:et})}),qa.exit().remove(),qa.each(function(ya){var $a=H.select(this).attr("transform",""),mt=ya.color;Array.isArray(mt)&&(mt=mt[ya.eventData[0].pointNumber]);var gt=ya.bgcolor||mt,Er=n.combine(n.opacity(gt)?gt:n.defaultLine,Be),kr=n.combine(n.opacity(mt)?mt:n.defaultLine,Be),br=ya.borderColor||n.contrast(Er),Tr=O(ya,yt,be,fe,jt,$a),Mr=Tr[0],Fr=Tr[1],Lr=$a.select("text.nums").call(i.font,{family:ya.fontFamily||it,size:ya.fontSize||et,color:ya.fontColor||br,weight:ya.fontWeight||lt,style:ya.fontStyle||Me,variant:ya.fontVariant||ge,textcase:ya.fontTextcase||ce,lineposition:ya.fontLineposition||ze,shadow:ya.fontShadow||tt}).text(Mr).attr("data-notex",1).call(o.positionText,0,0).call(o.convertToTspans,ie),Jr=$a.select("text.name"),oa=0,ca=0;if(Fr&&Fr!==Mr){Jr.call(i.font,{family:ya.fontFamily||it,size:ya.fontSize||et,color:kr,weight:ya.fontWeight||lt,style:ya.fontStyle||Me,variant:ya.fontVariant||ge,textcase:ya.fontTextcase||ce,lineposition:ya.fontLineposition||ze,shadow:ya.fontShadow||tt}).text(Fr).attr("data-notex",1).call(o.positionText,0,0).call(o.convertToTspans,ie);var kt=ne(ie,Jr.node());oa=kt.width+2*u,ca=kt.height+2*u}else Jr.remove(),$a.select("rect").remove();$a.select("path").style({fill:Er,stroke:br});var ir=ya.xa._offset+(ya.x0+ya.x1)/2,mr=ya.ya._offset+(ya.y0+ya.y1)/2,$r=Math.abs(ya.x1-ya.x0),ma=Math.abs(ya.y1-ya.y0),Ba=ne(ie,Lr.node()),Ca=Ba.width/fe._invScaleX,da=Ba.height/fe._invScaleY;ya.ty0=(Cr-Ba.top)/fe._invScaleY,ya.bx=Ca+2*u,ya.by=Math.max(da+2*u,ca),ya.anchor="start",ya.txwidth=Ca,ya.tx2width=oa,ya.offset=0;var Sa=(Ca+d+u+oa)*fe._invScaleX,Ti,ai;if(Ae)ya.pos=ir,Ti=mr+ma/2+Sa<=_r,ai=mr-ma/2-Sa>=0,(ya.idealAlign==="top"||!Ti)&&ai?(mr-=ma/2,ya.anchor="end"):Ti?(mr+=ma/2,ya.anchor="start"):ya.anchor="middle",ya.crossPos=mr;else{if(ya.pos=mr,Ti=ir+$r/2+Sa<=vr,ai=ir-$r/2-Sa>=0,(ya.idealAlign==="left"||!Ti)&&ai)ir-=$r/2,ya.anchor="end";else if(Ti)ir+=$r/2,ya.anchor="start";else{ya.anchor="middle";var an=Sa/2,sn=ir+an-vr,Mn=ir-an;sn>0&&(ir-=sn),Mn<0&&(ir+=-Mn)}ya.crossPos=ir}Lr.attr("text-anchor",ya.anchor),oa&&Jr.attr("text-anchor",ya.anchor),$a.attr("transform",e(ir,mr)+(Ae?t(w):""))}),{hoverLabels:qa,commonLabelBoundingBox:ke}}function O(j,ee,ie,fe,be,Ae){var Be="",Ie="";j.nameOverride!==void 0&&(j.name=j.nameOverride),j.name&&(j.trace._meta&&(j.name=A.templateString(j.name,j.trace._meta)),Be=G(j.name,j.nameLength));var Ze=ie.charAt(0),at=Ze==="x"?"y":"x";j.zLabel!==void 0?(j.xLabel!==void 0&&(Ie+="x: "+j.xLabel+"<br>"),j.yLabel!==void 0&&(Ie+="y: "+j.yLabel+"<br>"),j.trace.type!=="choropleth"&&j.trace.type!=="choroplethmapbox"&&j.trace.type!=="choroplethmap"&&(Ie+=(Ie?"z: ":"")+j.zLabel)):ee&&j[Ze+"Label"]===be?Ie=j[at+"Label"]||"":j.xLabel===void 0?j.yLabel!==void 0&&j.trace.type!=="scattercarpet"&&(Ie=j.yLabel):j.yLabel===void 0?Ie=j.xLabel:Ie="("+j.xLabel+", "+j.yLabel+")",(j.text||j.text===0)&&!Array.isArray(j.text)&&(Ie+=(Ie?"<br>":"")+j.text),j.extraText!==void 0&&(Ie+=(Ie?"<br>":"")+j.extraText),Ae&&Ie===""&&!j.hovertemplate&&(Be===""&&Ae.remove(),Ie=Be);var it=j.hovertemplate||!1;if(it){var et=j.hovertemplateLabels||j;j[Ze+"Label"]!==be&&(et[Ze+"other"]=et[Ze+"Val"],et[Ze+"otherLabel"]=et[Ze+"Label"]),Ie=A.hovertemplateString(it,et,fe._d3locale,j.eventData[0]||{},j.trace._meta),Ie=Ie.replace(F,function(lt,Me){return Be=G(Me,j.nameLength),""})}return[Ie,Be]}function I(j,ee,ie,fe){var be=ee?"xa":"ya",Ae=ee?"ya":"xa",Be=0,Ie=1,Ze=j.size(),at=new Array(Ze),it=0,et=fe.minX,lt=fe.maxX,Me=fe.minY,ge=fe.maxY,ce=function(Ne){return Ne*ie._invScaleX},ze=function(Ne){return Ne*ie._invScaleY};j.each(function(Ne){var Ee=Ne[be],Ve=Ne[Ae],ke=Ee._id.charAt(0)==="x",Te=Ee.range;it===0&&Te&&Te[0]>Te[1]!==ke&&(Ie=-1);var Le=0,rt=ke?ie.width:ie.height;if(ie.hovermode==="x"||ie.hovermode==="y"){var dt=N(Ne,ee),xt=Ne.anchor,It=xt==="end"?-1:1,Bt,Gt;if(xt==="middle")Bt=Ne.crossPos+(ke?ze(dt.y-Ne.by/2):ce(Ne.bx/2+Ne.tx2width/2)),Gt=Bt+(ke?ze(Ne.by):ce(Ne.bx));else if(ke)Bt=Ne.crossPos+ze(d+dt.y)-ze(Ne.by/2-d),Gt=Bt+ze(Ne.by);else{var Kt=ce(It*d+dt.x),sr=Kt+ce(It*Ne.bx);Bt=Ne.crossPos+Math.min(Kt,sr),Gt=Ne.crossPos+Math.max(Kt,sr)}ke?Me!==void 0&&ge!==void 0&&Math.min(Gt,ge)-Math.max(Bt,Me)>1&&(Ve.side==="left"?(Le=Ve._mainLinePosition,rt=ie.width):rt=Ve._mainLinePosition):et!==void 0&&lt!==void 0&&Math.min(Gt,lt)-Math.max(Bt,et)>1&&(Ve.side==="top"?(Le=Ve._mainLinePosition,rt=ie.height):rt=Ve._mainLinePosition)}at[it++]=[{datum:Ne,traceIndex:Ne.trace.index,dp:0,pos:Ne.pos,posref:Ne.posref,size:Ne.by*(ke?E:1)/2,pmin:Le,pmax:rt}]}),at.sort(function(Ne,Ee){return Ne[0].posref-Ee[0].posref||Ie*(Ee[0].traceIndex-Ne[0].traceIndex)});var tt,nt,Qe,Ct,St,Ot,jt;function ur(Ne){var Ee=Ne[0],Ve=Ne[Ne.length-1];if(nt=Ee.pmin-Ee.pos-Ee.dp+Ee.size,Qe=Ve.pos+Ve.dp+Ve.size-Ee.pmax,nt>.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp+=nt;tt=!1}if(!(Qe<.01)){if(nt<-.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;tt=!1}if(tt){var ke=0;for(Ct=0;Ct<Ne.length;Ct++)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&ke++;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos>Ee.pmax-1&&(Ot.del=!0,ke--);for(Ct=0;Ct<Ne.length&&!(ke<=0);Ct++)if(Ot=Ne[Ct],Ot.pos<Ee.pmin+1)for(Ot.del=!0,ke--,Qe=Ot.size*2,St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&(Ot.del=!0,ke--)}}}for(;!tt&&Be<=Ze;){for(Be++,tt=!0,Ct=0;Ct<at.length-1;){var ar=at[Ct],Cr=at[Ct+1],vr=ar[ar.length-1],_r=Cr[0];if(nt=vr.pos+vr.dp+vr.size-_r.pos-_r.dp+_r.size,nt>.01){for(St=Cr.length-1;St>=0;St--)Cr[St].dp+=nt;for(ar.push.apply(ar,Cr),at.splice(Ct+1,1),jt=0,St=ar.length-1;St>=0;St--)jt+=ar[St].dp;for(Qe=jt/ar.length,St=ar.length-1;St>=0;St--)ar[St].dp-=Qe;tt=!1}else Ct++}at.forEach(ur)}for(Ct=at.length-1;Ct>=0;Ct--){var yt=at[Ct];for(St=yt.length-1;St>=0;St--){var Fe=yt[St],Ke=Fe.datum;Ke.offset=Fe.dp,Ke.del=Fe.del}}}function N(j,ee){var ie=0,fe=j.offset;return ee&&(fe*=-b,ie=j.offset*m),{x:ie,y:fe}}function U(j){var ee={start:1,end:-1,middle:0}[j.anchor],ie=ee*(d+u),fe=ie+ee*(j.txwidth+u),be=j.anchor==="middle";return be&&(ie-=j.tx2width/2,fe+=j.txwidth/2+u),{alignShift:ee,textShiftX:ie,text2ShiftX:fe}}function W(j,ee,ie,fe){var be=function(Be){return Be*ie},Ae=function(Be){return Be*fe};j.each(function(Be){var Ie=H.select(this);if(Be.del)return Ie.remove();var Ze=Ie.select("text.nums"),at=Be.anchor,it=at==="end"?-1:1,et=U(Be),lt=N(Be,ee),Me=lt.x,ge=lt.y,ce=at==="middle";Ie.select("path").attr("d",ce?"M-"+be(Be.bx/2+Be.tx2width/2)+","+Ae(ge-Be.by/2)+"h"+be(Be.bx)+"v"+Ae(Be.by)+"h-"+be(Be.bx)+"Z":"M0,0L"+be(it*d+Me)+","+Ae(d+ge)+"v"+Ae(Be.by/2-d)+"h"+be(it*Be.bx)+"v-"+Ae(Be.by)+"H"+be(it*d+Me)+"V"+Ae(ge-d)+"Z");var ze=Me+et.textShiftX,tt=ge+Be.ty0-Be.by/2+u,nt=Be.textAlign||"auto";nt!=="auto"&&(nt==="left"&&at!=="start"?(Ze.attr("text-anchor","start"),ze=ce?-Be.bx/2-Be.tx2width/2+u:-Be.bx-u):nt==="right"&&at!=="end"&&(Ze.attr("text-anchor","end"),ze=ce?Be.bx/2-Be.tx2width/2-u:Be.bx+u)),Ze.call(o.positionText,be(ze),Ae(tt)),Be.tx2width&&(Ie.select("text.name").call(o.positionText,be(et.text2ShiftX+et.alignShift*u+Me),Ae(ge+Be.ty0-Be.by/2+u)),Ie.select("rect").call(i.setRect,be(et.text2ShiftX+(et.alignShift-1)*Be.tx2width/2+Me),Ae(ge-Be.by/2-1),be(Be.tx2width),Ae(Be.by+2)))})}function Q(j,ee){var ie=j.index,fe=j.trace||{},be=j.cd[0],Ae=j.cd[ie]||{};function Be(lt){return lt||g(lt)&&lt===0}var Ie=Array.isArray(ie)?function(lt,Me){var ge=A.castOption(be,ie,lt);return Be(ge)?ge:A.extractOption({},fe,"",Me)}:function(lt,Me){return A.extractOption(Ae,fe,lt,Me)};function Ze(lt,Me,ge){var ce=Ie(Me,ge);Be(ce)&&(j[lt]=ce)}if(Ze("hoverinfo","hi","hoverinfo"),Ze("bgcolor","hbg","hoverlabel.bgcolor"),Ze("borderColor","hbc","hoverlabel.bordercolor"),Ze("fontFamily","htf","hoverlabel.font.family"),Ze("fontSize","hts","hoverlabel.font.size"),Ze("fontColor","htc","hoverlabel.font.color"),Ze("fontWeight","htw","hoverlabel.font.weight"),Ze("fontStyle","hty","hoverlabel.font.style"),Ze("fontVariant","htv","hoverlabel.font.variant"),Ze("nameLength","hnl","hoverlabel.namelength"),Ze("textAlign","hta","hoverlabel.align"),j.posref=ee==="y"||ee==="closest"&&fe.orientation==="h"?j.xa._offset+(j.x0+j.x1)/2:j.ya._offset+(j.y0+j.y1)/2,j.x0=A.constrain(j.x0,0,j.xa._length),j.x1=A.constrain(j.x1,0,j.xa._length),j.y0=A.constrain(j.y0,0,j.ya._length),j.y1=A.constrain(j.y1,0,j.ya._length),j.xLabelVal!==void 0&&(j.xLabel="xLabel"in j?j.xLabel:c.hoverLabelText(j.xa,j.xLabelVal,fe.xhoverformat),j.xVal=j.xa.c2d(j.xLabelVal)),j.yLabelVal!==void 0&&(j.yLabel="yLabel"in j?j.yLabel:c.hoverLabelText(j.ya,j.yLabelVal,fe.yhoverformat),j.yVal=j.ya.c2d(j.yLabelVal)),j.zLabelVal!==void 0&&j.zLabel===void 0&&(j.zLabel=String(j.zLabelVal)),!isNaN(j.xerr)&&!(j.xa.type==="log"&&j.xerr<=0)){var at=c.tickText(j.xa,j.xa.c2l(j.xerr),"hover").text;j.xerrneg!==void 0?j.xLabel+=" +"+at+" / -"+c.tickText(j.xa,j.xa.c2l(j.xerrneg),"hover").text:j.xLabel+=" \xB1 "+at,ee==="x"&&(j.distance+=1)}if(!isNaN(j.yerr)&&!(j.ya.type==="log"&&j.yerr<=0)){var it=c.tickText(j.ya,j.ya.c2l(j.yerr),"hover").text;j.yerrneg!==void 0?j.yLabel+=" +"+it+" / -"+c.tickText(j.ya,j.ya.c2l(j.yerrneg),"hover").text:j.yLabel+=" \xB1 "+it,ee==="y"&&(j.distance+=1)}var et=j.hoverinfo||j.trace.hoverinfo;return et&&et!=="all"&&(et=Array.isArray(et)?et:et.split("+"),et.indexOf("x")===-1&&(j.xLabel=void 0),et.indexOf("y")===-1&&(j.yLabel=void 0),et.indexOf("z")===-1&&(j.zLabel=void 0),et.indexOf("text")===-1&&(j.text=void 0),et.indexOf("name")===-1&&(j.name=void 0)),j}function ue(j,ee,ie){var fe=ie.container,be=ie.fullLayout,Ae=be._size,Be=ie.event,Ie=!!ee.hLinePoint,Ze=!!ee.vLinePoint,at,it;if(fe.selectAll(".spikeline").remove(),!!(Ze||Ie)){var et=n.combine(be.plot_bgcolor,be.paper_bgcolor);if(Ie){var lt=ee.hLinePoint,Me,ge;at=lt&&lt.xa,it=lt&&lt.ya;var ce=it.spikesnap;ce==="cursor"?(Me=Be.pointerX,ge=Be.pointerY):(Me=at._offset+lt.x,ge=it._offset+lt.y);var ze=x.readability(lt.color,et)<1.5?n.contrast(et):lt.color,tt=it.spikemode,nt=it.spikethickness,Qe=it.spikecolor||ze,Ct=c.getPxPosition(j,it),St,Ot;if(tt.indexOf("toaxis")!==-1||tt.indexOf("across")!==-1){if(tt.indexOf("toaxis")!==-1&&(St=Ct,Ot=Me),tt.indexOf("across")!==-1){var jt=it._counterDomainMin,ur=it._counterDomainMax;it.anchor==="free"&&(jt=Math.min(jt,it.position),ur=Math.max(ur,it.position)),St=Ae.l+jt*Ae.w,Ot=Ae.l+ur*Ae.w}fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt,stroke:Qe,"stroke-dasharray":i.dashStyle(it.spikedash,nt)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}tt.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Ct+(it.side!=="right"?nt:-nt),cy:ge,r:nt,fill:Qe}).classed("spikeline",!0)}if(Ze){var ar=ee.vLinePoint,Cr,vr;at=ar&&ar.xa,it=ar&&ar.ya;var _r=at.spikesnap;_r==="cursor"?(Cr=Be.pointerX,vr=Be.pointerY):(Cr=at._offset+ar.x,vr=it._offset+ar.y);var yt=x.readability(ar.color,et)<1.5?n.contrast(et):ar.color,Fe=at.spikemode,Ke=at.spikethickness,Ne=at.spikecolor||yt,Ee=c.getPxPosition(j,at),Ve,ke;if(Fe.indexOf("toaxis")!==-1||Fe.indexOf("across")!==-1){if(Fe.indexOf("toaxis")!==-1&&(Ve=Ee,ke=vr),Fe.indexOf("across")!==-1){var Te=at._counterDomainMin,Le=at._counterDomainMax;at.anchor==="free"&&(Te=Math.min(Te,at.position),Le=Math.max(Le,at.position)),Ve=Ae.t+(1-Le)*Ae.h,ke=Ae.t+(1-Te)*Ae.h}fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke,stroke:Ne,"stroke-dasharray":i.dashStyle(at.spikedash,Ke)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}Fe.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Cr,cy:Ee-(at.side!=="top"?Ke:-Ke),r:Ke,fill:Ne}).classed("spikeline",!0)}}}function se(j,ee,ie){if(!ie||ie.length!==j._hoverdata.length)return!0;for(var fe=ie.length-1;fe>=0;fe--){var be=ie[fe],Ae=j._hoverdata[fe];if(be.curveNumber!==Ae.curveNumber||String(be.pointNumber)!==String(Ae.pointNumber)||String(be.pointNumbers)!==String(Ae.pointNumbers))return!0}return!1}function he(j,ee){return!ee||ee.vLinePoint!==j._spikepoints.vLinePoint||ee.hLinePoint!==j._spikepoints.hLinePoint}function G(j,ee){return o.plainText(j||"",{len:ee,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function $(j,ee){for(var ie=ee.charAt(0),fe=[],be=[],Ae=[],Be=0;Be<j.length;Be++){var Ie=j[Be];v.traceIs(Ie.trace,"bar-like")||v.traceIs(Ie.trace,"box-violin")?Ae.push(Ie):Ie.trace[ie+"period"]?be.push(Ie):fe.push(Ie)}return fe.concat(be).concat(Ae)}function J(j,ee,ie){var fe=ee[j+"a"],be=ee[j+"Val"],Ae=ee.cd[0];if(fe.type==="category"||fe.type==="multicategory")be=fe._categoriesMap[be];else if(fe.type==="date"){var Be=ee.trace[j+"periodalignment"];if(Be){var Ie=ee.cd[ee.index],Ze=Ie[j+"Start"];Ze===void 0&&(Ze=Ie[j]);var at=Ie[j+"End"];at===void 0&&(at=Ie[j]);var it=at-Ze;Be==="end"?be+=it:Be==="middle"&&(be+=it/2)}be=fe.d2c(be)}return Ae&&Ae.t&&Ae.t.posLetter===fe._id&&(ie.boxmode==="group"||ie.violinmode==="group")&&(be+=Ae.t.dPos),be}function Z(j){return j.offsetTop+j.clientTop}function re(j){return j.offsetLeft+j.clientLeft}function ne(j,ee){var ie=j._fullLayout,fe=ee.getBoundingClientRect(),be=fe.left,Ae=fe.top,Be=be+fe.width,Ie=Ae+fe.height,Ze=A.apply3DTransform(ie._invTransform)(be,Ae),at=A.apply3DTransform(ie._invTransform)(Be,Ie),it=Ze[0],et=Ze[1],lt=at[0],Me=at[1];return{x:it,y:et,width:lt-it,height:Me-et,top:Math.min(et,Me),left:Math.min(it,lt),right:Math.max(it,lt),bottom:Math.max(et,Me)}}}}),S_=Ye({"src/components/fx/hoverlabel_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover;H.exports=function(e,t,r,o){o=o||{};var a=t.legend;function i(n){o.font[n]||(o.font[n]=a?t.legend.font[n]:t.font[n])}t&&A(t.hovermode)&&(o.font||(o.font={}),i("size"),i("family"),i("color"),i("weight"),i("style"),i("variant"),a?(o.bgcolor||(o.bgcolor=x.combine(t.legend.bgcolor,t.paper_bgcolor)),o.bordercolor||(o.bordercolor=t.legend.bordercolor)):o.bgcolor||(o.bgcolor=t.paper_bgcolor)),r("hoverlabel.bgcolor",o.bgcolor),r("hoverlabel.bordercolor",o.bordercolor),r("hoverlabel.namelength",o.namelength),g.coerceFont(r,"hoverlabel.font",o.font),r("hoverlabel.align",o.align)}}}),hO=Ye({"src/components/fx/layout_global_defaults.js"(X,H){"use strict";var g=ta(),x=S_(),A=Zm();H.exports=function(e,t){function r(o,a){return g.coerce(e,t,A,o,a)}x(e,t,r)}}}),pO=Ye({"src/components/fx/defaults.js"(X,H){"use strict";var g=ta(),x=Yy(),A=S_();H.exports=function(e,t,r,o){function a(n,s){return g.coerce(e,t,x,n,s)}var i=g.extendFlat({},o.hoverlabel);t.hovertemplate&&(i.namelength=-1),A(e,t,a,i)}}}),yS=Ye({"src/components/fx/hovermode_defaults.js"(X,H){"use strict";var g=ta(),x=Zm();H.exports=function(M,e){function t(r,o){return e[r]!==void 0?e[r]:g.coerce(M,e,x,r,o)}return t("clickmode"),t("hoversubplots"),t("hovermode")}}}),dO=Ye({"src/components/fx/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Zm(),A=yS(),M=S_();H.exports=function(t,r){function o(v,p){return g.coerce(t,r,x,v,p)}var a=A(t,r);a&&(o("hoverdistance"),o("spikedistance"));var i=o("dragmode");i==="select"&&o("selectdirection");var n=r._has("mapbox"),s=r._has("map"),c=r._has("geo"),h=r._basePlotModules.length;r.dragmode==="zoom"&&((n||s||c)&&h===1||(n||s)&&c&&h===2)&&(r.dragmode="pan"),M(t,r,o),g.coerceFont(o,"hoverlabel.grouptitlefont",r.hoverlabel.font)}}}),vO=Ye({"src/components/fx/calc.js"(X,H){"use strict";var g=ta(),x=Hn();H.exports=function(e){var t=e.calcdata,r=e._fullLayout;function o(c){return function(h){return g.coerceHoverinfo({hoverinfo:h},{_module:c._module},r)}}for(var a=0;a<t.length;a++){var i=t[a],n=i[0].trace;if(!x.traceIs(n,"pie-like")){var s=x.traceIs(n,"2dMap")?A:g.fillArray;s(n.hoverinfo,i,"hi",o(n)),n.hovertemplate&&s(n.hovertemplate,i,"ht"),n.hoverlabel&&(s(n.hoverlabel.bgcolor,i,"hbg"),s(n.hoverlabel.bordercolor,i,"hbc"),s(n.hoverlabel.font.size,i,"hts"),s(n.hoverlabel.font.color,i,"htc"),s(n.hoverlabel.font.family,i,"htf"),s(n.hoverlabel.font.weight,i,"htw"),s(n.hoverlabel.font.style,i,"hty"),s(n.hoverlabel.font.variant,i,"htv"),s(n.hoverlabel.namelength,i,"hnl"),s(n.hoverlabel.align,i,"hta"))}}};function A(M,e,t,r){r=r||g.identity,Array.isArray(M)&&(e[0][t]=r(M))}}}),mO=Ye({"src/components/fx/click.js"(X,H){"use strict";var g=Hn(),x=gS().hover;H.exports=function(M,e,t){var r=g.getComponentMethod("annotations","onClick")(M,M._hoverdata);t!==void 0&&x(M,e,t,!0);function o(){M.emit("plotly_click",{points:M._hoverdata,event:e})}M._hoverdata&&e&&e.target&&(r&&r.then?r.then(o):o(),e.stopImmediatePropagation&&e.stopImmediatePropagation())}}}),Lc=Ye({"src/components/fx/index.js"(X,H){"use strict";var g=_n(),x=ta(),A=bp(),M=Qp(),e=Zm(),t=gS();H.exports={moduleType:"component",name:"fx",constants:x_(),schema:{layout:e},attributes:Yy(),layoutAttributes:e,supplyLayoutGlobalDefaults:hO(),supplyDefaults:pO(),supplyLayoutDefaults:dO(),calc:vO(),getDistanceFunction:M.getDistanceFunction,getClosest:M.getClosest,inbox:M.inbox,quadrature:M.quadrature,appendArrayPointValue:M.appendArrayPointValue,castHoverOption:o,castHoverinfo:a,hover:t.hover,unhover:A.unhover,loneHover:t.loneHover,loneUnhover:r,click:mO()};function r(i){var n=x.isD3Selection(i)?i:g.select(i);n.selectAll("g.hovertext").remove(),n.selectAll(".spikeline").remove()}function o(i,n,s){return x.castOption(i,n,"hoverlabel."+s)}function a(i,n,s){function c(h){return x.coerceHoverinfo({hoverinfo:h},{_module:i._module},n)}return x.castOption(i,s,"hoverinfo",c)}}}),Jd=Ye({"src/components/dragelement/helpers.js"(X){"use strict";X.selectMode=function(H){return H==="lasso"||H==="select"},X.drawMode=function(H){return H==="drawclosedpath"||H==="drawopenpath"||H==="drawline"||H==="drawrect"||H==="drawcircle"},X.openMode=function(H){return H==="drawline"||H==="drawopenpath"},X.rectMode=function(H){return H==="select"||H==="drawline"||H==="drawrect"||H==="drawcircle"},X.freeMode=function(H){return H==="lasso"||H==="drawclosedpath"||H==="drawopenpath"},X.selectingOrDrawing=function(H){return X.freeMode(H)||X.rectMode(H)}}}),M_=Ye({"src/lib/clear_gl_canvases.js"(X,H){"use strict";H.exports=function(x){var A=x._fullLayout;A._glcanvas&&A._glcanvas.size()&&A._glcanvas.each(function(M){M.regl&&M.regl.clear({color:!0,depth:!0})})}}}),b2=Ye({"src/fonts/ploticon.js"(X,H){"use strict";H.exports={undo:{width:857.1,height:1e3,path:"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z",transform:"matrix(1 0 0 -1 0 850)"},home:{width:928.6,height:1e3,path:"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z",transform:"matrix(1 0 0 -1 0 850)"},"camera-retro":{width:1e3,height:1e3,path:"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z",transform:"matrix(1 0 0 -1 0 850)"},zoombox:{width:1e3,height:1e3,path:"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z",transform:"matrix(1 0 0 -1 0 850)"},pan:{width:1e3,height:1e3,path:"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z",transform:"matrix(1 0 0 -1 0 850)"},zoom_plus:{width:875,height:1e3,path:"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},zoom_minus:{width:875,height:1e3,path:"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z",transform:"matrix(1 0 0 -1 0 850)"},autoscale:{width:1e3,height:1e3,path:"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_basic:{width:1500,height:1e3,path:"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z",transform:"matrix(1 0 0 -1 0 850)"},tooltip_compare:{width:1125,height:1e3,path:"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z",transform:"matrix(1 0 0 -1 0 850)"},plotlylogo:{width:1542,height:1e3,path:"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z",transform:"matrix(1 0 0 -1 0 850)"},"z-axis":{width:1e3,height:1e3,path:"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z",transform:"matrix(1 0 0 -1 0 850)"},"3d_rotate":{width:1e3,height:1e3,path:"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z",transform:"matrix(1 0 0 -1 0 850)"},camera:{width:1e3,height:1e3,path:"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z",transform:"matrix(1 0 0 -1 0 850)"},movie:{width:1e3,height:1e3,path:"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z",transform:"matrix(1 0 0 -1 0 850)"},question:{width:857.1,height:1e3,path:"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z",transform:"matrix(1 0 0 -1 0 850)"},disk:{width:857.1,height:1e3,path:"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z",transform:"matrix(1 0 0 -1 0 850)"},drawopenpath:{width:70,height:70,path:"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z",transform:"matrix(1 0 0 1 -15 -15)"},drawclosedpath:{width:90,height:90,path:"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z",transform:"matrix(1 0 0 1 -5 -5)"},lasso:{width:1031,height:1e3,path:"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z",transform:"matrix(1 0 0 -1 0 850)"},selectbox:{width:1e3,height:1e3,path:"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z",transform:"matrix(1 0 0 -1 0 850)"},drawline:{width:70,height:70,path:"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z",transform:"matrix(1 0 0 1 -15 -15)"},drawrect:{width:80,height:80,path:"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z",transform:"matrix(1 0 0 1 -10 -10)"},drawcircle:{width:80,height:80,path:"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z",transform:"matrix(1 0 0 1 -10 -10)"},eraseshape:{width:80,height:80,path:"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z",transform:"matrix(1 0 0 1 -10 -10)"},spikeline:{width:1e3,height:1e3,path:"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z",transform:"matrix(1.5 0 0 -1.5 0 850)"},pencil:{width:1792,height:1792,path:"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z",transform:"matrix(1 0 0 1 0 1)"},newplotlylogo:{name:"newplotlylogo",svg:["<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 132'>"," <title>plotly-logomark</title>"," <g id='symbol'>"," <rect fill='#000' x='0' y='0' width='132' height='132' rx='18' ry='18'/>"," <circle fill='#9EF' cx='102' cy='30' r='6'/>"," <circle fill='#BAC' cx='78' cy='30' r='6'/>"," <circle fill='#BAC' cx='78' cy='54' r='6'/>"," <circle fill='#D69' cx='54' cy='30' r='6'/>"," <circle fill='#F26' cx='30' cy='30' r='6'/>"," <circle fill='#F26' cx='30' cy='54' r='6'/>"," <path fill='#FFF' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/>"," <path fill='#FFF' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/>"," <path fill='#FFF' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/>"," <path fill='#FFF' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/>"," </g>","</svg>"].join("")}}}}),w2=Ye({"src/components/shapes/draw_newshape/constants.js"(X,H){"use strict";var g=32;H.exports={CIRCLE_SIDES:g,i000:0,i090:g/4,i180:g/2,i270:g/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}}}),T2=Ye({"src/components/selections/helpers.js"(X,H){"use strict";var g=ta().strTranslate;function x(t,r){switch(t.type){case"log":return t.p2d(r);case"date":return t.p2r(r,0,t.calendar);default:return t.p2r(r)}}function A(t,r){switch(t.type){case"log":return t.d2p(r);case"date":return t.r2p(r,0,t.calendar);default:return t.r2p(r)}}function M(t){var r=t._id.charAt(0)==="y"?1:0;return function(o){return x(t,o[r])}}function e(t){return g(t.xaxis._offset,t.yaxis._offset)}H.exports={p2r:x,r2p:A,axValue:M,getTransform:e}}}),tg=Ye({"src/components/shapes/draw_newshape/helpers.js"(X){"use strict";var H=A_(),g=w2(),x=g.CIRCLE_SIDES,A=g.SQRT2,M=T2(),e=M.p2r,t=M.r2p,r=[0,3,4,5,6,1,2],o=[0,3,4,1,2];X.writePaths=function(n){var s=n.length;if(!s)return"M0,0Z";for(var c="",h=0;h<s;h++)for(var v=n[h].length,p=0;p<v;p++){var T=n[h][p][0];if(T==="Z")c+="Z";else for(var l=n[h][p].length,_=0;_<l;_++){var w=_;T==="Q"||T==="S"?w=o[_]:T==="C"&&(w=r[_]),c+=n[h][p][w],_>0&&_<l-1&&(c+=",")}}return c},X.readPaths=function(n,s,c,h){var v=H(n),p=[],T=-1,l=function(){T++,p[T]=[]},_,w=0,S=0,E,m,b=function(){E=w,m=S};b();for(var d=0;d<v.length;d++){var u=[],y,f,P,L,z=v[d][0],F=z;switch(z){case"M":l(),w=+v[d][1],S=+v[d][2],u.push([F,w,S]),b();break;case"Q":case"S":y=+v[d][1],P=+v[d][2],w=+v[d][3],S=+v[d][4],u.push([F,w,S,y,P]);break;case"C":y=+v[d][1],P=+v[d][2],f=+v[d][3],L=+v[d][4],w=+v[d][5],S=+v[d][6],u.push([F,w,S,y,P,f,L]);break;case"T":case"L":w=+v[d][1],S=+v[d][2],u.push([F,w,S]);break;case"H":F="L",w=+v[d][1],u.push([F,w,S]);break;case"V":F="L",S=+v[d][1],u.push([F,w,S]);break;case"A":F="L";var B=+v[d][1],O=+v[d][2];+v[d][4]||(B=-B,O=-O);var I=w-B,N=S;for(_=1;_<=x/2;_++){var U=2*Math.PI*_/x;u.push([F,I+B*Math.cos(U),N+O*Math.sin(U)])}break;case"Z":(w!==E||S!==m)&&(w=E,S=m,u.push([F,w,S]));break}for(var W=(c||{}).domain,Q=s._fullLayout._size,ue=c&&c.xsizemode==="pixel",se=c&&c.ysizemode==="pixel",he=h===!1,G=0;G<u.length;G++){for(_=0;_+2<7;_+=2){var $=u[G][_+1],J=u[G][_+2];$===void 0||J===void 0||(w=$,S=J,c&&(c.xaxis&&c.xaxis.p2r?(he&&($-=c.xaxis._offset),ue?$=t(c.xaxis,c.xanchor)+$:$=e(c.xaxis,$)):(he&&($-=Q.l),W?$=W.x[0]+$/Q.w:$=$/Q.w),c.yaxis&&c.yaxis.p2r?(he&&(J-=c.yaxis._offset),se?J=t(c.yaxis,c.yanchor)-J:J=e(c.yaxis,J)):(he&&(J-=Q.t),W?J=W.y[1]-J/Q.h:J=1-J/Q.h)),u[G][_+1]=$,u[G][_+2]=J)}p[T].push(u[G].slice())}}return p};function a(n,s){return Math.abs(n-s)<=1e-6}function i(n,s){var c=s[1]-n[1],h=s[2]-n[2];return Math.sqrt(c*c+h*h)}X.pointsOnRectangle=function(n){var s=n.length;if(s!==5)return!1;for(var c=1;c<3;c++){var h=n[0][c]-n[1][c],v=n[3][c]-n[2][c];if(!a(h,v))return!1;var p=n[0][c]-n[3][c],T=n[1][c]-n[2][c];if(!a(p,T))return!1}return!a(n[0][1],n[1][1])&&!a(n[0][1],n[3][1])?!1:!!(i(n[0],n[1])*i(n[0],n[3]))},X.pointsOnEllipse=function(n){var s=n.length;if(s!==x+1)return!1;s=x;for(var c=0;c<s;c++){var h=(s*2-c)%s,v=(s/2+h)%s,p=(s/2+c)%s;if(!a(i(n[c],n[p]),i(n[h],n[v])))return!1}return!0},X.handleEllipse=function(n,s,c){if(!n)return[s,c];var h=X.ellipseOver({x0:s[0],y0:s[1],x1:c[0],y1:c[1]}),v=(h.x1+h.x0)/2,p=(h.y1+h.y0)/2,T=(h.x1-h.x0)/2,l=(h.y1-h.y0)/2;T||(T=l=l/A),l||(l=T=T/A);for(var _=[],w=0;w<x;w++){var S=w*2*Math.PI/x;_.push([v+T*Math.cos(S),p+l*Math.sin(S)])}return _},X.ellipseOver=function(n){var s=n.x0,c=n.y0,h=n.x1,v=n.y1,p=h-s,T=v-c;s-=p,c-=T;var l=(s+h)/2,_=(c+v)/2,w=A;return p*=w,T*=w,{x0:l-p,y0:_-T,x1:l+p,y1:_+T}},X.fixDatesForPaths=function(n,s,c){var h=s.type==="date",v=c.type==="date";if(!h&&!v)return n;for(var p=0;p<n.length;p++)for(var T=0;T<n[p].length;T++)for(var l=0;l+2<n[p][T].length;l+=2)h&&(n[p][T][l+1]=n[p][T][l+1].replace(" ","_")),v&&(n[p][T][l+2]=n[p][T][l+2].replace(" ","_"));return n}}}),A2=Ye({"src/components/shapes/draw_newshape/newshapes.js"(X,H){"use strict";var g=Jd(),x=g.drawMode,A=g.openMode,M=w2(),e=M.i000,t=M.i090,r=M.i180,o=M.i270,a=M.cos45,i=M.sin45,n=T2(),s=n.p2r,c=n.r2p,h=Jm(),v=h.clearOutline,p=tg(),T=p.readPaths,l=p.writePaths,_=p.ellipseOver,w=p.fixDatesForPaths;function S(m,b){if(m.length){var d=m[0][0];if(d){var u=b.gd,y=b.isActiveShape,f=b.dragmode,P=(u.layout||{}).shapes||[];if(!x(f)&&y!==void 0){var L=u._fullLayout._activeShapeIndex;if(L<P.length)switch(u._fullLayout.shapes[L].type){case"rect":f="drawrect";break;case"circle":f="drawcircle";break;case"line":f="drawline";break;case"path":var z=P[L].path||"";z[z.length-1]==="Z"?f="drawclosedpath":f="drawopenpath";break}}var F=E(m,b,f);v(u);for(var B=b.editHelpers,O=(B||{}).modifyItem,I=[],N=0;N<P.length;N++){var U=u._fullLayout.shapes[N];if(I[N]=U._input,y!==void 0&&N===u._fullLayout._activeShapeIndex){var W=F;switch(U.type){case"line":case"rect":case"circle":O("x0",W.x0-(U.x0shift||0)),O("x1",W.x1-(U.x1shift||0)),O("y0",W.y0-(U.y0shift||0)),O("y1",W.y1-(U.y1shift||0));break;case"path":O("path",W.path);break}}}return y===void 0?(I.push(F),I):B?B.getUpdateObj():{}}}}function E(m,b,d){var u=m[0][0],y=b.gd,f=u.getAttribute("d"),P=y._fullLayout.newshape,L=b.plotinfo,z=b.isActiveShape,F=L.xaxis,B=L.yaxis,O=!!L.domain||!L.xaxis,I=!!L.domain||!L.yaxis,N=A(d),U=T(f,y,L,z),W={editable:!0,visible:P.visible,name:P.name,showlegend:P.showlegend,legend:P.legend,legendwidth:P.legendwidth,legendgroup:P.legendgroup,legendgrouptitle:{text:P.legendgrouptitle.text,font:P.legendgrouptitle.font},legendrank:P.legendrank,label:P.label,xref:O?"paper":F._id,yref:I?"paper":B._id,layer:P.layer,opacity:P.opacity,line:{color:P.line.color,width:P.line.width,dash:P.line.dash}};N||(W.fillcolor=P.fillcolor,W.fillrule=P.fillrule);var Q;if(U.length===1&&(Q=U[0]),Q&&Q.length===5&&d==="drawrect")W.type="rect",W.x0=Q[0][1],W.y0=Q[0][2],W.x1=Q[2][1],W.y1=Q[2][2];else if(Q&&d==="drawline")W.type="line",W.x0=Q[0][1],W.y0=Q[0][2],W.x1=Q[1][1],W.y1=Q[1][2];else if(Q&&d==="drawcircle"){W.type="circle";var ue=Q[e][1],se=Q[t][1],he=Q[r][1],G=Q[o][1],$=Q[e][2],J=Q[t][2],Z=Q[r][2],re=Q[o][2],ne=L.xaxis&&(L.xaxis.type==="date"||L.xaxis.type==="log"),j=L.yaxis&&(L.yaxis.type==="date"||L.yaxis.type==="log");ne&&(ue=c(L.xaxis,ue),se=c(L.xaxis,se),he=c(L.xaxis,he),G=c(L.xaxis,G)),j&&($=c(L.yaxis,$),J=c(L.yaxis,J),Z=c(L.yaxis,Z),re=c(L.yaxis,re));var ee=(se+G)/2,ie=($+Z)/2,fe=(G-se+he-ue)/2,be=(re-J+Z-$)/2,Ae=_({x0:ee,y0:ie,x1:ee+fe*a,y1:ie+be*i});ne&&(Ae.x0=s(L.xaxis,Ae.x0),Ae.x1=s(L.xaxis,Ae.x1)),j&&(Ae.y0=s(L.yaxis,Ae.y0),Ae.y1=s(L.yaxis,Ae.y1)),W.x0=Ae.x0,W.y0=Ae.y0,W.x1=Ae.x1,W.y1=Ae.y1}else W.type="path",F&&B&&w(U,F,B),W.path=l(U),Q=null;return W}H.exports={newShapes:S,createShapeObj:E}}}),_S=Ye({"src/components/selections/draw_newselection/newselections.js"(X,H){"use strict";var g=Jd(),x=g.selectMode,A=Jm(),M=A.clearOutline,e=tg(),t=e.readPaths,r=e.writePaths,o=e.fixDatesForPaths;H.exports=function(i,n){if(i.length){var s=i[0][0];if(s){var c=s.getAttribute("d"),h=n.gd,v=h._fullLayout.newselection,p=n.plotinfo,T=p.xaxis,l=p.yaxis,_=n.isActiveSelection,w=n.dragmode,S=(h.layout||{}).selections||[];if(!x(w)&&_!==void 0){var E=h._fullLayout._activeSelectionIndex;if(E<S.length)switch(h._fullLayout.selections[E].type){case"rect":w="select";break;case"path":w="lasso";break}}var m=t(c,h,p,_),b={xref:T._id,yref:l._id,opacity:v.opacity,line:{color:v.line.color,width:v.line.width,dash:v.line.dash}},d;m.length===1&&(d=m[0]),d&&d.length===5&&w==="select"?(b.type="rect",b.x0=d[0][1],b.y0=d[0][2],b.x1=d[2][1],b.y1=d[2][2]):(b.type="path",T&&l&&o(m,T,l),b.path=r(m),d=null),M(h);for(var u=n.editHelpers,y=(u||{}).modifyItem,f=[],P=0;P<S.length;P++){var L=h._fullLayout.selections[P];if(!L){f[P]=L;continue}if(f[P]=L._input,_!==void 0&&P===h._fullLayout._activeSelectionIndex){var z=b;switch(L.type){case"rect":y("x0",z.x0),y("x1",z.x1),y("y0",z.y0),y("y1",z.y1);break;case"path":y("path",z.path);break}}}return _===void 0?(f.push(b),f):u?u.getUpdateObj():{}}}}}}),E_=Ye({"src/components/shapes/constants.js"(X,H){"use strict";H.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}}}),rg=Ye({"src/components/shapes/helpers.js"(X){"use strict";var H=E_(),g=ta(),x=Co();X.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}},X.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}},X.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}},X.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}},X.extractPathCoords=function(e,t,r){var o=[],a=e.match(H.segmentRE);return a.forEach(function(i){var n=t[i.charAt(0)].drawn;if(n!==void 0){var s=i.substr(1).match(H.paramRE);if(!(!s||s.length<n)){var c=s[n],h=r?c:g.cleanNumber(c);o.push(h)}}}),o},X.getDataToPixel=function(e,t,r,o,a){var i=e._fullLayout._size,n;if(t)if(a==="domain")n=function(c){return t._length*(o?1-c:c)+t._offset};else{var s=X.shapePositionToRange(t);n=function(c){var h=M(t,r);return t._offset+t.r2p(s(c,!0))+h},t.type==="date"&&(n=X.decodeDate(n))}else o?n=function(c){return i.t+i.h*(1-c)}:n=function(c){return i.l+i.w*c};return n},X.getPixelToData=function(e,t,r,o){var a=e._fullLayout._size,i;if(t)if(o==="domain")i=function(s){var c=(s-t._offset)/t._length;return r?1-c:c};else{var n=X.rangeToShapePosition(t);i=function(s){return n(t.p2r(s-t._offset))}}else r?i=function(s){return 1-(s-a.t)/a.h}:i=function(s){return(s-a.l)/a.w};return i},X.roundPositionForSharpStrokeRendering=function(e,t){var r=Math.round(t%2)===1,o=Math.round(e);return r?o+.5:o},X.makeShapesOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.shapes[t]||{},o=e._fullLayout._plots[r.xref+r.yref],a=!!o;return a?o._hadPlotinfo=!0:(o={},r.xref&&r.xref!=="paper"&&(o.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&r.yref!=="paper"&&(o.yaxis=e._fullLayout[r.yref+"axis"])),o.xsizemode=r.xsizemode,o.ysizemode=r.ysizemode,o.xanchor=r.xanchor,o.yanchor=r.yanchor,{options:r,plotinfo:o}},X.makeSelectionsOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.selections[t]||{},o=e._fullLayout._plots[r.xref+r.yref],a=!!o;return a?o._hadPlotinfo=!0:(o={},r.xref&&(o.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&(o.yaxis=e._fullLayout[r.yref+"axis"])),{options:r,plotinfo:o}},X.getPathString=function(e,t){var r=t.type,o=x.getRefType(t.xref),a=x.getRefType(t.yref),i=x.getFromId(e,t.xref),n=x.getFromId(e,t.yref),s=e._fullLayout._size,c,h,v,p,T=M(i,t.x0shift),l=M(i,t.x1shift),_=M(n,t.y0shift),w=M(n,t.y1shift),S,E,m,b;if(i?o==="domain"?h=function(O){return i._offset+i._length*O}:(c=X.shapePositionToRange(i),h=function(O){return i._offset+i.r2p(c(O,!0))}):h=function(O){return s.l+s.w*O},n?a==="domain"?p=function(O){return n._offset+n._length*(1-O)}:(v=X.shapePositionToRange(n),p=function(O){return n._offset+n.r2p(v(O,!0))}):p=function(O){return s.t+s.h*(1-O)},r==="path")return i&&i.type==="date"&&(h=X.decodeDate(h)),n&&n.type==="date"&&(p=X.decodeDate(p)),A(t,h,p);if(t.xsizemode==="pixel"){var d=h(t.xanchor);S=d+t.x0+T,E=d+t.x1+l}else S=h(t.x0)+T,E=h(t.x1)+l;if(t.ysizemode==="pixel"){var u=p(t.yanchor);m=u-t.y0+_,b=u-t.y1+w}else m=p(t.y0)+_,b=p(t.y1)+w;if(r==="line")return"M"+S+","+m+"L"+E+","+b;if(r==="rect")return"M"+S+","+m+"H"+E+"V"+b+"H"+S+"Z";var y=(S+E)/2,f=(m+b)/2,P=Math.abs(y-S),L=Math.abs(f-m),z="A"+P+","+L,F=y+P+","+f,B=y+","+(f-L);return"M"+F+z+" 0 1,1 "+B+z+" 0 0,1 "+F+"Z"};function A(e,t,r){var o=e.path,a=e.xsizemode,i=e.ysizemode,n=e.xanchor,s=e.yanchor;return o.replace(H.segmentRE,function(c){var h=0,v=c.charAt(0),p=H.paramIsX[v],T=H.paramIsY[v],l=H.numParams[v],_=c.substr(1).replace(H.paramRE,function(w){return p[h]?a==="pixel"?w=t(n)+Number(w):w=t(w):T[h]&&(i==="pixel"?w=r(s)-Number(w):w=r(w)),h++,h>l&&(w="X"),w});return h>l&&(_=_.replace(/[\s,]*X.*/,""),g.log("Ignoring extra params in segment "+c)),v+_})}function M(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}}}),xS=Ye({"src/components/shapes/display_labels.js"(X,H){"use strict";var g=ta(),x=Co(),A=jl(),M=Bo(),e=tg().readPaths,t=rg(),r=t.getPathString,o=p2(),a=oh().FROM_TL;H.exports=function(c,h,v,p){if(p.selectAll(".shape-label").remove(),!!(v.label.text||v.label.texttemplate)){var T;if(v.label.texttemplate){var l={};if(v.type!=="path"){var _=x.getFromId(c,v.xref),w=x.getFromId(c,v.yref);for(var S in o){var E=o[S](v,_,w);E!==void 0&&(l[S]=E)}}T=g.texttemplateStringForShapes(v.label.texttemplate,{},c._fullLayout._d3locale,l)}else T=v.label.text;var m={"data-index":h},b=v.label.font,d={"data-notex":1},u=p.append("g").attr(m).classed("shape-label",!0),y=u.append("text").attr(d).classed("shape-label-text",!0).text(T),f,P,L,z;if(v.path){var F=r(c,v),B=e(F,c);f=1/0,L=1/0,P=-1/0,z=-1/0;for(var O=0;O<B.length;O++)for(var I=0;I<B[O].length;I++)for(var N=B[O][I],U=1;U<N.length;U+=2){var W=N[U],Q=N[U+1];f=Math.min(f,W),P=Math.max(P,W),L=Math.min(L,Q),z=Math.max(z,Q)}}else{var ue=x.getFromId(c,v.xref),se=v.x0shift,he=v.x1shift,G=x.getRefType(v.xref),$=x.getFromId(c,v.yref),J=v.y0shift,Z=v.y1shift,re=x.getRefType(v.yref),ne=function(Ie,Ze){var at=t.getDataToPixel(c,ue,Ze,!1,G);return at(Ie)},j=function(Ie,Ze){var at=t.getDataToPixel(c,$,Ze,!0,re);return at(Ie)};f=ne(v.x0,se),P=ne(v.x1,he),L=j(v.y0,J),z=j(v.y1,Z)}var ee=v.label.textangle;ee==="auto"&&(v.type==="line"?ee=i(f,L,P,z):ee=0),y.call(function(Ie){return Ie.call(M.font,b).attr({}),A.convertToTspans(Ie,c),Ie});var ie=M.bBox(y.node()),fe=n(f,L,P,z,v,ee,ie),be=fe.textx,Ae=fe.texty,Be=fe.xanchor;y.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[Be],y:Ae,x:be,transform:"rotate("+ee+","+be+","+Ae+")"}).call(A.positionText,be,Ae)}};function i(s,c,h,v){var p,T;return T=Math.abs(h-s),h>=s?p=c-v:p=v-c,-180/Math.PI*Math.atan2(p,T)}function n(s,c,h,v,p,T,l){var _=p.label.textposition,w=p.label.textangle,S=p.label.padding,E=p.type,m=Math.PI/180*T,b=Math.sin(m),d=Math.cos(m),u=p.label.xanchor,y=p.label.yanchor,f,P,L,z;if(E==="line"){_==="start"?(f=s,P=c):_==="end"?(f=h,P=v):(f=(s+h)/2,P=(c+v)/2),u==="auto"&&(_==="start"?w==="auto"?h>s?u="left":h<s?u="right":u="center":h>s?u="right":h<s?u="left":u="center":_==="end"?w==="auto"?h>s?u="right":h<s?u="left":u="center":h>s?u="left":h<s?u="right":u="center":u="center");var F={left:1,center:0,right:-1},B={bottom:-1,middle:0,top:1};if(w==="auto"){var O=B[y];L=-S*b*O,z=S*d*O}else{var I=F[u],N=B[y];L=S*I,z=S*N}f=f+L,P=P+z}else L=S+3,_.indexOf("right")!==-1?(f=Math.max(s,h)-L,u==="auto"&&(u="right")):_.indexOf("left")!==-1?(f=Math.min(s,h)+L,u==="auto"&&(u="left")):(f=(s+h)/2,u==="auto"&&(u="center")),_.indexOf("top")!==-1?P=Math.min(c,v):_.indexOf("bottom")!==-1?P=Math.max(c,v):P=(c+v)/2,z=S,y==="bottom"?P=P-z:y==="top"&&(P=P+z);var U=a[y],W=p.label.font.size,Q=l.height,ue=(Q*U-W)*b,se=-(Q*U-W)*d;return{textx:f+ue,texty:P+se,xanchor:u}}}}),S2=Ye({"src/components/shapes/display_outlines.js"(X,H){"use strict";var g=ta(),x=g.strTranslate,A=bp(),M=Jd(),e=M.drawMode,t=M.selectMode,r=Hn(),o=Fn(),a=w2(),i=a.i000,n=a.i090,s=a.i180,c=a.i270,h=Jm(),v=h.clearOutlineControllers,p=tg(),T=p.pointsOnRectangle,l=p.pointsOnEllipse,_=p.writePaths,w=A2().newShapes,S=A2().createShapeObj,E=_S(),m=xS();H.exports=function y(f,P,L,z){z||(z=0);var F=L.gd;function B(){y(f,P,L,z++),(l(f[0])||L.hasText)&&O({redrawing:!0})}function O(et){var lt={};L.isActiveShape!==void 0&&(L.isActiveShape=!1,lt=w(P,L)),L.isActiveSelection!==void 0&&(L.isActiveSelection=!1,lt=E(P,L),F._fullLayout._reselect=!0),Object.keys(lt).length&&r.call((et||{}).redrawing?"relayout":"_guiRelayout",F,lt)}var I=F._fullLayout,N=I._zoomlayer,U=L.dragmode,W=e(U),Q=t(U);(W||Q)&&(F._fullLayout._outlining=!0),v(F),P.attr("d",_(f));var ue,se,he,G,$;if(!z&&(L.isActiveShape||L.isActiveSelection)){$=b([],f);var J=N.append("g").attr("class","outline-controllers");be(J),it()}if(W&&L.hasText){var Z=N.select(".label-temp"),re=S(P,L,L.dragmode);m(F,"label-temp",re,Z)}function ne(et){he=+et.srcElement.getAttribute("data-i"),G=+et.srcElement.getAttribute("data-j"),ue[he][G].moveFn=j}function j(et,lt){if(f.length){var Me=$[he][G][1],ge=$[he][G][2],ce=f[he],ze=ce.length;if(T(ce)){var tt=et,nt=lt;if(L.isActiveSelection){var Qe=d(ce,G);Qe[1]===ce[G][1]?nt=0:tt=0}for(var Ct=0;Ct<ze;Ct++)if(Ct!==G){var St=ce[Ct];St[1]===ce[G][1]&&(St[1]=Me+tt),St[2]===ce[G][2]&&(St[2]=ge+nt)}if(ce[G][1]=Me+tt,ce[G][2]=ge+nt,!T(ce))for(var Ot=0;Ot<ze;Ot++)for(var jt=0;jt<ce[Ot].length;jt++)ce[Ot][jt]=$[he][Ot][jt]}else ce[G][1]=Me+et,ce[G][2]=ge+lt;B()}}function ee(){O()}function ie(){if(f.length&&f[he]&&f[he].length){for(var et=[],lt=0;lt<f[he].length;lt++)lt!==G&&et.push(f[he][lt]);et.length>1&&!(et.length===2&&et[1][0]==="Z")&&(G===0&&(et[0][0]="M"),f[he]=et,B(),O())}}function fe(et,lt){if(et===2){he=+lt.srcElement.getAttribute("data-i"),G=+lt.srcElement.getAttribute("data-j");var Me=f[he];!T(Me)&&!l(Me)&&ie()}}function be(et){ue=[];for(var lt=0;lt<f.length;lt++){var Me=f[lt],ge=T(Me),ce=!ge&&l(Me);ue[lt]=[];for(var ze=Me.length,tt=0;tt<ze;tt++)if(Me[tt][0]!=="Z"&&!(ce&&tt!==i&&tt!==n&&tt!==s&&tt!==c)){var nt=ge&&L.isActiveSelection,Qe;nt&&(Qe=d(Me,tt));var Ct=Me[tt][1],St=Me[tt][2],Ot=et.append(nt?"rect":"circle").attr("data-i",lt).attr("data-j",tt).style({fill:o.background,stroke:o.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(nt){var jt=Qe[1]-Ct,ur=Qe[2]-St,ar=ur?5:Math.max(Math.min(25,Math.abs(jt)-5),5),Cr=jt?5:Math.max(Math.min(25,Math.abs(ur)-5),5);Ot.classed(ur?"cursor-ew-resize":"cursor-ns-resize",!0).attr("width",ar).attr("height",Cr).attr("x",Ct-ar/2).attr("y",St-Cr/2).attr("transform",x(jt/2,ur/2))}else Ot.classed("cursor-grab",!0).attr("r",5).attr("cx",Ct).attr("cy",St);ue[lt][tt]={element:Ot.node(),gd:F,prepFn:ne,doneFn:ee,clickFn:fe},A.init(ue[lt][tt])}}}function Ae(et,lt){if(f.length)for(var Me=0;Me<f.length;Me++)for(var ge=0;ge<f[Me].length;ge++)for(var ce=0;ce+2<f[Me][ge].length;ce+=2)f[Me][ge][ce+1]=$[Me][ge][ce+1]+et,f[Me][ge][ce+2]=$[Me][ge][ce+2]+lt}function Be(et,lt){Ae(et,lt),B()}function Ie(et){he=+et.srcElement.getAttribute("data-i"),he||(he=0),se[he].moveFn=Be}function Ze(){O()}function at(et){et===2&&u(F)}function it(){if(se=[],!!f.length){var et=0;se[et]={element:P[0][0],gd:F,prepFn:Ie,doneFn:Ze,clickFn:at},A.init(se[et])}}};function b(y,f){for(var P=0;P<f.length;P++){var L=f[P];y[P]=[];for(var z=0;z<L.length;z++){y[P][z]=[];for(var F=0;F<L[z].length;F++)y[P][z][F]=L[z][F]}}return y}function d(y,f){var P=y[f][1],L=y[f][2],z=y.length,F,B,O;return F=(f+1)%z,B=y[F][1],O=y[F][2],B===P&&O===L&&(F=(f+2)%z,B=y[F][1],O=y[F][2]),[F,B,O]}function u(y){if(t(y._fullLayout.dragmode)){v(y);var f=y._fullLayout._activeSelectionIndex,P=(y.layout||{}).selections||[];if(f<P.length){for(var L=[],z=0;z<P.length;z++)z!==f&&L.push(P[z]);delete y._fullLayout._activeSelectionIndex;var F=y._fullLayout.selections[f];y._fullLayout._deselect={xref:F.xref,yref:F.yref},r.call("_guiRelayout",y,{selections:L})}}}}}),M2=Ye({"src/components/shapes/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=Co(),e=tg().readPaths,t=S2(),r=xS(),o=Jm().clearOutlineControllers,a=Fn(),i=Bo(),n=cl().arrayEditor,s=bp(),c=Kd(),h=E_(),v=rg(),p=v.getPathString;H.exports={draw:T,drawOne:w,eraseActiveShape:u,drawLabel:r};function T(y){var f=y._fullLayout;f._shapeUpperLayer.selectAll("path").remove(),f._shapeLowerLayer.selectAll("path").remove(),f._shapeUpperLayer.selectAll("text").remove(),f._shapeLowerLayer.selectAll("text").remove();for(var P in f._plots){var L=f._plots[P].shapelayer;L&&(L.selectAll("path").remove(),L.selectAll("text").remove())}for(var z=0;z<f.shapes.length;z++)f.shapes[z].visible===!0&&w(y,z)}function l(y){return!!y._fullLayout._outlining}function _(y){return!y._context.edits.shapePosition}function w(y,f){y._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+f+'"]').remove();var P=v.makeShapesOptionsAndPlotinfo(y,f),L=P.options,z=P.plotinfo;if(!L._input||L.visible!==!0)return;if(L.layer==="above")B(y._fullLayout._shapeUpperLayer);else if(L.xref==="paper"||L.yref==="paper")B(y._fullLayout._shapeLowerLayer);else if(L.layer==="between")B(z.shapelayerBetween);else if(z._hadPlotinfo){var F=z.mainplotinfo||z;B(F.shapelayer)}else B(y._fullLayout._shapeLowerLayer);function B(O){var I=p(y,L),N={"data-index":f,"fill-rule":L.fillrule,d:I},U=L.opacity,W=L.fillcolor,Q=L.line.width?L.line.color:"rgba(0,0,0,0)",ue=L.line.width,se=L.line.dash;!ue&&L.editable===!0&&(ue=5,se="solid");var he=I[I.length-1]!=="Z",G=_(y)&&L.editable&&y._fullLayout._activeShapeIndex===f;G&&(W=he?"rgba(0,0,0,0)":y._fullLayout.activeshape.fillcolor,U=y._fullLayout.activeshape.opacity);var $=O.append("g").classed("shape-group",!0).attr({"data-index":f}),J=$.append("path").attr(N).style("opacity",U).call(a.stroke,Q).call(a.fill,W).call(i.dashLine,se,ue);S($,y,L),r(y,f,L,$);var Z;if((G||y._context.edits.shapePosition)&&(Z=n(y.layout,"shapes",L)),G){J.style({cursor:"move"});var re={element:J.node(),plotinfo:z,gd:y,editHelpers:Z,hasText:L.label.text||L.label.texttemplate,isActiveShape:!0},ne=e(I,y);t(ne,J,re)}else y._context.edits.shapePosition?E(y,J,L,f,O,Z):L.editable===!0&&J.style("pointer-events",he||a.opacity(W)*U<=.5?"stroke":"all");J.node().addEventListener("click",function(){return b(y,J)})}}function S(y,f,P){var L=(P.xref+P.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");i.setClipUrl(y,L?"clip"+f._fullLayout._uid+L:null,f)}function E(y,f,P,L,z,F){var B=10,O=10,I=P.xsizemode==="pixel",N=P.ysizemode==="pixel",U=P.type==="line",W=P.type==="path",Q=F.modifyItem,ue,se,he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be=g.select(f.node().parentNode),Ie=M.getFromId(y,P.xref),Ze=M.getRefType(P.xref),at=M.getFromId(y,P.yref),it=M.getRefType(P.yref),et=P.x0shift,lt=P.x1shift,Me=P.y0shift,ge=P.y1shift,ce=function(Ee,Ve){var ke=v.getDataToPixel(y,Ie,Ve,!1,Ze);return ke(Ee)},ze=function(Ee,Ve){var ke=v.getDataToPixel(y,at,Ve,!0,it);return ke(Ee)},tt=v.getPixelToData(y,Ie,!1,Ze),nt=v.getPixelToData(y,at,!0,it),Qe=Ot(),Ct={element:Qe.node(),gd:y,prepFn:ar,doneFn:Cr,clickFn:vr},St;s.init(Ct),Qe.node().onmousemove=ur;function Ot(){return U?jt():f}function jt(){var Ee=10,Ve=Math.max(P.line.width,Ee),ke=z.append("g").attr("data-index",L).attr("drag-helper",!0);ke.append("path").attr("d",f.attr("d")).style({cursor:"move","stroke-width":Ve,"stroke-opacity":"0"});var Te={"fill-opacity":"0"},Le=Math.max(Ve/2,Ee);return ke.append("circle").attr({"data-line-point":"start-point",cx:I?ce(P.xanchor)+P.x0:ce(P.x0,et),cy:N?ze(P.yanchor)-P.y0:ze(P.y0,Me),r:Le}).style(Te).classed("cursor-grab",!0),ke.append("circle").attr({"data-line-point":"end-point",cx:I?ce(P.xanchor)+P.x1:ce(P.x1,lt),cy:N?ze(P.yanchor)-P.y1:ze(P.y1,ge),r:Le}).style(Te).classed("cursor-grab",!0),ke}function ur(Ee){if(l(y)){St=null;return}if(U)Ee.target.tagName==="path"?St="move":St=Ee.target.attributes["data-line-point"].value==="start-point"?"resize-over-start-point":"resize-over-end-point";else{var Ve=Ct.element.getBoundingClientRect(),ke=Ve.right-Ve.left,Te=Ve.bottom-Ve.top,Le=Ee.clientX-Ve.left,rt=Ee.clientY-Ve.top,dt=!W&&ke>B&&Te>O&&!Ee.shiftKey?s.getCursor(Le/ke,1-rt/Te):"move";c(f,dt),St=dt.split("-")[0]}}function ar(Ee){l(y)||(I&&($=ce(P.xanchor)),N&&(J=ze(P.yanchor)),P.type==="path"?Ae=P.path:(ue=I?P.x0:ce(P.x0),se=N?P.y0:ze(P.y0),he=I?P.x1:ce(P.x1),G=N?P.y1:ze(P.y1)),ue<he?(ne=ue,fe="x0",j=he,be="x1"):(ne=he,fe="x1",j=ue,be="x0"),!N&&se<G||N&&se>G?(Z=se,ee="y0",re=G,ie="y1"):(Z=G,ee="y1",re=se,ie="y0"),ur(Ee),Fe(z,P),Ne(f,P,y),Ct.moveFn=St==="move"?_r:yt,Ct.altKey=Ee.altKey)}function Cr(){l(y)||(c(f),Ke(z),S(f,y,P),x.call("_guiRelayout",y,F.getUpdateObj()))}function vr(){l(y)||Ke(z)}function _r(Ee,Ve){if(P.type==="path"){var ke=function(rt){return rt},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(dt){return tt(ce(dt)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(dt){return nt(ze(dt)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else I?Q("xanchor",P.xanchor=tt($+Ee)):(Q("x0",P.x0=tt(ue+Ee)),Q("x1",P.x1=tt(he+Ee))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Q("y0",P.y0=nt(se+Ve)),Q("y1",P.y1=nt(G+Ve)));f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function yt(Ee,Ve){if(W){var ke=function(Ma){return Ma},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(Ua){return tt(ce(Ua)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(Ua){return nt(ze(Ua)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else if(U){if(St==="resize-over-start-point"){var rt=ue+Ee,dt=N?se-Ve:se+Ve;Q("x0",P.x0=I?rt:tt(rt)),Q("y0",P.y0=N?dt:nt(dt))}else if(St==="resize-over-end-point"){var xt=he+Ee,It=N?G-Ve:G+Ve;Q("x1",P.x1=I?xt:tt(xt)),Q("y1",P.y1=N?It:nt(It))}}else{var Bt=function(Ma){return St.indexOf(Ma)!==-1},Gt=Bt("n"),Kt=Bt("s"),sr=Bt("w"),sa=Bt("e"),Aa=Gt?Z+Ve:Z,La=Kt?re+Ve:re,ka=sr?ne+Ee:ne,Ga=sa?j+Ee:j;N&&(Gt&&(Aa=Z-Ve),Kt&&(La=re-Ve)),(!N&&La-Aa>O||N&&Aa-La>O)&&(Q(ee,P[ee]=N?Aa:nt(Aa)),Q(ie,P[ie]=N?La:nt(La))),Ga-ka>B&&(Q(fe,P[fe]=I?ka:tt(ka)),Q(be,P[be]=I?Ga:tt(Ga)))}f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function Fe(Ee,Ve){(I||N)&&ke();function ke(){var Te=Ve.type!=="path",Le=Ee.selectAll(".visual-cue").data([0]),rt=1;Le.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":rt}).classed("visual-cue",!0);var dt=ce(I?Ve.xanchor:A.midRange(Te?[Ve.x0,Ve.x1]:v.extractPathCoords(Ve.path,h.paramIsX))),xt=ze(N?Ve.yanchor:A.midRange(Te?[Ve.y0,Ve.y1]:v.extractPathCoords(Ve.path,h.paramIsY)));if(dt=v.roundPositionForSharpStrokeRendering(dt,rt),xt=v.roundPositionForSharpStrokeRendering(xt,rt),I&&N){var It="M"+(dt-1-rt)+","+(xt-1-rt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Le.attr("d",It)}else if(I){var Bt="M"+(dt-1-rt)+","+(xt-9-rt)+"v18 h2 v-18 Z";Le.attr("d",Bt)}else{var Gt="M"+(dt-9-rt)+","+(xt-1-rt)+"h18 v2 h-18 Z";Le.attr("d",Gt)}}}function Ke(Ee){Ee.selectAll(".visual-cue").remove()}function Ne(Ee,Ve,ke){var Te=Ve.xref,Le=Ve.yref,rt=M.getFromId(ke,Te),dt=M.getFromId(ke,Le),xt="";Te!=="paper"&&!rt.autorange&&(xt+=Te),Le!=="paper"&&!dt.autorange&&(xt+=Le),i.setClipUrl(Ee,xt?"clip"+ke._fullLayout._uid+xt:null,ke)}}function m(y,f,P){return y.replace(h.segmentRE,function(L){var z=0,F=L.charAt(0),B=h.paramIsX[F],O=h.paramIsY[F],I=h.numParams[F],N=L.substr(1).replace(h.paramRE,function(U){return z>=I||(B[z]?U=f(U):O[z]&&(U=P(U)),z++),U});return F+N})}function b(y,f){if(_(y)){var P=f.node(),L=+P.getAttribute("data-index");if(L>=0){if(L===y._fullLayout._activeShapeIndex){d(y);return}y._fullLayout._activeShapeIndex=L,y._fullLayout._deactivateShape=d,T(y)}}}function d(y){if(_(y)){var f=y._fullLayout._activeShapeIndex;f>=0&&(o(y),delete y._fullLayout._activeShapeIndex,T(y))}}function u(y){if(_(y)){o(y);var f=y._fullLayout._activeShapeIndex,P=(y.layout||{}).shapes||[];if(f<P.length){for(var L=[],z=0;z<P.length;z++)z!==f&&L.push(P[z]);return delete y._fullLayout._activeShapeIndex,x.call("_guiRelayout",y,{shapes:L})}}}}}),bS=Ye({"src/components/modebar/buttons.js"(X,H){"use strict";var g=Hn(),x=Gu(),A=Xc(),M=b2(),e=M2().eraseActiveShape,t=ta(),r=t._,o=H.exports={};o.toImage={name:"toImage",title:function(E){var m=E._context.toImageButtonOptions||{},b=m.format||"png";return b==="png"?r(E,"Download plot as a png"):r(E,"Download plot")},icon:M.camera,click:function(E){var m=E._context.toImageButtonOptions,b={format:m.format||"png"};t.notifier(r(E,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(d){d in m&&(b[d]=m[d])}),g.call("downloadImage",E,b).then(function(d){t.notifier(r(E,"Snapshot succeeded")+" - "+d,"long")}).catch(function(){t.notifier(r(E,"Sorry, there was a problem downloading your snapshot!"),"long")})}},o.sendDataToCloud={name:"sendDataToCloud",title:function(E){return r(E,"Edit in Chart Studio")},icon:M.disk,click:function(E){x.sendDataToCloud(E)}},o.editInChartStudio={name:"editInChartStudio",title:function(E){return r(E,"Edit in Chart Studio")},icon:M.pencil,click:function(E){x.sendDataToCloud(E)}},o.zoom2d={name:"zoom2d",_cat:"zoom",title:function(E){return r(E,"Zoom")},attr:"dragmode",val:"zoom",icon:M.zoombox,click:a},o.pan2d={name:"pan2d",_cat:"pan",title:function(E){return r(E,"Pan")},attr:"dragmode",val:"pan",icon:M.pan,click:a},o.select2d={name:"select2d",_cat:"select",title:function(E){return r(E,"Box Select")},attr:"dragmode",val:"select",icon:M.selectbox,click:a},o.lasso2d={name:"lasso2d",_cat:"lasso",title:function(E){return r(E,"Lasso Select")},attr:"dragmode",val:"lasso",icon:M.lasso,click:a},o.drawclosedpath={name:"drawclosedpath",title:function(E){return r(E,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:M.drawclosedpath,click:a},o.drawopenpath={name:"drawopenpath",title:function(E){return r(E,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:M.drawopenpath,click:a},o.drawline={name:"drawline",title:function(E){return r(E,"Draw line")},attr:"dragmode",val:"drawline",icon:M.drawline,click:a},o.drawrect={name:"drawrect",title:function(E){return r(E,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:M.drawrect,click:a},o.drawcircle={name:"drawcircle",title:function(E){return r(E,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:M.drawcircle,click:a},o.eraseshape={name:"eraseshape",title:function(E){return r(E,"Erase active shape")},icon:M.eraseshape,click:e},o.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:a},o.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:a},o.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(E){return r(E,"Autoscale")},attr:"zoom",val:"auto",icon:M.autoscale,click:a},o.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(E){return r(E,"Reset axes")},attr:"zoom",val:"reset",icon:M.home,click:a},o.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(E){return r(E,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:M.tooltip_basic,gravity:"ne",click:a},o.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(E){return r(E,"Compare data on hover")},attr:"hovermode",val:function(E){return E._fullLayout._isHoriz?"y":"x"},icon:M.tooltip_compare,gravity:"ne",click:a};function a(E,m){var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout,f={},P=A.list(E,null,!0),L=y._cartesianSpikesEnabled,z,F;if(d==="zoom"){var B=u==="in"?.5:2,O=(1+B)/2,I=(1-B)/2,N;for(F=0;F<P.length;F++)if(z=P[F],!z.fixedrange)if(N=z._name,u==="auto")f[N+".autorange"]=!0;else if(u==="reset")z._rangeInitial0===void 0&&z._rangeInitial1===void 0?f[N+".autorange"]=!0:z._rangeInitial0===void 0?(f[N+".autorange"]=z._autorangeInitial,f[N+".range"]=[null,z._rangeInitial1]):z._rangeInitial1===void 0?(f[N+".range"]=[z._rangeInitial0,null],f[N+".autorange"]=z._autorangeInitial):f[N+".range"]=[z._rangeInitial0,z._rangeInitial1],z._showSpikeInitial!==void 0&&(f[N+".showspikes"]=z._showSpikeInitial,L==="on"&&!z._showSpikeInitial&&(L="off"));else{var U=[z.r2l(z.range[0]),z.r2l(z.range[1])],W=[O*U[0]+I*U[1],O*U[1]+I*U[0]];f[N+".range[0]"]=z.l2r(W[0]),f[N+".range[1]"]=z.l2r(W[1])}}else d==="hovermode"&&(u==="x"||u==="y")&&(u=y._isHoriz?"y":"x",b.setAttribute("data-val",u)),f[d]=u;y._cartesianSpikesEnabled=L,g.call("_guiRelayout",E,f)}o.zoom3d={name:"zoom3d",_cat:"zoom",title:function(E){return r(E,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:M.zoombox,click:i},o.pan3d={name:"pan3d",_cat:"pan",title:function(E){return r(E,"Pan")},attr:"scene.dragmode",val:"pan",icon:M.pan,click:i},o.orbitRotation={name:"orbitRotation",title:function(E){return r(E,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:M["3d_rotate"],click:i},o.tableRotation={name:"tableRotation",title:function(E){return r(E,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:M["z-axis"],click:i};function i(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout._subplots.gl3d||[],f={},P=d.split("."),L=0;L<y.length;L++)f[y[L]+"."+P[1]]=u;var z=u==="pan"?u:"zoom";f.dragmode=z,g.call("_guiRelayout",E,f)}o.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(E){return r(E,"Reset camera to default")},attr:"resetDefault",icon:M.home,click:n},o.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(E){return r(E,"Reset camera to last save")},attr:"resetLastSave",icon:M.movie,click:n};function n(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=d==="resetLastSave",y=d==="resetDefault",f=E._fullLayout,P=f._subplots.gl3d||[],L={},z=0;z<P.length;z++){var F=P[z],B=F+".camera",O=F+".aspectratio",I=F+".aspectmode",N=f[F]._scene,U;u?(L[B+".up"]=N.viewInitial.up,L[B+".eye"]=N.viewInitial.eye,L[B+".center"]=N.viewInitial.center,U=!0):y&&(L[B+".up"]=null,L[B+".eye"]=null,L[B+".center"]=null,U=!0),U&&(L[O+".x"]=N.viewInitial.aspectratio.x,L[O+".y"]=N.viewInitial.aspectratio.y,L[O+".z"]=N.viewInitial.aspectratio.z,L[I]=N.viewInitial.aspectmode)}g.call("_guiRelayout",E,L)}o.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:c};function s(E,m){var b=m.currentTarget,d=b._previousVal,u=E._fullLayout,y=u._subplots.gl3d||[],f=["xaxis","yaxis","zaxis"],P={},L={};if(d)L=d,b._previousVal=null;else{for(var z=0;z<y.length;z++){var F=y[z],B=u[F],O=F+".hovermode";P[O]=B.hovermode,L[O]=!1;for(var I=0;I<3;I++){var N=f[I],U=F+"."+N+".showspikes";L[U]=!1,P[U]=B[N].showspikes}}b._previousVal=P}return L}function c(E,m){var b=s(E,m);g.call("_guiRelayout",E,b)}o.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:h},o.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:h},o.resetGeo={name:"resetGeo",_cat:"reset",title:function(E){return r(E,"Reset")},attr:"reset",val:null,icon:M.autoscale,click:h},o.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:p};function h(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout,f=y._subplots.geo||[],P=0;P<f.length;P++){var L=f[P],z=y[L];if(d==="zoom"){var F=z.projection.scale,B=u==="in"?2*F:.5*F;g.call("_guiRelayout",E,L+".projection.scale",B)}}d==="reset"&&S(E,"geo")}o.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:M.tooltip_basic,gravity:"ne",click:p};function v(E){var m=E._fullLayout;return m.hovermode?!1:m._has("cartesian")?m._isHoriz?"y":"x":"closest"}function p(E){var m=v(E);g.call("_guiRelayout",E,"hovermode",m)}o.resetViewSankey={name:"resetSankeyGroup",title:function(E){return r(E,"Reset view")},icon:M.home,click:function(E){for(var m={"node.groups":[],"node.x":[],"node.y":[]},b=0;b<E._fullData.length;b++){var d=E._fullData[b]._viewInitial;m["node.groups"].push(d.node.groups.slice()),m["node.x"].push(d.node.x.slice()),m["node.y"].push(d.node.y.slice())}g.call("restyle",E,m)}},o.toggleHover={name:"toggleHover",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:function(E,m){var b=s(E,m);b.hovermode=v(E),g.call("_guiRelayout",E,b)}},o.resetViews={name:"resetViews",title:function(E){return r(E,"Reset views")},icon:M.home,click:function(E,m){var b=m.currentTarget;b.setAttribute("data-attr","zoom"),b.setAttribute("data-val","reset"),a(E,m),b.setAttribute("data-attr","resetLastSave"),n(E,m),S(E,"geo"),S(E,"mapbox"),S(E,"map")}},o.toggleSpikelines={name:"toggleSpikelines",title:function(E){return r(E,"Toggle Spike Lines")},icon:M.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(E){var m=E._fullLayout,b=m._cartesianSpikesEnabled;m._cartesianSpikesEnabled=b==="on"?"off":"on",g.call("_guiRelayout",E,T(E))}};function T(E){for(var m=E._fullLayout,b=m._cartesianSpikesEnabled==="on",d=A.list(E,null,!0),u={},y=0;y<d.length;y++){var f=d[y];u[f._name+".showspikes"]=b?!0:f._showSpikeInitial}return u}o.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(E){return r(E,"Reset view")},attr:"reset",icon:M.home,click:function(E){S(E,"mapbox")}},o.resetViewMap={name:"resetViewMap",_cat:"resetView",title:function(E){return r(E,"Reset view")},attr:"reset",icon:M.home,click:function(E){S(E,"map")}},o.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:l},o.zoomInMap={name:"zoomInMap",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:_},o.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:l},o.zoomOutMap={name:"zoomOutMap",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:_};function l(E,m){w(E,m,"mapbox")}function _(E,m){w(E,m,"map")}function w(E,m,b){for(var d=m.currentTarget,u=d.getAttribute("data-val"),y=E._fullLayout,f=y._subplots[b]||[],P=1.05,L={},z=0;z<f.length;z++){var F=f[z],B=y[F].zoom,O=u==="in"?P*B:B/P;L[F+".zoom"]=O}g.call("_guiRelayout",E,L)}function S(E,m){for(var b=E._fullLayout,d=b._subplots[m]||[],u={},y=0;y<d.length;y++)for(var f=d[y],P=b[f]._subplot,L=P.viewInitial,z=Object.keys(L),F=0;F<z.length;F++){var B=z[F];u[f+"."+B]=L[B]}g.call("_guiRelayout",E,u)}}}),wS=Ye({"src/components/modebar/constants.js"(X,H){"use strict";var g=bS(),x=Object.keys(g),A=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],M=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(A),e=[],t=function(r){if(M.indexOf(r._cat||r.name)===-1){var o=r.name,a=(r._cat||r.name).toLowerCase();e.indexOf(o)===-1&&e.push(o),e.indexOf(a)===-1&&e.push(a)}};x.forEach(function(r){t(g[r])}),e.sort(),H.exports={DRAW_MODES:A,backButtons:M,foreButtons:e}}}),TS=Ye({"src/components/modebar/attributes.js"(X,H){"use strict";var g=wS();H.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}}}),gO=Ye({"src/components/modebar/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=TS();H.exports=function(t,r){var o=t.modebar||{},a=A.newContainer(r,"modebar");function i(s,c){return g.coerce(o,a,M,s,c)}i("orientation"),i("bgcolor",x.addOpacity(r.paper_bgcolor,.5));var n=x.contrast(x.rgb(r.modebar.bgcolor));i("color",x.addOpacity(n,.3)),i("activecolor",x.addOpacity(n,.7)),i("uirevision",r.uirevision),i("add"),i("remove")}}}),yO=Ye({"src/components/modebar/modebar.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=b2(),e=xh().version,t=new DOMParser;function r(n){this.container=n.container,this.element=document.createElement("div"),this.update(n.graphInfo,n.buttons),this.container.appendChild(this.element)}var o=r.prototype;o.update=function(n,s){this.graphInfo=n;var c=this.graphInfo._context,h=this.graphInfo._fullLayout,v="modebar-"+h._uid;this.element.setAttribute("id",v),this._uid=v,this.element.className="modebar",c.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),h.modebar.orientation==="v"&&(this.element.className+=" vertical",s=s.reverse());var p=h.modebar,T="#"+v+" .modebar-group";document.querySelectorAll(T).forEach(function(E){E.style.backgroundColor=p.bgcolor});var l=!this.hasButtons(s),_=this.hasLogo!==c.displaylogo,w=this.locale!==c.locale;if(this.locale=c.locale,(l||_||w)&&(this.removeAllButtons(),this.updateButtons(s),c.watermark||c.displaylogo)){var S=this.getLogo();c.watermark&&(S.className=S.className+" watermark"),h.modebar.orientation==="v"?this.element.insertBefore(S,this.element.childNodes[0]):this.element.appendChild(S),this.hasLogo=!0}this.updateActiveButton(),A.setStyleOnHover("#"+v+" .modebar-btn",".active",".icon path","fill: "+p.activecolor,"fill: "+p.color,this.element)},o.updateButtons=function(n){var s=this;this.buttons=n,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(c){var h=s.createGroup();c.forEach(function(v){var p=v.name;if(!p)throw new Error("must provide button 'name' in button config");if(s.buttonsNames.indexOf(p)!==-1)throw new Error("button name '"+p+"' is taken");s.buttonsNames.push(p);var T=s.createButton(v);s.buttonElements.push(T),h.appendChild(T)}),s.element.appendChild(h)})},o.createGroup=function(){var n=document.createElement("div");n.className="modebar-group";var s=this.graphInfo._fullLayout.modebar;return n.style.backgroundColor=s.bgcolor,n},o.createButton=function(n){var s=this,c=document.createElement("a");c.setAttribute("rel","tooltip"),c.className="modebar-btn";var h=n.title;h===void 0?h=n.name:typeof h=="function"&&(h=h(this.graphInfo)),(h||h===0)&&c.setAttribute("data-title",h),n.attr!==void 0&&c.setAttribute("data-attr",n.attr);var v=n.val;v!==void 0&&(typeof v=="function"&&(v=v(this.graphInfo)),c.setAttribute("data-val",v));var p=n.click;if(typeof p!="function")throw new Error("must provide button 'click' function in button config");c.addEventListener("click",function(l){n.click(s.graphInfo,l),s.updateActiveButton(l.currentTarget)}),c.setAttribute("data-toggle",n.toggle||!1),n.toggle&&g.select(c).classed("active",!0);var T=n.icon;return typeof T=="function"?c.appendChild(T()):c.appendChild(this.createIcon(T||M.question)),c.setAttribute("data-gravity",n.gravity||"n"),c},o.createIcon=function(n){var s=x(n.height)?Number(n.height):n.ascent-n.descent,c="http://www.w3.org/2000/svg",h;if(n.path){h=document.createElementNS(c,"svg"),h.setAttribute("viewBox",[0,0,n.width,s].join(" ")),h.setAttribute("class","icon");var v=document.createElementNS(c,"path");v.setAttribute("d",n.path),n.transform?v.setAttribute("transform",n.transform):n.ascent!==void 0&&v.setAttribute("transform","matrix(1 0 0 -1 0 "+n.ascent+")"),h.appendChild(v)}if(n.svg){var p=t.parseFromString(n.svg,"application/xml");h=p.childNodes[0]}return h.setAttribute("height","1em"),h.setAttribute("width","1em"),h},o.updateActiveButton=function(n){var s=this.graphInfo._fullLayout,c=n!==void 0?n.getAttribute("data-attr"):null;this.buttonElements.forEach(function(h){var v=h.getAttribute("data-val")||!0,p=h.getAttribute("data-attr"),T=h.getAttribute("data-toggle")==="true",l=g.select(h),_=function(E,m){var b=s.modebar,d=E.querySelector(".icon path");d&&(m||E.matches(":hover")?d.style.fill=b.activecolor:d.style.fill=b.color)};if(T){if(p===c){var w=!l.classed("active");l.classed("active",w),_(h,w)}}else{var S=p===null?p:A.nestedProperty(s,p).get();l.classed("active",S===v),_(h,S===v)}})},o.hasButtons=function(n){var s=this.buttons;if(!s||n.length!==s.length)return!1;for(var c=0;c<n.length;++c){if(n[c].length!==s[c].length)return!1;for(var h=0;h<n[c].length;h++)if(n[c][h].name!==s[c][h].name)return!1}return!0};function a(n){return n+" (v"+e+")"}o.getLogo=function(){var n=this.createGroup(),s=document.createElement("a");return s.href="https://plotly.com/",s.target="_blank",s.setAttribute("data-title",a(A._(this.graphInfo,"Produced with Plotly.js"))),s.className="modebar-btn plotlyjsicon modebar-btn--logo",s.appendChild(this.createIcon(M.newplotlylogo)),n.appendChild(s),n},o.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},o.destroy=function(){A.removeElement(this.container.querySelector(".modebar"))};function i(n,s){var c=n._fullLayout,h=new r({graphInfo:n,container:c._modebardiv.node(),buttons:s});return c._privateplot&&g.select(h.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),h}H.exports=i}}),_O=Ye({"src/components/modebar/manage.js"(X,H){"use strict";var g=Xc(),x=uu(),A=Hn(),M=Qp().isUnifiedHover,e=yO(),t=bS(),r=wS().DRAW_MODES,o=ta().extendDeep;H.exports=function(p){var T=p._fullLayout,l=p._context,_=T._modeBar;if(!l.displayModeBar&&!l.watermark){_&&(_.destroy(),delete T._modeBar);return}if(!Array.isArray(l.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(l.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var w=l.modeBarButtons,S;Array.isArray(w)&&w.length?S=h(w):!l.displayModeBar&&l.watermark?S=[]:S=a(p),_?_.update(p,S):T._modeBar=e(p,S)};function a(v){var p=v._fullLayout,T=v._fullData,l=v._context;function _(j,ee){if(typeof ee=="string"){if(ee.toLowerCase()===j.toLowerCase())return!0}else{var ie=ee.name,fe=ee._cat||ee.name;if(ie===j||fe===j.toLowerCase())return!0}return!1}var w=p.modebar.add;typeof w=="string"&&(w=[w]);var S=p.modebar.remove;typeof S=="string"&&(S=[S]);var E=l.modeBarButtonsToAdd.concat(w.filter(function(j){for(var ee=0;ee<l.modeBarButtonsToRemove.length;ee++)if(_(j,l.modeBarButtonsToRemove[ee]))return!1;return!0})),m=l.modeBarButtonsToRemove.concat(S.filter(function(j){for(var ee=0;ee<l.modeBarButtonsToAdd.length;ee++)if(_(j,l.modeBarButtonsToAdd[ee]))return!1;return!0})),b=p._has("cartesian"),d=p._has("gl3d"),u=p._has("geo"),y=p._has("pie"),f=p._has("funnelarea"),P=p._has("ternary"),L=p._has("mapbox"),z=p._has("map"),F=p._has("polar"),B=p._has("smith"),O=p._has("sankey"),I=i(p),N=M(p.hovermode),U=[];function W(j){if(j.length){for(var ee=[],ie=0;ie<j.length;ie++){for(var fe=j[ie],be=t[fe],Ae=be.name.toLowerCase(),Be=(be._cat||be.name).toLowerCase(),Ie=!1,Ze=0;Ze<m.length;Ze++){var at=m[Ze].toLowerCase();if(at===Ae||at===Be){Ie=!0;break}}Ie||ee.push(t[fe])}U.push(ee)}}var Q=["toImage"];l.showEditInChartStudio?Q.push("editInChartStudio"):l.showSendToCloud&&Q.push("sendDataToCloud"),W(Q);var ue=[],se=[],he=[],G=[];(b||y||f||P)+u+d+L+z+F+B>1?(se=["toggleHover"],he=["resetViews"]):u?(ue=["zoomInGeo","zoomOutGeo"],se=["hoverClosestGeo"],he=["resetGeo"]):d?(se=["hoverClosest3d"],he=["resetCameraDefault3d","resetCameraLastSave3d"]):L?(ue=["zoomInMapbox","zoomOutMapbox"],se=["toggleHover"],he=["resetViewMapbox"]):z?(ue=["zoomInMap","zoomOutMap"],se=["toggleHover"],he=["resetViewMap"]):y?se=["hoverClosestPie"]:O?(se=["hoverClosestCartesian","hoverCompareCartesian"],he=["resetViewSankey"]):se=["toggleHover"],b&&se.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(s(T)||N)&&(se=[]),b&&!I&&(ue=["zoomIn2d","zoomOut2d","autoScale2d"],he[0]!=="resetViews"&&(he=["resetScale2d"])),d?G=["zoom3d","pan3d","orbitRotation","tableRotation"]:b&&!I||P?G=["zoom2d","pan2d"]:L||z||u?G=["pan2d"]:F&&(G=["zoom2d"]),n(T)&&G.push("select2d","lasso2d");var $=[],J=function(j){$.indexOf(j)===-1&&se.indexOf(j)!==-1&&$.push(j)};if(Array.isArray(E)){for(var Z=[],re=0;re<E.length;re++){var ne=E[re];typeof ne=="string"?(ne=ne.toLowerCase(),r.indexOf(ne)!==-1?(p._has("mapbox")||p._has("map")||p._has("cartesian"))&&G.push(ne):ne==="togglespikelines"?J("toggleSpikelines"):ne==="togglehover"?J("toggleHover"):ne==="hovercompare"?J("hoverCompareCartesian"):ne==="hoverclosest"?(J("hoverClosestCartesian"),J("hoverClosestGeo"),J("hoverClosest3d"),J("hoverClosestPie")):ne==="v1hovermode"&&(J("hoverClosestCartesian"),J("hoverCompareCartesian"),J("hoverClosestGeo"),J("hoverClosest3d"),J("hoverClosestPie"))):Z.push(ne)}E=Z}return W(G),W(ue.concat(he)),W($),c(U,E)}function i(v){for(var p=g.list({_fullLayout:v},null,!0),T=0;T<p.length;T++)if(!p[T].fixedrange)return!1;return!0}function n(v){for(var p=!1,T=0;T<v.length&&!p;T++){var l=v[T];!l._module||!l._module.selectPoints||(A.traceIs(l,"scatter-like")?(x.hasMarkers(l)||x.hasText(l))&&(p=!0):A.traceIs(l,"box-violin")?(l.boxpoints==="all"||l.points==="all")&&(p=!0):p=!0)}return p}function s(v){for(var p=0;p<v.length;p++)if(!A.traceIs(v[p],"noHover"))return!1;return!0}function c(v,p){if(p.length)if(Array.isArray(p[0]))for(var T=0;T<p.length;T++)v.push(p[T]);else v.push(p);return v}function h(v){for(var p=o([],v),T=0;T<p.length;T++)for(var l=p[T],_=0;_<l.length;_++){var w=l[_];if(typeof w=="string")if(t[w]!==void 0)p[T][_]=t[w];else throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "))}return p}}}),AS=Ye({"src/components/modebar/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"modebar",layoutAttributes:TS(),supplyLayoutDefaults:gO(),manage:_O()}}}),SS=Ye({"src/plots/cartesian/scale_zoom.js"(X,H){"use strict";var g=oh().FROM_BL;H.exports=function(A,M,e){e===void 0&&(e=g[A.constraintoward||"center"]);var t=[A.r2l(A.range[0]),A.r2l(A.range[1])],r=t[0]+(t[1]-t[0])*e;A.range=A._input.range=[A.l2r(r+(t[0]-r)*M),A.l2r(r+(t[1]-r)*M)],A.setScale()}}}),Yg=Ye({"src/plots/cartesian/constraints.js"(X){"use strict";var H=ta(),g=Yd(),x=Xc().id2name,A=Vh(),M=SS(),e=wv(),t=ks().ALMOST_EQUAL,r=oh().FROM_BL;X.handleDefaults=function(v,p,T){var l=T.axIds,_=T.axHasImage,w=p._axisConstraintGroups=[],S=p._axisMatchGroups=[],E,m,b,d,u,y,f,P;for(E=0;E<l.length;E++)d=x(l[E]),u=v[d],y=p[d],o(u,y,{axIds:l,layoutOut:p,hasImage:_[d]});function L(Q,ue){for(E=0;E<Q.length;E++){m=Q[E];for(b in m)p[x(b)][ue]=m}}for(L(S,"_matchGroup"),E=0;E<w.length;E++){m=w[E];for(b in m)if(y=p[x(b)],y.fixedrange){for(var z in m){var F=x(z);(v[F]||{}).fixedrange===!1&&H.warn("fixedrange was specified as false for axis "+F+" but was overridden because another axis in its constraint group has fixedrange true"),p[F].fixedrange=!0}break}}for(E=0;E<w.length;){m=w[E];for(b in m){y=p[x(b)],y._matchGroup&&Object.keys(y._matchGroup).length===Object.keys(m).length&&(w.splice(E,1),E--);break}E++}L(w,"_constraintGroup");var B=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],O=!1,I=!1;function N(){P=y[f],f==="rangebreaks"&&(I=y._hasDayOfWeekBreaks)}for(E=0;E<S.length;E++){m=S[E];for(var U=0;U<B.length;U++){f=B[U],P=null;var W;for(b in m)if(d=x(b),u=v[d],y=p[d],f in y){if(!y.matches&&(W=y,f in u)){N();break}P===null&&f in u&&N()}if(f==="range"&&P&&u.range&&u.range.length===2&&u.range[0]!==null&&u.range[1]!==null&&(O=!0),f==="autorange"&&P===null&&O&&(P=!1),P===null&&f in W&&(P=W[f]),P!==null)for(b in m)y=p[x(b)],y[f]=f==="range"?P.slice():P,f==="rangebreaks"&&(y._hasDayOfWeekBreaks=I,e(y,p))}}};function o(v,p,T){var l=T.axIds,_=T.layoutOut,w=T.hasImage,S=_._axisConstraintGroups,E=_._axisMatchGroups,m=p._id,b=m.charAt(0),d=((_._splomAxes||{})[b]||{})[m]||{},u=p._id,y=u.charAt(0)==="x";p._matchGroup=null,p._constraintGroup=null;function f(G,$){return H.coerce(v,p,A,G,$)}f("constrain",w?"domain":"range"),H.coerce(v,p,{constraintoward:{valType:"enumerated",values:y?["left","center","right"]:["bottom","middle","top"],dflt:y?"center":"middle"}},"constraintoward");var P=p.type,L,z,F=[];for(L=0;L<l.length;L++)if(z=l[L],z!==u){var B=_[x(z)];B.type===P&&F.push(z)}var O=i(S,u);if(O){var I=[];for(L=0;L<F.length;L++)z=F[L],O[z]||I.push(z);F=I}var N=F.length,U,W;N&&(v.matches||d.matches)&&(U=H.coerce(v,p,{matches:{valType:"enumerated",values:F,dflt:F.indexOf(d.matches)!==-1?d.matches:void 0}},"matches"));var Q=w&&!y?p.anchor:void 0;if(N&&!U&&(v.scaleanchor||Q)&&(W=H.coerce(v,p,{scaleanchor:{valType:"enumerated",values:F.concat([!1])}},"scaleanchor",Q)),U){p._matchGroup=n(E,u,U,1);var ue=_[x(U)],se=a(_,p)/a(_,ue);y!==(U.charAt(0)==="x")&&(se=(y?"x":"y")+se),n(S,u,U,se)}else v.matches&&l.indexOf(v.matches)!==-1&&H.warn("ignored "+p._name+'.matches: "'+v.matches+'" to avoid an infinite loop');if(W){var he=f("scaleratio");he||(he=p.scaleratio=1),n(S,u,W,he)}else v.scaleanchor&&l.indexOf(v.scaleanchor)!==-1&&H.warn("ignored "+p._name+'.scaleanchor: "'+v.scaleanchor+'" to avoid either an infinite loop and possibly inconsistent scaleratios, or because this axis declares a *matches* constraint.')}function a(v,p){var T=p.domain;return T||(T=v[x(p.overlaying)].domain),T[1]-T[0]}function i(v,p){for(var T=0;T<v.length;T++)if(v[T][p])return v[T];return null}function n(v,p,T,l){var _,w,S,E,m,b=i(v,p);b===null?(b={},b[p]=1,m=v.length,v.push(b)):m=v.indexOf(b);var d=Object.keys(b);for(_=0;_<v.length;_++)if(S=v[_],_!==m&&S[T]){var u=S[T];for(w=0;w<d.length;w++)E=d[w],S[E]=s(u,s(l,b[E]));v.splice(m,1);return}if(l!==1)for(w=0;w<d.length;w++){var y=d[w];b[y]=s(l,b[y])}b[T]=1}function s(v,p){var T="",l="",_,w;typeof v=="string"&&(T=v.match(/^[xy]*/)[0],_=T.length,v=+v.substr(_)),typeof p=="string"&&(l=p.match(/^[xy]*/)[0],w=l.length,p=+p.substr(w));var S=v*p;return!_&&!w?S:!_||!w||T.charAt(0)===l.charAt(0)?T+l+v*p:_===w?S:(_>w?T.substr(w):l.substr(_))+S}function c(v,p){for(var T=p._size,l=T.h/T.w,_={},w=Object.keys(v),S=0;S<w.length;S++){var E=w[S],m=v[E];if(typeof m=="string"){var b=m.match(/^[xy]*/)[0],d=b.length;m=+m.substr(d);for(var u=b.charAt(0)==="y"?l:1/l,y=0;y<d;y++)m*=u}_[E]=m}return _}X.enforce=function(p){var T=p._fullLayout,l=T._axisConstraintGroups||[],_,w,S,E,m,b,d,u;for(_=0;_<l.length;_++){S=c(l[_],T);var y=Object.keys(S),f=1/0,P=0,L=1/0,z={},F={},B=!1;for(w=0;w<y.length;w++)E=y[w],F[E]=m=T[x(E)],m._inputDomain?m.domain=m._inputDomain.slice():m._inputDomain=m.domain.slice(),m._inputRange||(m._inputRange=m.range.slice()),m.setScale(),z[E]=b=Math.abs(m._m)/S[E],f=Math.min(f,b),(m.constrain==="domain"||!m._constraintShrinkable)&&(L=Math.min(L,b)),delete m._constraintShrinkable,P=Math.max(P,b),m.constrain==="domain"&&(B=!0);if(!(f>t*P&&!B)){for(w=0;w<y.length;w++)if(E=y[w],b=z[E],m=F[E],d=m.constrain,b!==L||d==="domain")if(u=b/L,d==="range")M(m,u);else{var O=m._inputDomain,I=(m.domain[1]-m.domain[0])/(O[1]-O[0]),N=(m.r2l(m.range[1])-m.r2l(m.range[0]))/(m.r2l(m._inputRange[1])-m.r2l(m._inputRange[0]));if(u/=I,u*N<1){m.domain=m._input.domain=O.slice(),M(m,u);continue}if(N<1&&(m.range=m._input.range=m._inputRange.slice(),u*=N),m.autorange){var U=m.r2l(m.range[0]),W=m.r2l(m.range[1]),Q=(U+W)/2,ue=Q,se=Q,he=Math.abs(W-Q),G=Q-he*u*1.0001,$=Q+he*u*1.0001,J=g.makePadFn(T,m,0),Z=g.makePadFn(T,m,1);h(m,u);var re=Math.abs(m._m),ne=g.concatExtremes(p,m),j=ne.min,ee=ne.max,ie,fe;for(fe=0;fe<j.length;fe++)ie=j[fe].val-J(j[fe])/re,ie>G&&ie<ue&&(ue=ie);for(fe=0;fe<ee.length;fe++)ie=ee[fe].val+Z(ee[fe])/re,ie<$&&ie>se&&(se=ie);var be=(se-ue)/(2*he);u/=be,ue=m.l2r(ue),se=m.l2r(se),m.range=m._input.range=U<W?[ue,se]:[se,ue]}h(m,u)}}}},X.getAxisGroup=function(p,T){for(var l=p._axisMatchGroups,_=0;_<l.length;_++){var w=l[_];if(w[T])return"g"+_}return T},X.clean=function(p,T){if(T._inputDomain){for(var l=!1,_=T._id,w=p._fullLayout._axisConstraintGroups,S=0;S<w.length;S++)if(w[S][_]){l=!0;break}(!l||T.constrain!=="domain")&&(T._input.domain=T.domain=T._inputDomain,delete T._inputDomain)}};function h(v,p){var T=v._inputDomain,l=r[v.constraintoward],_=T[0]+(T[1]-T[0])*l;v.domain=v._input.domain=[_+(T[0]-_)/p,_+(T[1]-_)/p],v.setScale()}}}),k_=Ye({"src/plot_api/subroutines.js"(X){"use strict";var H=_n(),g=Hn(),x=Gu(),A=ta(),M=jl(),e=M_(),t=Fn(),r=Bo(),o=Xg(),a=AS(),i=Co(),n=oh(),s=Yg(),c=s.enforce,h=s.clean,v=Yd().doAutoRange,p="start",T="middle",l="end",_=wh().zindexSeparator;X.layoutStyles=function(O){return A.syncOrAsync([x.doAutoMargin,S],O)};function w(O,I,N){for(var U=0;U<N.length;U++){var W=N[U][0],Q=N[U][1];if(!(W[0]>=O[1]||W[1]<=O[0])&&Q[0]<I[1]&&Q[1]>I[0])return!0}return!1}function S(O){var I=O._fullLayout,N=I._size,U=N.p,W=i.list(O,"",!0),Q,ue,se,he,G,$;if(I._paperdiv.style({width:O._context.responsive&&I.autosize&&!O._context._hasZeroWidth&&!O.layout.width?"100%":I.width+"px",height:O._context.responsive&&I.autosize&&!O._context._hasZeroHeight&&!O.layout.height?"100%":I.height+"px"}).selectAll(".main-svg").call(r.setSize,I.width,I.height),O._context.setBackground(O,I.paper_bgcolor),X.drawMainTitle(O),a.manage(O),!I._has("cartesian"))return x.previousPromises(O);function J(Ne,Ee,Ve){var ke=Ne._lw/2;if(Ne._id.charAt(0)==="x"){if(Ee){if(Ve==="top")return Ee._offset-U-ke}else return N.t+N.h*(1-(Ne.position||0))+ke%1;return Ee._offset+Ee._length+U+ke}if(Ee){if(Ve==="right")return Ee._offset+Ee._length+U+ke}else return N.l+N.w*(Ne.position||0)+ke%1;return Ee._offset-U-ke}for(Q=0;Q<W.length;Q++){he=W[Q];var Z=he._anchorAxis;he._linepositions={},he._lw=r.crispRound(O,he.linewidth,1),he._mainLinePosition=J(he,Z,he.side),he._mainMirrorPosition=he.mirror&&Z?J(he,Z,n.OPPOSITE_SIDE[he.side]):null}var re=[],ne=[],j=[],ee=t.opacity(I.paper_bgcolor)===1&&t.opacity(I.plot_bgcolor)===1&&I.paper_bgcolor===I.plot_bgcolor;for(ue in I._plots)if(se=I._plots[ue],se.mainplot)se.bg&&se.bg.remove(),se.bg=void 0;else{var ie=se.xaxis.domain,fe=se.yaxis.domain,be=se.plotgroup;if(w(ie,fe,j)&&ue.indexOf(_)===-1){var Ae=be.node(),Be=se.bg=A.ensureSingle(be,"rect","bg");Ae.insertBefore(Be.node(),Ae.childNodes[0]),ne.push(ue)}else be.select("rect.bg").remove(),j.push([ie,fe]),ee||(re.push(ue),ne.push(ue))}var Ie=I._bgLayer.selectAll(".bg").data(re);for(Ie.enter().append("rect").classed("bg",!0),Ie.exit().remove(),Ie.each(function(Ne){I._plots[Ne].bg=H.select(this)}),Q=0;Q<ne.length;Q++)se=I._plots[ne[Q]],G=se.xaxis,$=se.yaxis,se.bg&&G._offset!==void 0&&$._offset!==void 0&&se.bg.call(r.setRect,G._offset-U,$._offset-U,G._length+2*U,$._length+2*U).call(t.fill,I.plot_bgcolor).style("stroke-width",0);if(!I._hasOnlyLargeSploms)for(ue in I._plots){se=I._plots[ue],G=se.xaxis,$=se.yaxis;var Ze=se.clipId="clip"+I._uid+ue+"plot",at=A.ensureSingleById(I._clips,"clipPath",Ze,function(Ne){Ne.classed("plotclip",!0).append("rect")});se.clipRect=at.select("rect").attr({width:G._length,height:$._length}),r.setTranslate(se.plot,G._offset,$._offset);var it,et;se._hasClipOnAxisFalse?(it=null,et=Ze):(it=Ze,et=null),r.setClipUrl(se.plot,it,O),se.layerClipId=et}var lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur;function ar(Ne){return"M"+lt+","+Ne+"H"+Me}function Cr(Ne){return"M"+G._offset+","+Ne+"h"+G._length}function vr(Ne){return"M"+Ne+","+Qe+"V"+nt}function _r(Ne){return $._shift!==void 0&&(Ne+=$._shift),"M"+Ne+","+$._offset+"v"+$._length}function yt(Ne,Ee,Ve){if(!Ne.showline||ue!==Ne._mainSubplot)return"";if(!Ne._anchorAxis)return Ve(Ne._mainLinePosition);var ke=Ee(Ne._mainLinePosition);return Ne.mirror&&(ke+=Ee(Ne._mainMirrorPosition)),ke}for(ue in I._plots){se=I._plots[ue],G=se.xaxis,$=se.yaxis;var Fe="M0,0";E(G,ue)&&(ze=b(G,"left",$,W),lt=G._offset-(ze?U+ze:0),tt=b(G,"right",$,W),Me=G._offset+G._length+(tt?U+tt:0),ge=J(G,$,"bottom"),ce=J(G,$,"top"),ur=!G._anchorAxis||ue!==G._mainSubplot,ur&&(G.mirror==="allticks"||G.mirror==="all")&&(G._linepositions[ue]=[ge,ce]),Fe=yt(G,ar,Cr),ur&&G.showline&&(G.mirror==="all"||G.mirror==="allticks")&&(Fe+=ar(ge)+ar(ce)),se.xlines.style("stroke-width",G._lw+"px").call(t.stroke,G.showline?G.linecolor:"rgba(0,0,0,0)")),se.xlines.attr("d",Fe);var Ke="M0,0";E($,ue)&&(Ot=b($,"bottom",G,W),nt=$._offset+$._length+(Ot?U:0),jt=b($,"top",G,W),Qe=$._offset-(jt?U:0),Ct=J($,G,"left"),St=J($,G,"right"),ur=!$._anchorAxis||ue!==$._mainSubplot,ur&&($.mirror==="allticks"||$.mirror==="all")&&($._linepositions[ue]=[Ct,St]),Ke=yt($,vr,_r),ur&&$.showline&&($.mirror==="all"||$.mirror==="allticks")&&(Ke+=vr(Ct)+vr(St)),se.ylines.style("stroke-width",$._lw+"px").call(t.stroke,$.showline?$.linecolor:"rgba(0,0,0,0)")),se.ylines.attr("d",Ke)}return i.makeClipPaths(O),x.previousPromises(O)}function E(O,I){return(O.ticks||O.showline)&&(I===O._mainSubplot||O.mirror==="all"||O.mirror==="allticks")}function m(O,I,N){if(!N.showline||!N._lw)return!1;if(N.mirror==="all"||N.mirror==="allticks")return!0;var U=N._anchorAxis;if(!U)return!1;var W=n.FROM_BL[I];return N.side===I?U.domain[W]===O.domain[W]:N.mirror&&U.domain[1-W]===O.domain[1-W]}function b(O,I,N,U){if(m(O,I,N))return N._lw;for(var W=0;W<U.length;W++){var Q=U[W];if(Q._mainAxis===N._mainAxis&&m(O,I,Q))return Q._lw}return 0}X.drawMainTitle=function(O){var I=O._fullLayout.title,N=O._fullLayout,U=F(N),W=B(N),Q=L(N,W),ue=P(N,U);if(o.draw(O,"gtitle",{propContainer:N,propName:"title.text",subtitlePropName:"title.subtitle.text",placeholder:N._dfltTitle.plot,subtitlePlaceholder:N._dfltTitle.subtitle,attributes:{x:ue,y:Q,"text-anchor":U,dy:W}}),I.text&&I.automargin){var se=H.selectAll(".gtitle"),he=r.bBox(H.selectAll(".g-gtitle").node()).height,G=y(O,I,he);if(G>0){f(O,Q,G,he),se.attr({x:ue,y:Q,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,Q);var $=(I.text.match(M.BR_TAG_ALL)||[]).length;if($){var J=n.LINE_SPACING*$+n.MID_SHIFT;I.y===0&&(J=-J),se.selectAll(".line").each(function(){var ee=+this.getAttribute("dy").slice(0,-2)-J+"em";this.setAttribute("dy",ee)})}var Z=H.selectAll(".gtitle-subtitle");if(Z.node()){var re=se.node().getBBox(),ne=re.y+re.height,j=ne+o.SUBTITLE_PADDING_EM*I.subtitle.font.size;Z.attr({x:ue,y:j,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,j)}}}};function d(O,I,N,U,W){var Q=I.yref==="paper"?O._fullLayout._size.h:O._fullLayout.height,ue=A.isTopAnchor(I)?U:U-W,se=N==="b"?Q-ue:ue;return A.isTopAnchor(I)&&N==="t"||A.isBottomAnchor(I)&&N==="b"?!1:se<W}function u(O,I,N,U,W){var Q=0;return N==="middle"&&(Q+=W/2),O==="t"?(N==="top"&&(Q+=W),Q+=U-I*U):(N==="bottom"&&(Q+=W),Q+=I*U),Q}function y(O,I,N){var U=I.y,W=I.yanchor,Q=U>.5?"t":"b",ue=O._fullLayout.margin[Q],se=0;return I.yref==="paper"?se=N+I.pad.t+I.pad.b:I.yref==="container"&&(se=u(Q,U,W,O._fullLayout.height,N)+I.pad.t+I.pad.b),se>ue?se:0}function f(O,I,N,U){var W="title.automargin",Q=O._fullLayout.title,ue=Q.y>.5?"t":"b",se={x:Q.x,y:Q.y,t:0,b:0},he={};Q.yref==="paper"&&d(O,Q,ue,I,U)?se[ue]=N:Q.yref==="container"&&(he[ue]=N,O._fullLayout._reservedMargin[W]=he),x.allowAutoMargin(O,W),x.autoMargin(O,W,se)}function P(O,I){var N=O.title,U=O._size,W=0;switch(I===p?W=N.pad.l:I===l&&(W=-N.pad.r),N.xref){case"paper":return U.l+U.w*N.x+W;case"container":default:return O.width*N.x+W}}function L(O,I){var N=O.title,U=O._size,W=0;if(I==="0em"||!I?W=-N.pad.b:I===n.CAP_SHIFT+"em"&&(W=N.pad.t),N.y==="auto")return U.t/2;switch(N.yref){case"paper":return U.t+U.h-U.h*N.y+W;case"container":default:return O.height-O.height*N.y+W}}function z(O){return O==="top"?n.CAP_SHIFT+.3+"em":O==="bottom"?"-0.3em":n.MID_SHIFT+"em"}function F(O){var I=O.title,N=T;return A.isRightAnchor(I)?N=l:A.isLeftAnchor(I)&&(N=p),N}function B(O){var I=O.title,N="0em";return A.isTopAnchor(I)?N=n.CAP_SHIFT+"em":A.isMiddleAnchor(I)&&(N=n.MID_SHIFT+"em"),N}X.doTraceStyle=function(O){var I=O.calcdata,N=[],U;for(U=0;U<I.length;U++){var W=I[U],Q=W[0]||{},ue=Q.trace||{},se=ue._module||{},he=se.arraysToCalcdata;he&&he(W,ue);var G=se.editStyle;G&&N.push({fn:G,cd0:Q})}if(N.length){for(U=0;U<N.length;U++){var $=N[U];$.fn(O,$.cd0)}e(O),X.redrawReglTraces(O)}return x.style(O),g.getComponentMethod("legend","draw")(O),x.previousPromises(O)},X.doColorBars=function(O){return g.getComponentMethod("colorbar","draw")(O),x.previousPromises(O)},X.layoutReplot=function(O){var I=O.layout;return O.layout=void 0,g.call("_doPlot",O,"",I)},X.doLegend=function(O){return g.getComponentMethod("legend","draw")(O),x.previousPromises(O)},X.doTicksRelayout=function(O){return i.draw(O,"redraw"),O._fullLayout._hasOnlyLargeSploms&&(g.subplotsRegistry.splom.updateGrid(O),e(O),X.redrawReglTraces(O)),X.drawMainTitle(O),x.previousPromises(O)},X.doModeBar=function(O){var I=O._fullLayout;a.manage(O);for(var N=0;N<I._basePlotModules.length;N++){var U=I._basePlotModules[N].updateFx;U&&U(O)}return x.previousPromises(O)},X.doCamera=function(O){for(var I=O._fullLayout,N=I._subplots.gl3d,U=0;U<N.length;U++){var W=I[N[U]],Q=W._scene;Q.setViewport(W)}},X.drawData=function(O){var I=O._fullLayout;e(O);for(var N=I._basePlotModules,U=0;U<N.length;U++)N[U].plot(O);return X.redrawReglTraces(O),x.style(O),g.getComponentMethod("selections","draw")(O),g.getComponentMethod("shapes","draw")(O),g.getComponentMethod("annotations","draw")(O),g.getComponentMethod("images","draw")(O),I._replotting=!1,x.previousPromises(O)},X.redrawReglTraces=function(O){var I=O._fullLayout;if(I._has("regl")){var N=O._fullData,U=[],W=[],Q,ue;for(I._hasOnlyLargeSploms&&I._splomGrid.draw(),Q=0;Q<N.length;Q++){var se=N[Q];se.visible===!0&&se._length!==0&&(se.type==="splom"?I._splomScenes[se.uid].draw():se.type==="scattergl"?A.pushUnique(U,se.xaxis+se.yaxis):se.type==="scatterpolargl"&&A.pushUnique(W,se.subplot))}for(Q=0;Q<U.length;Q++)ue=I._plots[U[Q]],ue._scene&&ue._scene.draw();for(Q=0;Q<W.length;Q++)ue=I[W[Q]]._subplot,ue._scene&&ue._scene.draw()}},X.doAutoRangeAndConstraints=function(O){for(var I=i.list(O,"",!0),N,U={},W=0;W<I.length;W++)if(N=I[W],!U[N._id]){U[N._id]=1,h(O,N),v(O,N);var Q=N._matchGroup;if(Q)for(var ue in Q){var se=i.getFromId(O,ue);v(O,se,N.range),U[ue]=1}}c(O)},X.finalDraw=function(O){g.getComponentMethod("rangeslider","draw")(O),g.getComponentMethod("rangeselector","draw")(O)},X.drawMarginPushers=function(O){g.getComponentMethod("legend","draw")(O),g.getComponentMethod("rangeselector","draw")(O),g.getComponentMethod("sliders","draw")(O),g.getComponentMethod("updatemenus","draw")(O),g.getComponentMethod("colorbar","draw")(O)}}}),MS=Ye({"src/components/selections/draw.js"(X,H){"use strict";var g=tg().readPaths,x=S2(),A=Jm().clearOutlineControllers,M=Fn(),e=Bo(),t=cl().arrayEditor,r=rg(),o=r.getPathString;H.exports={draw:a,drawOne:n,activateLastSelection:h};function a(p){var T=p._fullLayout;A(p),T._selectionLayer.selectAll("path").remove();for(var l in T._plots){var _=T._plots[l].selectionLayer;_&&_.selectAll("path").remove()}for(var w=0;w<T.selections.length;w++)n(p,w)}function i(p){return p._context.editSelection}function n(p,T){p._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+T+'"]').remove();var l=r.makeSelectionsOptionsAndPlotinfo(p,T),_=l.options,w=l.plotinfo;if(!_._input)return;S(p._fullLayout._selectionLayer);function S(E){var m=o(p,_),b={"data-index":T,"fill-rule":"evenodd",d:m},d=_.opacity,u="rgba(0,0,0,0)",y=_.line.color||M.contrast(p._fullLayout.plot_bgcolor),f=_.line.width,P=_.line.dash;f||(f=5,P="solid");var L=i(p)&&p._fullLayout._activeSelectionIndex===T;L&&(u=p._fullLayout.activeselection.fillcolor,d=p._fullLayout.activeselection.opacity);for(var z=[],F=1;F>=0;F--){var B=E.append("path").attr(b).style("opacity",F?.1:d).call(M.stroke,y).call(M.fill,u).call(e.dashLine,F?"solid":P,F?4+f:f);if(s(B,p,_),L){var O=t(p.layout,"selections",_);B.style({cursor:"move"});var I={element:B.node(),plotinfo:w,gd:p,editHelpers:O,isActiveSelection:!0},N=g(m,p);x(N,B,I)}else B.style("pointer-events",F?"all":"none");z[F]=B}var U=z[0],W=z[1];W.node().addEventListener("click",function(){return c(p,U)})}}function s(p,T,l){var _=l.xref+l.yref;e.setClipUrl(p,"clip"+T._fullLayout._uid+_,T)}function c(p,T){if(i(p)){var l=T.node(),_=+l.getAttribute("data-index");if(_>=0){if(_===p._fullLayout._activeSelectionIndex){v(p);return}p._fullLayout._activeSelectionIndex=_,p._fullLayout._deactivateSelection=v,a(p)}}}function h(p){if(i(p)){var T=p._fullLayout.selections.length-1;p._fullLayout._activeSelectionIndex=T,p._fullLayout._deactivateSelection=v,a(p)}}function v(p){if(i(p)){var T=p._fullLayout._activeSelectionIndex;T>=0&&(A(p),delete p._fullLayout._activeSelectionIndex,a(p))}}}}),xO=Ye({"node_modules/polybooljs/lib/build-log.js"(X,H){function g(){var x,A=0,M=!1;function e(t,r){return x.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),x}return x={list:[],segmentId:function(){return A++},checkIntersection:function(t,r){return e("check",{seg1:t,seg2:r})},segmentChop:function(t,r){return e("div_seg",{seg:t,pt:r}),e("chop",{seg:t,pt:r})},statusRemove:function(t){return e("pop_seg",{seg:t})},segmentUpdate:function(t){return e("seg_update",{seg:t})},segmentNew:function(t,r){return e("new_seg",{seg:t,primary:r})},segmentRemove:function(t){return e("rem_seg",{seg:t})},tempStatus:function(t,r,o){return e("temp_status",{seg:t,above:r,below:o})},rewind:function(t){return e("rewind",{seg:t})},status:function(t,r,o){return e("status",{seg:t,above:r,below:o})},vert:function(t){return t===M?x:(M=t,e("vert",{x:t}))},log:function(t){return typeof t!="string"&&(t=JSON.stringify(t,!1," ")),e("log",{txt:t})},reset:function(){return e("reset")},selected:function(t){return e("selected",{segs:t})},chainStart:function(t){return e("chain_start",{seg:t})},chainRemoveHead:function(t,r){return e("chain_rem_head",{index:t,pt:r})},chainRemoveTail:function(t,r){return e("chain_rem_tail",{index:t,pt:r})},chainNew:function(t,r){return e("chain_new",{pt1:t,pt2:r})},chainMatch:function(t){return e("chain_match",{index:t})},chainClose:function(t){return e("chain_close",{index:t})},chainAddHead:function(t,r){return e("chain_add_head",{index:t,pt:r})},chainAddTail:function(t,r){return e("chain_add_tail",{index:t,pt:r})},chainConnect:function(t,r){return e("chain_con",{index1:t,index2:r})},chainReverse:function(t){return e("chain_rev",{index:t})},chainJoin:function(t,r){return e("chain_join",{index1:t,index2:r})},done:function(){return e("done")}},x}H.exports=g}}),bO=Ye({"node_modules/polybooljs/lib/epsilon.js"(X,H){function g(x){typeof x!="number"&&(x=1e-10);var A={epsilon:function(M){return typeof M=="number"&&(x=M),x},pointAboveOrOnLine:function(M,e,t){var r=e[0],o=e[1],a=t[0],i=t[1],n=M[0],s=M[1];return(a-r)*(s-o)-(i-o)*(n-r)>=-x},pointBetween:function(M,e,t){var r=M[1]-e[1],o=t[0]-e[0],a=M[0]-e[0],i=t[1]-e[1],n=a*o+r*i;if(n<x)return!1;var s=o*o+i*i;return!(n-s>-x)},pointsSameX:function(M,e){return Math.abs(M[0]-e[0])<x},pointsSameY:function(M,e){return Math.abs(M[1]-e[1])<x},pointsSame:function(M,e){return A.pointsSameX(M,e)&&A.pointsSameY(M,e)},pointsCompare:function(M,e){return A.pointsSameX(M,e)?A.pointsSameY(M,e)?0:M[1]<e[1]?-1:1:M[0]<e[0]?-1:1},pointsCollinear:function(M,e,t){var r=M[0]-e[0],o=M[1]-e[1],a=e[0]-t[0],i=e[1]-t[1];return Math.abs(r*i-a*o)<x},linesIntersect:function(M,e,t,r){var o=e[0]-M[0],a=e[1]-M[1],i=r[0]-t[0],n=r[1]-t[1],s=o*n-a*i;if(Math.abs(s)<x)return!1;var c=M[0]-t[0],h=M[1]-t[1],v=(i*h-n*c)/s,p=(o*h-a*c)/s,T={alongA:0,alongB:0,pt:[M[0]+v*o,M[1]+v*a]};return v<=-x?T.alongA=-2:v<x?T.alongA=-1:v-1<=-x?T.alongA=0:v-1<x?T.alongA=1:T.alongA=2,p<=-x?T.alongB=-2:p<x?T.alongB=-1:p-1<=-x?T.alongB=0:p-1<x?T.alongB=1:T.alongB=2,T},pointInsideRegion:function(M,e){for(var t=M[0],r=M[1],o=e[e.length-1][0],a=e[e.length-1][1],i=!1,n=0;n<e.length;n++){var s=e[n][0],c=e[n][1];c-r>x!=a-r>x&&(o-s)*(r-c)/(a-c)+s-t>x&&(i=!i),o=s,a=c}return i}};return A}H.exports=g}}),wO=Ye({"node_modules/polybooljs/lib/linked-list.js"(X,H){var g={create:function(){var x={root:{root:!0,next:null},exists:function(A){return!(A===null||A===x.root)},isEmpty:function(){return x.root.next===null},getHead:function(){return x.root.next},insertBefore:function(A,M){for(var e=x.root,t=x.root.next;t!==null;){if(M(t)){A.prev=t.prev,A.next=t,t.prev.next=A,t.prev=A;return}e=t,t=t.next}e.next=A,A.prev=e,A.next=null},findTransition:function(A){for(var M=x.root,e=x.root.next;e!==null&&!A(e);)M=e,e=e.next;return{before:M===x.root?null:M,after:e,insert:function(t){return t.prev=M,t.next=e,M.next=t,e!==null&&(e.prev=t),t}}}};return x},node:function(x){return x.prev=null,x.next=null,x.remove=function(){x.prev.next=x.next,x.next&&(x.next.prev=x.prev),x.prev=null,x.next=null},x}};H.exports=g}}),TO=Ye({"node_modules/polybooljs/lib/intersecter.js"(X,H){var g=wO();function x(A,M,e){function t(T,l){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:null,below:null},otherFill:null}}function r(T,l,_){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:_.myFill.above,below:_.myFill.below},otherFill:null}}var o=g.create();function a(T,l,_,w,S,E){var m=M.pointsCompare(l,S);return m!==0?m:M.pointsSame(_,E)?0:T!==w?T?1:-1:M.pointAboveOrOnLine(_,w?S:E,w?E:S)?1:-1}function i(T,l){o.insertBefore(T,function(_){var w=a(T.isStart,T.pt,l,_.isStart,_.pt,_.other.pt);return w<0})}function n(T,l){var _=g.node({isStart:!0,pt:T.start,seg:T,primary:l,other:null,status:null});return i(_,T.end),_}function s(T,l,_){var w=g.node({isStart:!1,pt:l.end,seg:l,primary:_,other:T,status:null});T.other=w,i(w,T.pt)}function c(T,l){var _=n(T,l);return s(_,T,l),_}function h(T,l){e&&e.segmentChop(T.seg,l),T.other.remove(),T.seg.end=l,T.other.pt=l,i(T.other,T.pt)}function v(T,l){var _=r(l,T.seg.end,T.seg);return h(T,l),c(_,T.primary)}function p(T,l){var _=g.create();function w(O,I){var N=O.seg.start,U=O.seg.end,W=I.seg.start,Q=I.seg.end;return M.pointsCollinear(N,W,Q)?M.pointsCollinear(U,W,Q)||M.pointAboveOrOnLine(U,W,Q)?1:-1:M.pointAboveOrOnLine(N,W,Q)?1:-1}function S(O){return _.findTransition(function(I){var N=w(O,I.ev);return N>0})}function E(O,I){var N=O.seg,U=I.seg,W=N.start,Q=N.end,ue=U.start,se=U.end;e&&e.checkIntersection(N,U);var he=M.linesIntersect(W,Q,ue,se);if(he===!1){if(!M.pointsCollinear(W,Q,ue)||M.pointsSame(W,se)||M.pointsSame(Q,ue))return!1;var G=M.pointsSame(W,ue),$=M.pointsSame(Q,se);if(G&&$)return I;var J=!G&&M.pointBetween(W,ue,se),Z=!$&&M.pointBetween(Q,ue,se);if(G)return Z?v(I,Q):v(O,se),I;J&&($||(Z?v(I,Q):v(O,se)),v(I,W))}else he.alongA===0&&(he.alongB===-1?v(O,ue):he.alongB===0?v(O,he.pt):he.alongB===1&&v(O,se)),he.alongB===0&&(he.alongA===-1?v(I,W):he.alongA===0?v(I,he.pt):he.alongA===1&&v(I,Q));return!1}for(var m=[];!o.isEmpty();){var b=o.getHead();if(e&&e.vert(b.pt[0]),b.isStart){let O=function(){if(y){var I=E(b,y);if(I)return I}return f?E(b,f):!1};var d=O;e&&e.segmentNew(b.seg,b.primary);var u=S(b),y=u.before?u.before.ev:null,f=u.after?u.after.ev:null;e&&e.tempStatus(b.seg,y?y.seg:!1,f?f.seg:!1);var P=O();if(P){if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,L&&(P.seg.myFill.above=!P.seg.myFill.above)}else P.seg.otherFill=b.seg.myFill;e&&e.segmentUpdate(P.seg),b.other.remove(),b.remove()}if(o.getHead()!==b){e&&e.rewind(b.seg);continue}if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,f?b.seg.myFill.below=f.seg.myFill.above:b.seg.myFill.below=T,L?b.seg.myFill.above=!b.seg.myFill.below:b.seg.myFill.above=b.seg.myFill.below}else if(b.seg.otherFill===null){var z;f?b.primary===f.primary?z=f.seg.otherFill.above:z=f.seg.myFill.above:z=b.primary?l:T,b.seg.otherFill={above:z,below:z}}e&&e.status(b.seg,y?y.seg:!1,f?f.seg:!1),b.other.status=u.insert(g.node({ev:b}))}else{var F=b.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(_.exists(F.prev)&&_.exists(F.next)&&E(F.prev.ev,F.next.ev),e&&e.statusRemove(F.ev.seg),F.remove(),!b.primary){var B=b.seg.myFill;b.seg.myFill=b.seg.otherFill,b.seg.otherFill=B}m.push(b.seg)}o.getHead().remove()}return e&&e.done(),m}return A?{addRegion:function(T){for(var l,_=T[T.length-1],w=0;w<T.length;w++){l=_,_=T[w];var S=M.pointsCompare(l,_);S!==0&&c(t(S<0?l:_,S<0?_:l),!0)}},calculate:function(T){return p(T,!1)}}:{calculate:function(T,l,_,w){return T.forEach(function(S){c(r(S.start,S.end,S),!0)}),_.forEach(function(S){c(r(S.start,S.end,S),!1)}),p(l,w)}}}H.exports=x}}),AO=Ye({"node_modules/polybooljs/lib/segment-chainer.js"(X,H){function g(x,A,M){var e=[],t=[];return x.forEach(function(r){var o=r.start,a=r.end;if(A.pointsSame(o,a)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}M&&M.chainStart(r);var i={index:0,matches_head:!1,matches_pt1:!1},n={index:0,matches_head:!1,matches_pt1:!1},s=i;function c(F,B,O){return s.index=F,s.matches_head=B,s.matches_pt1=O,s===i?(s=n,!1):(s=null,!0)}for(var h=0;h<e.length;h++){var v=e[h],p=v[0],T=v[1],l=v[v.length-1],_=v[v.length-2];if(A.pointsSame(p,o)){if(c(h,!0,!0))break}else if(A.pointsSame(p,a)){if(c(h,!0,!1))break}else if(A.pointsSame(l,o)){if(c(h,!1,!0))break}else if(A.pointsSame(l,a)&&c(h,!1,!1))break}if(s===i){e.push([o,a]),M&&M.chainNew(o,a);return}if(s===n){M&&M.chainMatch(i.index);var w=i.index,S=i.matches_pt1?a:o,E=i.matches_head,v=e[w],m=E?v[0]:v[v.length-1],b=E?v[1]:v[v.length-2],d=E?v[v.length-1]:v[0],u=E?v[v.length-2]:v[1];if(A.pointsCollinear(b,m,S)&&(E?(M&&M.chainRemoveHead(i.index,S),v.shift()):(M&&M.chainRemoveTail(i.index,S),v.pop()),m=b),A.pointsSame(d,S)){e.splice(w,1),A.pointsCollinear(u,d,m)&&(E?(M&&M.chainRemoveTail(i.index,m),v.pop()):(M&&M.chainRemoveHead(i.index,m),v.shift())),M&&M.chainClose(i.index),t.push(v);return}E?(M&&M.chainAddHead(i.index,S),v.unshift(S)):(M&&M.chainAddTail(i.index,S),v.push(S));return}function y(F){M&&M.chainReverse(F),e[F].reverse()}function f(F,B){var O=e[F],I=e[B],N=O[O.length-1],U=O[O.length-2],W=I[0],Q=I[1];A.pointsCollinear(U,N,W)&&(M&&M.chainRemoveTail(F,N),O.pop(),N=U),A.pointsCollinear(N,W,Q)&&(M&&M.chainRemoveHead(B,W),I.shift()),M&&M.chainJoin(F,B),e[F]=O.concat(I),e.splice(B,1)}var P=i.index,L=n.index;M&&M.chainConnect(P,L);var z=e[P].length<e[L].length;i.matches_head?n.matches_head?z?(y(P),f(P,L)):(y(L),f(L,P)):f(L,P):n.matches_head?f(P,L):z?(y(P),f(L,P)):(y(L),f(P,L))}),t}H.exports=g}}),SO=Ye({"node_modules/polybooljs/lib/segment-selector.js"(X,H){function g(A,M,e){var t=[];return A.forEach(function(r){var o=(r.myFill.above?8:0)+(r.myFill.below?4:0)+(r.otherFill&&r.otherFill.above?2:0)+(r.otherFill&&r.otherFill.below?1:0);M[o]!==0&&t.push({id:e?e.segmentId():-1,start:r.start,end:r.end,myFill:{above:M[o]===1,below:M[o]===2},otherFill:null})}),e&&e.selected(t),t}var x={union:function(A,M){return g(A,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],M)},intersect:function(A,M){return g(A,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],M)},difference:function(A,M){return g(A,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],M)},differenceRev:function(A,M){return g(A,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],M)},xor:function(A,M){return g(A,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],M)}};H.exports=x}}),MO=Ye({"node_modules/polybooljs/lib/geojson.js"(X,H){var g={toPolygon:function(x,A){function M(r){if(r.length<=0)return x.segments({inverted:!1,regions:[]});function o(n){var s=n.slice(0,n.length-1);return x.segments({inverted:!1,regions:[s]})}for(var a=o(r[0]),i=1;i<r.length;i++)a=x.selectDifference(x.combine(a,o(r[i])));return a}if(A.type==="Polygon")return x.polygon(M(A.coordinates));if(A.type==="MultiPolygon"){for(var e=x.segments({inverted:!1,regions:[]}),t=0;t<A.coordinates.length;t++)e=x.selectUnion(x.combine(e,M(A.coordinates[t])));return x.polygon(e)}throw new Error("PolyBool: Cannot convert GeoJSON object to PolyBool polygon")},fromPolygon:function(x,A,M){M=x.polygon(x.segments(M));function e(v,p){return A.pointInsideRegion([(v[0][0]+v[1][0])*.5,(v[0][1]+v[1][1])*.5],p)}function t(v){return{region:v,children:[]}}var r=t(null);function o(v,p){for(var T=0;T<v.children.length;T++){var l=v.children[T];if(e(p,l.region)){o(l,p);return}}for(var _=t(p),T=0;T<v.children.length;T++){var l=v.children[T];e(l.region,p)&&(_.children.push(l),v.children.splice(T,1),T--)}v.children.push(_)}for(var a=0;a<M.regions.length;a++){var i=M.regions[a];i.length<3||o(r,i)}function n(v,p){for(var T=0,l=v[v.length-1][0],_=v[v.length-1][1],w=[],S=0;S<v.length;S++){var E=v[S][0],m=v[S][1];w.push([E,m]),T+=m*l-E*_,l=E,_=m}var b=T<0;return b!==p&&w.reverse(),w.push([w[0][0],w[0][1]]),w}var s=[];function c(v){var p=[n(v.region,!1)];s.push(p);for(var T=0;T<v.children.length;T++)p.push(h(v.children[T]))}function h(v){for(var p=0;p<v.children.length;p++)c(v.children[p]);return n(v.region,!0)}for(var a=0;a<r.children.length;a++)c(r.children[a]);return s.length<=0?{type:"Polygon",coordinates:[]}:s.length==1?{type:"Polygon",coordinates:s[0]}:{type:"MultiPolygon",coordinates:s}}};H.exports=g}}),EO=Ye({"node_modules/polybooljs/index.js"(X,H){var g=xO(),x=bO(),A=TO(),M=AO(),e=SO(),t=MO(),r=!1,o=x(),a;a={buildLog:function(n){return n===!0?r=g():n===!1&&(r=!1),r===!1?!1:r.list},epsilon:function(n){return o.epsilon(n)},segments:function(n){var s=A(!0,o,r);return n.regions.forEach(s.addRegion),{segments:s.calculate(n.inverted),inverted:n.inverted}},combine:function(n,s){var c=A(!1,o,r);return{combined:c.calculate(n.segments,n.inverted,s.segments,s.inverted),inverted1:n.inverted,inverted2:s.inverted}},selectUnion:function(n){return{segments:e.union(n.combined,r),inverted:n.inverted1||n.inverted2}},selectIntersect:function(n){return{segments:e.intersect(n.combined,r),inverted:n.inverted1&&n.inverted2}},selectDifference:function(n){return{segments:e.difference(n.combined,r),inverted:n.inverted1&&!n.inverted2}},selectDifferenceRev:function(n){return{segments:e.differenceRev(n.combined,r),inverted:!n.inverted1&&n.inverted2}},selectXor:function(n){return{segments:e.xor(n.combined,r),inverted:n.inverted1!==n.inverted2}},polygon:function(n){return{regions:M(n.segments,o,r),inverted:n.inverted}},polygonFromGeoJSON:function(n){return t.toPolygon(a,n)},polygonToGeoJSON:function(n){return t.fromPolygon(a,o,n)},union:function(n,s){return i(n,s,a.selectUnion)},intersect:function(n,s){return i(n,s,a.selectIntersect)},difference:function(n,s){return i(n,s,a.selectDifference)},differenceRev:function(n,s){return i(n,s,a.selectDifferenceRev)},xor:function(n,s){return i(n,s,a.selectXor)}};function i(n,s,c){var h=a.segments(n),v=a.segments(s),p=a.combine(h,v),T=c(p);return a.polygon(T)}typeof window=="object"&&(window.PolyBool=a),H.exports=a}}),kO=Ye({"node_modules/point-in-polygon/nested.js"(X,H){H.exports=function(x,A,M,e){var t=x[0],r=x[1],o=!1;M===void 0&&(M=0),e===void 0&&(e=A.length);for(var a=e-M,i=0,n=a-1;i<a;n=i++){var s=A[i+M][0],c=A[i+M][1],h=A[n+M][0],v=A[n+M][1],p=c>r!=v>r&&t<(h-s)*(r-c)/(v-c)+s;p&&(o=!o)}return o}}}),C_=Ye({"src/lib/polygon.js"(X,H){"use strict";var g=h2().dot,x=ks().BADNUM,A=H.exports={};A.tester=function(e){var t=e.slice(),r=t[0][0],o=r,a=t[0][1],i=a,n;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),n=1;n<t.length;n++)r=Math.min(r,t[n][0]),o=Math.max(o,t[n][0]),a=Math.min(a,t[n][1]),i=Math.max(i,t[n][1]);var s=!1,c;t.length===5&&(t[0][0]===t[1][0]?t[2][0]===t[3][0]&&t[0][1]===t[3][1]&&t[1][1]===t[2][1]&&(s=!0,c=function(l){return l[0]===t[0][0]}):t[0][1]===t[1][1]&&t[2][1]===t[3][1]&&t[0][0]===t[3][0]&&t[1][0]===t[2][0]&&(s=!0,c=function(l){return l[1]===t[0][1]}));function h(l,_){var w=l[0],S=l[1];return!(w===x||w<r||w>o||S===x||S<a||S>i||_&&c(l))}function v(l,_){var w=l[0],S=l[1];if(w===x||w<r||w>o||S===x||S<a||S>i)return!1;var E=t.length,m=t[0][0],b=t[0][1],d=0,u,y,f,P,L;for(u=1;u<E;u++)if(y=m,f=b,m=t[u][0],b=t[u][1],P=Math.min(y,m),!(w<P||w>Math.max(y,m)||S>Math.max(f,b)))if(S<Math.min(f,b))w!==P&&d++;else{if(m===y?L=S:L=f+(w-y)*(b-f)/(m-y),S===L)return!(u===1&&_);S<=L&&w!==P&&d++}return d%2===1}var p=!0,T=t[0];for(n=1;n<t.length;n++)if(T[0]!==t[n][0]||T[1]!==t[n][1]){p=!1;break}return{xmin:r,xmax:o,ymin:a,ymax:i,pts:t,contains:s?h:v,isRect:s,degenerate:p}},A.isSegmentBent=function(e,t,r,o){var a=e[t],i=[e[r][0]-a[0],e[r][1]-a[1]],n=g(i,i),s=Math.sqrt(n),c=[-i[1]/s,i[0]/s],h,v,p;for(h=t+1;h<r;h++)if(v=[e[h][0]-a[0],e[h][1]-a[1]],p=g(v,i),p<0||p>n||Math.abs(g(v,c))>o)return!0;return!1},A.filter=function(e,t){var r=[e[0]],o=0,a=0;function i(s){e.push(s);var c=r.length,h=o;r.splice(a+1);for(var v=h+1;v<e.length;v++)(v===e.length-1||A.isSegmentBent(e,h,v+1,t))&&(r.push(e[v]),r.length<c-2&&(o=v,a=r.length-1),h=v)}if(e.length>1){var n=e.pop();i(n)}return{addPt:i,raw:e,filtered:r}}}}),CO=Ye({"src/components/selections/constants.js"(X,H){"use strict";H.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}}}),LO=Ye({"src/components/selections/select.js"(X,H){"use strict";var g=EO(),x=kO(),A=Hn(),M=Bo().dashStyle,e=Fn(),t=Lc(),r=Qp().makeEventData,o=Jd(),a=o.freeMode,i=o.rectMode,n=o.drawMode,s=o.openMode,c=o.selectMode,h=rg(),v=E_(),p=S2(),T=Jm().clearOutline,l=tg(),_=l.handleEllipse,w=l.readPaths,S=A2().newShapes,E=_S(),m=MS().activateLastSelection,b=ta(),d=b.sorterAsc,u=C_(),y=m2(),f=Xc().getFromId,P=M_(),L=k_().redrawReglTraces,z=CO(),F=z.MINSELECT,B=u.filter,O=u.tester,I=T2(),N=I.p2r,U=I.axValue,W=I.getTransform;function Q(Fe){return Fe.subplot!==void 0}function ue(Fe,Ke,Ne,Ee,Ve){var ke=!Q(Ee),Te=a(Ve),Le=i(Ve),rt=s(Ve),dt=n(Ve),xt=c(Ve),It=Ve==="drawline",Bt=Ve==="drawcircle",Gt=It||Bt,Kt=Ee.gd,sr=Kt._fullLayout,sa=xt&&sr.newselection.mode==="immediate"&&ke,Aa=sr._zoomlayer,La=Ee.element.getBoundingClientRect(),ka=Ee.plotinfo,Ga=W(ka),Ma=Ke-La.left,Ua=Ne-La.top;sr._calcInverseTransform(Kt);var ni=b.apply3DTransform(sr._invTransform)(Ma,Ua);Ma=ni[0],Ua=ni[1];var Wt=sr._invScaleX,zt=sr._invScaleY,Vt=Ma,Ut=Ua,xr="M"+Ma+","+Ua,Zr=Ee.xaxes[0],pa=Ee.yaxes[0],Xr=Zr._length,Ea=pa._length,Fa=Fe.altKey&&!(n(Ve)&&rt),qa,ya,$a,mt,gt,Er,kr;Z(Fe,Kt,Ee),Te&&(qa=B([[Ma,Ua]],z.BENDPX));var br=Aa.selectAll("path.select-outline-"+ka.id).data([1]),Tr=dt?sr.newshape:sr.newselection;dt&&(Ee.hasText=Tr.label.text||Tr.label.texttemplate);var Mr=dt&&!rt?Tr.fillcolor:"rgba(0,0,0,0)",Fr=Tr.line.color||(ke?e.contrast(Kt._fullLayout.plot_bgcolor):"#7f7f7f");br.enter().append("path").attr("class","select-outline select-outline-"+ka.id).style({opacity:dt?Tr.opacity/2:1,"stroke-dasharray":M(Tr.line.dash,Tr.line.width),"stroke-width":Tr.line.width+"px","shape-rendering":"crispEdges"}).call(e.stroke,Fr).call(e.fill,Mr).attr("fill-rule","evenodd").classed("cursor-move",!!dt).attr("transform",Ga).attr("d",xr+"Z");var Lr=Aa.append("path").attr("class","zoombox-corners").style({fill:e.background,stroke:e.defaultLine,"stroke-width":1}).attr("transform",Ga).attr("d","M0,0Z");if(dt&&Ee.hasText){var Jr=Aa.select(".label-temp");Jr.empty()&&(Jr=Aa.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var oa=sr._uid+z.SELECTID,ca=[],kt=ie(Kt,Ee.xaxes,Ee.yaxes,Ee.subplot);sa&&!Fe.shiftKey&&(Ee._clearSubplotSelections=function(){if(ke){var mr=Zr._id,$r=pa._id;nt(Kt,mr,$r,kt);for(var ma=(Kt.layout||{}).selections||[],Ba=[],Ca=!1,da=0;da<ma.length;da++){var Sa=sr.selections[da];!Sa||Sa.xref!==mr||Sa.yref!==$r?Ba.push(ma[da]):Ca=!0}Ca&&(Kt._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Kt,{selections:Ba}))}});var ir=Cr(Ee);Ee.moveFn=function(mr,$r){Ee._clearSubplotSelections&&(Ee._clearSubplotSelections(),Ee._clearSubplotSelections=void 0),Vt=Math.max(0,Math.min(Xr,Wt*mr+Ma)),Ut=Math.max(0,Math.min(Ea,zt*$r+Ua));var ma=Math.abs(Vt-Ma),Ba=Math.abs(Ut-Ua);if(Le){var Ca,da,Sa;if(xt){var Ti=sr.selectdirection;switch(Ti==="any"?Ba<Math.min(ma*.6,F)?Ca="h":ma<Math.min(Ba*.6,F)?Ca="v":Ca="d":Ca=Ti,Ca){case"h":da=Bt?Ea/2:0,Sa=Ea;break;case"v":da=Bt?Xr/2:0,Sa=Xr;break}}if(dt)switch(sr.newshape.drawdirection){case"vertical":Ca="h",da=Bt?Ea/2:0,Sa=Ea;break;case"horizontal":Ca="v",da=Bt?Xr/2:0,Sa=Xr;break;case"ortho":ma<Ba?(Ca="h",da=Ua,Sa=Ut):(Ca="v",da=Ma,Sa=Vt);break;default:Ca="d"}Ca==="h"?(mt=Gt?_(Bt,[Vt,da],[Vt,Sa]):[[Ma,da],[Ma,Sa],[Vt,Sa],[Vt,da]],mt.xmin=Gt?Vt:Math.min(Ma,Vt),mt.xmax=Gt?Vt:Math.max(Ma,Vt),mt.ymin=Math.min(da,Sa),mt.ymax=Math.max(da,Sa),Lr.attr("d","M"+mt.xmin+","+(Ua-F)+"h-4v"+2*F+"h4ZM"+(mt.xmax-1)+","+(Ua-F)+"h4v"+2*F+"h-4Z")):Ca==="v"?(mt=Gt?_(Bt,[da,Ut],[Sa,Ut]):[[da,Ua],[da,Ut],[Sa,Ut],[Sa,Ua]],mt.xmin=Math.min(da,Sa),mt.xmax=Math.max(da,Sa),mt.ymin=Gt?Ut:Math.min(Ua,Ut),mt.ymax=Gt?Ut:Math.max(Ua,Ut),Lr.attr("d","M"+(Ma-F)+","+mt.ymin+"v-4h"+2*F+"v4ZM"+(Ma-F)+","+(mt.ymax-1)+"v4h"+2*F+"v-4Z")):Ca==="d"&&(mt=Gt?_(Bt,[Ma,Ua],[Vt,Ut]):[[Ma,Ua],[Ma,Ut],[Vt,Ut],[Vt,Ua]],mt.xmin=Math.min(Ma,Vt),mt.xmax=Math.max(Ma,Vt),mt.ymin=Math.min(Ua,Ut),mt.ymax=Math.max(Ua,Ut),Lr.attr("d","M0,0Z"))}else Te&&(qa.addPt([Vt,Ut]),mt=qa.filtered);if(Ee.selectionDefs&&Ee.selectionDefs.length?($a=et(Ee.mergedPolygons,mt,Fa),mt.subtract=Fa,ya=J(Ee.selectionDefs.concat([mt]))):($a=[mt],ya=O(mt)),p(Me($a,rt),br,Ee),xt){var ai=ce(Kt,!1),an=ai.eventData?ai.eventData.points.slice():[];ai=ce(Kt,!1,ya,kt,Ee),ya=ai.selectionTesters,kr=ai.eventData;var sn;qa?sn=qa.filtered:sn=jt($a),y.throttle(oa,z.SELECTDELAY,function(){ca=ge(ya,kt);for(var Mn=ca.slice(),On=0;On<an.length;On++){for(var $n=an[On],Cn=!1,Lo=0;Lo<Mn.length;Lo++)if(Mn[Lo].curveNumber===$n.curveNumber&&Mn[Lo].pointNumber===$n.pointNumber){Cn=!0;break}Cn||Mn.push($n)}Mn.length&&(kr||(kr={}),kr.points=Mn),ir(kr,sn),vr(Kt,kr)})}},Ee.clickFn=function(mr,$r){if(Lr.remove(),Kt._fullLayout._activeShapeIndex>=0){Kt._fullLayout._deactivateShape(Kt);return}if(!dt){var ma=sr.clickmode;y.done(oa).then(function(){if(y.clear(oa),mr===2){for(br.remove(),gt=0;gt<kt.length;gt++)Er=kt[gt],Er._module.selectPoints(Er,!1);if(at(Kt,kt),j(Ee),yt(Kt),kt.length){var Ba=kt[0].xaxis,Ca=kt[0].yaxis;if(Ba&&Ca){for(var da=[],Sa=Kt._fullLayout.selections,Ti=0;Ti<Sa.length;Ti++){var ai=Sa[Ti];ai&&(ai.xref!==Ba._id||ai.yref!==Ca._id)&&da.push(ai)}da.length<Sa.length&&(Kt._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Kt,{selections:da}))}}}else ma.indexOf("select")>-1&&se($r,Kt,Ee.xaxes,Ee.yaxes,Ee.subplot,Ee,br),ma==="event"&&_r(Kt,void 0);t.click(Kt,$r,ka.id)}).catch(b.error)}},Ee.doneFn=function(){Lr.remove(),y.done(oa).then(function(){y.clear(oa),!sa&&mt&&Ee.selectionDefs&&(mt.subtract=Fa,Ee.selectionDefs.push(mt),Ee.mergedPolygons.length=0,[].push.apply(Ee.mergedPolygons,$a)),(sa||dt)&&j(Ee,sa),Ee.doneFnCompleted&&Ee.doneFnCompleted(ca),xt&&_r(Kt,kr)}).catch(b.error)}}function se(Fe,Ke,Ne,Ee,Ve,ke,Te){var Le=Ke._hoverdata,rt=Ke._fullLayout,dt=rt.clickmode,xt=dt.indexOf("event")>-1,It=[],Bt,Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma;if(be(Le)){Z(Fe,Ke,ke),Bt=ie(Ke,Ne,Ee,Ve);var Ua=Ae(Le,Bt),ni=Ua.pointNumbers.length>0;if(ni?Ie(Bt,Ua):Ze(Bt)&&(La=Be(Ua))){for(Te&&Te.remove(),Ma=0;Ma<Bt.length;Ma++)Gt=Bt[Ma],Gt._module.selectPoints(Gt,!1);at(Ke,Bt),j(ke),xt&&yt(Ke)}else{ka=Fe.shiftKey&&(La!==void 0?La:Be(Ua)),Kt=he(Ua.pointNumber,Ua.searchInfo,ka);var Wt=ke.selectionDefs.concat([Kt]);for(sr=J(Wt,sr),Ma=0;Ma<Bt.length;Ma++)if(sa=Bt[Ma]._module.selectPoints(Bt[Ma],sr),Aa=lt(sa,Bt[Ma]),It.length)for(var zt=0;zt<Aa.length;zt++)It.push(Aa[zt]);else It=Aa;if(Ga={points:It},at(Ke,Bt,Ga),Kt&&ke&&ke.selectionDefs.push(Kt),Te){var Vt=ke.mergedPolygons,Ut=s(ke.dragmode);p(Me(Vt,Ut),Te,ke)}xt&&_r(Ke,Ga)}}}function he(Fe,Ke,Ne){return{pointNumber:Fe,searchInfo:Ke,subtract:!!Ne}}function G(Fe){return"pointNumber"in Fe&&"searchInfo"in Fe}function $(Fe){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(Ke,Ne,Ee,Ve){var ke=Fe.searchInfo.cd[0].trace.index,Te=Ve.cd[0].trace.index;return Te===ke&&Ee===Fe.pointNumber},isRect:!1,degenerate:!1,subtract:!!Fe.subtract}}function J(Fe){if(!Fe.length)return;for(var Ke=[],Ne=G(Fe[0])?0:Fe[0][0][0],Ee=Ne,Ve=G(Fe[0])?0:Fe[0][0][1],ke=Ve,Te=0;Te<Fe.length;Te++)if(G(Fe[Te]))Ke.push($(Fe[Te]));else{var Le=O(Fe[Te]);Le.subtract=!!Fe[Te].subtract,Ke.push(Le),Ne=Math.min(Ne,Le.xmin),Ee=Math.max(Ee,Le.xmax),Ve=Math.min(Ve,Le.ymin),ke=Math.max(ke,Le.ymax)}function rt(dt,xt,It,Bt){for(var Gt=!1,Kt=0;Kt<Ke.length;Kt++)Ke[Kt].contains(dt,xt,It,Bt)&&(Gt=!Ke[Kt].subtract);return Gt}return{xmin:Ne,xmax:Ee,ymin:Ve,ymax:ke,pts:[],contains:rt,isRect:!1,degenerate:!1}}function Z(Fe,Ke,Ne){var Ee=Ke._fullLayout,Ve=Ne.plotinfo,ke=Ne.dragmode,Te=Ee._lastSelectedSubplot&&Ee._lastSelectedSubplot===Ve.id,Le=(Fe.shiftKey||Fe.altKey)&&!(n(ke)&&s(ke));Te&&Le&&Ve.selection&&Ve.selection.selectionDefs&&!Ne.selectionDefs?(Ne.selectionDefs=Ve.selection.selectionDefs,Ne.mergedPolygons=Ve.selection.mergedPolygons):(!Le||!Ve.selection)&&j(Ne),Te||(T(Ke),Ee._lastSelectedSubplot=Ve.id)}function re(Fe){return Fe._fullLayout._activeShapeIndex>=0}function ne(Fe){return Fe._fullLayout._activeSelectionIndex>=0}function j(Fe,Ke){var Ne=Fe.dragmode,Ee=Fe.plotinfo,Ve=Fe.gd;re(Ve)&&Ve._fullLayout._deactivateShape(Ve),ne(Ve)&&Ve._fullLayout._deactivateSelection(Ve);var ke=Ve._fullLayout,Te=ke._zoomlayer,Le=n(Ne),rt=c(Ne);if(Le||rt){var dt=Te.selectAll(".select-outline-"+Ee.id);if(dt&&Ve._fullLayout._outlining){var xt;Le&&(xt=S(dt,Fe)),xt&&A.call("_guiRelayout",Ve,{shapes:xt});var It;rt&&!Q(Fe)&&(It=E(dt,Fe)),It&&(Ve._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Ve,{selections:It}).then(function(){Ke&&m(Ve)})),Ve._fullLayout._outlining=!1}}Ee.selection={},Ee.selection.selectionDefs=Fe.selectionDefs=[],Ee.selection.mergedPolygons=Fe.mergedPolygons=[]}function ee(Fe){return Fe._id}function ie(Fe,Ke,Ne,Ee){if(!Fe.calcdata)return[];var Ve=[],ke=Ke.map(ee),Te=Ne.map(ee),Le,rt,dt;for(dt=0;dt<Fe.calcdata.length;dt++)if(Le=Fe.calcdata[dt],rt=Le[0].trace,!(rt.visible!==!0||!rt._module||!rt._module.selectPoints))if(Q({subplot:Ee})&&(rt.subplot===Ee||rt.geo===Ee))Ve.push(fe(rt._module,Le,Ke[0],Ne[0]));else if(rt.type==="splom"){if(rt._xaxes[ke[0]]&&rt._yaxes[Te[0]]){var xt=fe(rt._module,Le,Ke[0],Ne[0]);xt.scene=Fe._fullLayout._splomScenes[rt.uid],Ve.push(xt)}}else if(rt.type==="sankey"){var It=fe(rt._module,Le,Ke[0],Ne[0]);Ve.push(It)}else{if(ke.indexOf(rt.xaxis)===-1&&(!rt._xA||!rt._xA.overlaying)||Te.indexOf(rt.yaxis)===-1&&(!rt._yA||!rt._yA.overlaying))continue;Ve.push(fe(rt._module,Le,f(Fe,rt.xaxis),f(Fe,rt.yaxis)))}return Ve}function fe(Fe,Ke,Ne,Ee){return{_module:Fe,cd:Ke,xaxis:Ne,yaxis:Ee}}function be(Fe){return Fe&&Array.isArray(Fe)&&Fe[0].hoverOnBox!==!0}function Ae(Fe,Ke){var Ne=Fe[0],Ee=-1,Ve=[],ke,Te;for(Te=0;Te<Ke.length;Te++)if(ke=Ke[Te],Ne.fullData.index===ke.cd[0].trace.index){if(Ne.hoverOnBox===!0)break;Ne.pointNumber!==void 0?Ee=Ne.pointNumber:Ne.binNumber!==void 0&&(Ee=Ne.binNumber,Ve=Ne.pointNumbers);break}return{pointNumber:Ee,pointNumbers:Ve,searchInfo:ke}}function Be(Fe){var Ke=Fe.searchInfo.cd[0].trace,Ne=Fe.pointNumber,Ee=Fe.pointNumbers,Ve=Ee.length>0,ke=Ve?Ee[0]:Ne;return Ke.selectedpoints?Ke.selectedpoints.indexOf(ke)>-1:!1}function Ie(Fe,Ke){var Ne=[],Ee,Ve,ke,Te;for(Te=0;Te<Fe.length;Te++)Ee=Fe[Te],Ee.cd[0].trace.selectedpoints&&Ee.cd[0].trace.selectedpoints.length>0&&Ne.push(Ee);if(Ne.length===1&&(ke=Ne[0]===Ke.searchInfo,ke&&(Ve=Ke.searchInfo.cd[0].trace,Ve.selectedpoints.length===Ke.pointNumbers.length))){for(Te=0;Te<Ke.pointNumbers.length;Te++)if(Ve.selectedpoints.indexOf(Ke.pointNumbers[Te])<0)return!1;return!0}return!1}function Ze(Fe){var Ke=0,Ne,Ee,Ve;for(Ve=0;Ve<Fe.length;Ve++)if(Ne=Fe[Ve],Ee=Ne.cd[0].trace,Ee.selectedpoints&&(Ee.selectedpoints.length>1||(Ke+=Ee.selectedpoints.length,Ke>1)))return!1;return Ke===1}function at(Fe,Ke,Ne){var Ee;for(Ee=0;Ee<Ke.length;Ee++){var Ve=Ke[Ee].cd[0].trace._fullInput,ke=Fe._fullLayout._tracePreGUI[Ve.uid]||{};ke.selectedpoints===void 0&&(ke.selectedpoints=Ve._input.selectedpoints||null)}var Te;if(Ne){var Le=Ne.points||[];for(Ee=0;Ee<Ke.length;Ee++)Te=Ke[Ee].cd[0].trace,Te._input.selectedpoints=Te._fullInput.selectedpoints=[],Te._fullInput!==Te&&(Te.selectedpoints=[]);for(var rt=0;rt<Le.length;rt++){var dt=Le[rt],xt=dt.data,It=dt.fullData,Bt=dt.pointIndex,Gt=dt.pointIndices;Gt?([].push.apply(xt.selectedpoints,Gt),Te._fullInput!==Te&&[].push.apply(It.selectedpoints,Gt)):(xt.selectedpoints.push(Bt),Te._fullInput!==Te&&It.selectedpoints.push(Bt))}}else for(Ee=0;Ee<Ke.length;Ee++)Te=Ke[Ee].cd[0].trace,delete Te.selectedpoints,delete Te._input.selectedpoints,Te._fullInput!==Te&&delete Te._fullInput.selectedpoints;it(Fe,Ke)}function it(Fe,Ke){for(var Ne=!1,Ee=0;Ee<Ke.length;Ee++){var Ve=Ke[Ee],ke=Ve.cd;A.traceIs(ke[0].trace,"regl")&&(Ne=!0);var Te=Ve._module,Le=Te.styleOnSelect||Te.style;Le&&(Le(Fe,ke,ke[0].node3),ke[0].nodeRangePlot3&&Le(Fe,ke,ke[0].nodeRangePlot3))}Ne&&(P(Fe),L(Fe))}function et(Fe,Ke,Ne){for(var Ee=Ne?g.difference:g.union,Ve=Ee({regions:Fe},{regions:[Ke]}),ke=Ve.regions.reverse(),Te=0;Te<ke.length;Te++){var Le=ke[Te];Le.subtract=St(Le,ke.slice(0,Te))}return ke}function lt(Fe,Ke){if(Array.isArray(Fe))for(var Ne=Ke.cd,Ee=Ke.cd[0].trace,Ve=0;Ve<Fe.length;Ve++)Fe[Ve]=r(Fe[Ve],Ee,Ne);return Fe}function Me(Fe,Ke){for(var Ne=[],Ee=0;Ee<Fe.length;Ee++){Ne[Ee]=[];for(var Ve=0;Ve<Fe[Ee].length;Ve++){Ne[Ee][Ve]=[],Ne[Ee][Ve][0]=Ve?"L":"M";for(var ke=0;ke<Fe[Ee][Ve].length;ke++)Ne[Ee][Ve].push(Fe[Ee][Ve][ke])}Ke||Ne[Ee].push(["Z",Ne[Ee][0][1],Ne[Ee][0][2]])}return Ne}function ge(Fe,Ke){for(var Ne=[],Ee,Ve=[],ke,Te=0;Te<Ke.length;Te++){var Le=Ke[Te];ke=Le._module.selectPoints(Le,Fe),Ve.push(ke),Ee=lt(ke,Le),Ne=Ne.concat(Ee)}return Ne}function ce(Fe,Ke,Ne,Ee,Ve){var ke=!!Ee,Te,Le,rt;Ve&&(Te=Ve.plotinfo,Le=Ve.xaxes[0]._id,rt=Ve.yaxes[0]._id);var dt=[],xt=[],It=Ct(Fe),Bt=Fe._fullLayout;if(Te){var Gt=Bt._zoomlayer,Kt=Bt.dragmode,sr=n(Kt),sa=c(Kt);if(sr||sa){var Aa=f(Fe,Le,"x"),La=f(Fe,rt,"y");if(Aa&&La){var ka=Gt.selectAll(".select-outline-"+Te.id);if(ka&&Fe._fullLayout._outlining&&ka.length){for(var Ga=ka[0][0],Ma=Ga.getAttribute("d"),Ua=w(Ma,Fe,Te),ni=[],Wt=0;Wt<Ua.length;Wt++){for(var zt=Ua[Wt],Vt=[],Ut=0;Ut<zt.length;Ut++)Vt.push([Ot(Aa,zt[Ut][1]),Ot(La,zt[Ut][2])]);Vt.xref=Le,Vt.yref=rt,Vt.subtract=St(Vt,ni),ni.push(Vt)}It=It.concat(ni)}}}}var xr=Le&&rt?[Le+rt]:Bt._subplots.cartesian;ze(Fe);for(var Zr={},pa=0;pa<xr.length;pa++){var Xr=xr[pa],Ea=Xr.indexOf("y"),Fa=Xr.slice(0,Ea),qa=Xr.slice(Ea),ya=Le&&rt?Ne:void 0;if(ya=Qe(It,Fa,qa,ya),ya){var $a=Ee;if(!ke){var mt=f(Fe,Fa,"x"),gt=f(Fe,qa,"y");$a=ie(Fe,[mt],[gt],Xr);for(var Er=0;Er<$a.length;Er++){var kr=$a[Er],br=kr.cd[0],Tr=br.trace;if(kr._module.name==="scattergl"&&!br.t.xpx){var Mr=Tr.x,Fr=Tr.y,Lr=Tr._length;br.t.xpx=[],br.t.ypx=[];for(var Jr=0;Jr<Lr;Jr++)br.t.xpx[Jr]=mt.c2p(Mr[Jr]),br.t.ypx[Jr]=gt.c2p(Fr[Jr])}kr._module.name==="splom"&&(Zr[Tr.uid]||(Zr[Tr.uid]=!0))}}var oa=ge(ya,$a);dt=dt.concat(oa),xt=xt.concat($a)}}var ca={points:dt};at(Fe,xt,ca);var kt=Bt.clickmode,ir=kt.indexOf("event")>-1&&Ke;if(!Te&&Ke){var mr=Ct(Fe,!0);if(mr.length){var $r=mr[0].xref,ma=mr[0].yref;if($r&&ma){var Ba=jt(mr),Ca=ar([f(Fe,$r,"x"),f(Fe,ma,"y")]);Ca(ca,Ba)}}Fe._fullLayout._noEmitSelectedAtStart?Fe._fullLayout._noEmitSelectedAtStart=!1:ir&&_r(Fe,ca),Bt._reselect=!1}if(!Te&&Bt._deselect){var da=Bt._deselect;Le=da.xref,rt=da.yref,tt(Le,rt,xt)||nt(Fe,Le,rt,Ee),ir&&(ca.points.length?_r(Fe,ca):yt(Fe)),Bt._deselect=!1}return{eventData:ca,selectionTesters:Ne}}function ze(Fe){var Ke=Fe.calcdata;if(Ke)for(var Ne=0;Ne<Ke.length;Ne++){var Ee=Ke[Ne][0],Ve=Ee.trace,ke=Fe._fullLayout._splomScenes;if(ke){var Te=ke[Ve.uid];Te&&(Te.selectBatch=[])}}}function tt(Fe,Ke,Ne){for(var Ee=0;Ee<Ne.length;Ee++){var Ve=Ne[Ee];if(Ve.xaxis&&Ve.xaxis._id===Fe&&Ve.yaxis&&Ve.yaxis._id===Ke)return!0}return!1}function nt(Fe,Ke,Ne,Ee){Ee=ie(Fe,[f(Fe,Ke,"x")],[f(Fe,Ne,"y")],Ke+Ne);for(var Ve=0;Ve<Ee.length;Ve++){var ke=Ee[Ve];ke._module.selectPoints(ke,!1)}at(Fe,Ee)}function Qe(Fe,Ke,Ne,Ee){for(var Ve,ke=0;ke<Fe.length;ke++){var Te=Fe[ke];if(!(Ke!==Te.xref||Ne!==Te.yref))if(Ve){var Le=!!Te.subtract;Ve=et(Ve,Te,Le),Ee=J(Ve)}else Ve=[Te],Ee=O(Te)}return Ee}function Ct(Fe,Ke){for(var Ne=[],Ee=Fe._fullLayout,Ve=Ee.selections,ke=Ve.length,Te=0;Te<ke;Te++)if(!(Ke&&Te!==Ee._activeSelectionIndex)){var Le=Ve[Te];if(Le){var rt=Le.xref,dt=Le.yref,xt=f(Fe,rt,"x"),It=f(Fe,dt,"y"),Bt,Gt,Kt,sr,sa;if(Le.type==="rect"){sa=[];var Aa=Ot(xt,Le.x0),La=Ot(xt,Le.x1),ka=Ot(It,Le.y0),Ga=Ot(It,Le.y1);sa=[[Aa,ka],[Aa,Ga],[La,Ga],[La,ka]],Bt=Math.min(Aa,La),Gt=Math.max(Aa,La),Kt=Math.min(ka,Ga),sr=Math.max(ka,Ga),sa.xmin=Bt,sa.xmax=Gt,sa.ymin=Kt,sa.ymax=sr,sa.xref=rt,sa.yref=dt,sa.subtract=!1,sa.isRect=!0,Ne.push(sa)}else if(Le.type==="path")for(var Ma=Le.path.split("Z"),Ua=[],ni=0;ni<Ma.length;ni++){var Wt=Ma[ni];if(Wt){Wt+="Z";var zt=h.extractPathCoords(Wt,v.paramIsX,"raw"),Vt=h.extractPathCoords(Wt,v.paramIsY,"raw");Bt=1/0,Gt=-1/0,Kt=1/0,sr=-1/0,sa=[];for(var Ut=0;Ut<zt.length;Ut++){var xr=Ot(xt,zt[Ut]),Zr=Ot(It,Vt[Ut]);sa.push([xr,Zr]),Bt=Math.min(xr,Bt),Gt=Math.max(xr,Gt),Kt=Math.min(Zr,Kt),sr=Math.max(Zr,sr)}sa.xmin=Bt,sa.xmax=Gt,sa.ymin=Kt,sa.ymax=sr,sa.xref=rt,sa.yref=dt,sa.subtract=St(sa,Ua),Ua.push(sa),Ne.push(sa)}}}}return Ne}function St(Fe,Ke){for(var Ne=!1,Ee=0;Ee<Ke.length;Ee++)for(var Ve=Ke[Ee],ke=0;ke<Fe.length;ke++)if(x(Fe[ke],Ve)){Ne=!Ne;break}return Ne}function Ot(Fe,Ke){return Fe.type==="date"&&(Ke=Ke.replace("_"," ")),Fe.type==="log"?Fe.c2p(Ke):Fe.r2p(Ke,null,Fe.calendar)}function jt(Fe){for(var Ke=Fe.length,Ne=[],Ee=0;Ee<Ke;Ee++){var Ve=Fe[Ee];Ne=Ne.concat(Ve),Ne=Ne.concat([Ve[0]])}return ur(Ne)}function ur(Fe){return Fe.isRect=Fe.length===5&&Fe[0][0]===Fe[4][0]&&Fe[0][1]===Fe[4][1]&&Fe[0][0]===Fe[1][0]&&Fe[2][0]===Fe[3][0]&&Fe[0][1]===Fe[3][1]&&Fe[1][1]===Fe[2][1]||Fe[0][1]===Fe[1][1]&&Fe[2][1]===Fe[3][1]&&Fe[0][0]===Fe[3][0]&&Fe[1][0]===Fe[2][0],Fe.isRect&&(Fe.xmin=Math.min(Fe[0][0],Fe[2][0]),Fe.xmax=Math.max(Fe[0][0],Fe[2][0]),Fe.ymin=Math.min(Fe[0][1],Fe[2][1]),Fe.ymax=Math.max(Fe[0][1],Fe[2][1])),Fe}function ar(Fe){return function(Ke,Ne){for(var Ee,Ve,ke=0;ke<Fe.length;ke++){var Te=Fe[ke],Le=Te._id,rt=Le.charAt(0);if(Ne.isRect){Ee||(Ee={});var dt=Ne[rt+"min"],xt=Ne[rt+"max"];dt!==void 0&&xt!==void 0&&(Ee[Le]=[N(Te,dt),N(Te,xt)].sort(d))}else Ve||(Ve={}),Ve[Le]=Ne.map(U(Te))}Ee&&(Ke.range=Ee),Ve&&(Ke.lassoPoints=Ve)}}function Cr(Fe){var Ke=Fe.plotinfo;return Ke.fillRangeItems||ar(Fe.xaxes.concat(Fe.yaxes))}function vr(Fe,Ke){Fe.emit("plotly_selecting",Ke)}function _r(Fe,Ke){Ke&&(Ke.selections=(Fe.layout||{}).selections||[]),Fe.emit("plotly_selected",Ke)}function yt(Fe){Fe.emit("plotly_deselect",null)}H.exports={reselect:ce,prepSelect:ue,clearOutline:T,clearSelectionsCache:j,selectOnClick:se}}}),ES=Ye({"src/components/annotations/arrow_paths.js"(X,H){"use strict";H.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]}}),L_=Ye({"src/constants/axis_placeable_objects.js"(X,H){"use strict";H.exports={axisRefDescription:function(g,x,A){return["If set to a",g,"axis id (e.g. *"+g+"* or","*"+g+"2*), the `"+g+"` position refers to a",g,"coordinate. If set to *paper*, the `"+g+"`","position refers to the distance from the",x,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",x,"("+A+"). If set to a",g,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",x,"of the domain of that axis: e.g.,","*"+g+"2 domain* refers to the domain of the second",g," axis and a",g,"position of 0.5 refers to the","point between the",x,"and the",A,"of the domain of the","second",g,"axis."].join(" ")}}}}),Kg=Ye({"src/components/annotations/attributes.js"(X,H){"use strict";var g=ES(),x=Au(),A=wh(),M=cl().templatedArray,e=L_();H.exports=M("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:x({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:g.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:g.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",A.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",A.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",A.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",A.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:x({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})}}),Tv=Ye({"src/traces/scatter/constants.js"(X,H){"use strict";H.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}}}),$d=Ye({"src/traces/scatter/fillcolor_attribute.js"(X,H){"use strict";H.exports=function(x){return{valType:"color",editType:"style",anim:!0}}}}),Pc=Ye({"src/traces/scatter/attributes.js"(X,H){"use strict";var g=Cc().axisHoverFormat,x=xs().texttemplateAttrs,A=xs().hovertemplateAttrs,M=tu(),e=Au(),t=Uh().dash,r=Uh().pattern,o=Bo(),a=Tv(),i=Oo().extendFlat,n=$d();function s(v){return{valType:"any",dflt:0,editType:"calc"}}function c(v){return{valType:"any",editType:"calc"}}function h(v){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}H.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:s("x"),yperiod:s("y"),xperiod0:c("x0"),yperiod0:c("y0"),xperiodalignment:h("x"),yperiodalignment:h("y"),xhoverformat:g("x"),yhoverformat:g("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:x({},{}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:A({},{keys:a.eventDataKeys}),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:i({},t,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:n(!0),fillgradient:i({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:r,marker:i({symbol:{valType:"enumerated",values:o.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:i({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},M("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},M("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"middle center",arrayOk:!0,editType:"calc"},textfont:e({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}}}),kS=Ye({"src/components/selections/attributes.js"(X,H){"use strict";var g=Kg(),x=Pc().line,A=Uh().dash,M=Oo().extendFlat,e=Ou().overrideAll,t=cl().templatedArray,r=L_();H.exports=e(t("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:M({},g.xref,{}),yref:M({},g.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:x.color,width:M({},x.width,{min:1,dflt:1}),dash:M({},A,{dflt:"dot"})}}),"arraydraw","from-root")}}),PO=Ye({"src/components/selections/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=kS(),e=rg();H.exports=function(o,a){A(o,a,{name:"selections",handleItemDefaults:t});for(var i=a.selections,n=0;n<i.length;n++){var s=i[n];s&&s.path===void 0&&(s.x0===void 0||s.x1===void 0||s.y0===void 0||s.y1===void 0)&&(a.selections[n]=null)}};function t(r,o,a){function i(P,L){return g.coerce(r,o,M,P,L)}var n=i("path"),s=n?"path":"rect",c=i("type",s),h=c!=="path";h&&delete o.path,i("opacity"),i("line.color"),i("line.width"),i("line.dash");for(var v=["x","y"],p=0;p<2;p++){var T=v[p],l={_fullLayout:a},_,w,S,E=x.coerceRef(r,o,l,T);if(_=x.getFromId(l,E),_._selectionIndices.push(o._index),S=e.rangeToShapePosition(_),w=e.shapePositionToRange(_),h){var m=T+"0",b=T+"1",d=r[m],u=r[b];r[m]=w(r[m],!0),r[b]=w(r[b],!0),x.coercePosition(o,l,i,E,m),x.coercePosition(o,l,i,E,b);var y=o[m],f=o[b];y!==void 0&&f!==void 0&&(o[m]=S(y),o[b]=S(f),r[m]=d,r[b]=u)}}h&&g.noneOrAll(r,o,["x0","x1","y0","y1"])}}}),IO=Ye({"src/components/selections/draw_newselection/defaults.js"(X,H){"use strict";H.exports=function(x,A,M){M("newselection.mode");var e=M("newselection.line.width");e&&(M("newselection.line.color"),M("newselection.line.dash")),M("activeselection.fillcolor"),M("activeselection.opacity")}}}),P_=Ye({"src/plots/cartesian/include_components.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Xc();H.exports=function(e){return function(r,o){var a=r[e];if(Array.isArray(a))for(var i=g.subplotsRegistry.cartesian,n=i.idRegex,s=o._subplots,c=s.xaxis,h=s.yaxis,v=s.cartesian,p=o._has("cartesian"),T=0;T<a.length;T++){var l=a[T];if(x.isPlainObject(l)){var _=A.cleanId(l.xref,"x",!1),w=A.cleanId(l.yref,"y",!1),S=n.x.test(_),E=n.y.test(w);if(S||E){p||x.pushUnique(o._basePlotModules,i);var m=!1;S&&c.indexOf(_)===-1&&(c.push(_),m=!0),E&&h.indexOf(w)===-1&&(h.push(w),m=!0),m&&S&&E&&v.push(_+w)}}}}}}}),ff=Ye({"src/components/selections/index.js"(X,H){"use strict";var g=MS(),x=LO();H.exports={moduleType:"component",name:"selections",layoutAttributes:kS(),supplyLayoutDefaults:PO(),supplyDrawNewSelectionDefaults:IO(),includeBasePlot:P_()("selections"),draw:g.draw,drawOne:g.drawOne,reselect:x.reselect,prepSelect:x.prepSelect,clearOutline:x.clearOutline,clearSelectionsCache:x.clearSelectionsCache,selectOnClick:x.selectOnClick}}}),CS=Ye({"src/plots/cartesian/dragbox.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=bh(),e=_2(),t=Hn(),r=x.strTranslate,o=jl(),a=Fn(),i=Bo(),n=Lc(),s=Co(),c=Kd(),h=bp(),v=Jd(),p=v.selectingOrDrawing,T=v.freeMode,l=oh().FROM_TL,_=M_(),w=k_().redrawReglTraces,S=Gu(),E=Xc().getFromId,m=ff().prepSelect,b=ff().clearOutline,d=ff().selectOnClick,u=SS(),y=wh(),f=y.MINDRAG,P=y.MINZOOM,L=!0;function z(fe,be,Ae,Be,Ie,Ze,at,it){var et=fe._fullLayout._zoomlayer,lt=at+it==="nsew",Me=(at+it).length===1,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur,ar,Cr,vr,_r,yt,Fe,Ke,Ne,Ee,Ve,ke,Te;Ae+=be.yaxis._shift;function Le(){if(ge=be.xaxis,ce=be.yaxis,Ot=ge._length,jt=ce._length,Ct=ge._offset,St=ce._offset,ze={},ze[ge._id]=ge,tt={},tt[ce._id]=ce,at&&it)for(var br=be.overlays,Tr=0;Tr<br.length;Tr++){var Mr=br[Tr].xaxis;ze[Mr._id]=Mr;var Fr=br[Tr].yaxis;tt[Fr._id]=Fr}nt=ie(ze),Qe=ie(tt),Cr=O(nt,it),vr=O(Qe,at),_r=!vr&&!Cr,ar=j(fe,fe._fullLayout._axisMatchGroups,ze,tt),ur=j(fe,fe._fullLayout._axisConstraintGroups,ze,tt,ar);var Lr=ur.isSubplotConstrained||ar.isSubplotConstrained;yt=it||Lr,Fe=at||Lr;var Jr=fe._fullLayout;Ke=Jr._has("scattergl"),Ne=Jr._has("splom"),Ee=Jr._has("svg")}Le();var rt=Q(vr+Cr,fe._fullLayout.dragmode,lt),dt=B(be,at+it+"drag",rt,Ae,Be,Ie,Ze);if(_r&&!lt)return dt.onmousedown=null,dt.style.pointerEvents="none",dt;var xt={element:dt,gd:fe,plotinfo:be};xt.prepFn=function(br,Tr,Mr){var Fr=xt.dragmode,Lr=fe._fullLayout.dragmode;Lr!==Fr&&(xt.dragmode=Lr),Le(),ke=fe._fullLayout._invScaleX,Te=fe._fullLayout._invScaleY,_r||(lt?br.shiftKey?Lr==="pan"?Lr="zoom":p(Lr)||(Lr="pan"):br.ctrlKey&&(Lr="pan"):Lr="pan"),T(Lr)?xt.minDrag=1:xt.minDrag=void 0,p(Lr)?(xt.xaxes=nt,xt.yaxes=Qe,m(br,Tr,Mr,xt,Lr)):(xt.clickFn=Bt,p(Fr)&&It(),_r||(Lr==="zoom"?(xt.moveFn=Wt,xt.doneFn=Vt,xt.minDrag=1,ni(br,Tr,Mr)):Lr==="pan"&&(xt.moveFn=Ea,xt.doneFn=$a))),fe._fullLayout._redrag=function(){var Jr=fe._dragdata;if(Jr&&Jr.element===dt){var oa=fe._fullLayout.dragmode;p(oa)||(Le(),mt([0,0,Ot,jt]),xt.moveFn(Jr.dx,Jr.dy))}}};function It(){xt.plotinfo.selection=!1,b(fe)}function Bt(br,Tr){var Mr=xt.gd;if(Mr._fullLayout._activeShapeIndex>=0){Mr._fullLayout._deactivateShape(Mr);return}var Fr=Mr._fullLayout.clickmode;if($(Mr),br===2&&!Me&&ya(),lt)Fr.indexOf("select")>-1&&d(Tr,Mr,nt,Qe,be.id,xt),Fr.indexOf("event")>-1&&n.click(Mr,Tr,be.id);else if(br===1&&Me){var Lr=at?ce:ge,Jr=at==="s"||it==="w"?0:1,oa=Lr._name+".range["+Jr+"]",ca=I(Lr,Jr),kt="left",ir="middle";if(Lr.fixedrange)return;at?(ir=at==="n"?"top":"bottom",Lr.side==="right"&&(kt="right")):it==="e"&&(kt="right"),Mr._context.showAxisRangeEntryBoxes&&g.select(dt).call(o.makeEditable,{gd:Mr,immediate:!0,background:Mr._fullLayout.paper_bgcolor,text:String(ca),fill:Lr.tickfont?Lr.tickfont.color:"#444",horizontalAlign:kt,verticalAlign:ir}).on("edit",function(mr){var $r=Lr.d2r(mr);$r!==void 0&&t.call("_guiRelayout",Mr,oa,$r)})}}h.init(xt);var Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma,Ua;function ni(br,Tr,Mr){var Fr=dt.getBoundingClientRect();Gt=Tr-Fr.left,Kt=Mr-Fr.top,fe._fullLayout._calcInverseTransform(fe);var Lr=x.apply3DTransform(fe._fullLayout._invTransform)(Gt,Kt);Gt=Lr[0],Kt=Lr[1],sr={l:Gt,r:Gt,w:0,t:Kt,b:Kt,h:0},sa=fe._hmpixcount?fe._hmlumcount/fe._hmpixcount:M(fe._fullLayout.plot_bgcolor).getLuminance(),Aa="M0,0H"+Ot+"V"+jt+"H0V0",La=!1,ka="xy",Ua=!1,Ga=ue(et,sa,Ct,St,Aa),Ma=se(et,Ct,St)}function Wt(br,Tr){if(fe._transitioningWithDuration)return!1;var Mr=Math.max(0,Math.min(Ot,ke*br+Gt)),Fr=Math.max(0,Math.min(jt,Te*Tr+Kt)),Lr=Math.abs(Mr-Gt),Jr=Math.abs(Fr-Kt);sr.l=Math.min(Gt,Mr),sr.r=Math.max(Gt,Mr),sr.t=Math.min(Kt,Fr),sr.b=Math.max(Kt,Fr);function oa(){ka="",sr.r=sr.l,sr.t=sr.b,Ma.attr("d","M0,0Z")}if(ur.isSubplotConstrained)Lr>P||Jr>P?(ka="xy",Lr/Ot>Jr/jt?(Jr=Lr*jt/Ot,Kt>Fr?sr.t=Kt-Jr:sr.b=Kt+Jr):(Lr=Jr*Ot/jt,Gt>Mr?sr.l=Gt-Lr:sr.r=Gt+Lr),Ma.attr("d",ne(sr))):oa();else if(ar.isSubplotConstrained)if(Lr>P||Jr>P){ka="xy";var ca=Math.min(sr.l/Ot,(jt-sr.b)/jt),kt=Math.max(sr.r/Ot,(jt-sr.t)/jt);sr.l=ca*Ot,sr.r=kt*Ot,sr.b=(1-ca)*jt,sr.t=(1-kt)*jt,Ma.attr("d",ne(sr))}else oa();else!vr||Jr<Math.min(Math.max(Lr*.6,f),P)?Lr<f||!Cr?oa():(sr.t=0,sr.b=jt,ka="x",Ma.attr("d",Z(sr,Kt))):!Cr||Lr<Math.min(Jr*.6,P)?(sr.l=0,sr.r=Ot,ka="y",Ma.attr("d",re(sr,Gt))):(ka="xy",Ma.attr("d",ne(sr)));sr.w=sr.r-sr.l,sr.h=sr.b-sr.t,ka&&(Ua=!0),fe._dragged=Ua,he(Ga,Ma,sr,Aa,La,sa),zt(),fe.emit("plotly_relayouting",Ve),La=!0}function zt(){Ve={},(ka==="xy"||ka==="x")&&(N(nt,sr.l/Ot,sr.r/Ot,Ve,ur.xaxes),Fa("x",Ve)),(ka==="xy"||ka==="y")&&(N(Qe,(jt-sr.b)/jt,(jt-sr.t)/jt,Ve,ur.yaxes),Fa("y",Ve))}function Vt(){zt(),$(fe),$a(),J(fe)}var Ut=[0,0,Ot,jt],xr=null,Zr=y.REDRAWDELAY,pa=be.mainplot?fe._fullLayout._plots[be.mainplot]:be;function Xr(br){if(!fe._context._scrollZoom.cartesian&&!fe._fullLayout._enablescrollzoom)return;if(It(),fe._transitioningWithDuration){br.preventDefault(),br.stopPropagation();return}Le(),clearTimeout(xr);var Tr=-br.deltaY;if(isFinite(Tr)||(Tr=br.wheelDelta/10),!isFinite(Tr)){x.log("Did not find wheel motion attributes: ",br);return}var Mr=Math.exp(-Math.min(Math.max(Tr,-20),20)/200),Fr=pa.draglayer.select(".nsewdrag").node().getBoundingClientRect(),Lr=(br.clientX-Fr.left)/Fr.width,Jr=(Fr.bottom-br.clientY)/Fr.height,oa;function ca(kt,ir,mr){if(kt.fixedrange)return;var $r=x.simpleMap(kt.range,kt.r2l),ma=$r[0]+($r[1]-$r[0])*ir;function Ba(Ca){return kt.l2r(ma+(Ca-ma)*mr)}kt.range=$r.map(Ba)}if(yt){for(it||(Lr=.5),oa=0;oa<nt.length;oa++)ca(nt[oa],Lr,Mr);Fa("x"),Ut[2]*=Mr,Ut[0]+=Ut[2]*Lr*(1/Mr-1)}if(Fe){for(at||(Jr=.5),oa=0;oa<Qe.length;oa++)ca(Qe[oa],Jr,Mr);Fa("y"),Ut[3]*=Mr,Ut[1]+=Ut[3]*(1-Jr)*(1/Mr-1)}mt(Ut),qa(),fe.emit("plotly_relayouting",Ve),xr=setTimeout(function(){fe._fullLayout&&(Ut=[0,0,Ot,jt],$a())},Zr),br.preventDefault()}at.length*it.length!==1&&ee(dt,Xr);function Ea(br,Tr){if(br=br*ke,Tr=Tr*Te,fe._transitioningWithDuration)return;if(fe._fullLayout._replotting=!0,Cr==="ew"||vr==="ns"){var Mr=Cr?-br:0,Fr=vr?-Tr:0;if(ar.isSubplotConstrained){if(Cr&&vr){var Lr=(br/Ot-Tr/jt)/2;br=Lr*Ot,Tr=-Lr*jt,Mr=-br,Fr=-Tr}vr?Mr=-Fr*Ot/jt:Fr=-Mr*jt/Ot}Cr&&(U(nt,br),Fa("x")),vr&&(U(Qe,Tr),Fa("y")),mt([Mr,Fr,Ot,jt]),qa(),fe.emit("plotly_relayouting",Ve);return}function Jr(Ba,Ca,da){for(var Sa=1-Ca,Ti,ai,an=0;an<Ba.length;an++){var sn=Ba[an];if(!sn.fixedrange){Ti=sn,ai=sn._rl[Sa]+(sn._rl[Ca]-sn._rl[Sa])/W(da/sn._length);var Mn=sn.l2r(ai);Mn!==!1&&Mn!==void 0&&(sn.range[Ca]=Mn)}}return Ti._length*(Ti._rl[Ca]-ai)/(Ti._rl[Ca]-Ti._rl[Sa])}var oa=Cr==="w"==(vr==="n")?1:-1;if(Cr&&vr&&(ur.isSubplotConstrained||ar.isSubplotConstrained)){var ca=(br/Ot+oa*Tr/jt)/2;br=ca*Ot,Tr=oa*ca*jt}var kt,ir;if(Cr==="w"?br=Jr(nt,0,br):Cr==="e"?br=Jr(nt,1,-br):Cr||(br=0),vr==="n"?Tr=Jr(Qe,1,Tr):vr==="s"?Tr=Jr(Qe,0,-Tr):vr||(Tr=0),kt=Cr==="w"?br:0,ir=vr==="n"?Tr:0,ur.isSubplotConstrained&&!ar.isSubplotConstrained||ar.isSubplotConstrained&&Cr&&vr&&oa>0){var mr;if(ar.isSubplotConstrained||!Cr&&vr.length===1){for(mr=0;mr<nt.length;mr++)nt[mr].range=nt[mr]._r.slice(),u(nt[mr],1-Tr/jt);br=Tr*Ot/jt,kt=br/2}if(ar.isSubplotConstrained||!vr&&Cr.length===1){for(mr=0;mr<Qe.length;mr++)Qe[mr].range=Qe[mr]._r.slice(),u(Qe[mr],1-br/Ot);Tr=br*jt/Ot,ir=Tr/2}}(!ar.isSubplotConstrained||!vr)&&Fa("x"),(!ar.isSubplotConstrained||!Cr)&&Fa("y");var $r=Ot-br,ma=jt-Tr;ar.isSubplotConstrained&&!(Cr&&vr)&&(Cr?(ir=kt?0:br*jt/Ot,ma=$r*jt/Ot):(kt=ir?0:Tr*Ot/jt,$r=ma*Ot/jt)),mt([kt,ir,$r,ma]),qa(),fe.emit("plotly_relayouting",Ve)}function Fa(br,Tr){for(var Mr=ar.isSubplotConstrained?{x:Qe,y:nt}[br]:ar[br+"axes"],Fr=ar.isSubplotConstrained?{x:nt,y:Qe}[br]:[],Lr=0;Lr<Mr.length;Lr++){var Jr=Mr[Lr],oa=Jr._id,ca=ar.xLinks[oa]||ar.yLinks[oa],kt=Fr[0]||ze[ca]||tt[ca];kt&&(Tr?(Tr[Jr._name+".range[0]"]=Tr[kt._name+".range[0]"],Tr[Jr._name+".range[1]"]=Tr[kt._name+".range[1]"]):Jr.range=kt.range.slice())}}function qa(){var br=[],Tr;function Mr(oa){for(Tr=0;Tr<oa.length;Tr++)oa[Tr].fixedrange||br.push(oa[Tr]._id)}function Fr(oa,ca){for(Tr=0;Tr<oa.length;Tr++){var kt=oa[Tr],ir=kt[ca];!kt.fixedrange&&ir.tickmode==="sync"&&br.push(ir._id)}}for(yt&&(Mr(nt),Mr(ur.xaxes),Mr(ar.xaxes),Fr(be.overlays,"xaxis")),Fe&&(Mr(Qe),Mr(ur.yaxes),Mr(ar.yaxes),Fr(be.overlays,"yaxis")),Ve={},Tr=0;Tr<br.length;Tr++){var Lr=br[Tr],Jr=E(fe,Lr);s.drawOne(fe,Jr,{skipTitle:!0}),Ve[Jr._name+".range[0]"]=Jr.range[0],Ve[Jr._name+".range[1]"]=Jr.range[1]}s.redrawComponents(fe,br)}function ya(){if(!fe._transitioningWithDuration){var br=fe._context.doubleClick,Tr=[];Cr&&(Tr=Tr.concat(nt)),vr&&(Tr=Tr.concat(Qe)),ar.xaxes&&(Tr=Tr.concat(ar.xaxes)),ar.yaxes&&(Tr=Tr.concat(ar.yaxes));var Mr={},Fr,Lr;if(br==="reset+autosize")for(br="autosize",Lr=0;Lr<Tr.length;Lr++){Fr=Tr[Lr];var Jr=Fr._rangeInitial0,oa=Fr._rangeInitial1,ca=Jr!==void 0||oa!==void 0;if(ca&&(Jr!==void 0&&Jr!==Fr.range[0]||oa!==void 0&&oa!==Fr.range[1])||!ca&&Fr.autorange!==!0){br="reset";break}}if(br==="autosize")for(Lr=0;Lr<Tr.length;Lr++)Fr=Tr[Lr],Fr.fixedrange||(Mr[Fr._name+".autorange"]=!0);else if(br==="reset"){for((Cr||ur.isSubplotConstrained)&&(Tr=Tr.concat(ur.xaxes)),vr&&!ur.isSubplotConstrained&&(Tr=Tr.concat(ur.yaxes)),ur.isSubplotConstrained&&(Cr?vr||(Tr=Tr.concat(Qe)):Tr=Tr.concat(nt)),Lr=0;Lr<Tr.length;Lr++)if(Fr=Tr[Lr],!Fr.fixedrange){var kt=Fr._name,ir=Fr._autorangeInitial;Fr._rangeInitial0===void 0&&Fr._rangeInitial1===void 0?Mr[kt+".autorange"]=!0:Fr._rangeInitial0===void 0?(Mr[kt+".autorange"]=ir,Mr[kt+".range"]=[null,Fr._rangeInitial1]):Fr._rangeInitial1===void 0?(Mr[kt+".range"]=[Fr._rangeInitial0,null],Mr[kt+".autorange"]=ir):Mr[kt+".range"]=[Fr._rangeInitial0,Fr._rangeInitial1]}}fe.emit("plotly_doubleclick",null),t.call("_guiRelayout",fe,Mr)}}function $a(){mt([0,0,Ot,jt]),x.syncOrAsync([S.previousPromises,function(){fe._fullLayout._replotting=!1,t.call("_guiRelayout",fe,Ve)}],fe)}function mt(br){var Tr=fe._fullLayout,Mr=Tr._plots,Fr=Tr._subplots.cartesian,Lr,Jr,oa,ca;if(Ne&&t.subplotsRegistry.splom.drag(fe),Ke){for(Lr=0;Lr<Fr.length;Lr++)if(Jr=Mr[Fr[Lr]],oa=Jr.xaxis,ca=Jr.yaxis,Jr._scene){oa.limitRange&&oa.limitRange(),ca.limitRange&&ca.limitRange();var kt=x.simpleMap(oa.range,oa.r2l),ir=x.simpleMap(ca.range,ca.r2l);Jr._scene.update({range:[kt[0],ir[0],kt[1],ir[1]]})}}if((Ne||Ke)&&(_(fe),w(fe)),Ee){var mr=br[2]/ge._length,$r=br[3]/ce._length;for(Lr=0;Lr<Fr.length;Lr++){Jr=Mr[Fr[Lr]],oa=Jr.xaxis,ca=Jr.yaxis;var ma=(yt||ar.isSubplotConstrained)&&!oa.fixedrange&&ze[oa._id],Ba=(Fe||ar.isSubplotConstrained)&&!ca.fixedrange&&tt[ca._id],Ca,da,Sa,Ti;if(ma?(Ca=mr,Sa=it||ar.isSubplotConstrained?br[0]:kr(oa,Ca)):ar.xaHash[oa._id]?(Ca=mr,Sa=br[0]*oa._length/ge._length):ar.yaHash[oa._id]?(Ca=$r,Sa=vr==="ns"?-br[1]*oa._length/ce._length:kr(oa,Ca,{n:"top",s:"bottom"}[vr])):(Ca=gt(oa,mr,$r),Sa=Er(oa,Ca)),Ca>1&&(oa.maxallowed!==void 0&&yt===(oa.range[0]<oa.range[1]?"e":"w")||oa.minallowed!==void 0&&yt===(oa.range[0]<oa.range[1]?"w":"e"))&&(Ca=1,Sa=0),Ba?(da=$r,Ti=at||ar.isSubplotConstrained?br[1]:kr(ca,da)):ar.yaHash[ca._id]?(da=$r,Ti=br[1]*ca._length/ce._length):ar.xaHash[ca._id]?(da=mr,Ti=Cr==="ew"?-br[0]*ca._length/ge._length:kr(ca,da,{e:"right",w:"left"}[Cr])):(da=gt(ca,mr,$r),Ti=Er(ca,da)),da>1&&(ca.maxallowed!==void 0&&Fe===(ca.range[0]<ca.range[1]?"n":"s")||ca.minallowed!==void 0&&Fe===(ca.range[0]<ca.range[1]?"s":"n"))&&(da=1,Ti=0),!(!Ca&&!da)){Ca||(Ca=1),da||(da=1);var ai=oa._offset-Sa/Ca,an=ca._offset-Ti/da;Jr.clipRect.call(i.setTranslate,Sa,Ti).call(i.setScale,Ca,da),Jr.plot.call(i.setTranslate,ai,an).call(i.setScale,1/Ca,1/da),(Ca!==Jr.xScaleFactor||da!==Jr.yScaleFactor)&&(i.setPointGroupScale(Jr.zoomScalePts,Ca,da),i.setTextPointsScale(Jr.zoomScaleTxt,Ca,da)),i.hideOutsideRangePoints(Jr.clipOnAxisFalseTraces,Jr),Jr.xScaleFactor=Ca,Jr.yScaleFactor=da}}}}function gt(br,Tr,Mr){return br.fixedrange?0:yt&&ur.xaHash[br._id]?Tr:Fe&&(ur.isSubplotConstrained?ur.xaHash:ur.yaHash)[br._id]?Mr:0}function Er(br,Tr){return Tr?(br.range=br._r.slice(),u(br,Tr),kr(br,Tr)):0}function kr(br,Tr,Mr){return br._length*(1-Tr)*l[Mr||br.constraintoward||"middle"]}return dt}function F(fe,be,Ae,Be){var Ie=x.ensureSingle(fe.draglayer,be,Ae,function(Ze){Ze.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",fe.id)});return Ie.call(c,Be),Ie.node()}function B(fe,be,Ae,Be,Ie,Ze,at){var it=F(fe,"rect",be,Ae);return g.select(it).call(i.setRect,Be,Ie,Ze,at),it}function O(fe,be){for(var Ae=0;Ae<fe.length;Ae++)if(!fe[Ae].fixedrange)return be;return""}function I(fe,be){var Ae=fe.range[be],Be=Math.abs(Ae-fe.range[1-be]),Ie;return fe.type==="date"?Ae:fe.type==="log"?(Ie=Math.ceil(Math.max(0,-Math.log(Be)/Math.LN10))+3,A("."+Ie+"g")(Math.pow(10,Ae))):(Ie=Math.floor(Math.log(Math.abs(Ae))/Math.LN10)-Math.floor(Math.log(Be)/Math.LN10)+4,A("."+String(Ie)+"g")(Ae))}function N(fe,be,Ae,Be,Ie){for(var Ze=0;Ze<fe.length;Ze++){var at=fe[Ze];if(!at.fixedrange)if(at.rangebreaks){var it=at._id.charAt(0)==="y",et=it?1-be:be,lt=it?1-Ae:Ae;Be[at._name+".range[0]"]=at.l2r(at.p2l(et*at._length)),Be[at._name+".range[1]"]=at.l2r(at.p2l(lt*at._length))}else{var Me=at._rl[0],ge=at._rl[1]-Me;Be[at._name+".range[0]"]=at.l2r(Me+ge*be),Be[at._name+".range[1]"]=at.l2r(Me+ge*Ae)}}if(Ie&&Ie.length){var ce=(be+(1-Ae))/2;N(Ie,ce,1-ce,Be,[])}}function U(fe,be){for(var Ae=0;Ae<fe.length;Ae++){var Be=fe[Ae];if(!Be.fixedrange){if(Be.rangebreaks){var Ie=0,Ze=Be._length,at=Be.p2l(Ie+be)-Be.p2l(Ie),it=Be.p2l(Ze+be)-Be.p2l(Ze),et=(at+it)/2;Be.range=[Be.l2r(Be._rl[0]-et),Be.l2r(Be._rl[1]-et)]}else Be.range=[Be.l2r(Be._rl[0]-be/Be._m),Be.l2r(Be._rl[1]-be/Be._m)];Be.limitRange&&Be.limitRange()}}}function W(fe){return 1-(fe>=0?Math.min(fe,.9):1/(1/Math.max(fe,-.3)+3.222))}function Q(fe,be,Ae){return fe?fe==="nsew"?Ae?"":be==="pan"?"move":"crosshair":fe.toLowerCase()+"-resize":"pointer"}function ue(fe,be,Ae,Be,Ie){return fe.append("path").attr("class","zoombox").style({fill:be>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",r(Ae,Be)).attr("d",Ie+"Z")}function se(fe,be,Ae){return fe.append("path").attr("class","zoombox-corners").style({fill:a.background,stroke:a.defaultLine,"stroke-width":1,opacity:0}).attr("transform",r(be,Ae)).attr("d","M0,0Z")}function he(fe,be,Ae,Be,Ie,Ze){fe.attr("d",Be+"M"+Ae.l+","+Ae.t+"v"+Ae.h+"h"+Ae.w+"v-"+Ae.h+"h-"+Ae.w+"Z"),G(fe,be,Ie,Ze)}function G(fe,be,Ae,Be){Ae||(fe.transition().style("fill",Be>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),be.transition().style("opacity",1).duration(200))}function $(fe){g.select(fe).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function J(fe){L&&fe.data&&fe._context.showTips&&(x.notifier(x._(fe,"Double-click to zoom back out"),"long"),L=!1)}function Z(fe,be){return"M"+(fe.l-.5)+","+(be-P-.5)+"h-3v"+(2*P+1)+"h3ZM"+(fe.r+.5)+","+(be-P-.5)+"h3v"+(2*P+1)+"h-3Z"}function re(fe,be){return"M"+(be-P-.5)+","+(fe.t-.5)+"v-3h"+(2*P+1)+"v3ZM"+(be-P-.5)+","+(fe.b+.5)+"v3h"+(2*P+1)+"v-3Z"}function ne(fe){var be=Math.floor(Math.min(fe.b-fe.t,fe.r-fe.l,P)/2);return"M"+(fe.l-3.5)+","+(fe.t-.5+be)+"h3v"+-be+"h"+be+"v-3h-"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.t-.5+be)+"h-3v"+-be+"h"+-be+"v-3h"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.b+.5-be)+"h-3v"+be+"h"+-be+"v3h"+(be+3)+"ZM"+(fe.l-3.5)+","+(fe.b+.5-be)+"h3v"+be+"h"+be+"v3h-"+(be+3)+"Z"}function j(fe,be,Ae,Be,Ie){for(var Ze=!1,at={},it={},et,lt,Me,ge,ce=(Ie||{}).xaHash,ze=(Ie||{}).yaHash,tt=0;tt<be.length;tt++){var nt=be[tt];for(et in Ae)if(nt[et]){for(Me in nt)!(Ie&&(ce[Me]||ze[Me]))&&!(Me.charAt(0)==="x"?Ae:Be)[Me]&&(at[Me]=et);for(lt in Be)!(Ie&&(ce[lt]||ze[lt]))&&nt[lt]&&(Ze=!0)}for(lt in Be)if(nt[lt])for(ge in nt)!(Ie&&(ce[ge]||ze[ge]))&&!(ge.charAt(0)==="x"?Ae:Be)[ge]&&(it[ge]=lt)}Ze&&(x.extendFlat(at,it),it={});var Qe={},Ct=[];for(Me in at){var St=E(fe,Me);Ct.push(St),Qe[St._id]=St}var Ot={},jt=[];for(ge in it){var ur=E(fe,ge);jt.push(ur),Ot[ur._id]=ur}return{xaHash:Qe,yaHash:Ot,xaxes:Ct,yaxes:jt,xLinks:at,yLinks:it,isSubplotConstrained:Ze}}function ee(fe,be){if(!e)fe.onwheel!==void 0?fe.onwheel=be:fe.onmousewheel!==void 0?fe.onmousewheel=be:fe.isAddedWheelEvent||(fe.isAddedWheelEvent=!0,fe.addEventListener("wheel",be,{passive:!1}));else{var Ae=fe.onwheel!==void 0?"wheel":"mousewheel";fe._onwheel&&fe.removeEventListener(Ae,fe._onwheel),fe._onwheel=be,fe.addEventListener(Ae,be,{passive:!1})}}function ie(fe){var be=[];for(var Ae in fe)be.push(fe[Ae]);return be}H.exports={makeDragBox:z,makeDragger:F,makeRectDragger:B,makeZoombox:ue,makeCorners:se,updateZoombox:he,xyCorners:ne,transitionZoombox:G,removeZoombox:$,showDoubleClickNotifier:J,attachWheelEventHandler:ee}}}),LS=Ye({"src/plots/cartesian/graph_interact.js"(X){"use strict";var H=_n(),g=Lc(),x=bp(),A=Kd(),M=CS().makeDragBox,e=wh().DRAGGERSIZE;X.initInteractions=function(r){var o=r._fullLayout;if(r._context.staticPlot){H.select(r).selectAll(".drag").remove();return}if(!(!o._has("cartesian")&&!o._has("splom"))){var a=Object.keys(o._plots||{}).sort(function(n,s){if((o._plots[n].mainplot&&!0)===(o._plots[s].mainplot&&!0)){var c=n.split("y"),h=s.split("y");return c[0]===h[0]?Number(c[1]||1)-Number(h[1]||1):Number(c[0]||1)-Number(h[0]||1)}return o._plots[n].mainplot?1:-1});a.forEach(function(n){var s=o._plots[n],c=s.xaxis,h=s.yaxis;if(!s.mainplot){var v=M(r,s,c._offset,h._offset,c._length,h._length,"ns","ew");v.onmousemove=function(l){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===n&&r._fullLayout._plots[n]&&g.hover(r,l,n)},g.hover(r,l,n),r._fullLayout._lasthover=v,r._fullLayout._hoversubplot=n},v.onmouseout=function(l){r._dragging||(r._fullLayout._hoversubplot=null,x.unhover(r,l))},r._context.showAxisDragHandles&&(M(r,s,c._offset-e,h._offset-e,e,e,"n","w"),M(r,s,c._offset+c._length,h._offset-e,e,e,"n","e"),M(r,s,c._offset-e,h._offset+h._length,e,e,"s","w"),M(r,s,c._offset+c._length,h._offset+h._length,e,e,"s","e"))}if(r._context.showAxisDragHandles){if(n===c._mainSubplot){var p=c._mainLinePosition;c.side==="top"&&(p-=e),M(r,s,c._offset+c._length*.1,p,c._length*.8,e,"","ew"),M(r,s,c._offset,p,c._length*.1,e,"","w"),M(r,s,c._offset+c._length*.9,p,c._length*.1,e,"","e")}if(n===h._mainSubplot){var T=h._mainLinePosition;h.side!=="right"&&(T-=e),M(r,s,T,h._offset+h._length*.1,e,h._length*.8,"ns",""),M(r,s,T,h._offset+h._length*.9,e,h._length*.1,"s",""),M(r,s,T,h._offset,e,h._length*.1,"n","")}}});var i=o._hoverlayer.node();i.onmousemove=function(n){n.target=r._fullLayout._lasthover,g.hover(r,n,o._hoversubplot)},i.onclick=function(n){n.target=r._fullLayout._lasthover,g.click(r,n)},i.onmousedown=function(n){r._fullLayout._lasthover.onmousedown(n)},X.updateFx(r)}},X.updateFx=function(t){var r=t._fullLayout,o=r.dragmode==="pan"?"move":"crosshair";A(r._draggers,o)}}}),RO=Ye({"src/plot_api/container_array_match.js"(X,H){"use strict";var g=Hn();H.exports=function(A){for(var M=g.layoutArrayContainers,e=g.layoutArrayRegexes,t=A.split("[")[0],r,o,a=0;a<e.length;a++)if(o=A.match(e[a]),o&&o.index===0){r=o[0];break}if(r||(r=M[M.indexOf(t)]),!r)return!1;var i=A.substr(r.length);return i?(o=i.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/),o?{array:r,index:Number(o[1]),property:o[3]||""}:!1):{array:r,index:"",property:""}}}}),DO=Ye({"src/plot_api/manage_arrays.js"(X){"use strict";var H=Zv(),g=f2(),x=Ym(),A=v2().sorterAsc,M=Hn();X.containerArrayMatch=RO();var e=X.isAddVal=function(o){return o==="add"||H(o)},t=X.isRemoveVal=function(o){return o===null||o==="remove"};X.applyContainerArrayChanges=function(o,a,i,n,s){var c=a.astr,h=M.getComponentMethod(c,"supplyLayoutDefaults"),v=M.getComponentMethod(c,"draw"),p=M.getComponentMethod(c,"drawOne"),T=n.replot||n.recalc||h===g||v===g,l=o.layout,_=o._fullLayout;if(i[""]){Object.keys(i).length>1&&x.warn("Full array edits are incompatible with other edits",c);var w=i[""][""];if(t(w))a.set(null);else if(Array.isArray(w))a.set(w);else return x.warn("Unrecognized full array edit value",c,w),!0;return T?!1:(h(l,_),v(o),!0)}var S=Object.keys(i).map(Number).sort(A),E=a.get(),m=E||[],b=s(_,c).get(),d=[],u=-1,y=m.length,f,P,L,z,F,B,O,I;for(f=0;f<S.length;f++){if(L=S[f],z=i[L],F=Object.keys(z),B=z[""],O=e(B),L<0||L>m.length-(O?0:1)){x.warn("index out of range",c,L);continue}if(B!==void 0)F.length>1&&x.warn("Insertion & removal are incompatible with edits to the same index.",c,L),t(B)?d.push(L):O?(B==="add"&&(B={}),m.splice(L,0,B),b&&b.splice(L,0,{})):x.warn("Unrecognized full object edit value",c,L,B),u===-1&&(u=L);else for(P=0;P<F.length;P++)I=c+"["+L+"].",s(m[L],F[P],I).set(z[F[P]])}for(f=d.length-1;f>=0;f--)m.splice(d[f],1),b&&b.splice(d[f],1);if(m.length?E||a.set(m):a.set(null),T)return!1;if(h(l,_),p!==g){var N;if(u===-1)N=S;else{for(y=Math.max(m.length,y),N=[],f=0;f<S.length&&(L=S[f],!(L>=u));f++)N.push(L);for(f=u;f<y;f++)N.push(f)}for(f=0;f<N.length;f++)p(o,N[f])}else v(o);return!0}}}),zO=Ye({"src/plot_api/helpers.js"(X){"use strict";var H=jo(),g=$A(),x=Hn(),A=ta(),M=Gu(),e=Xc(),t=Fn(),r=e.cleanId,o=e.getFromTrace,a=x.traceIs;X.clearPromiseQueue=function(l){Array.isArray(l._promises)&&l._promises.length>0&&A.log("Clearing previous rejected promises from queue."),l._promises=[]},X.cleanLayout=function(l){var _,w;l||(l={}),l.xaxis1&&(l.xaxis||(l.xaxis=l.xaxis1),delete l.xaxis1),l.yaxis1&&(l.yaxis||(l.yaxis=l.yaxis1),delete l.yaxis1),l.scene1&&(l.scene||(l.scene=l.scene1),delete l.scene1);var S=(M.subplotsRegistry.cartesian||{}).attrRegex,E=(M.subplotsRegistry.polar||{}).attrRegex,m=(M.subplotsRegistry.ternary||{}).attrRegex,b=(M.subplotsRegistry.gl3d||{}).attrRegex,d=Object.keys(l);for(_=0;_<d.length;_++){var u=d[_];if(S&&S.test(u)){var y=l[u];y.anchor&&y.anchor!=="free"&&(y.anchor=r(y.anchor)),y.overlaying&&(y.overlaying=r(y.overlaying)),y.type||(y.isdate?y.type="date":y.islog?y.type="log":y.isdate===!1&&y.islog===!1&&(y.type="linear")),(y.autorange==="withzero"||y.autorange==="tozero")&&(y.autorange=!0,y.rangemode="tozero"),y.insiderange&&delete y.range,delete y.islog,delete y.isdate,delete y.categories,h(y,"domain")&&delete y.domain}}var f=Array.isArray(l.annotations)?l.annotations.length:0;for(_=0;_<f;_++){var P=l.annotations[_];A.isPlainObject(P)&&(i(P,"xref"),i(P,"yref"))}var L=Array.isArray(l.shapes)?l.shapes.length:0;for(_=0;_<L;_++){var z=l.shapes[_];A.isPlainObject(z)&&(i(z,"xref"),i(z,"yref"))}var F=Array.isArray(l.images)?l.images.length:0;for(_=0;_<F;_++){var B=l.images[_];A.isPlainObject(B)&&(i(B,"xref"),i(B,"yref"))}var O=l.legend;return O&&(O.x>3?(O.x=1.02,O.xanchor="left"):O.x<-2&&(O.x=-.02,O.xanchor="right"),O.y>3?(O.y=1.02,O.yanchor="bottom"):O.y<-2&&(O.y=-.02,O.yanchor="top")),l.dragmode==="rotate"&&(l.dragmode="orbit"),t.clean(l),l.template&&l.template.layout&&X.cleanLayout(l.template.layout),l};function i(l,_){var w=l[_],S=_.charAt(0);w&&w!=="paper"&&(l[_]=r(w,S,!0))}X.cleanData=function(l){for(var _=0;_<l.length;_++){var w=l[_],S;if(w.type==="histogramy"&&"xbins"in w&&!("ybins"in w)&&(w.ybins=w.xbins,delete w.xbins),w.type==="histogramy"&&X.swapXYData(w),(w.type==="histogramx"||w.type==="histogramy")&&(w.type="histogram"),"scl"in w&&!("colorscale"in w)&&(w.colorscale=w.scl,delete w.scl),"reversescl"in w&&!("reversescale"in w)&&(w.reversescale=w.reversescl,delete w.reversescl),w.xaxis&&(w.xaxis=r(w.xaxis,"x")),w.yaxis&&(w.yaxis=r(w.yaxis,"y")),a(w,"gl3d")&&w.scene&&(w.scene=M.subplotsRegistry.gl3d.cleanId(w.scene)),!a(w,"pie-like")&&!a(w,"bar-like"))if(Array.isArray(w.textposition))for(S=0;S<w.textposition.length;S++)w.textposition[S]=c(w.textposition[S]);else w.textposition&&(w.textposition=c(w.textposition));var E=x.getModule(w);if(E&&E.colorbar){var m=E.colorbar.container,b=m?w[m]:w;b&&b.colorscale&&(b.colorscale==="YIGnBu"&&(b.colorscale="YlGnBu"),b.colorscale==="YIOrRd"&&(b.colorscale="YlOrRd"))}if(w.type==="surface"&&A.isPlainObject(w.contours)){var d=["x","y","z"];for(S=0;S<d.length;S++){var u=w.contours[d[S]];A.isPlainObject(u)&&(u.highlightColor&&(u.highlightcolor=u.highlightColor,delete u.highlightColor),u.highlightWidth&&(u.highlightwidth=u.highlightWidth,delete u.highlightWidth))}}if(w.type==="candlestick"||w.type==="ohlc"){var y=(w.increasing||{}).showlegend!==!1,f=(w.decreasing||{}).showlegend!==!1,P=n(w.increasing),L=n(w.decreasing);if(P!==!1&&L!==!1){var z=s(P,L,y,f);z&&(w.name=z)}else(P||L)&&!w.name&&(w.name=P||L)}h(w,"line")&&delete w.line,"marker"in w&&(h(w.marker,"line")&&delete w.marker.line,h(w,"marker")&&delete w.marker),t.clean(w),w.autobinx&&(delete w.autobinx,delete w.xbins),w.autobiny&&(delete w.autobiny,delete w.ybins)}};function n(l){if(!A.isPlainObject(l))return!1;var _=l.name;return delete l.name,delete l.showlegend,(typeof _=="string"||typeof _=="number")&&String(_)}function s(l,_,w,S){if(w&&!S)return l;if(S&&!w||!l.trim())return _;if(!_.trim())return l;var E=Math.min(l.length,_.length),m;for(m=0;m<E&&l.charAt(m)===_.charAt(m);m++);var b=l.substr(0,m);return b.trim()}function c(l){var _="middle",w="center";return typeof l=="string"&&(l.indexOf("top")!==-1?_="top":l.indexOf("bottom")!==-1&&(_="bottom"),l.indexOf("left")!==-1?w="left":l.indexOf("right")!==-1&&(w="right")),_+" "+w}function h(l,_){return _ in l&&typeof l[_]=="object"&&Object.keys(l[_]).length===0}X.swapXYData=function(l){var _;if(A.swapAttrs(l,["?","?0","d?","?bins","nbins?","autobin?","?src","error_?"]),Array.isArray(l.z)&&Array.isArray(l.z[0])&&(l.transpose?delete l.transpose:l.transpose=!0),l.error_x&&l.error_y){var w=l.error_y,S="copy_ystyle"in w?w.copy_ystyle:!(w.color||w.thickness||w.width);A.swapAttrs(l,["error_?.copy_ystyle"]),S&&A.swapAttrs(l,["error_?.color","error_?.thickness","error_?.width"])}if(typeof l.hoverinfo=="string"){var E=l.hoverinfo.split("+");for(_=0;_<E.length;_++)E[_]==="x"?E[_]="y":E[_]==="y"&&(E[_]="x");l.hoverinfo=E.join("+")}},X.coerceTraceIndices=function(l,_){if(H(_))return[_];if(!Array.isArray(_)||!_.length)return l.data.map(function(E,m){return m});if(Array.isArray(_)){for(var w=[],S=0;S<_.length;S++)A.isIndex(_[S],l.data.length)?w.push(_[S]):A.warn("trace index (",_[S],") is not a number or is out of bounds");return w}return _},X.manageArrayContainers=function(l,_,w){var S=l.obj,E=l.parts,m=E.length,b=E[m-1],d=H(b);if(d&&_===null){var u=E.slice(0,m-1).join("."),y=A.nestedProperty(S,u).get();y.splice(b,1)}else d&&l.get()===void 0&&l.get()===void 0&&(w[l.astr]=null),l.set(_)};var v=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function p(l){var _=l.search(v);if(_>0)return l.substr(0,_)}X.hasParent=function(l,_){for(var w=p(_);w;){if(w in l)return!0;w=p(w)}return!1};var T=["x","y","z"];X.clearAxisTypes=function(l,_,w){for(var S=0;S<_.length;S++)for(var E=l._fullData[S],m=0;m<3;m++){var b=o(l,E,T[m]);if(b&&b.type!=="log"){var d=b._name,u=b._id.substr(1);if(u.substr(0,5)==="scene"){if(w[u]!==void 0)continue;d=u+"."+d}var y=d+".type";w[d]===void 0&&w[y]===void 0&&A.nestedProperty(l.layout,y).set(null)}}}}}),E2=Ye({"src/plot_api/plot_api.js"(X){"use strict";var H=_n(),g=jo(),x=aS(),A=ta(),M=A.nestedProperty,e=$y(),t=QF(),r=Hn(),o=Qy(),a=Gu(),i=Co(),n=fS(),s=Vh(),c=Bo(),h=Fn(),v=LS().initInteractions,p=vd(),T=ff().clearOutline,l=Gg().dfltConfig,_=DO(),w=zO(),S=k_(),E=Ou(),m=wh().AX_NAME_PATTERN,b=0,d=5;function u(Ee,Ve,ke,Te){var Le;if(Ee=A.getGraphDiv(Ee),e.init(Ee),A.isPlainObject(Ve)){var rt=Ve;Ve=rt.data,ke=rt.layout,Te=rt.config,Le=rt.frames}var dt=e.triggerHandler(Ee,"plotly_beforeplot",[Ve,ke,Te]);if(dt===!1)return Promise.reject();!Ve&&!ke&&!A.isPlotDiv(Ee)&&A.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",Ee);function xt(){if(Le)return X.addFrames(Ee,Le)}z(Ee,Te),ke||(ke={}),H.select(Ee).classed("js-plotly-plot",!0),c.makeTester(),Array.isArray(Ee._promises)||(Ee._promises=[]);var It=(Ee.data||[]).length===0&&Array.isArray(Ve);Array.isArray(Ve)&&(w.cleanData(Ve),It?Ee.data=Ve:Ee.data.push.apply(Ee.data,Ve),Ee.empty=!1),(!Ee.layout||It)&&(Ee.layout=w.cleanLayout(ke)),a.supplyDefaults(Ee);var Bt=Ee._fullLayout,Gt=Bt._has("cartesian");Bt._replotting=!0,(It||Bt._shouldCreateBgLayer)&&(Ne(Ee),Bt._shouldCreateBgLayer&&delete Bt._shouldCreateBgLayer),c.initGradients(Ee),c.initPatterns(Ee),It&&i.saveShowSpikeInitial(Ee);var Kt=!Ee.calcdata||Ee.calcdata.length!==(Ee._fullData||[]).length;Kt&&a.doCalcdata(Ee);for(var sr=0;sr<Ee.calcdata.length;sr++)Ee.calcdata[sr][0].trace=Ee._fullData[sr];Ee._context.responsive?Ee._responsiveChartHandler||(Ee._responsiveChartHandler=function(){A.isHidden(Ee)||a.resize(Ee)},window.addEventListener("resize",Ee._responsiveChartHandler)):A.clearResponsive(Ee);var sa=A.extendFlat({},Bt._size),Aa=0;function La(){for(var Vt=Bt._basePlotModules,Ut=0;Ut<Vt.length;Ut++)Vt[Ut].drawFramework&&Vt[Ut].drawFramework(Ee);!Bt._glcanvas&&Bt._has("gl")&&(Bt._glcanvas=Bt._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],function(Xr){return Xr.key}),Bt._glcanvas.enter().append("canvas").attr("class",function(Xr){return"gl-canvas gl-canvas-"+Xr.key.replace("Layer","")}).style({position:"absolute",top:0,left:0,overflow:"visible","pointer-events":"none"}));var xr=Ee._context.plotGlPixelRatio;if(Bt._glcanvas){Bt._glcanvas.attr("width",Bt.width*xr).attr("height",Bt.height*xr).style("width",Bt.width+"px").style("height",Bt.height+"px");var Zr=Bt._glcanvas.data()[0].regl;if(Zr&&(Math.floor(Bt.width*xr)!==Zr._gl.drawingBufferWidth||Math.floor(Bt.height*xr)!==Zr._gl.drawingBufferHeight)){var pa="WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.";if(Aa)A.error(pa);else return A.log(pa+" Clearing graph and plotting again."),a.cleanPlot([],{},Ee._fullData,Bt),a.supplyDefaults(Ee),Bt=Ee._fullLayout,a.doCalcdata(Ee),Aa++,La()}}return Bt.modebar.orientation==="h"?Bt._modebardiv.style("height",null).style("width","100%"):Bt._modebardiv.style("width",null).style("height",Bt.height+"px"),a.previousPromises(Ee)}function ka(){if(a.clearAutoMarginIds(Ee),S.drawMarginPushers(Ee),i.allowAutoMargin(Ee),Ee._fullLayout.title.text&&Ee._fullLayout.title.automargin&&a.allowAutoMargin(Ee,"title.automargin"),Bt._has("pie"))for(var Vt=Ee._fullData,Ut=0;Ut<Vt.length;Ut++){var xr=Vt[Ut];xr.type==="pie"&&xr.automargin&&a.allowAutoMargin(Ee,"pie."+xr.uid+".automargin")}return a.doAutoMargin(Ee),a.previousPromises(Ee)}function Ga(){if(a.didMarginChange(sa,Bt._size))return A.syncOrAsync([ka,S.layoutStyles],Ee)}function Ma(){if(!Kt){Ua();return}return A.syncOrAsync([r.getComponentMethod("shapes","calcAutorange"),r.getComponentMethod("annotations","calcAutorange"),Ua],Ee)}function Ua(){Ee._transitioning||(S.doAutoRangeAndConstraints(Ee),It&&i.saveRangeInitial(Ee),r.getComponentMethod("rangeslider","calcAutorange")(Ee))}function ni(){return i.draw(Ee,It?"":"redraw")}var Wt=[a.previousPromises,xt,La,ka,Ga];Gt&&Wt.push(Ma),Wt.push(S.layoutStyles),Gt&&Wt.push(ni,function(Ut){var xr=Ut._fullLayout._insideTickLabelsUpdaterange;if(xr)return Ut._fullLayout._insideTickLabelsUpdaterange=void 0,be(Ut,xr).then(function(){i.saveRangeInitial(Ut,!0)})}),Wt.push(S.drawData,S.finalDraw,v,a.addLinks,a.rehover,a.redrag,a.reselect,a.doAutoMargin,a.previousPromises);var zt=A.syncOrAsync(Wt,Ee);return(!zt||!zt.then)&&(zt=Promise.resolve()),zt.then(function(){return y(Ee),Ee})}function y(Ee){var Ve=Ee._fullLayout;Ve._redrawFromAutoMarginCount?Ve._redrawFromAutoMarginCount--:Ee.emit("plotly_afterplot")}function f(Ee){return A.extendFlat(l,Ee)}function P(Ee,Ve){try{Ee._fullLayout._paper.style("background",Ve)}catch(ke){A.error(ke)}}function L(Ee,Ve){var ke=h.combine(Ve,"white");P(Ee,ke)}function z(Ee,Ve){if(!Ee._context){Ee._context=A.extendDeep({},l);var ke=H.select("base");Ee._context._baseUrl=ke.size()&&ke.attr("href")?window.location.href.split("#")[0]:""}var Te=Ee._context,Le,rt,dt;if(Ve){for(rt=Object.keys(Ve),Le=0;Le<rt.length;Le++)dt=rt[Le],!(dt==="editable"||dt==="edits")&&dt in Te&&(dt==="setBackground"&&Ve[dt]==="opaque"?Te[dt]=L:Te[dt]=Ve[dt]);var xt=Ve.editable;if(xt!==void 0)for(Te.editable=xt,rt=Object.keys(Te.edits),Le=0;Le<rt.length;Le++)Te.edits[rt[Le]]=xt;if(Ve.edits)for(rt=Object.keys(Ve.edits),Le=0;Le<rt.length;Le++)dt=rt[Le],dt in Te.edits&&(Te.edits[dt]=Ve.edits[dt]);Te._exportedPlot=Ve._exportedPlot}Te.staticPlot&&(Te.editable=!1,Te.edits={},Te.autosizable=!1,Te.scrollZoom=!1,Te.doubleClick=!1,Te.showTips=!1,Te.showLink=!1,Te.displayModeBar=!1),Te.displayModeBar==="hover"&&!x&&(Te.displayModeBar=!0),(Te.setBackground==="transparent"||typeof Te.setBackground!="function")&&(Te.setBackground=P),Te._hasZeroHeight=Te._hasZeroHeight||Ee.clientHeight===0,Te._hasZeroWidth=Te._hasZeroWidth||Ee.clientWidth===0;var It=Te.scrollZoom,Bt=Te._scrollZoom={};if(It===!0)Bt.cartesian=1,Bt.gl3d=1,Bt.geo=1,Bt.mapbox=1,Bt.map=1;else if(typeof It=="string"){var Gt=It.split("+");for(Le=0;Le<Gt.length;Le++)Bt[Gt[Le]]=1}else It!==!1&&(Bt.gl3d=1,Bt.geo=1,Bt.mapbox=1,Bt.map=1)}function F(Ee){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee);return w.cleanData(Ee.data),w.cleanLayout(Ee.layout),Ee.calcdata=void 0,X._doPlot(Ee).then(function(){return Ee.emit("plotly_redraw"),Ee})}function B(Ee,Ve,ke,Te){return Ee=A.getGraphDiv(Ee),a.cleanPlot([],{},Ee._fullData||[],Ee._fullLayout||{}),a.purge(Ee),X._doPlot(Ee,Ve,ke,Te)}function O(Ee,Ve){var ke=Ve+1,Te=[],Le,rt;for(Le=0;Le<Ee.length;Le++)rt=Ee[Le],rt<0?Te.push(ke+rt):Te.push(rt);return Te}function I(Ee,Ve,ke){var Te,Le;for(Te=0;Te<Ve.length;Te++){if(Le=Ve[Te],Le!==parseInt(Le,10))throw new Error("all values in "+ke+" must be integers");if(Le>=Ee.data.length||Le<-Ee.data.length)throw new Error(ke+" must be valid indices for gd.data.");if(Ve.indexOf(Le,Te+1)>-1||Le>=0&&Ve.indexOf(-Ee.data.length+Le)>-1||Le<0&&Ve.indexOf(Ee.data.length+Le)>-1)throw new Error("each index in "+ke+" must be unique.")}}function N(Ee,Ve,ke){if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"currentIndices"),typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&I(Ee,ke,"newIndices"),typeof ke<"u"&&Ve.length!==ke.length)throw new Error("current and new indices must be of equal length.")}function U(Ee,Ve,ke){var Te,Le;if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("traces must be defined.");for(Array.isArray(Ve)||(Ve=[Ve]),Te=0;Te<Ve.length;Te++)if(Le=Ve[Te],typeof Le!="object"||Array.isArray(Le)||Le===null)throw new Error("all values in traces array must be non-array objects");if(typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&ke.length!==Ve.length)throw new Error("if indices is specified, traces.length must equal indices.length")}function W(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te);if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array");if(!A.isPlainObject(Ve))throw new Error("update must be a key:value object");if(typeof ke>"u")throw new Error("indices must be an integer or array of integers");I(Ee,ke,"indices");for(var rt in Ve){if(!Array.isArray(Ve[rt])||Ve[rt].length!==ke.length)throw new Error("attribute "+rt+" must be an array of length equal to indices array length");if(Le&&(!(rt in Te)||!Array.isArray(Te[rt])||Te[rt].length!==Ve[rt].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}function Q(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te),rt=[],dt,xt,It,Bt,Gt;Array.isArray(ke)||(ke=[ke]),ke=O(ke,Ee.data.length-1);for(var Kt in Ve)for(var sr=0;sr<ke.length;sr++){if(dt=Ee.data[ke[sr]],It=M(dt,Kt),xt=It.get(),Bt=Ve[Kt][sr],!A.isArrayOrTypedArray(Bt))throw new Error("attribute: "+Kt+" index: "+sr+" must be an array");if(!A.isArrayOrTypedArray(xt))throw new Error("cannot extend missing or non-array attribute: "+Kt);if(xt.constructor!==Bt.constructor)throw new Error("cannot extend array with an array of a different type: "+Kt);Gt=Le?Te[Kt][sr]:Te,g(Gt)||(Gt=-1),rt.push({prop:It,target:xt,insert:Bt,maxp:Math.floor(Gt)})}return rt}function ue(Ee,Ve,ke,Te,Le){W(Ee,Ve,ke,Te);for(var rt=Q(Ee,Ve,ke,Te),dt={},xt={},It=0;It<rt.length;It++){var Bt=rt[It].prop,Gt=rt[It].maxp,Kt=Le(rt[It].target,rt[It].insert,Gt);Bt.set(Kt[0]),Array.isArray(dt[Bt.astr])||(dt[Bt.astr]=[]),dt[Bt.astr].push(Kt[1]),Array.isArray(xt[Bt.astr])||(xt[Bt.astr]=[]),xt[Bt.astr].push(rt[It].target.length)}return{update:dt,maxPoints:xt}}function se(Ee,Ve){var ke=new Ee.constructor(Ee.length+Ve.length);return ke.set(Ee),ke.set(Ve,Ee.length),ke}function he(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee);function Le(It,Bt,Gt){var Kt,sr;if(A.isTypedArray(It))if(Gt<0){var sa=new It.constructor(0),Aa=se(It,Bt);Gt<0?(Kt=Aa,sr=sa):(Kt=sa,sr=Aa)}else if(Kt=new It.constructor(Gt),sr=new It.constructor(It.length+Bt.length-Gt),Gt===Bt.length)Kt.set(Bt),sr.set(It);else if(Gt<Bt.length){var La=Bt.length-Gt;Kt.set(Bt.subarray(La)),sr.set(It),sr.set(Bt.subarray(0,La),It.length)}else{var ka=Gt-Bt.length,Ga=It.length-ka;Kt.set(It.subarray(Ga)),Kt.set(Bt,ka),sr.set(It.subarray(0,Ga))}else Kt=It.concat(Bt),sr=Gt>=0&&Gt<Kt.length?Kt.splice(0,Kt.length-Gt):[];return[Kt,sr]}var rt=ue(Ee,Ve,ke,Te,Le),dt=X.redraw(Ee),xt=[Ee,rt.update,ke,rt.maxPoints];return t.add(Ee,X.prependTraces,xt,he,arguments),dt}function G(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee);function Le(It,Bt,Gt){var Kt,sr;if(A.isTypedArray(It))if(Gt<=0){var sa=new It.constructor(0),Aa=se(Bt,It);Gt<0?(Kt=Aa,sr=sa):(Kt=sa,sr=Aa)}else if(Kt=new It.constructor(Gt),sr=new It.constructor(It.length+Bt.length-Gt),Gt===Bt.length)Kt.set(Bt),sr.set(It);else if(Gt<Bt.length){var La=Bt.length-Gt;Kt.set(Bt.subarray(0,La)),sr.set(Bt.subarray(La)),sr.set(It,La)}else{var ka=Gt-Bt.length;Kt.set(Bt),Kt.set(It.subarray(0,ka),Bt.length),sr.set(It.subarray(ka))}else Kt=Bt.concat(It),sr=Gt>=0&&Gt<Kt.length?Kt.splice(Gt,Kt.length):[];return[Kt,sr]}var rt=ue(Ee,Ve,ke,Te,Le),dt=X.redraw(Ee),xt=[Ee,rt.update,ke,rt.maxPoints];return t.add(Ee,X.extendTraces,xt,G,arguments),dt}function $(Ee,Ve,ke){Ee=A.getGraphDiv(Ee);var Te=[],Le=X.deleteTraces,rt=$,dt=[Ee,Te],xt=[Ee,Ve],It,Bt;for(U(Ee,Ve,ke),Array.isArray(Ve)||(Ve=[Ve]),Ve=Ve.map(function(Gt){return A.extendFlat({},Gt)}),w.cleanData(Ve),It=0;It<Ve.length;It++)Ee.data.push(Ve[It]);for(It=0;It<Ve.length;It++)Te.push(-Ve.length+It);if(typeof ke>"u")return Bt=X.redraw(Ee),t.add(Ee,Le,dt,rt,xt),Bt;Array.isArray(ke)||(ke=[ke]);try{N(Ee,Te,ke)}catch(Gt){throw Ee.data.splice(Ee.data.length-Ve.length,Ve.length),Gt}return t.startSequence(Ee),t.add(Ee,Le,dt,rt,xt),Bt=X.moveTraces(Ee,Te,ke),t.stopSequence(Ee),Bt}function J(Ee,Ve){Ee=A.getGraphDiv(Ee);var ke=[],Te=X.addTraces,Le=J,rt=[Ee,ke,Ve],dt=[Ee,Ve],xt,It;if(typeof Ve>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"indices"),Ve=O(Ve,Ee.data.length-1),Ve.sort(A.sorterDes),xt=0;xt<Ve.length;xt+=1)It=Ee.data.splice(Ve[xt],1)[0],ke.push(It);var Bt=X.redraw(Ee);return t.add(Ee,Te,rt,Le,dt),Bt}function Z(Ee,Ve,ke){Ee=A.getGraphDiv(Ee);var Te=[],Le=[],rt=Z,dt=Z,xt=[Ee,ke,Ve],It=[Ee,Ve,ke],Bt;if(N(Ee,Ve,ke),Ve=Array.isArray(Ve)?Ve:[Ve],typeof ke>"u")for(ke=[],Bt=0;Bt<Ve.length;Bt++)ke.push(-Ve.length+Bt);for(ke=Array.isArray(ke)?ke:[ke],Ve=O(Ve,Ee.data.length-1),ke=O(ke,Ee.data.length-1),Bt=0;Bt<Ee.data.length;Bt++)Ve.indexOf(Bt)===-1&&Te.push(Ee.data[Bt]);for(Bt=0;Bt<Ve.length;Bt++)Le.push({newIndex:ke[Bt],trace:Ee.data[Ve[Bt]]});for(Le.sort(function(Kt,sr){return Kt.newIndex-sr.newIndex}),Bt=0;Bt<Le.length;Bt+=1)Te.splice(Le[Bt].newIndex,0,Le[Bt].trace);Ee.data=Te;var Gt=X.redraw(Ee);return t.add(Ee,rt,xt,dt,It),Gt}function re(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var Le={};if(typeof Ve=="string")Le[Ve]=ke;else if(A.isPlainObject(Ve))Le=A.extendFlat({},Ve),Te===void 0&&(Te=ke);else return A.warn("Restyle fail.",Ve,ke,Te),Promise.reject();Object.keys(Le).length&&(Ee.changed=!0);var rt=w.coerceTraceIndices(Ee,Te),dt=fe(Ee,Le,rt),xt=dt.flags;xt.calc&&(Ee.calcdata=void 0),xt.clearAxisTypes&&w.clearAxisTypes(Ee,rt,{});var It=[];xt.fullReplot?It.push(X._doPlot):(It.push(a.previousPromises),a.supplyDefaults(Ee),xt.markerSize&&(a.doCalcdata(Ee),Be(It)),xt.style&&It.push(S.doTraceStyle),xt.colorbars&&It.push(S.doColorBars),It.push(y)),It.push(a.rehover,a.redrag,a.reselect),t.add(Ee,re,[Ee,dt.undoit,dt.traces],re,[Ee,dt.redoit,dt.traces]);var Bt=A.syncOrAsync(It,Ee);return(!Bt||!Bt.then)&&(Bt=Promise.resolve()),Bt.then(function(){return Ee.emit("plotly_restyle",dt.eventData),Ee})}function ne(Ee){return Ee===void 0?null:Ee}function j(Ee,Ve){return Ve?function(ke,Te,Le){var rt=M(ke,Te),dt=rt.set;return rt.set=function(xt){var It=(Le||"")+Te;ee(It,rt.get(),xt,Ee),dt(xt)},rt}:M}function ee(Ee,Ve,ke,Te){if(Array.isArray(Ve)||Array.isArray(ke))for(var Le=Array.isArray(Ve)?Ve:[],rt=Array.isArray(ke)?ke:[],dt=Math.max(Le.length,rt.length),xt=0;xt<dt;xt++)ee(Ee+"["+xt+"]",Le[xt],rt[xt],Te);else if(A.isPlainObject(Ve)||A.isPlainObject(ke)){var It=A.isPlainObject(Ve)?Ve:{},Bt=A.isPlainObject(ke)?ke:{},Gt=A.extendFlat({},It,Bt);for(var Kt in Gt)ee(Ee+"."+Kt,It[Kt],Bt[Kt],Te)}else Te[Ee]===void 0&&(Te[Ee]=ne(Ve))}function ie(Ee,Ve,ke){for(var Te in ke){var Le=M(Ee,Te);ee(Te,Le.get(),ke[Te],Ve)}}function fe(Ee,Ve,ke){var Te=Ee._fullLayout,Le=Ee._fullData,rt=Ee.data,dt=Te._guiEditing,xt=j(Te._preGUI,dt),It=A.extendDeepAll({},Ve),Bt,Gt=E.traceFlags(),Kt={},sr={},sa;function Aa(){return ke.map(function(){})}function La(mr){var $r=i.id2name(mr);sa.indexOf($r)===-1&&sa.push($r)}function ka(mr){return"LAYOUT"+mr+".autorange"}function Ga(mr){return"LAYOUT"+mr+".range"}function Ma(mr){for(var $r=mr;$r<Le.length;$r++)if(Le[$r]._input===rt[mr])return Le[$r]}function Ua(mr,$r,ma){if(Array.isArray(mr)){mr.forEach(function(Sa){Ua(Sa,$r,ma)});return}if(!(mr in Ve||w.hasParent(Ve,mr))){var Ba;if(mr.substr(0,6)==="LAYOUT")Ba=xt(Ee.layout,mr.replace("LAYOUT",""));else{var Ca=ke[ma],da=Te._tracePreGUI[Ma(Ca)._fullInput.uid];Ba=j(da,dt)(rt[Ca],mr)}mr in sr||(sr[mr]=Aa()),sr[mr][ma]===void 0&&(sr[mr][ma]=ne(Ba.get())),$r!==void 0&&Ba.set($r)}}function ni(mr){return function($r){return Le[$r][mr]}}function Wt(mr){return function($r,ma){return $r===!1?Le[ke[ma]][mr]:null}}for(var zt in Ve){if(w.hasParent(Ve,zt))throw new Error("cannot set "+zt+" and a parent attribute simultaneously");var Vt=Ve[zt],Ut,xr,Zr,pa,Xr,Ea;if((zt==="autobinx"||zt==="autobiny")&&(zt=zt.charAt(zt.length-1)+"bins",Array.isArray(Vt)?Vt=Vt.map(Wt(zt)):Vt===!1?Vt=ke.map(ni(zt)):Vt=null),Kt[zt]=Vt,zt.substr(0,6)==="LAYOUT"){Zr=xt(Ee.layout,zt.replace("LAYOUT","")),sr[zt]=[ne(Zr.get())],Zr.set(Array.isArray(Vt)?Vt[0]:Vt),Gt.calc=!0;continue}for(sr[zt]=Aa(),Bt=0;Bt<ke.length;Bt++){Ut=rt[ke[Bt]],xr=Ma(ke[Bt]);var Fa=Te._tracePreGUI[xr._fullInput.uid];if(Zr=j(Fa,dt)(Ut,zt),pa=Zr.get(),Xr=Array.isArray(Vt)?Vt[Bt%Vt.length]:Vt,Xr!==void 0){var qa=Zr.parts[Zr.parts.length-1],ya=zt.substr(0,zt.length-qa.length-1),$a=ya?ya+".":"",mt=ya?M(xr,ya).get():xr;if(Ea=o.getTraceValObject(xr,Zr.parts),Ea&&Ea.impliedEdits&&Xr!==null)for(var gt in Ea.impliedEdits)Ua(A.relativeAttr(zt,gt),Ea.impliedEdits[gt],Bt);else if((qa==="thicknessmode"||qa==="lenmode")&&pa!==Xr&&(Xr==="fraction"||Xr==="pixels")&&mt){var Er=Te._size,kr=mt.orient,br=kr==="top"||kr==="bottom";if(qa==="thicknessmode"){var Tr=br?Er.h:Er.w;Ua($a+"thickness",mt.thickness*(Xr==="fraction"?1/Tr:Tr),Bt)}else{var Mr=br?Er.w:Er.h;Ua($a+"len",mt.len*(Xr==="fraction"?1/Mr:Mr),Bt)}}else if(zt==="type"&&(Xr==="pie"!=(pa==="pie")||Xr==="funnelarea"!=(pa==="funnelarea"))){var Fr="x",Lr="y";(Xr==="bar"||pa==="bar")&&Ut.orientation==="h"&&(Fr="y",Lr="x"),A.swapAttrs(Ut,["?","?src"],"labels",Fr),A.swapAttrs(Ut,["d?","?0"],"label",Fr),A.swapAttrs(Ut,["?","?src"],"values",Lr),pa==="pie"||pa==="funnelarea"?(M(Ut,"marker.color").set(M(Ut,"marker.colors").get()),Te._pielayer.selectAll("g.trace").remove()):r.traceIs(Ut,"cartesian")&&M(Ut,"marker.colors").set(M(Ut,"marker.color").get())}sr[zt][Bt]=ne(pa);var Jr=["swapxy","swapxyaxes","orientation","orientationaxes"];if(Jr.indexOf(zt)!==-1){if(zt==="orientation"){Zr.set(Xr);var oa=Ut.x&&!Ut.y?"h":"v";if((Zr.get()||oa)===xr.orientation)continue}else zt==="orientationaxes"&&(Ut.orientation={v:"h",h:"v"}[xr.orientation]);w.swapXYData(Ut),Gt.calc=Gt.clearAxisTypes=!0}else a.dataArrayContainers.indexOf(Zr.parts[0])!==-1?(w.manageArrayContainers(Zr,Xr,sr),Gt.calc=!0):(Ea?Ea.arrayOk&&!r.traceIs(xr,"regl")&&(A.isArrayOrTypedArray(Xr)||A.isArrayOrTypedArray(pa))?Gt.calc=!0:E.update(Gt,Ea):Gt.calc=!0,Zr.set(Xr))}}if(["swapxyaxes","orientationaxes"].indexOf(zt)!==-1&&i.swap(Ee,ke),zt==="orientationaxes"){var ca=M(Ee.layout,"hovermode"),kt=ca.get();kt==="x"?ca.set("y"):kt==="y"?ca.set("x"):kt==="x unified"?ca.set("y unified"):kt==="y unified"&&ca.set("x unified")}if(["orientation","type"].indexOf(zt)!==-1){for(sa=[],Bt=0;Bt<ke.length;Bt++){var ir=rt[ke[Bt]];r.traceIs(ir,"cartesian")&&(La(ir.xaxis||"x"),La(ir.yaxis||"y"))}Ua(sa.map(ka),!0,0),Ua(sa.map(Ga),[0,1],0)}}return(Gt.calc||Gt.plot)&&(Gt.fullReplot=!0),{flags:Gt,undoit:sr,redoit:Kt,traces:ke,eventData:A.extendDeepNoArrays([],[It,ke])}}function be(Ee,Ve,ke){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var Te={};if(typeof Ve=="string")Te[Ve]=ke;else if(A.isPlainObject(Ve))Te=A.extendFlat({},Ve);else return A.warn("Relayout fail.",Ve,ke),Promise.reject();Object.keys(Te).length&&(Ee.changed=!0);var Le=it(Ee,Te),rt=Le.flags;rt.calc&&(Ee.calcdata=void 0);var dt=[a.previousPromises];rt.layoutReplot?dt.push(S.layoutReplot):Object.keys(Te).length&&(Ae(Ee,rt,Le)||a.supplyDefaults(Ee),rt.legend&&dt.push(S.doLegend),rt.layoutstyle&&dt.push(S.layoutStyles),rt.axrange&&Be(dt,Le.rangesAltered),rt.ticks&&dt.push(S.doTicksRelayout),rt.modebar&&dt.push(S.doModeBar),rt.camera&&dt.push(S.doCamera),rt.colorbars&&dt.push(S.doColorBars),dt.push(y)),dt.push(a.rehover,a.redrag,a.reselect),t.add(Ee,be,[Ee,Le.undoit],be,[Ee,Le.redoit]);var xt=A.syncOrAsync(dt,Ee);return(!xt||!xt.then)&&(xt=Promise.resolve(Ee)),xt.then(function(){return Ee.emit("plotly_relayout",Le.eventData),Ee})}function Ae(Ee,Ve,ke){var Te=Ee._fullLayout;if(!Ve.axrange)return!1;for(var Le in Ve)if(Le!=="axrange"&&Ve[Le])return!1;var rt,dt,xt=function(sa,Aa){return A.coerce(rt,dt,s,sa,Aa)},It={};for(var Bt in ke.rangesAltered){var Gt=i.id2name(Bt);if(rt=Ee.layout[Gt],dt=Te[Gt],n(rt,dt,xt,It),dt._matchGroup){for(var Kt in dt._matchGroup)if(Kt!==Bt){var sr=Te[i.id2name(Kt)];sr.autorange=dt.autorange,sr.range=dt.range.slice(),sr._input.range=dt.range.slice()}}}return!0}function Be(Ee,Ve){var ke=Ve?function(Te){var Le=[],rt=!0;for(var dt in Ve){var xt=i.getFromId(Te,dt);if(Le.push(dt),(xt.ticklabelposition||"").indexOf("inside")!==-1&&xt._anchorAxis&&Le.push(xt._anchorAxis._id),xt._matchGroup)for(var It in xt._matchGroup)Ve[It]||Le.push(It)}return i.draw(Te,Le,{skipTitle:rt})}:function(Te){return i.draw(Te,"redraw")};Ee.push(T,S.doAutoRangeAndConstraints,ke,S.drawData,S.finalDraw)}var Ie=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,Ze=/^[xyz]axis[0-9]*\.autorange$/,at=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function it(Ee,Ve){var ke=Ee.layout,Te=Ee._fullLayout,Le=Te._guiEditing,rt=j(Te._preGUI,Le),dt=Object.keys(Ve),xt=i.list(Ee),It=A.extendDeepAll({},Ve),Bt={},Gt,Kt,sr;for(dt=Object.keys(Ve),Kt=0;Kt<dt.length;Kt++)if(dt[Kt].indexOf("allaxes")===0){for(sr=0;sr<xt.length;sr++){var sa=xt[sr]._id.substr(1),Aa=sa.indexOf("scene")!==-1?sa+".":"",La=dt[Kt].replace("allaxes",Aa+xt[sr]._name);Ve[La]||(Ve[La]=Ve[dt[Kt]])}delete Ve[dt[Kt]]}var ka=E.layoutFlags(),Ga={},Ma={};function Ua(da,Sa){if(Array.isArray(da)){da.forEach(function(ai){Ua(ai,Sa)});return}if(!(da in Ve||w.hasParent(Ve,da))){var Ti=rt(ke,da);da in Ma||(Ma[da]=ne(Ti.get())),Sa!==void 0&&Ti.set(Sa)}}var ni={},Wt;function zt(da){var Sa=i.name2id(da.split(".")[0]);return ni[Sa]=1,Sa}for(var Vt in Ve){if(w.hasParent(Ve,Vt))throw new Error("cannot set "+Vt+" and a parent attribute simultaneously");for(var Ut=rt(ke,Vt),xr=Ve[Vt],Zr=Ut.parts.length,pa=Zr-1;pa>0&&typeof Ut.parts[pa]!="string";)pa--;var Xr=Ut.parts[pa],Ea=Ut.parts[pa-1]+"."+Xr,Fa=Ut.parts.slice(0,pa).join("."),qa=M(Ee.layout,Fa).get(),ya=M(Te,Fa).get(),$a=Ut.get();if(xr!==void 0){Ga[Vt]=xr,Ma[Vt]=Xr==="reverse"?xr:ne($a);var mt=o.getLayoutValObject(Te,Ut.parts);if(mt&&mt.impliedEdits&&xr!==null)for(var gt in mt.impliedEdits)Ua(A.relativeAttr(Vt,gt),mt.impliedEdits[gt]);if(["width","height"].indexOf(Vt)!==-1)if(xr){Ua("autosize",null);var Er=Vt==="height"?"width":"height";Ua(Er,Te[Er])}else Te[Vt]=Ee._initialAutoSize[Vt];else if(Vt==="autosize")Ua("width",xr?null:Te.width),Ua("height",xr?null:Te.height);else if(Ea.match(Ie))zt(Ea),M(Te,Fa+"._inputRange").set(null);else if(Ea.match(Ze)){zt(Ea),M(Te,Fa+"._inputRange").set(null);var kr=M(Te,Fa).get();kr._inputDomain&&(kr._input.domain=kr._inputDomain.slice())}else Ea.match(at)&&M(Te,Fa+"._inputDomain").set(null);if(Xr==="type"){Wt=qa;var br=ya.type==="linear"&&xr==="log",Tr=ya.type==="log"&&xr==="linear";if(br||Tr){if(!Wt||!Wt.range)Ua(Fa+".autorange",!0);else if(ya.autorange)br&&(Wt.range=Wt.range[1]>Wt.range[0]?[1,2]:[2,1]);else{var Mr=Wt.range[0],Fr=Wt.range[1];br?(Mr<=0&&Fr<=0&&Ua(Fa+".autorange",!0),Mr<=0?Mr=Fr/1e6:Fr<=0&&(Fr=Mr/1e6),Ua(Fa+".range[0]",Math.log(Mr)/Math.LN10),Ua(Fa+".range[1]",Math.log(Fr)/Math.LN10)):(Ua(Fa+".range[0]",Math.pow(10,Mr)),Ua(Fa+".range[1]",Math.pow(10,Fr)))}Array.isArray(Te._subplots.polar)&&Te._subplots.polar.length&&Te[Ut.parts[0]]&&Ut.parts[1]==="radialaxis"&&delete Te[Ut.parts[0]]._subplot.viewInitial["radialaxis.range"],r.getComponentMethod("annotations","convertCoords")(Ee,ya,xr,Ua),r.getComponentMethod("images","convertCoords")(Ee,ya,xr,Ua)}else Ua(Fa+".autorange",!0),Ua(Fa+".range",null);M(Te,Fa+"._inputRange").set(null)}else if(Xr.match(m)){var Lr=M(Te,Vt).get(),Jr=(xr||{}).type;(!Jr||Jr==="-")&&(Jr="linear"),r.getComponentMethod("annotations","convertCoords")(Ee,Lr,Jr,Ua),r.getComponentMethod("images","convertCoords")(Ee,Lr,Jr,Ua)}var oa=_.containerArrayMatch(Vt);if(oa){Gt=oa.array,Kt=oa.index;var ca=oa.property,kt=mt||{editType:"calc"};Kt!==""&&ca===""&&(_.isAddVal(xr)?Ma[Vt]=null:_.isRemoveVal(xr)?Ma[Vt]=(M(ke,Gt).get()||[])[Kt]:A.warn("unrecognized full object value",Ve)),E.update(ka,kt),Bt[Gt]||(Bt[Gt]={});var ir=Bt[Gt][Kt];ir||(ir=Bt[Gt][Kt]={}),ir[ca]=xr,delete Ve[Vt]}else Xr==="reverse"?(qa.range?qa.range.reverse():(Ua(Fa+".autorange",!0),qa.range=[1,0]),ya.autorange?ka.calc=!0:ka.plot=!0):(Vt==="dragmode"&&(xr===!1&&$a!==!1||xr!==!1&&$a===!1)||Te._has("scatter-like")&&Te._has("regl")&&Vt==="dragmode"&&(xr==="lasso"||xr==="select")&&!($a==="lasso"||$a==="select")?ka.plot=!0:mt?E.update(ka,mt):ka.calc=!0,Ut.set(xr))}}for(Gt in Bt){var mr=_.applyContainerArrayChanges(Ee,rt(ke,Gt),Bt[Gt],ka,rt);mr||(ka.plot=!0)}for(var $r in ni){Wt=i.getFromId(Ee,$r);var ma=Wt&&Wt._constraintGroup;if(ma){ka.calc=!0;for(var Ba in ma)ni[Ba]||(i.getFromId(Ee,Ba)._constraintShrinkable=!0)}}(et(Ee)||Ve.height||Ve.width)&&(ka.plot=!0);var Ca=Te.shapes;for(Kt=0;Kt<Ca.length;Kt++)if(Ca[Kt].showlegend){ka.calc=!0;break}return(ka.plot||ka.calc)&&(ka.layoutReplot=!0),{flags:ka,rangesAltered:ni,undoit:Ma,redoit:Ga,eventData:It}}function et(Ee){var Ve=Ee._fullLayout,ke=Ve.width,Te=Ve.height;return Ee.layout.autosize&&a.plotAutoSize(Ee,Ee.layout,Ve),Ve.width!==ke||Ve.height!==Te}function lt(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee),A.isPlainObject(Ve)||(Ve={}),A.isPlainObject(ke)||(ke={}),Object.keys(Ve).length&&(Ee.changed=!0),Object.keys(ke).length&&(Ee.changed=!0);var Le=w.coerceTraceIndices(Ee,Te),rt=fe(Ee,A.extendFlat({},Ve),Le),dt=rt.flags,xt=it(Ee,A.extendFlat({},ke)),It=xt.flags;(dt.calc||It.calc)&&(Ee.calcdata=void 0),dt.clearAxisTypes&&w.clearAxisTypes(Ee,Le,ke);var Bt=[];It.layoutReplot?Bt.push(S.layoutReplot):dt.fullReplot?Bt.push(X._doPlot):(Bt.push(a.previousPromises),Ae(Ee,It,xt)||a.supplyDefaults(Ee),dt.style&&Bt.push(S.doTraceStyle),(dt.colorbars||It.colorbars)&&Bt.push(S.doColorBars),It.legend&&Bt.push(S.doLegend),It.layoutstyle&&Bt.push(S.layoutStyles),It.axrange&&Be(Bt,xt.rangesAltered),It.ticks&&Bt.push(S.doTicksRelayout),It.modebar&&Bt.push(S.doModeBar),It.camera&&Bt.push(S.doCamera),Bt.push(y)),Bt.push(a.rehover,a.redrag,a.reselect),t.add(Ee,lt,[Ee,rt.undoit,xt.undoit,rt.traces],lt,[Ee,rt.redoit,xt.redoit,rt.traces]);var Gt=A.syncOrAsync(Bt,Ee);return(!Gt||!Gt.then)&&(Gt=Promise.resolve(Ee)),Gt.then(function(){return Ee.emit("plotly_update",{data:rt.eventData,layout:xt.eventData}),Ee})}function Me(Ee){return function(ke){ke._fullLayout._guiEditing=!0;var Te=Ee.apply(null,arguments);return ke._fullLayout._guiEditing=!1,Te}}var ge=[{pattern:/^hiddenlabels/,attr:"legend.uirevision"},{pattern:/^((x|y)axis\d*)\.((auto)?range|title\.text)/},{pattern:/axis\d*\.showspikes$/,attr:"modebar.uirevision"},{pattern:/(hover|drag)mode$/,attr:"modebar.uirevision"},{pattern:/^(scene\d*)\.camera/},{pattern:/^(geo\d*)\.(projection|center|fitbounds)/},{pattern:/^(ternary\d*\.[abc]axis)\.(min|title\.text)$/},{pattern:/^(polar\d*\.radialaxis)\.((auto)?range|angle|title\.text)/},{pattern:/^(polar\d*\.angularaxis)\.rotation/},{pattern:/^(mapbox\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^(map\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^legend\.(x|y)$/,attr:"editrevision"},{pattern:/^(shapes|annotations)/,attr:"editrevision"},{pattern:/^title\.text$/,attr:"editrevision"}],ce=[{pattern:/^selectedpoints$/,attr:"selectionrevision"},{pattern:/(^|value\.)visible$/,attr:"legend.uirevision"},{pattern:/^dimensions\[\d+\]\.constraintrange/},{pattern:/^node\.(x|y|groups)/},{pattern:/^level$/},{pattern:/(^|value\.)name$/},{pattern:/colorbar\.title\.text$/},{pattern:/colorbar\.(x|y)$/,attr:"editrevision"}];function ze(Ee,Ve){for(var ke=0;ke<Ve.length;ke++){var Te=Ve[ke],Le=Ee.match(Te.pattern);if(Le){var rt=Le[1]||"";return{head:rt,tail:Ee.substr(rt.length+1),attr:Te.attr}}}}function tt(Ee,Ve){var ke=M(Ve,Ee).get();if(ke!==void 0)return ke;var Te=Ee.split(".");for(Te.pop();Te.length>1;)if(Te.pop(),ke=M(Ve,Te.join(".")+".uirevision").get(),ke!==void 0)return ke;return Ve.uirevision}function nt(Ee,Ve){for(var ke=0;ke<Ve.length;ke++)if(Ve[ke]._fullInput.uid===Ee)return ke;return-1}function Qe(Ee,Ve,ke){for(var Te=0;Te<Ve.length;Te++)if(Ve[Te].uid===Ee)return Te;return!Ve[ke]||Ve[ke].uid?-1:ke}function Ct(Ee,Ve){var ke=A.isPlainObject(Ee),Te=Array.isArray(Ee);return ke||Te?(ke&&A.isPlainObject(Ve)||Te&&Array.isArray(Ve))&&JSON.stringify(Ee)===JSON.stringify(Ve):Ee===Ve}function St(Ee,Ve,ke,Te){var Le=Te._preGUI,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa,La=[],ka={},Ga={};for(rt in Le){if(Bt=ze(rt,ge),Bt){if(sa=Bt.head,Aa=Bt.tail,dt=Bt.attr||sa+".uirevision",xt=M(Te,dt).get(),It=xt&&tt(dt,Ve),It&&It===xt){if(Gt=Le[rt],Gt===null&&(Gt=void 0),Kt=M(Ve,rt),sr=Kt.get(),Ct(sr,Gt)){sr===void 0&&Aa==="autorange"&&La.push(sa),Kt.set(ne(M(Te,rt).get()));continue}else if(Aa==="autorange"||Aa.substr(0,6)==="range["){var Ma=Le[sa+".range[0]"],Ua=Le[sa+".range[1]"],ni=Le[sa+".autorange"];if(ni||ni===null&&Ma===null&&Ua===null){if(!(sa in ka)){var Wt=M(Ve,sa).get();ka[sa]=Wt&&(Wt.autorange||Wt.autorange!==!1&&(!Wt.range||Wt.range.length!==2))}if(ka[sa]){Kt.set(ne(M(Te,rt).get()));continue}}}}}else A.warn("unrecognized GUI edit: "+rt);delete Le[rt],Bt&&Bt.tail.substr(0,6)==="range["&&(Ga[Bt.head]=1)}for(var zt=0;zt<La.length;zt++){var Vt=La[zt];if(Ga[Vt]){var Ut=M(Ve,Vt).get();Ut&&delete Ut.autorange}}var xr=Te._tracePreGUI;for(var Zr in xr){var pa=xr[Zr],Xr=null,Ea;for(rt in pa){if(!Xr){var Fa=nt(Zr,ke);if(Fa<0){delete xr[Zr];break}var qa=ke[Fa];Ea=qa._fullInput;var ya=Qe(Zr,Ee,Ea.index);if(ya<0){delete xr[Zr];break}Xr=Ee[ya]}if(Bt=ze(rt,ce),Bt){if(Bt.attr?(xt=M(Te,Bt.attr).get(),It=xt&&tt(Bt.attr,Ve)):(xt=Ea.uirevision,It=Xr.uirevision,It===void 0&&(It=Ve.uirevision)),It&&It===xt&&(Gt=pa[rt],Gt===null&&(Gt=void 0),Kt=M(Xr,rt),sr=Kt.get(),Ct(sr,Gt))){Kt.set(ne(M(Ea,rt).get()));continue}}else A.warn("unrecognized GUI edit: "+rt+" in trace uid "+Zr);delete pa[rt]}}}function Ot(Ee,Ve,ke,Te){var Le,rt;function dt(){return X.addFrames(Ee,Le)}Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var xt=Ee._fullData,It=Ee._fullLayout;if(!A.isPlotDiv(Ee)||!xt||!It)rt=X.newPlot(Ee,Ve,ke,Te);else{if(A.isPlainObject(Ve)){var Bt=Ve;Ve=Bt.data,ke=Bt.layout,Te=Bt.config,Le=Bt.frames}var Gt=!1;if(Te){var Kt=A.extendDeep({},Ee._context);Ee._context=void 0,z(Ee,Te),Gt=Cr(Kt,Ee._context)}Ee.data=Ve||[],w.cleanData(Ee.data),Ee.layout=ke||{},w.cleanLayout(Ee.layout),St(Ee.data,Ee.layout,xt,It),a.supplyDefaults(Ee,{skipUpdateCalc:!0});var sr=Ee._fullData,sa=Ee._fullLayout,Aa=sa.datarevision===void 0,La=sa.transition,ka=ur(Ee,It,sa,Aa,La),Ga=ka.newDataRevision,Ma=jt(Ee,xt,sr,Aa,La,Ga);if(et(Ee)&&(ka.layoutReplot=!0),Ma.calc||ka.calc){Ee.calcdata=void 0;for(var Ua=Object.getOwnPropertyNames(sa),ni=0;ni<Ua.length;ni++){var Wt=Ua[ni],zt=Wt.substring(0,5);if(zt==="xaxis"||zt==="yaxis"){var Vt=sa[Wt]._emptyCategories;Vt&&Vt()}}}else a.supplyDefaultsUpdateCalc(Ee.calcdata,sr);var Ut=[];if(Le&&(Ee._transitionData={},a.createTransitionData(Ee),Ut.push(dt)),sa.transition&&!Gt&&(Ma.anim||ka.anim))ka.ticks&&Ut.push(S.doTicksRelayout),a.doCalcdata(Ee),S.doAutoRangeAndConstraints(Ee),Ut.push(function(){return a.transitionFromReact(Ee,Ma,ka,It)});else if(Ma.fullReplot||ka.layoutReplot||Gt)Ee._fullLayout._skipDefaults=!0,Ut.push(X._doPlot);else{for(var xr in ka.arrays){var Zr=ka.arrays[xr];if(Zr.length){var pa=r.getComponentMethod(xr,"drawOne");if(pa!==A.noop)for(var Xr=0;Xr<Zr.length;Xr++)pa(Ee,Zr[Xr]);else{var Ea=r.getComponentMethod(xr,"draw");if(Ea===A.noop)throw new Error("cannot draw components: "+xr);Ea(Ee)}}}Ut.push(a.previousPromises),Ma.style&&Ut.push(S.doTraceStyle),(Ma.colorbars||ka.colorbars)&&Ut.push(S.doColorBars),ka.legend&&Ut.push(S.doLegend),ka.layoutstyle&&Ut.push(S.layoutStyles),ka.axrange&&Be(Ut),ka.ticks&&Ut.push(S.doTicksRelayout),ka.modebar&&Ut.push(S.doModeBar),ka.camera&&Ut.push(S.doCamera),Ut.push(y)}Ut.push(a.rehover,a.redrag,a.reselect),rt=A.syncOrAsync(Ut,Ee),(!rt||!rt.then)&&(rt=Promise.resolve(Ee))}return rt.then(function(){return Ee.emit("plotly_react",{data:Ve,layout:ke}),Ee})}function jt(Ee,Ve,ke,Te,Le,rt){var dt=Ve.length===ke.length;if(!Le&&!dt)return{fullReplot:!0,calc:!0};var xt=E.traceFlags();xt.arrays={},xt.nChanges=0,xt.nChangesAnim=0;var It,Bt;function Gt(sa){var Aa=o.getTraceValObject(Bt,sa);return!Bt._module.animatable&&Aa.anim&&(Aa.anim=!1),Aa}var Kt={getValObject:Gt,flags:xt,immutable:Te,transition:Le,newDataRevision:rt,gd:Ee},sr={};for(It=0;It<Ve.length;It++)if(ke[It]){if(Bt=ke[It]._fullInput,sr[Bt.uid])continue;sr[Bt.uid]=1,ar(Ve[It]._fullInput,Bt,[],Kt)}return(xt.calc||xt.plot)&&(xt.fullReplot=!0),Le&&xt.nChanges&&xt.nChangesAnim&&(xt.anim=xt.nChanges===xt.nChangesAnim&&dt?"all":"some"),xt}function ur(Ee,Ve,ke,Te,Le){var rt=E.layoutFlags();rt.arrays={},rt.rangesAltered={},rt.nChanges=0,rt.nChangesAnim=0;function dt(sr){return o.getLayoutValObject(ke,sr)}for(var xt in ke)if(!(!xt.startsWith("xaxis")&&!xt.startsWith("yaxis"))&&Ve[xt]){var It=ke[xt].domain,Bt=Ve[xt].domain,Gt=Ve[xt]._inputDomain;Ve[xt]._inputDomain&&(It[0]===Gt[0]&&It[1]===Gt[1]?ke[xt].domain=Ve[xt].domain:(It[0]!==Bt[0]||It[1]!==Bt[1])&&(ke[xt]._inputDomain=null))}var Kt={getValObject:dt,flags:rt,immutable:Te,transition:Le,gd:Ee};return ar(Ve,ke,[],Kt),(rt.plot||rt.calc)&&(rt.layoutReplot=!0),Le&&rt.nChanges&&rt.nChangesAnim&&(rt.anim=rt.nChanges===rt.nChangesAnim?"all":"some"),rt}function ar(Ee,Ve,ke,Te){var Le,rt,dt,xt=Te.getValObject,It=Te.flags,Bt=Te.immutable,Gt=Te.inArray,Kt=Te.arrayIndex;function sr(){var Fa=Le.editType;if(Gt&&Fa.indexOf("arraydraw")!==-1){A.pushUnique(It.arrays[Gt],Kt);return}E.update(It,Le),Fa!=="none"&&It.nChanges++,Te.transition&&Le.anim&&It.nChangesAnim++,(Ie.test(dt)||Ze.test(dt))&&(It.rangesAltered[ke[0]]=1),rt==="datarevision"&&(It.newDataRevision=1)}function sa(Fa){return Fa.valType==="data_array"||Fa.arrayOk}for(rt in Ee){if(It.calc&&!Te.transition)return;var Aa=Ee[rt],La=Ve[rt],ka=ke.concat(rt);if(dt=ka.join("."),!(rt.charAt(0)==="_"||typeof Aa=="function"||Aa===La)){if((rt==="tick0"||rt==="dtick")&&ke[0]!=="geo"){var Ga=Ve.tickmode;if(Ga==="auto"||Ga==="array"||!Ga)continue}if(!(rt==="range"&&Ve.autorange)&&!((rt==="zmin"||rt==="zmax")&&Ve.type==="contourcarpet")&&(Le=xt(ka),!!Le&&!(Le._compareAsJSON&&JSON.stringify(Aa)===JSON.stringify(La)))){var Ma=Le.valType,Ua,ni=sa(Le),Wt=Array.isArray(Aa),zt=Array.isArray(La);if(Wt&&zt){var Vt="_input_"+rt,Ut=Ee[Vt],xr=Ve[Vt];if(Array.isArray(Ut)&&Ut===xr)continue}if(La===void 0)ni&&Wt?It.calc=!0:sr();else if(Le._isLinkedToArray){var Zr=[],pa=!1;Gt||(It.arrays[rt]=Zr);var Xr=Math.min(Aa.length,La.length),Ea=Math.max(Aa.length,La.length);if(Xr!==Ea)if(Le.editType==="arraydraw")pa=!0;else{sr();continue}for(Ua=0;Ua<Xr;Ua++)ar(Aa[Ua],La[Ua],ka.concat(Ua),A.extendFlat({inArray:rt,arrayIndex:Ua},Te));if(pa)for(Ua=Xr;Ua<Ea;Ua++)Zr.push(Ua)}else!Ma&&A.isPlainObject(Aa)?ar(Aa,La,ka,Te):ni?Wt&&zt?(Bt&&(It.calc=!0),(Bt||Te.newDataRevision)&&sr()):Wt!==zt?It.calc=!0:sr():Wt&&zt?(Aa.length!==La.length||String(Aa)!==String(La))&&sr():sr()}}}for(rt in Ve)if(!(rt in Ee||rt.charAt(0)==="_"||typeof Ve[rt]=="function"))if(Le=xt(ke.concat(rt)),sa(Le)&&Array.isArray(Ve[rt])){It.calc=!0;return}else sr()}function Cr(Ee,Ve){var ke;for(ke in Ee)if(ke.charAt(0)!=="_"){var Te=Ee[ke],Le=Ve[ke];if(Te!==Le)if(A.isPlainObject(Te)&&A.isPlainObject(Le)){if(Cr(Te,Le))return!0}else if(Array.isArray(Te)&&Array.isArray(Le)){if(Te.length!==Le.length)return!0;for(var rt=0;rt<Te.length;rt++)if(Te[rt]!==Le[rt])if(A.isPlainObject(Te[rt])&&A.isPlainObject(Le[rt])){if(Cr(Te[rt],Le[rt]))return!0}else return!0}else return!0}}function vr(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var Te=Ee._transitionData;Te._frameQueue||(Te._frameQueue=[]),ke=a.supplyAnimationDefaults(ke);var Le=ke.transition,rt=ke.frame;Te._frameWaitingCnt===void 0&&(Te._frameWaitingCnt=0);function dt(Bt){return Array.isArray(Le)?Bt>=Le.length?Le[0]:Le[Bt]:Le}function xt(Bt){return Array.isArray(rt)?Bt>=rt.length?rt[0]:rt[Bt]:rt}function It(Bt,Gt){var Kt=0;return function(){if(Bt&&++Kt===Gt)return Bt()}}return new Promise(function(Bt,Gt){function Kt(){if(Te._frameQueue.length!==0){for(;Te._frameQueue.length;){var Xr=Te._frameQueue.pop();Xr.onInterrupt&&Xr.onInterrupt()}Ee.emit("plotly_animationinterrupted",[])}}function sr(Xr){if(Xr.length!==0){for(var Ea=0;Ea<Xr.length;Ea++){var Fa;Xr[Ea].type==="byname"?Fa=a.computeFrame(Ee,Xr[Ea].name):Fa=Xr[Ea].data;var qa=xt(Ea),ya=dt(Ea);ya.duration=Math.min(ya.duration,qa.duration);var $a={frame:Fa,name:Xr[Ea].name,frameOpts:qa,transitionOpts:ya};Ea===Xr.length-1&&($a.onComplete=It(Bt,2),$a.onInterrupt=Gt),Te._frameQueue.push($a)}ke.mode==="immediate"&&(Te._lastFrameAt=-1/0),Te._animationRaf||La()}}function sa(){Ee.emit("plotly_animated"),window.cancelAnimationFrame(Te._animationRaf),Te._animationRaf=null}function Aa(){Te._currentFrame&&Te._currentFrame.onComplete&&Te._currentFrame.onComplete();var Xr=Te._currentFrame=Te._frameQueue.shift();if(Xr){var Ea=Xr.name?Xr.name.toString():null;Ee._fullLayout._currentFrame=Ea,Te._lastFrameAt=Date.now(),Te._timeToNext=Xr.frameOpts.duration,a.transition(Ee,Xr.frame.data,Xr.frame.layout,w.coerceTraceIndices(Ee,Xr.frame.traces),Xr.frameOpts,Xr.transitionOpts).then(function(){Xr.onComplete&&Xr.onComplete()}),Ee.emit("plotly_animatingframe",{name:Ea,frame:Xr.frame,animation:{frame:Xr.frameOpts,transition:Xr.transitionOpts}})}else sa()}function La(){Ee.emit("plotly_animating"),Te._lastFrameAt=-1/0,Te._timeToNext=0,Te._runningTransitions=0,Te._currentFrame=null;var Xr=function(){Te._animationRaf=window.requestAnimationFrame(Xr),Date.now()-Te._lastFrameAt>Te._timeToNext&&Aa()};Xr()}var ka=0;function Ga(Xr){return Array.isArray(Le)?ka>=Le.length?Xr.transitionOpts=Le[ka]:Xr.transitionOpts=Le[0]:Xr.transitionOpts=Le,ka++,Xr}var Ma,Ua,ni=[],Wt=Ve==null,zt=Array.isArray(Ve),Vt=!Wt&&!zt&&A.isPlainObject(Ve);if(Vt)ni.push({type:"object",data:Ga(A.extendFlat({},Ve))});else if(Wt||["string","number"].indexOf(typeof Ve)!==-1)for(Ma=0;Ma<Te._frames.length;Ma++)Ua=Te._frames[Ma],Ua&&(Wt||String(Ua.group)===String(Ve))&&ni.push({type:"byname",name:String(Ua.name),data:Ga({name:Ua.name})});else if(zt)for(Ma=0;Ma<Ve.length;Ma++){var Ut=Ve[Ma];["number","string"].indexOf(typeof Ut)!==-1?(Ut=String(Ut),ni.push({type:"byname",name:Ut,data:Ga({name:Ut})})):A.isPlainObject(Ut)&&ni.push({type:"object",data:Ga(A.extendFlat({},Ut))})}for(Ma=0;Ma<ni.length;Ma++)if(Ua=ni[Ma],Ua.type==="byname"&&!Te._frameHash[Ua.data.name]){A.warn('animate failure: frame not found: "'+Ua.data.name+'"'),Gt();return}["next","immediate"].indexOf(ke.mode)!==-1&&Kt(),ke.direction==="reverse"&&ni.reverse();var xr=Ee._fullLayout._currentFrame;if(xr&&ke.fromcurrent){var Zr=-1;for(Ma=0;Ma<ni.length;Ma++)if(Ua=ni[Ma],Ua.type==="byname"&&Ua.name===xr){Zr=Ma;break}if(Zr>0&&Zr<ni.length-1){var pa=[];for(Ma=0;Ma<ni.length;Ma++)Ua=ni[Ma],(ni[Ma].type!=="byname"||Ma>Zr)&&pa.push(Ua);ni=pa}}ni.length>0?sr(ni):(Ee.emit("plotly_animated"),Bt())})}function _r(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),Ve==null)return Promise.resolve();if(!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var Te,Le,rt,dt,xt=Ee._transitionData._frames,It=Ee._transitionData._frameHash;if(!Array.isArray(Ve))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+Ve);var Bt=xt.length+Ve.length*2,Gt=[],Kt={};for(Te=Ve.length-1;Te>=0;Te--)if(A.isPlainObject(Ve[Te])){var sr=Ve[Te].name,sa=(It[sr]||Kt[sr]||{}).name,Aa=Ve[Te].name,La=It[sa]||Kt[sa];sa&&Aa&&typeof Aa=="number"&&La&&b<d&&(b++,A.warn('addFrames: overwriting frame "'+(It[sa]||Kt[sa]).name+'" with a frame whose name of type "number" also equates to "'+sa+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),b===d&&A.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),Kt[sr]={name:sr},Gt.push({frame:a.supplyFrameDefaults(Ve[Te]),index:ke&&ke[Te]!==void 0&&ke[Te]!==null?ke[Te]:Bt+Te})}Gt.sort(function(Vt,Ut){return Vt.index>Ut.index?-1:Vt.index<Ut.index?1:0});var ka=[],Ga=[],Ma=xt.length;for(Te=Gt.length-1;Te>=0;Te--){if(Le=Gt[Te].frame,typeof Le.name=="number"&&A.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!Le.name)for(;It[Le.name="frame "+Ee._transitionData._counter++];);if(It[Le.name]){for(rt=0;rt<xt.length&&(xt[rt]||{}).name!==Le.name;rt++);ka.push({type:"replace",index:rt,value:Le}),Ga.unshift({type:"replace",index:rt,value:xt[rt]})}else dt=Math.max(0,Math.min(Gt[Te].index,Ma)),ka.push({type:"insert",index:dt,value:Le}),Ga.unshift({type:"delete",index:dt}),Ma++}var Ua=a.modifyFrames,ni=a.modifyFrames,Wt=[Ee,Ga],zt=[Ee,ka];return t&&t.add(Ee,Ua,Wt,ni,zt),a.modifyFrames(Ee,ka)}function yt(Ee,Ve){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee);var ke,Te,Le=Ee._transitionData._frames,rt=[],dt=[];if(!Ve)for(Ve=[],ke=0;ke<Le.length;ke++)Ve.push(ke);for(Ve=Ve.slice(),Ve.sort(),ke=Ve.length-1;ke>=0;ke--)Te=Ve[ke],rt.push({type:"delete",index:Te}),dt.unshift({type:"insert",index:Te,value:Le[Te]});var xt=a.modifyFrames,It=a.modifyFrames,Bt=[Ee,dt],Gt=[Ee,rt];return t&&t.add(Ee,xt,Bt,It,Gt),a.modifyFrames(Ee,rt)}function Fe(Ee){Ee=A.getGraphDiv(Ee);var Ve=Ee._fullLayout||{},ke=Ee._fullData||[];return a.cleanPlot([],{},ke,Ve),a.purge(Ee),e.purge(Ee),Ve._container&&Ve._container.remove(),delete Ee._context,Ee}function Ke(Ee){var Ve=Ee._fullLayout,ke=Ee.getBoundingClientRect();if(!A.equalDomRects(ke,Ve._lastBBox)){var Te=Ve._invTransform=A.inverseTransformMatrix(A.getFullTransformMatrix(Ee));Ve._invScaleX=Math.sqrt(Te[0][0]*Te[0][0]+Te[0][1]*Te[0][1]+Te[0][2]*Te[0][2]),Ve._invScaleY=Math.sqrt(Te[1][0]*Te[1][0]+Te[1][1]*Te[1][1]+Te[1][2]*Te[1][2]),Ve._lastBBox=ke}}function Ne(Ee){var Ve=H.select(Ee),ke=Ee._fullLayout;if(ke._calcInverseTransform=Ke,ke._calcInverseTransform(Ee),ke._container=Ve.selectAll(".plot-container").data([0]),ke._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),ke._paperdiv=ke._container.selectAll(".svg-container").data([0]),ke._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),ke._glcontainer=ke._paperdiv.selectAll(".gl-container").data([{}]),ke._glcontainer.enter().append("div").classed("gl-container",!0),ke._paperdiv.selectAll(".main-svg").remove(),ke._paperdiv.select(".modebar-container").remove(),ke._paper=ke._paperdiv.insert("svg",":first-child").classed("main-svg",!0),ke._toppaper=ke._paperdiv.append("svg").classed("main-svg",!0),ke._modebardiv=ke._paperdiv.append("div"),delete ke._modeBar,ke._hoverpaper=ke._paperdiv.append("svg").classed("main-svg",!0),!ke._uid){var Te={};H.selectAll("defs").each(function(){this.id&&(Te[this.id.split("-")[1]]=1)}),ke._uid=A.randstr(Te)}ke._paperdiv.selectAll(".main-svg").attr(p.svgAttrs),ke._defs=ke._paper.append("defs").attr("id","defs-"+ke._uid),ke._clips=ke._defs.append("g").classed("clips",!0),ke._topdefs=ke._toppaper.append("defs").attr("id","topdefs-"+ke._uid),ke._topclips=ke._topdefs.append("g").classed("clips",!0),ke._bgLayer=ke._paper.append("g").classed("bglayer",!0),ke._draggers=ke._paper.append("g").classed("draglayer",!0);var Le=ke._paper.append("g").classed("layer-below",!0);ke._imageLowerLayer=Le.append("g").classed("imagelayer",!0),ke._shapeLowerLayer=Le.append("g").classed("shapelayer",!0),ke._cartesianlayer=ke._paper.append("g").classed("cartesianlayer",!0),ke._polarlayer=ke._paper.append("g").classed("polarlayer",!0),ke._smithlayer=ke._paper.append("g").classed("smithlayer",!0),ke._ternarylayer=ke._paper.append("g").classed("ternarylayer",!0),ke._geolayer=ke._paper.append("g").classed("geolayer",!0),ke._funnelarealayer=ke._paper.append("g").classed("funnelarealayer",!0),ke._pielayer=ke._paper.append("g").classed("pielayer",!0),ke._iciclelayer=ke._paper.append("g").classed("iciclelayer",!0),ke._treemaplayer=ke._paper.append("g").classed("treemaplayer",!0),ke._sunburstlayer=ke._paper.append("g").classed("sunburstlayer",!0),ke._indicatorlayer=ke._toppaper.append("g").classed("indicatorlayer",!0),ke._glimages=ke._paper.append("g").classed("glimages",!0);var rt=ke._toppaper.append("g").classed("layer-above",!0);ke._imageUpperLayer=rt.append("g").classed("imagelayer",!0),ke._shapeUpperLayer=rt.append("g").classed("shapelayer",!0),ke._selectionLayer=ke._toppaper.append("g").classed("selectionlayer",!0),ke._infolayer=ke._toppaper.append("g").classed("infolayer",!0),ke._menulayer=ke._toppaper.append("g").classed("menulayer",!0),ke._zoomlayer=ke._toppaper.append("g").classed("zoomlayer",!0),ke._hoverlayer=ke._hoverpaper.append("g").classed("hoverlayer",!0),ke._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),Ee.emit("plotly_framework")}X.animate=vr,X.addFrames=_r,X.deleteFrames=yt,X.addTraces=$,X.deleteTraces=J,X.extendTraces=he,X.moveTraces=Z,X.prependTraces=G,X.newPlot=B,X._doPlot=u,X.purge=Fe,X.react=Ot,X.redraw=F,X.relayout=be,X.restyle=re,X.setPlotConfig=f,X.update=lt,X._guiRelayout=Me(be),X._guiRestyle=Me(re),X._guiUpdate=Me(lt),X._storeDirectGUIEdit=ie}}),Xv=Ye({"src/snapshot/helpers.js"(X){"use strict";var H=Hn();X.getDelay=function(A){return A._has&&(A._has("gl3d")||A._has("mapbox")||A._has("map"))?500:0},X.getRedrawFunc=function(A){return function(){H.getComponentMethod("colorbar","draw")(A)}},X.encodeSVG=function(A){return"data:image/svg+xml,"+encodeURIComponent(A)},X.encodeJSON=function(A){return"data:application/json,"+encodeURIComponent(A)};var g=window.URL||window.webkitURL;X.createObjectURL=function(A){return g.createObjectURL(A)},X.revokeObjectURL=function(A){return g.revokeObjectURL(A)},X.createBlob=function(A,M){if(M==="svg")return new window.Blob([A],{type:"image/svg+xml;charset=utf-8"});if(M==="full-json")return new window.Blob([A],{type:"application/json;charset=utf-8"});var e=x(window.atob(A));return new window.Blob([e],{type:"image/"+M})},X.octetStream=function(A){document.location.href="data:application/octet-stream"+A};function x(A){for(var M=A.length,e=new ArrayBuffer(M),t=new Uint8Array(e),r=0;r<M;r++)t[r]=A.charCodeAt(r);return e}X.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/}}),k2=Ye({"src/snapshot/tosvg.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=Fn(),e=vd(),t=/"/g,r="TOBESTRIPPED",o=new RegExp('("'+r+")|("+r+'")',"g");function a(n){var s=g.select("body").append("div").style({display:"none"}).html(""),c=n.replace(/(&[^;]*;)/gi,function(h){return h==="&lt;"?"&#60;":h==="&rt;"?"&#62;":h.indexOf("<")!==-1||h.indexOf(">")!==-1?"":s.html(h).text()});return s.remove(),c}function i(n){return n.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&amp;")}H.exports=function(s,c,h){var v=s._fullLayout,p=v._paper,T=v._toppaper,l=v.width,_=v.height,w;p.insert("rect",":first-child").call(A.setRect,0,0,l,_).call(M.fill,v.paper_bgcolor);var S=v._basePlotModules||[];for(w=0;w<S.length;w++){var E=S[w];E.toSVG&&E.toSVG(s)}if(T){var m=T.node().childNodes,b=Array.prototype.slice.call(m);for(w=0;w<b.length;w++){var d=b[w];d.childNodes.length&&p.node().appendChild(d)}}v._draggers&&v._draggers.remove(),p.node().style.background="",p.selectAll("text").attr({"data-unformatted":null,"data-math":null}).each(function(){var y=g.select(this);if(this.style.visibility==="hidden"||this.style.display==="none"){y.remove();return}else y.style({visibility:null,display:null});var f=this.style.fontFamily;f&&f.indexOf('"')!==-1&&y.style("font-family",f.replace(t,r));var P=this.style.fontWeight;P&&(P==="normal"||P==="400")&&y.style("font-weight",void 0);var L=this.style.fontStyle;L&&L==="normal"&&y.style("font-style",void 0);var z=this.style.fontVariant;z&&z==="normal"&&y.style("font-variant",void 0)}),p.selectAll(".gradient_filled,.pattern_filled").each(function(){var y=g.select(this),f=this.style.fill;f&&f.indexOf("url(")!==-1&&y.style("fill",f.replace(t,r));var P=this.style.stroke;P&&P.indexOf("url(")!==-1&&y.style("stroke",P.replace(t,r))}),(c==="pdf"||c==="eps")&&p.selectAll("#MathJax_SVG_glyphs path").attr("stroke-width",0),c==="svg"&&h&&(p.attr("width",h*l),p.attr("height",h*_),p.attr("viewBox","0 0 "+l+" "+_));var u=new window.XMLSerializer().serializeToString(p.node());return u=a(u),u=i(u),u=u.replace(o,"'"),u}}}),C2=Ye({"src/snapshot/svgtoimg.js"(X,H){"use strict";var g=ta(),x=Wg().EventEmitter,A=Xv();function M(e){var t=e.emitter||new x,r=new Promise(function(o,a){var i=window.Image,n=e.svg,s=e.format||"png",c=e.canvas,h=e.scale||1,v=e.width||300,p=e.height||150,T=h*v,l=h*p,_=c.getContext("2d",{willReadFrequently:!0}),w=new i,S,E;s==="svg"||g.isSafari()?E=A.encodeSVG(n):(S=A.createBlob(n,"svg"),E=A.createObjectURL(S)),c.width=T,c.height=l,w.onload=function(){var m;switch(S=null,A.revokeObjectURL(E),s!=="svg"&&_.drawImage(w,0,0,T,l),s){case"jpeg":m=c.toDataURL("image/jpeg");break;case"png":m=c.toDataURL("image/png");break;case"webp":m=c.toDataURL("image/webp");break;case"svg":m=E;break;default:var b="Image format is not jpeg, png, svg or webp.";if(a(new Error(b)),!e.promise)return t.emit("error",b)}o(m),e.promise||t.emit("success",m)},w.onerror=function(m){if(S=null,A.revokeObjectURL(E),a(m),!e.promise)return t.emit("error",m)},w.src=E});return e.promise?r:t}H.exports=M}}),PS=Ye({"src/plot_api/to_image.js"(X,H){"use strict";var g=jo(),x=E2(),A=Gu(),M=ta(),e=Xv(),t=k2(),r=C2(),o=xh().version,a={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function i(n,s){s=s||{};var c,h,v,p;M.isPlainObject(n)?(c=n.data||[],h=n.layout||{},v=n.config||{},p={}):(n=M.getGraphDiv(n),c=M.extendDeep([],n.data),h=M.extendDeep({},n.layout),v=n._context,p=n._fullLayout||{});function T(B){return!(B in s)||M.validate(s[B],a[B])}if(!T("width")&&s.width!==null||!T("height")&&s.height!==null)throw new Error("Height and width should be pixel values.");if(!T("format"))throw new Error("Export format is not "+M.join2(a.format.values,", "," or ")+".");var l={};function _(B,O){return M.coerce(s,l,a,B,O)}var w=_("format"),S=_("width"),E=_("height"),m=_("scale"),b=_("setBackground"),d=_("imageDataOnly"),u=document.createElement("div");u.style.position="absolute",u.style.left="-5000px",document.body.appendChild(u);var y=M.extendFlat({},h);S?y.width=S:s.width===null&&g(p.width)&&(y.width=p.width),E?y.height=E:s.height===null&&g(p.height)&&(y.height=p.height);var f=M.extendFlat({},v,{_exportedPlot:!0,staticPlot:!0,setBackground:b}),P=e.getRedrawFunc(u);function L(){return new Promise(function(B){setTimeout(B,e.getDelay(u._fullLayout))})}function z(){return new Promise(function(B,O){var I=t(u,w,m),N=u._fullLayout.width,U=u._fullLayout.height;function W(){x.purge(u),document.body.removeChild(u)}if(w==="full-json"){var Q=A.graphJson(u,!1,"keepdata","object",!0,!0);return Q.version=o,Q=JSON.stringify(Q),W(),B(d?Q:e.encodeJSON(Q))}if(W(),w==="svg")return B(d?I:e.encodeSVG(I));var ue=document.createElement("canvas");ue.id=M.randstr(),r({format:w,width:N,height:U,scale:m,canvas:ue,svg:I,promise:!0}).then(B).catch(O)})}function F(B){return d?B.replace(e.IMAGE_URL_PREFIX,""):B}return new Promise(function(B,O){x.newPlot(u,c,y,f).then(P).then(L).then(z).then(function(I){B(F(I))}).catch(function(I){O(I)})})}H.exports=i}}),FO=Ye({"src/plot_api/validate.js"(X,H){"use strict";var g=ta(),x=Gu(),A=Qy(),M=Gg().dfltConfig,e=g.isPlainObject,t=Array.isArray,r=g.isArrayOrTypedArray;H.exports=function(_,w){_===void 0&&(_=[]),w===void 0&&(w={});var S=A.get(),E=[],m={_context:g.extendFlat({},M)},b,d;t(_)?(m.data=g.extendDeep([],_),b=_):(m.data=[],b=[],E.push(s("array","data"))),e(w)?(m.layout=g.extendDeep({},w),d=w):(m.layout={},d={},arguments.length>1&&E.push(s("object","layout"))),x.supplyDefaults(m);for(var u=m._fullData,y=b.length,f=0;f<y;f++){var P=b[f],L=["data",f];if(!e(P)){E.push(s("object",L));continue}var z=u[f],F=z.type,B=S.traces[F].attributes;B.type={valType:"enumerated",values:[F]},z.visible===!1&&P.visible!==!1&&E.push(s("invisible",L)),o(P,z,B,E,L)}var O=m._fullLayout,I=a(S,u);return o(d,O,I,E,"layout"),E.length===0?void 0:E};function o(l,_,w,S,E,m){m=m||[];for(var b=Object.keys(l),d=0;d<b.length;d++){var u=b[d],y=m.slice();y.push(u);var f=l[u],P=_[u],L=h(w,u),z=(L||{}).valType,F=z==="info_array",B=z==="colorscale",O=(L||{}).items;if(!c(w,u))S.push(s("schema",E,y));else if(e(f)&&e(P)&&z!=="any")o(f,P,L,S,E,y);else if(F&&t(f)){f.length>P.length&&S.push(s("unused",E,y.concat(P.length)));var I=P.length,N=Array.isArray(O);N&&(I=Math.min(I,O.length));var U,W,Q,ue,se;if(L.dimensions===2)for(W=0;W<I;W++)if(t(f[W])){f[W].length>P[W].length&&S.push(s("unused",E,y.concat(W,P[W].length)));var he=P[W].length;for(U=0;U<(N?Math.min(he,O[W].length):he);U++)Q=N?O[W][U]:O,ue=f[W][U],se=P[W][U],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W,U),ue,se)):S.push(s("value",E,y.concat(W,U),ue))}else S.push(s("array",E,y.concat(W),f[W]));else for(W=0;W<I;W++)Q=N?O[W]:O,ue=f[W],se=P[W],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W),ue,se)):S.push(s("value",E,y.concat(W),ue))}else if(L.items&&!F&&t(f)){var G=O[Object.keys(O)[0]],$=[],J,Z;for(J=0;J<P.length;J++){var re=P[J]._index||J;if(Z=y.slice(),Z.push(re),e(f[re])&&e(P[J])){$.push(re);var ne=f[re],j=P[J];e(ne)&&ne.visible!==!1&&j.visible===!1?S.push(s("invisible",E,Z)):o(ne,j,G,S,E,Z)}}for(J=0;J<f.length;J++)Z=y.slice(),Z.push(J),e(f[J])?$.indexOf(J)===-1&&S.push(s("unused",E,Z)):S.push(s("object",E,Z,f[J]))}else!e(f)&&e(P)?S.push(s("object",E,y,f)):!r(f)&&r(P)&&!F&&!B?S.push(s("array",E,y,f)):u in _?g.validate(f,L)?L.valType==="enumerated"&&(L.coerceNumber&&f!==+P||f!==P)&&S.push(s("dynamic",E,y,f,P)):S.push(s("value",E,y,f)):S.push(s("unused",E,y,f))}return S}function a(l,_){for(var w=l.layout.layoutAttributes,S=0;S<_.length;S++){var E=_[S],m=l.traces[E.type],b=m.layoutAttributes;b&&(E.subplot?g.extendFlat(w[m.attributes.subplot.dflt],b):g.extendFlat(w,b))}return w}var i={object:function(l,_){var w;return l==="layout"&&_===""?w="The layout argument":l[0]==="data"&&_===""?w="Trace "+l[1]+" in the data argument":w=n(l)+"key "+_,w+" must be linked to an object container"},array:function(l,_){var w;return l==="data"?w="The data argument":w=n(l)+"key "+_,w+" must be linked to an array container"},schema:function(l,_){return n(l)+"key "+_+" is not part of the schema"},unused:function(l,_,w){var S=e(w)?"container":"key";return n(l)+S+" "+_+" did not get coerced"},dynamic:function(l,_,w,S){return[n(l)+"key",_,"(set to '"+w+"')","got reset to","'"+S+"'","during defaults."].join(" ")},invisible:function(l,_){return(_?n(l)+"item "+_:"Trace "+l[1])+" got defaulted to be not visible"},value:function(l,_,w){return[n(l)+"key "+_,"is set to an invalid value ("+w+")"].join(" ")}};function n(l){return t(l)?"In data trace "+l[1]+", ":"In "+l+", "}function s(l,_,w,S,E){w=w||"";var m,b;t(_)?(m=_[0],b=_[1]):(m=_,b=null);var d=T(w),u=i[l](_,d,S,E);return g.log(u),{code:l,container:m,trace:b,path:w,astr:d,msg:u}}function c(l,_){var w=p(_),S=w.keyMinusId,E=w.id;return S in l&&l[S]._isSubplotObj&&E?!0:_ in l}function h(l,_){if(_ in l)return l[_];var w=p(_);return l[w.keyMinusId]}var v=g.counterRegex("([a-z]+)");function p(l){var _=l.match(v);return{keyMinusId:_&&_[1],id:_&&_[2]}}function T(l){if(!t(l))return String(l);for(var _="",w=0;w<l.length;w++){var S=l[w];typeof S=="number"?_=_.substr(0,_.length-1)+"["+S+"]":_+=S,w<l.length-1&&(_+=".")}return _}}}),OO=Ye({"src/snapshot/filesaver.js"(X,H){"use strict";var g=ta(),x=Xv();function A(M,e,t){var r=document.createElement("a"),o="download"in r,a=new Promise(function(i,n){var s,c;if(o)return s=x.createBlob(M,t),c=x.createObjectURL(s),r.href=c,r.download=e,document.body.appendChild(r),r.click(),document.body.removeChild(r),x.revokeObjectURL(c),s=null,i(e);if(g.isSafari()){var h=t==="svg"?",":";base64,";return x.octetStream(h+encodeURIComponent(M)),i(e)}n(new Error("download error"))});return a}H.exports=A}}),IS=Ye({"src/snapshot/download.js"(X,H){"use strict";var g=ta(),x=PS(),A=OO(),M=Xv();function e(t,r){var o;return g.isPlainObject(t)||(o=g.getGraphDiv(t)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,i){o&&o._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),o&&(o._snapshotInProgress=!0);var n=x(t,r),s=r.filename||t.fn||"newplot";s+="."+r.format.replace("-","."),n.then(function(c){return o&&(o._snapshotInProgress=!1),A(c,s,r.format)}).then(function(c){a(c)}).catch(function(c){o&&(o._snapshotInProgress=!1),i(c)})})}H.exports=e}}),BO=Ye({"src/plot_api/template_api.js"(X){"use strict";var H=ta(),g=H.isPlainObject,x=Qy(),A=Gu(),M=Pl(),e=cl(),t=Gg().dfltConfig;X.makeTemplate=function(v){v=H.isPlainObject(v)?v:H.getGraphDiv(v),v=H.extendDeep({_context:t},{data:v.data,layout:v.layout}),A.supplyDefaults(v);var p=v.data||[],T=v.layout||{};T._basePlotModules=v._fullLayout._basePlotModules,T._modules=v._fullLayout._modules;var l={data:{},layout:{}};p.forEach(function(f){var P={};a(f,P,n.bind(null,f));var L=H.coerce(f,{},M,"type"),z=l.data[L];z||(z=l.data[L]=[]),z.push(P)}),a(T,l.layout,i.bind(null,T)),delete l.layout.template;var _=T.template;if(g(_)){var w=_.layout,S,E,m,b,d,u;g(w)&&r(w,l.layout);var y=_.data;if(g(y)){for(E in l.data)if(m=y[E],Array.isArray(m)){for(d=l.data[E],u=d.length,b=m.length,S=0;S<u;S++)r(m[S%b],d[S]);for(S=u;S<b;S++)d.push(H.extendDeep({},m[S]))}for(E in y)E in l.data||(l.data[E]=H.extendDeep([],y[E]))}}return l};function r(v,p){v=H.extendDeep({},v);var T=Object.keys(v).sort(),l,_;function w(d,u,y){if(g(u)&&g(d))r(d,u);else if(Array.isArray(u)&&Array.isArray(d)){var f=e.arrayTemplater({_template:v},y);for(_=0;_<u.length;_++){var P=u[_],L=f.newItem(P)._template;L&&r(L,P)}var z=f.defaultItems();for(_=0;_<z.length;_++)u.push(z[_]._template);for(_=0;_<u.length;_++)delete u[_].templateitemname}}for(l=0;l<T.length;l++){var S=T[l],E=v[S];if(S in p?w(E,p[S],S):p[S]=E,o(S)===S)for(var m in p){var b=o(m);m!==b&&b===S&&!(m in v)&&w(E,p[m],S)}}}function o(v){return v.replace(/[0-9]+$/,"")}function a(v,p,T,l,_){var w=_&&T(_);for(var S in v){var E=v[S],m=s(v,S,l),b=s(v,S,_),d=T(b);if(!d){var u=o(S);u!==S&&(b=s(v,u,_),d=T(b))}if(!(w&&w===d)&&!(!d||d._noTemplating||d.valType==="data_array"||d.arrayOk&&Array.isArray(E)))if(!d.valType&&g(E))a(E,p,T,m,b);else if(d._isLinkedToArray&&Array.isArray(E))for(var y=!1,f=0,P={},L=0;L<E.length;L++){var z=E[L];if(g(z)){var F=z.name;if(F)P[F]||(a(z,p,T,s(E,f,m),s(E,f,b)),f++,P[F]=1);else if(!y){var B=e.arrayDefaultKey(S),O=s(v,B,l),I=s(E,f,m);a(z,p,T,I,s(E,f,b));var N=H.nestedProperty(p,I),U=H.nestedProperty(p,O);U.set(N.get()),N.set(null),y=!0}}}else{var W=H.nestedProperty(p,m);W.set(E)}}}function i(v,p){return x.getLayoutValObject(v,H.nestedProperty({},p).parts)}function n(v,p){return x.getTraceValObject(v,H.nestedProperty({},p).parts)}function s(v,p,T){var l;return T?Array.isArray(v)?l=T+"["+p+"]":l=T+"."+p:l=p,l}X.validateTemplate=function(v,p){var T=H.extendDeep({},{_context:t,data:v.data,layout:v.layout}),l=T.layout||{};g(p)||(p=l.template||{});var _=p.layout,w=p.data,S=[];T.layout=l,T.layout.template=p,A.supplyDefaults(T);var E=T._fullLayout,m=T._fullData,b={};function d(O,I){for(var N in O)if(N.charAt(0)!=="_"&&g(O[N])){var U=o(N),W=[],Q;for(Q=0;Q<I.length;Q++)W.push(s(O,N,I[Q])),U!==N&&W.push(s(O,U,I[Q]));for(Q=0;Q<W.length;Q++)b[W[Q]]=1;d(O[N],W)}}function u(O,I){for(var N in O)if(N.indexOf("defaults")===-1&&g(O[N])){var U=s(O,N,I);b[U]?u(O[N],U):S.push({code:"unused",path:U})}}if(g(_)?(d(E,["layout"]),u(_,"layout")):S.push({code:"layout"}),!g(w))S.push({code:"data"});else{for(var y={},f,P=0;P<m.length;P++){var L=m[P];f=L.type,y[f]=(y[f]||0)+1,L._fullInput._template||S.push({code:"missing",index:L.index,traceType:f})}for(f in w){var z=w[f].length,F=y[f]||0;z>F?S.push({code:"unused",traceType:f,templateCount:z,dataCount:F}):F>z&&S.push({code:"reused",traceType:f,templateCount:z,dataCount:F})}}function B(O,I){for(var N in O)if(N.charAt(0)!=="_"){var U=O[N],W=s(O,N,I);g(U)?(Array.isArray(O)&&U._template===!1&&U.templateitemname&&S.push({code:"missing",path:W,templateitemname:U.templateitemname}),B(U,W)):Array.isArray(U)&&c(U)&&B(U,W)}}if(B({data:m,layout:E},""),S.length)return S.map(h)};function c(v){for(var p=0;p<v.length;p++)if(g(v[p]))return!0}function h(v){var p;switch(v.code){case"data":p="The template has no key data.";break;case"layout":p="The template has no key layout.";break;case"missing":v.path?p="There are no templates for item "+v.path+" with name "+v.templateitemname:p="There are no templates for trace "+v.index+", of type "+v.traceType+".";break;case"unused":v.path?p="The template item at "+v.path+" was not used in constructing the plot.":v.dataCount?p="Some of the templates of type "+v.traceType+" were not used. The template has "+v.templateCount+" traces, the data only has "+v.dataCount+" of this type.":p="The template has "+v.templateCount+" traces of type "+v.traceType+" but there are none in the data.";break;case"reused":p="Some of the templates of type "+v.traceType+" were used more than once. The template has "+v.templateCount+" traces, the data has "+v.dataCount+" of this type.";break}return v.msg=p,v}}}),NO=Ye({"src/plot_api/index.js"(X){"use strict";var H=E2();X._doPlot=H._doPlot,X.newPlot=H.newPlot,X.restyle=H.restyle,X.relayout=H.relayout,X.redraw=H.redraw,X.update=H.update,X._guiRestyle=H._guiRestyle,X._guiRelayout=H._guiRelayout,X._guiUpdate=H._guiUpdate,X._storeDirectGUIEdit=H._storeDirectGUIEdit,X.react=H.react,X.extendTraces=H.extendTraces,X.prependTraces=H.prependTraces,X.addTraces=H.addTraces,X.deleteTraces=H.deleteTraces,X.moveTraces=H.moveTraces,X.purge=H.purge,X.addFrames=H.addFrames,X.deleteFrames=H.deleteFrames,X.animate=H.animate,X.setPlotConfig=H.setPlotConfig;var g=b_().getGraphDiv,x=M2().eraseActiveShape;X.deleteActiveShape=function(M){return x(g(M))},X.toImage=PS(),X.validate=FO(),X.downloadImage=IS();var A=BO();X.makeTemplate=A.makeTemplate,X.validateTemplate=A.validateTemplate}}),i1=Ye({"src/traces/scatter/xy_defaults.js"(X,H){"use strict";var g=ta(),x=Hn();H.exports=function(M,e,t,r){var o=r("x"),a=r("y"),i,n=x.getComponentMethod("calendars","handleTraceDefaults");if(n(M,e,["x","y"],t),o){var s=g.minRowLength(o);a?i=Math.min(s,g.minRowLength(a)):(i=s,r("y0"),r("dy"))}else{if(!a)return 0;i=g.minRowLength(a),r("x0"),r("dx")}return e._length=i,i}}}),Qd=Ye({"src/traces/scatter/period_defaults.js"(X,H){"use strict";var g=ta().dateTick0,x=ks(),A=x.ONEWEEK;function M(e,t){return e%A===0?g(t,1):g(t,0)}H.exports=function(t,r,o,a,i){if(i||(i={x:!0,y:!0}),i.x){var n=a("xperiod");n&&(a("xperiod0",M(n,r.xcalendar)),a("xperiodalignment"))}if(i.y){var s=a("yperiod");s&&(a("yperiod0",M(s,r.ycalendar)),a("yperiodalignment"))}}}}),UO=Ye({"src/traces/scatter/stack_defaults.js"(X,H){"use strict";var g=["orientation","groupnorm","stackgaps"];H.exports=function(A,M,e,t){var r=e._scatterStackOpts,o=t("stackgroup");if(o){var a=M.xaxis+M.yaxis,i=r[a];i||(i=r[a]={});var n=i[o],s=!1;n?n.traces.push(M):(n=i[o]={traceIndices:[],traces:[M]},s=!0);for(var c={orientation:M.x&&!M.y?"h":"v"},h=0;h<g.length;h++){var v=g[h],p=v+"Found";if(!n[p]){var T=A[v]!==void 0,l=v==="orientation";if((T||s)&&(n[v]=t(v,c[v]),l&&(n.fillDflt=n[v]==="h"?"tonextx":"tonexty"),T&&(n[p]=!0,!s&&(delete n.traces[0][v],l))))for(var _=0;_<n.traces.length-1;_++){var w=n.traces[_];w._input.fill!==w.fill&&(w.fill=n.fillDflt)}}}return n}}}}),md=Ye({"src/traces/scatter/marker_defaults.js"(X,H){"use strict";var g=Fn(),x=Up().hasColorscale,A=sh(),M=uu();H.exports=function(t,r,o,a,i,n){var s=M.isBubble(t),c=(t.line||{}).color,h;if(n=n||{},c&&(o=c),i("marker.symbol"),i("marker.opacity",s?.7:1),i("marker.size"),n.noAngle||(i("marker.angle"),n.noAngleRef||i("marker.angleref"),n.noStandOff||i("marker.standoff")),i("marker.color",o),x(t,"marker")&&A(t,r,a,i,{prefix:"marker.",cLetter:"c"}),n.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),n.noLine||(c&&!Array.isArray(c)&&r.marker.color!==c?h=c:s?h=g.background:h=g.defaultLine,i("marker.line.color",h),x(t,"marker.line")&&A(t,r,a,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",s?1:0)),s&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),n.gradient){var v=i("marker.gradient.type");v!=="none"&&i("marker.gradient.color")}}}}),Dd=Ye({"src/traces/scatter/line_defaults.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Up().hasColorscale,A=sh();H.exports=function(e,t,r,o,a,i){i||(i={});var n=(e.marker||{}).color;if(n&&n._inputArray&&(n=n._inputArray),a("line.color",r),x(e,"line"))A(e,t,o,a,{prefix:"line.",cLetter:"c"});else{var s=(g(n)?!1:n)||r;a("line.color",s)}a("line.width"),i.noDash||a("line.dash"),i.backoff&&a("line.backoff")}}}),n1=Ye({"src/traces/scatter/line_shape_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e=M("line.shape");e==="spline"&&M("line.smoothing")}}}),zd=Ye({"src/traces/scatter/text_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(x,A,M,e,t){t=t||{},e("textposition"),g.coerceFont(e,"textfont",t.font||M.font,t),t.noSelect||(e("selected.textfont.color"),e("unselected.textfont.color"))}}}),ev=Ye({"src/traces/scatter/fillcolor_defaults.js"(X,H){"use strict";var g=Fn(),x=ta().isArrayOrTypedArray;function A(M){for(var e=g.interpolate(M[0][1],M[1][1],.5),t=2;t<M.length;t++){var r=g.interpolate(M[t-1][1],M[t][1],.5);e=g.interpolate(e,r,M[t-1][0]/M[t][0])}return e}H.exports=function(e,t,r,o,a){a||(a={});var i=!1;if(t.marker){var n=t.marker.color,s=(t.marker.line||{}).color;n&&!x(n)?i=n:s&&!x(s)&&(i=s)}var c;if(a.moduleHasFillgradient){var h=o("fillgradient.type");if(h!=="none"){o("fillgradient.start"),o("fillgradient.stop");var v=o("fillgradient.colorscale");v&&(c=A(v))}}o("fillcolor",g.addOpacity((t.line||{}).color||i||c||r,.5))}}}),jO=Ye({"src/traces/scatter/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=Pc(),M=Tv(),e=uu(),t=i1(),r=Qd(),o=UO(),a=md(),i=Dd(),n=n1(),s=zd(),c=ev(),h=ta().coercePattern;H.exports=function(p,T,l,_){function w(f,P){return g.coerce(p,T,A,f,P)}var S=t(p,T,_,w);if(S||(T.visible=!1),!!T.visible){r(p,T,_,w),w("xhoverformat"),w("yhoverformat"),w("zorder");var E=o(p,T,_,w);_.scattermode==="group"&&T.orientation===void 0&&w("orientation","v");var m=!E&&S<M.PTS_LINESONLY?"lines+markers":"lines";w("text"),w("hovertext"),w("mode",m),e.hasMarkers(T)&&a(p,T,l,_,w,{gradient:!0}),e.hasLines(T)&&(i(p,T,l,_,w,{backoff:!0}),n(p,T,w),w("connectgaps"),w("line.simplify")),e.hasText(T)&&(w("texttemplate"),s(p,T,_,w));var b=[];(e.hasMarkers(T)||e.hasText(T))&&(w("cliponaxis"),w("marker.maxdisplayed"),b.push("points")),w("fill",E?E.fillDflt:"none"),T.fill!=="none"&&(c(p,T,l,w,{moduleHasFillgradient:!0}),e.hasLines(T)||n(p,T,w),h(w,"fillpattern",T.fillcolor,!1));var d=(T.line||{}).color,u=(T.marker||{}).color;(T.fill==="tonext"||T.fill==="toself")&&b.push("fills"),w("hoveron",b.join("+")||"points"),T.hoveron!=="fills"&&w("hovertemplate");var y=x.getComponentMethod("errorbars","supplyDefaults");y(p,T,d||u||l,{axis:"y"}),y(p,T,d||u||l,{axis:"x",inherit:"y"}),g.coerceSelectionMarkerOpacity(T,w)}}}}),Jg=Ye({"src/traces/scatter/grouping_defaults.js"(X,H){"use strict";var g=Yg().getAxisGroup;H.exports=function(A,M,e,t,r){var o=M.orientation,a=M[{v:"x",h:"y"}[o]+"axis"],i=g(e,a)+o,n=e._alignmentOpts||{},s=t("alignmentgroup"),c=n[i];c||(c=n[i]={});var h=c[s];h?h.traces.push(M):h=c[s]={traces:[M],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var v=t("offsetgroup")||"",p=h.offsetGroups,T=p[v];M._offsetIndex=0,(r!=="group"||v)&&(T||(T=p[v]={offsetIndex:Object.keys(p).length}),M._offsetIndex=T.offsetIndex)}}}),RS=Ye({"src/traces/scatter/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=Pc();H.exports=function(e,t){var r,o,a,i=t.scattermode;function n(p){return g.coerce(o._input,o,A,p)}if(t.scattermode==="group")for(a=0;a<e.length;a++)o=e[a],o.type==="scatter"&&(r=o._input,x(r,o,t,n,i));for(a=0;a<e.length;a++){var s=e[a];if(s.type==="scatter"){var c=s.fill;if(!(c==="none"||c==="toself")&&(s.opacity=void 0,c==="tonexty"||c==="tonextx"))for(var h=a-1;h>=0;h--){var v=e[h];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}}}),VO=Ye({"src/traces/scatter/layout_defaults.js"(X,H){"use strict";var g=ta(),x=g2();H.exports=function(A,M){function e(r,o){return g.coerce(A,M,x,r,o)}var t=M.barmode==="group";M.scattermode==="group"&&e("scattergap",t?M.bargap:.2)}}}),tv=Ye({"src/plots/cartesian/align_period.js"(X,H){"use strict";var g=jo(),x=ta(),A=x.dateTime2ms,M=x.incrementMonth,e=ks(),t=e.ONEAVGMONTH;H.exports=function(o,a,i,n){if(a.type!=="date")return{vals:n};var s=o[i+"periodalignment"];if(!s)return{vals:n};var c=o[i+"period"],h;if(g(c)){if(c=+c,c<=0)return{vals:n}}else if(typeof c=="string"&&c.charAt(0)==="M"){var v=+c.substring(1);if(v>0&&Math.round(v)===v)h=v;else return{vals:n}}for(var p=a.calendar,T=s==="start",l=s==="end",_=o[i+"period0"],w=A(_,p)||0,S=[],E=[],m=[],b=n.length,d=0;d<b;d++){var u=n[d],y,f,P;if(h){for(y=Math.round((u-w)/(h*t)),P=M(w,h*y,p);P>u;)P=M(P,-h,p);for(;P<=u;)P=M(P,h,p);f=M(P,-h,p)}else{for(y=Math.round((u-w)/c),P=w+y*c;P>u;)P-=c;for(;P<=u;)P+=c;f=P-c}S[d]=T?f:l?P:(f+P)/2,E[d]=f,m[d]=P}return{vals:S,starts:E,ends:m}}}}),Fd=Ye({"src/traces/scatter/colorscale_calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=uu();H.exports=function(e,t){A.hasLines(t)&&g(t,"line")&&x(e,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),A.hasMarkers(t)&&(g(t,"marker")&&x(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g(t,"marker.line")&&x(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}}}),Av=Ye({"src/traces/scatter/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.texttemplate,A,"txt"),g.mergeArray(M.hovertext,A,"htx"),g.mergeArray(M.customdata,A,"data"),g.mergeArray(M.textposition,A,"tp"),M.textfont&&(g.mergeArrayCastPositive(M.textfont.size,A,"ts"),g.mergeArray(M.textfont.color,A,"tc"),g.mergeArray(M.textfont.family,A,"tf"),g.mergeArray(M.textfont.weight,A,"tw"),g.mergeArray(M.textfont.style,A,"ty"),g.mergeArray(M.textfont.variant,A,"tv"),g.mergeArray(M.textfont.textcase,A,"tC"),g.mergeArray(M.textfont.lineposition,A,"tE"),g.mergeArray(M.textfont.shadow,A,"tS"));var t=M.marker;if(t){g.mergeArrayCastPositive(t.size,A,"ms"),g.mergeArrayCastPositive(t.opacity,A,"mo"),g.mergeArray(t.symbol,A,"mx"),g.mergeArray(t.angle,A,"ma"),g.mergeArray(t.standoff,A,"mf"),g.mergeArray(t.color,A,"mc");var r=t.line;t.line&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"));var o=t.gradient;o&&o.type!=="none"&&(g.mergeArray(o.type,A,"mgt"),g.mergeArray(o.color,A,"mgc"))}}}}),Od=Ye({"src/traces/scatter/calc_selection.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){g.isArrayOrTypedArray(M.selectedpoints)&&g.tagSelected(A,M)}}}),Bd=Ye({"src/traces/scatter/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Co(),M=tv(),e=ks().BADNUM,t=uu(),r=Fd(),o=Av(),a=Od();function i(p,T){var l=p._fullLayout,_=T._xA=A.getFromId(p,T.xaxis||"x","x"),w=T._yA=A.getFromId(p,T.yaxis||"y","y"),S=_.makeCalcdata(T,"x"),E=w.makeCalcdata(T,"y"),m=M(T,_,"x",S),b=M(T,w,"y",E),d=m.vals,u=b.vals,y=T._length,f=new Array(y),P=T.ids,L=v(T,l,_,w),z=!1,F,B,O,I,N,U;c(l,T);var W="x",Q="y",ue;if(L)x.pushUnique(L.traceIndices,T.index),F=L.orientation==="v",F?(Q="s",ue="x"):(W="s",ue="y"),N=L.stackgaps==="interpolate";else{var se=s(T,y);n(p,T,_,w,d,u,se)}var he=!!T.xperiodalignment,G=!!T.yperiodalignment;for(B=0;B<y;B++){var $=f[B]={},J=g(d[B]),Z=g(u[B]);J&&Z?($[W]=d[B],$[Q]=u[B],he&&($.orig_x=S[B],$.xEnd=m.ends[B],$.xStart=m.starts[B]),G&&($.orig_y=E[B],$.yEnd=b.ends[B],$.yStart=b.starts[B])):L&&(F?J:Z)?($[ue]=F?d[B]:u[B],$.gap=!0,N?($.s=e,z=!0):$.s=0):$[W]=$[Q]=e,P&&($.id=String(P[B]))}if(o(f,T),r(p,T),a(f,T),L){for(B=0;B<f.length;)f[B][ue]===e?f.splice(B,1):B++;if(x.sort(f,function(ee,ie){return ee[ue]-ie[ue]||ee.i-ie.i}),z){for(B=0;B<f.length-1&&f[B].gap;)B++;for(U=f[B].s,U||(U=f[B].s=0),O=0;O<B;O++)f[O].s=U;for(I=f.length-1;I>B&&f[I].gap;)I--;for(U=f[I].s,O=f.length-1;O>I;O--)f[O].s=U;for(;B<I;)if(B++,f[B].gap){for(O=B+1;f[O].gap;)O++;for(var re=f[B-1][ue],ne=f[B-1].s,j=(f[O].s-ne)/(f[O][ue]-re);B<O;)f[B].s=ne+(f[B][ue]-re)*j,B++}}}return f}function n(p,T,l,_,w,S,E){var m=T._length,b=p._fullLayout,d=l._id,u=_._id,y=b._firstScatter[h(T)]===T.uid,f=(v(T,b,l,_)||{}).orientation,P=T.fill;l._minDtick=0,_._minDtick=0;var L={padded:!0},z={padded:!0};E&&(L.ppad=z.ppad=E);var F=m<2||w[0]!==w[m-1]||S[0]!==S[m-1];F&&(P==="tozerox"||P==="tonextx"&&(y||f==="h"))?L.tozero=!0:!(T.error_y||{}).visible&&(P==="tonexty"||P==="tozeroy"||!t.hasMarkers(T)&&!t.hasText(T))&&(L.padded=!1,L.ppad=0),F&&(P==="tozeroy"||P==="tonexty"&&(y||f==="v"))?z.tozero=!0:(P==="tonextx"||P==="tozerox")&&(z.padded=!1),d&&(T._extremes[d]=A.findExtremes(l,w,L)),u&&(T._extremes[u]=A.findExtremes(_,S,z))}function s(p,T){if(t.hasMarkers(p)){var l=p.marker,_=1.6*(p.marker.sizeref||1),w;if(p.marker.sizemode==="area"?w=function(d){return Math.max(Math.sqrt((d||0)/_),3)}:w=function(d){return Math.max((d||0)/_,3)},x.isArrayOrTypedArray(l.size)){var S={type:"linear"};A.setConvert(S);for(var E=S.makeCalcdata(p.marker,"size"),m=new Array(T),b=0;b<T;b++)m[b]=w(E[b]);return m}else return w(l.size)}}function c(p,T){var l=h(T),_=p._firstScatter;_[l]||(_[l]=T.uid)}function h(p){var T=p.stackgroup;return p.xaxis+p.yaxis+p.type+(T?"-"+T:"")}function v(p,T,l,_){var w=p.stackgroup;if(w){var S=T._scatterStackOpts[l._id+_._id][w],E=S.orientation==="v"?_:l;if(E.type==="linear"||E.type==="log")return S}}H.exports={calc:i,calcMarkerSize:s,calcAxisExpansion:n,setFirstScatter:c,getStackOpts:v}}}),qO=Ye({"src/traces/bar/sieve.js"(X,H){"use strict";H.exports=x;var g=ta().distinctVals;function x(A,M){this.traces=A,this.sepNegVal=M.sepNegVal,this.overlapNoMerge=M.overlapNoMerge;for(var e=1/0,t=M.posAxis._id.charAt(0),r=[],o=0;o<A.length;o++){for(var a=A[o],i=0;i<a.length;i++){var n=a[i],s=n.p;s===void 0&&(s=n[t]),s!==void 0&&r.push(s)}a[0]&&a[0].width1&&(e=Math.min(a[0].width1,e))}this.positions=r;var c=g(r);this.distinctPositions=c.vals,c.vals.length===1&&e!==1/0?this.minDiff=e:this.minDiff=Math.min(c.minDiff,e);var h=(M.posAxis||{}).type;(h==="category"||h==="multicategory")&&(this.minDiff=1),this.binWidth=this.minDiff,this.bins={}}x.prototype.put=function(M,e,t){var r=this.getLabel(M,e,t),o=this.bins[r]||0;return this.bins[r]=o+t,o},x.prototype.get=function(M,e,t){var r=this.getLabel(M,e,t);return this.bins[r]||0},x.prototype.getLabel=function(M,e,t){var r=t<0&&this.sepNegVal?"v":"^",o=this.overlapNoMerge?M:Math.round(M/this.binWidth);return r+o+"g"+e}}}),$g=Ye({"src/traces/bar/cross_trace_calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=Hn(),e=Co(),t=Yg().getAxisGroup,r=qO();function o(f,P){for(var L=P.xaxis,z=P.yaxis,F=f._fullLayout,B=f._fullData,O=f.calcdata,I=[],N=[],U=0;U<B.length;U++){var W=B[U];if(W.visible===!0&&M.traceIs(W,"bar")&&W.xaxis===L._id&&W.yaxis===z._id&&(W.orientation==="h"?I.push(O[U]):N.push(O[U]),W._computePh))for(var Q=f.calcdata[U],ue=0;ue<Q.length;ue++)typeof Q[ue].ph0=="function"&&(Q[ue].ph0=Q[ue].ph0()),typeof Q[ue].ph1=="function"&&(Q[ue].ph1=Q[ue].ph1())}var se={xCat:L.type==="category"||L.type==="multicategory",yCat:z.type==="category"||z.type==="multicategory",mode:F.barmode,norm:F.barnorm,gap:F.bargap,groupgap:F.bargroupgap};a(f,L,z,N,se),a(f,z,L,I,se)}function a(f,P,L,z,F){if(z.length){var B,O,I,N,U;switch(s(L,z),F.mode){case"overlay":c(f,P,L,z,F);break;case"group":for(B=[],O=[],I=0;I<z.length;I++)N=z[I],U=N[0].trace,U.offset===void 0?O.push(N):B.push(N);O.length&&h(f,P,L,O,F),B.length&&c(f,P,L,B,F);break;case"stack":case"relative":for(B=[],O=[],I=0;I<z.length;I++)N=z[I],U=N[0].trace,U.base===void 0?O.push(N):B.push(N);n(O),O.length&&v(f,P,L,O,F),B.length&&c(f,P,L,B,F);break}i(z),u(z,P)}}function i(f){var P,L,z,F,B,O,I;for(P=0;P<f.length;P++)L=f[P],z=L[0].trace,F=L[0].t,F.cornerradiusvalue===void 0&&(B=z.marker?z.marker.cornerradius:void 0,B!==void 0&&(O=g(B)?+B:+B.slice(0,-1),I=g(B)?"px":"%",F.cornerradiusvalue=O,F.cornerradiusform=I))}function n(f){if(!(f.length<2)){var P,L,z,F,B,O,I;for(P=0;P<f.length&&(L=f[P],z=L[0].trace,B=z.marker?z.marker.cornerradius:void 0,B===void 0);P++);if(B!==void 0)for(O=g(B)?+B:+B.slice(0,-1),I=g(B)?"px":"%",P=0;P<f.length;P++)L=f[P],F=L[0].t,F.cornerradiusvalue=O,F.cornerradiusform=I}}function s(f,P){var L,z;for(L=0;L<P.length;L++){var F=P[L],B=F[0].trace,O=B.type==="funnel"?B._base:B.base,I,N=B.orientation==="h"?B.xcalendar:B.ycalendar,U=f.type==="category"||f.type==="multicategory"?function(){return null}:f.d2c;if(x(O)){for(z=0;z<Math.min(O.length,F.length);z++)I=U(O[z],0,N),g(I)?(F[z].b=+I,F[z].hasB=1):F[z].b=0;for(;z<F.length;z++)F[z].b=0}else{I=U(O,0,N);var W=g(I);for(I=W?I:0,z=0;z<F.length;z++)F[z].b=I,W&&(F[z].hasB=1)}}}function c(f,P,L,z,F){for(var B=0;B<z.length;B++){var O=z[B],I=new r([O],{posAxis:P,sepNegVal:!1,overlapNoMerge:!F.norm});p(f,P,I,F),F.norm?(E(I),b(L,I,F)):w(L,I)}}function h(f,P,L,z,F){var B=new r(z,{posAxis:P,sepNegVal:!1,overlapNoMerge:!F.norm});p(f,P,B,F),m(B,P),F.norm?(E(B),b(L,B,F)):w(L,B)}function v(f,P,L,z,F){var B=new r(z,{posAxis:P,sepNegVal:F.mode==="relative",overlapNoMerge:!(F.norm||F.mode==="stack"||F.mode==="relative")});p(f,P,B,F),S(L,B,F);for(var O=0;O<z.length;O++)for(var I=z[O],N=I[0].t.offsetindex,U=0;U<I.length;U++){var W=I[U];if(W.s!==A){var Q=W.b+W.s===B.get(W.p,N,W.s);Q&&(W._outmost=!0)}}F.norm&&b(L,B,F)}function p(f,P,L,z){var F=f._fullLayout,B=L.positions,O=L.distinctPositions,I=L.minDiff,N=L.traces,U=N.length,W=B.length!==O.length,Q=I*(1-z.gap),ue,se,he,G;if(P._id==="angularaxis")ue=Q,se=ue*(1-(z.groupgap||0)),he=-se/2;else{var $=t(F,P._id)+N[0][0].trace.orientation;G=F._alignmentOpts[$]||{}}for(var J=0;J<U;J++){var Z=N[J],re=Z[0].trace;if(P._id!=="angularaxis"){var ne=G[re.alignmentgroup]||{},j=Object.keys(ne.offsetGroups||{}).length;j?ue=Q/j:ue=W?Q/U:Q,se=ue*(1-(z.groupgap||0)),j?he=((2*re._offsetIndex+1-j)*ue-se)/2:he=W?((2*J+1-U)*ue-se)/2:-se/2}var ee=Z[0].t;ee.barwidth=se,ee.offsetindex=re._offsetIndex||0,ee.poffset=he,ee.bargroupwidth=Q,ee.bardelta=I}L.binWidth=N[0][0].t.barwidth/100,T(L),l(P,L),P._id==="angularaxis"?_(P,L):_(P,L,W)}function T(f){var P=f.traces,L,z;for(L=0;L<P.length;L++){var F=P[L],B=F[0],O=B.trace,I=B.t,N=O._offset||O.offset,U=I.poffset,W;if(x(N)){for(W=Array.prototype.slice.call(N,0,F.length),z=0;z<W.length;z++)g(W[z])||(W[z]=U);for(z=W.length;z<F.length;z++)W.push(U);I.poffset=W}else N!==void 0&&(I.poffset=N);var Q=O._width||O.width,ue=I.barwidth;if(x(Q)){var se=Array.prototype.slice.call(Q,0,F.length);for(z=0;z<se.length;z++)g(se[z])||(se[z]=ue);for(z=se.length;z<F.length;z++)se.push(ue);if(I.barwidth=se,N===void 0){for(W=[],z=0;z<F.length;z++)W.push(U+(ue-se[z])/2);I.poffset=W}}else Q!==void 0&&(I.barwidth=Q,N===void 0&&(I.poffset=U+(ue-Q)/2))}}function l(f,P){for(var L=P.traces,z=y(f),F=0;F<L.length;F++)for(var B=L[F],O=B[0].t,I=O.poffset,N=x(I),U=O.barwidth,W=x(U),Q=0;Q<B.length;Q++){var ue=B[Q],se=ue.w=W?U[Q]:U;ue.p===void 0&&(ue.p=ue[z],ue["orig_"+z]=ue[z]);var he=(N?I[Q]:I)+se/2;ue[z]=ue.p+he}}function _(f,P,L){var z=P.traces,F=P.minDiff,B=F/2;e.minDtick(f,P.minDiff,P.distinctPositions[0],L);for(var O=0;O<z.length;O++){var I=z[O],N=I[0],U=N.trace,W=[],Q,ue,se,he;for(he=0;he<I.length;he++)Q=I[he],ue=Q.p-B,se=Q.p+B,W.push(ue,se);if(U.width||U.offset){var G=N.t,$=G.poffset,J=G.barwidth,Z=x($),re=x(J);for(he=0;he<I.length;he++){Q=I[he];var ne=Z?$[he]:$,j=re?J[he]:J;ue=Q.p+ne,se=ue+j,W.push(ue,se)}}U._extremes[f._id]=e.findExtremes(f,W,{padded:!1})}}function w(f,P){for(var L=P.traces,z=y(f),F=0;F<L.length;F++){for(var B=L[F],O=B[0].trace,I=O.type==="scatter",N=O.orientation==="v",U=[],W=!1,Q=0;Q<B.length;Q++){var ue=B[Q],se=I?0:ue.b,he=I?N?ue.y:ue.x:se+ue.s;ue[z]=he,U.push(he),ue.hasB&&U.push(se),(!ue.hasB||!ue.b)&&(W=!0)}O._extremes[f._id]=e.findExtremes(f,U,{tozero:W,padded:!0})}}function S(f,P,L){var z=y(f),F=P.traces,B,O,I,N,U,W,Q;for(N=0;N<F.length;N++)if(B=F[N],O=B[0].trace,O.type==="funnel")for(Q=B[0].t.offsetindex,U=0;U<B.length;U++)W=B[U],W.s!==A&&P.put(W.p,Q,-.5*W.s);for(N=0;N<F.length;N++){B=F[N],O=B[0].trace,I=O.type==="funnel",Q=O.type==="barpolar"?0:B[0].t.offsetindex;var ue=[];for(U=0;U<B.length;U++)if(W=B[U],W.s!==A){var se;I?se=W.s:se=W.s+W.b;var he=P.put(W.p,Q,se),G=he+se;W.b=he,W[z]=G,L.norm||(ue.push(G),W.hasB&&ue.push(he))}L.norm||(O._extremes[f._id]=e.findExtremes(f,ue,{tozero:!0,padded:!0}))}}function E(f){for(var P=f.traces,L=0;L<P.length;L++)for(var z=P[L],F=z[0].t.offsetindex,B=0;B<z.length;B++){var O=z[B];O.s!==A&&f.put(O.p,F,O.b+O.s)}}function m(f,P){for(var L=f.traces,z=0;z<L.length;z++){var F=L[z],B=F[0].trace,O=F[0].t.offsetindex;if(B.base===void 0)for(var I=new r([F],{posAxis:P,sepNegVal:!0,overlapNoMerge:!0}),N=0;N<F.length;N++){var U=F[N];if(U.p!==A){var W=I.put(U.p,O,U.b+U.s);W&&(U.b=W)}}}}function b(f,P,L){var z=P.traces,F=y(f),B=L.norm==="fraction"?1:100,O=B/1e9,I=f.l2c(f.c2l(0)),N=L.mode==="stack"?B:I;function U(ee){return g(f.c2l(ee))&&(ee<I-O||ee>N+O||!g(I))}for(var W=0;W<z.length;W++){for(var Q=z[W],ue=Q[0].t.offsetindex,se=Q[0].trace,he=[],G=!1,$=!1,J=0;J<Q.length;J++){var Z=Q[J];if(Z.s!==A){var re=Math.abs(B/P.get(Z.p,ue,Z.s));Z.b*=re,Z.s*=re;var ne=Z.b,j=ne+Z.s;Z[F]=j,he.push(j),$=$||U(j),Z.hasB&&(he.push(ne),$=$||U(ne)),(!Z.hasB||!Z.b)&&(G=!0)}}se._extremes[f._id]=e.findExtremes(f,he,{tozero:G,padded:$})}}function d(f,P,L,z){for(var F=y(z),B=0;B<f.length;B++)for(var O=f[B],I=0;I<O.length;I++){var N=O[I],U=N[F];N._sMin=P[U],N._sMax=L[U]}}function u(f,P){var L=y(P),z={},F,B,O,I=1/0,N=-1/0;for(F=0;F<f.length;F++)for(O=f[F],B=0;B<O.length;B++){var U=O[B].p;g(U)&&(I=Math.min(I,U),N=Math.max(N,U))}var W=1e4/(N-I),Q=z.round=function(fe){return String(Math.round(W*(fe-I)))},ue={},se={},he=f.some(function(fe){var be=fe[0].trace;return"marker"in be&&be.marker.cornerradius});for(F=0;F<f.length;F++){O=f[F],O[0].t.extents=z;var G=O[0].t.poffset,$=x(G);for(B=0;B<O.length;B++){var J=O[B],Z=J[L]-J.w/2;if(g(Z)){var re=J[L]+J.w/2,ne=Q(J.p);z[ne]?z[ne]=[Math.min(Z,z[ne][0]),Math.max(re,z[ne][1])]:z[ne]=[Z,re]}if(J.p0=J.p+($?G[B]:G),J.p1=J.p0+J.w,J.s0=J.b,J.s1=J.s0+J.s,he){var j=Math.min(J.s0,J.s1)||0,ee=Math.max(J.s0,J.s1)||0,ie=J[L];ue[ie]=ie in ue?Math.min(ue[ie],j):j,se[ie]=ie in se?Math.max(se[ie],ee):ee}}}he&&d(f,ue,se,P)}function y(f){return f._id.charAt(0)}H.exports={crossTraceCalc:o,setGroupPositions:a}}}),HO=Ye({"src/traces/scatter/cross_trace_calc.js"(X,H){"use strict";var g=Bd(),x=$g().setGroupPositions;function A(t,r){for(var o=r.xaxis,a=r.yaxis,i=t._fullLayout,n=t._fullData,s=t.calcdata,c=[],h=[],v=0;v<n.length;v++){var p=n[v];p.visible===!0&&p.type==="scatter"&&p.xaxis===o._id&&p.yaxis===a._id&&(p.orientation==="h"?c.push(s[v]):p.orientation==="v"&&h.push(s[v]))}var T={mode:i.scattermode,gap:i.scattergap};x(t,o,a,h,T),x(t,a,o,c,T)}H.exports=function(r,o){r._fullLayout.scattermode==="group"&&A(r,o);var a=o.xaxis,i=o.yaxis,n=a._id+i._id,s=r._fullLayout._scatterStackOpts[n];if(s){var c=r.calcdata,h,v,p,T,l,_,w,S,E,m,b,d,u,y,f;for(var P in s){m=s[P];var L=m.traceIndices;if(L.length){for(b=m.stackgaps==="interpolate",d=m.groupnorm,m.orientation==="v"?(u="x",y="y"):(u="y",y="x"),f=new Array(L.length),h=0;h<f.length;h++)f[h]=!1;_=c[L[0]];var z=new Array(_.length);for(h=0;h<_.length;h++)z[h]=_[h][u];for(h=1;h<L.length;h++){for(l=c[L[h]],v=p=0;v<l.length;v++){for(w=l[v][u];w>z[p]&&p<z.length;p++)M(l,v,z[p],h,f,b,u),v++;if(w!==z[p]){for(T=0;T<h;T++)M(c[L[T]],p,w,T,f,b,u);z.splice(p,0,w)}p++}for(;p<z.length;p++)M(l,v,z[p],h,f,b,u),v++}var F=z.length;for(v=0;v<_.length;v++){for(S=_[v][y]=_[v].s,h=1;h<L.length;h++)l=c[L[h]],l[0].trace._rawLength=l[0].trace._length,l[0].trace._length=F,S+=l[v].s,l[v][y]=S;if(d)for(E=(d==="fraction"?S:S/100)||1,h=0;h<L.length;h++){var B=c[L[h]][v];B[y]/=E,B.sNorm=B.s/E}}for(h=0;h<L.length;h++){l=c[L[h]];var O=l[0].trace,I=g.calcMarkerSize(O,O._rawLength),N=Array.isArray(I);if(I&&f[h]||N){var U=I;for(I=new Array(F),v=0;v<F;v++)I[v]=l[v].gap?0:N?U[l[v].i]:U}var W=new Array(F),Q=new Array(F);for(v=0;v<F;v++)W[v]=l[v].x,Q[v]=l[v].y;g.calcAxisExpansion(r,O,a,i,W,Q,I),l[0].t.orientation=m.orientation}}}}};function M(t,r,o,a,i,n,s){i[a]=!0;var c={i:null,gap:!0,s:0};if(c[s]=o,t.splice(r,0,c),r&&o===t[r-1][s]){var h=t[r-1];c.s=h.s,c.i=h.i,c.gap=h.gap}else n&&(c.s=e(t,r,o,s));r||(t[0].t=t[1].t,t[0].trace=t[1].trace,delete t[1].t,delete t[1].trace)}function e(t,r,o,a){var i=t[r-1],n=t[r+1];return n?i?i.s+(n.s-i.s)*(o-i[a])/(n[a]-i[a]):n.s:i.s}}}),DS=Ye({"src/traces/scatter/line_points.js"(X,H){"use strict";var g=Bo(),x=ks(),A=x.BADNUM,M=x.LOG_CLIP,e=M+.5,t=M-.5,r=ta(),o=r.segmentsIntersect,a=r.constrain,i=Tv();H.exports=function(s,c){var h=c.trace||{},v=c.xaxis,p=c.yaxis,T=v.type==="log",l=p.type==="log",_=v._length,w=p._length,S=c.backoff,E=h.marker,m=c.connectGaps,b=c.baseTolerance,d=c.shape,u=d==="linear",y=h.fill&&h.fill!=="none",f=[],P=i.minTolerance,L=s.length,z=new Array(L),F=0,B,O,I,N,U,W,Q,ue,se,he,G,$,J,Z,re,ne;function j(dt){var xt=s[dt];if(!xt)return!1;var It=c.linearized?v.l2p(xt.x):v.c2p(xt.x),Bt=c.linearized?p.l2p(xt.y):p.c2p(xt.y);if(It===A){if(T&&(It=v.c2p(xt.x,!0)),It===A)return!1;l&&Bt===A&&(It*=Math.abs(v._m*w*(v._m>0?e:t)/(p._m*_*(p._m>0?e:t)))),It*=1e3}if(Bt===A){if(l&&(Bt=p.c2p(xt.y,!0)),Bt===A)return!1;Bt*=1e3}return[It,Bt]}function ee(dt,xt,It,Bt){var Gt=It-dt,Kt=Bt-xt,sr=.5-dt,sa=.5-xt,Aa=Gt*Gt+Kt*Kt,La=Gt*sr+Kt*sa;if(La>0&&La<Aa){var ka=sr*Kt-sa*Gt;if(ka*ka<Aa)return!0}}var ie,fe;function be(dt,xt){var It=dt[0]/_,Bt=dt[1]/w,Gt=Math.max(0,-It,It-1,-Bt,Bt-1);return Gt&&ie!==void 0&&ee(It,Bt,ie,fe)&&(Gt=0),Gt&&xt&&ee(It,Bt,xt[0]/_,xt[1]/w)&&(Gt=0),(1+i.toleranceGrowth*Gt)*b}function Ae(dt,xt){var It=dt[0]-xt[0],Bt=dt[1]-xt[1];return Math.sqrt(It*It+Bt*Bt)}var Be=i.maxScreensAway,Ie=-_*Be,Ze=_*(1+Be),at=-w*Be,it=w*(1+Be),et=[[Ie,at,Ze,at],[Ze,at,Ze,it],[Ze,it,Ie,it],[Ie,it,Ie,at]],lt,Me,ge,ce,ze,tt;function nt(dt,xt){for(var It=[],Bt=0,Gt=0;Gt<4;Gt++){var Kt=et[Gt],sr=o(dt[0],dt[1],xt[0],xt[1],Kt[0],Kt[1],Kt[2],Kt[3]);sr&&(!Bt||Math.abs(sr.x-It[0][0])>1||Math.abs(sr.y-It[0][1])>1)&&(sr=[sr.x,sr.y],Bt&&Ae(sr,dt)<Ae(It[0],dt)?It.unshift(sr):It.push(sr),Bt++)}return It}function Qe(dt){if(dt[0]<Ie||dt[0]>Ze||dt[1]<at||dt[1]>it)return[a(dt[0],Ie,Ze),a(dt[1],at,it)]}function Ct(dt,xt){if(dt[0]===xt[0]&&(dt[0]===Ie||dt[0]===Ze)||dt[1]===xt[1]&&(dt[1]===at||dt[1]===it))return!0}function St(dt,xt){var It=[],Bt=Qe(dt),Gt=Qe(xt);return Bt&&Gt&&Ct(Bt,Gt)||(Bt&&It.push(Bt),Gt&&It.push(Gt)),It}function Ot(dt,xt,It){return function(Bt,Gt){var Kt=Qe(Bt),sr=Qe(Gt),sa=[];if(Kt&&sr&&Ct(Kt,sr))return sa;Kt&&sa.push(Kt),sr&&sa.push(sr);var Aa=2*r.constrain((Bt[dt]+Gt[dt])/2,xt,It)-((Kt||Bt)[dt]+(sr||Gt)[dt]);if(Aa){var La;Kt&&sr?La=Aa>0==Kt[dt]>sr[dt]?Kt:sr:La=Kt||sr,La[dt]+=Aa}return sa}}var jt;d==="linear"||d==="spline"?jt=nt:d==="hv"||d==="vh"?jt=St:d==="hvh"?jt=Ot(0,Ie,Ze):d==="vhv"&&(jt=Ot(1,at,it));function ur(dt,xt){var It=xt[0]-dt[0],Bt=(xt[1]-dt[1])/It,Gt=(dt[1]*xt[0]-xt[1]*dt[0])/It;return Gt>0?[Bt>0?Ie:Ze,it]:[Bt>0?Ze:Ie,at]}function ar(dt){var xt=dt[0],It=dt[1],Bt=xt===z[F-1][0],Gt=It===z[F-1][1];if(!(Bt&&Gt))if(F>1){var Kt=xt===z[F-2][0],sr=It===z[F-2][1];Bt&&(xt===Ie||xt===Ze)&&Kt?sr?F--:z[F-1]=dt:Gt&&(It===at||It===it)&&sr?Kt?F--:z[F-1]=dt:z[F++]=dt}else z[F++]=dt}function Cr(dt){z[F-1][0]!==dt[0]&&z[F-1][1]!==dt[1]&&ar([ge,ce]),ar(dt),ze=null,ge=ce=0}var vr=r.isArrayOrTypedArray(E);function _r(dt){if(dt&&S&&(dt.i=B,dt.d=s,dt.trace=h,dt.marker=vr?E[dt.i]:E,dt.backoff=S),ie=dt[0]/_,fe=dt[1]/w,lt=dt[0]<Ie?Ie:dt[0]>Ze?Ze:0,Me=dt[1]<at?at:dt[1]>it?it:0,lt||Me){if(!F)z[F++]=[lt||dt[0],Me||dt[1]];else if(ze){var xt=jt(ze,dt);xt.length>1&&(Cr(xt[0]),z[F++]=xt[1])}else tt=jt(z[F-1],dt)[0],z[F++]=tt;var It=z[F-1];lt&&Me&&(It[0]!==lt||It[1]!==Me)?(ze&&(ge!==lt&&ce!==Me?ar(ge&&ce?ur(ze,dt):[ge||lt,ce||Me]):ge&&ce&&ar([ge,ce])),ar([lt,Me])):ge-lt&&ce-Me&&ar([lt||ge,Me||ce]),ze=dt,ge=lt,ce=Me}else ze&&Cr(jt(ze,dt)[0]),z[F++]=dt}for(B=0;B<L;B++)if(O=j(B),!!O){for(F=0,ze=null,_r(O),B++;B<L;B++){if(N=j(B),!N){if(m)continue;break}if(!u||!c.simplify){_r(N);continue}var yt=j(B+1);if(he=Ae(N,O),!(!(y&&(F===0||F===L-1))&&he<be(N,yt)*P)){for(ue=[(N[0]-O[0])/he,(N[1]-O[1])/he],U=O,G=he,$=Z=re=0,Q=!1,I=N,B++;B<s.length;B++){if(W=yt,yt=j(B+1),!W){if(m)continue;break}if(se=[W[0]-O[0],W[1]-O[1]],ne=se[0]*ue[1]-se[1]*ue[0],Z=Math.min(Z,ne),re=Math.max(re,ne),re-Z>be(W,yt))break;I=W,J=se[0]*ue[0]+se[1]*ue[1],J>G?(G=J,N=W,Q=!1):J<$&&($=J,U=W,Q=!0)}if(Q?(_r(N),I!==U&&_r(U)):(U!==O&&_r(U),I!==N&&_r(N)),_r(I),B>=s.length||!W)break;_r(W),O=W}}ze&&ar([ge||ze[0],ce||ze[1]]),f.push(z.slice(0,F))}var Fe=d.slice(d.length-1);if(S&&Fe!=="h"&&Fe!=="v"){for(var Ke=!1,Ne=-1,Ee=[],Ve=0;Ve<f.length;Ve++)for(var ke=0;ke<f[Ve].length-1;ke++){var Te=f[Ve][ke],Le=f[Ve][ke+1],rt=g.applyBackoff(Le,Te);(rt[0]!==Le[0]||rt[1]!==Le[1])&&(Ke=!0),Ee[Ne+1]||(Ne++,Ee[Ne]=[Te,[rt[0],rt[1]]])}return Ke?Ee:f}return f}}}),zS=Ye({"src/traces/scatter/link_traces.js"(X,H){"use strict";var g={tonextx:1,tonexty:1,tonext:1};H.exports=function(A,M,e){var t,r,o,a,i,n={},s=!1,c=-1,h=0,v=-1;for(r=0;r<e.length;r++)t=e[r][0].trace,o=t.stackgroup||"",o?o in n?i=n[o]:(i=n[o]=h,h++):t.fill in g&&v>=0?i=v:(i=v=h,h++),i<c&&(s=!0),t._groupIndex=c=i;var p=e.slice();s&&p.sort(function(l,_){var w=l[0].trace,S=_[0].trace;return w._groupIndex-S._groupIndex||w.index-S.index});var T={};for(r=0;r<p.length;r++)t=p[r][0].trace,o=t.stackgroup||"",t.visible===!0?(t._nexttrace=null,t.fill in g&&(a=T[o],t._prevtrace=a||null,a&&(a._nexttrace=t)),t._ownfill=t.fill&&(t.fill.substr(0,6)==="tozero"||t.fill==="toself"||t.fill.substr(0,2)==="to"&&!t._prevtrace),T[o]=t):t._prevtrace=t._nexttrace=t._ownfill=null;return p}}}),o1=Ye({"src/traces/scatter/plot.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=A.ensureSingle,e=A.identity,t=Bo(),r=uu(),o=DS(),a=zS(),i=C_().tester;H.exports=function(v,p,T,l,_,w){var S,E,m=!_,b=!!_&&_.duration>0,d=a(v,p,T);if(S=l.selectAll("g.trace").data(d,function(y){return y[0].trace.uid}),S.enter().append("g").attr("class",function(y){return"trace scatter trace"+y[0].trace.uid}).style("stroke-miterlimit",2),S.order(),n(v,S,p),b){w&&(E=w());var u=g.transition().duration(_.duration).ease(_.easing).each("end",function(){E&&E()}).each("interrupt",function(){E&&E()});u.each(function(){l.selectAll("g.trace").each(function(y,f){s(v,f,p,y,d,this,_)})})}else S.each(function(y,f){s(v,f,p,y,d,this,_)});m&&S.exit().remove(),l.selectAll("path:not([d])").remove()};function n(h,v,p){v.each(function(T){var l=M(g.select(this),"g","fills");t.setClipUrl(l,p.layerClipId,h);var _=T[0].trace,w=[];_._ownfill&&w.push("_ownFill"),_._nexttrace&&w.push("_nextFill");var S=l.selectAll("g").data(w,e);S.enter().append("g"),S.exit().each(function(E){_[E]=null}).remove(),S.order().each(function(E){_[E]=M(g.select(this),"path","js-fill")})})}function s(h,v,p,T,l,_,w){var S=h._context.staticPlot,E;c(h,v,p,T,l);var m=!!w&&w.duration>0;function b(ar){return m?ar.transition():ar}var d=p.xaxis,u=p.yaxis,y=T[0].trace,f=y.line,P=g.select(_),L=M(P,"g","errorbars"),z=M(P,"g","lines"),F=M(P,"g","points"),B=M(P,"g","text");if(x.getComponentMethod("errorbars","plot")(h,L,p,w),y.visible!==!0)return;b(P).style("opacity",y.opacity);var O,I,N=y.fill.charAt(y.fill.length-1);N!=="x"&&N!=="y"&&(N="");var U,W;N==="y"?(U=1,W=u.c2p(0,!0)):N==="x"&&(U=0,W=d.c2p(0,!0)),T[0][p.isRangePlot?"nodeRangePlot3":"node3"]=P;var Q="",ue=[],se=y._prevtrace,he=null,G=null;se&&(Q=se._prevRevpath||"",I=se._nextFill,ue=se._ownPolygons,he=se._fillsegments,G=se._fillElement);var $,J,Z="",re="",ne,j,ee,ie,fe,be,Ae=[];y._polygons=[];var Be=[],Ie=[],Ze=A.noop;if(O=y._ownFill,r.hasLines(y)||y.fill!=="none"){I&&I.datum(T),["hv","vh","hvh","vhv"].indexOf(f.shape)!==-1?(ne=t.steps(f.shape),j=t.steps(f.shape.split("").reverse().join(""))):f.shape==="spline"?ne=j=function(ar){var Cr=ar[ar.length-1];return ar.length>1&&ar[0][0]===Cr[0]&&ar[0][1]===Cr[1]?t.smoothclosed(ar.slice(1),f.smoothing):t.smoothopen(ar,f.smoothing)}:ne=j=function(ar){return"M"+ar.join("L")},ee=function(ar){return j(ar.reverse())},Ie=o(T,{xaxis:d,yaxis:u,trace:y,connectGaps:y.connectgaps,baseTolerance:Math.max(f.width||1,3)/4,shape:f.shape,backoff:f.backoff,simplify:f.simplify,fill:y.fill}),Be=new Array(Ie.length);var at=0;for(E=0;E<Ie.length;E++){var it,et=Ie[E];!it||!N?(it=et.slice(),Be[at]=it,at++):it.push.apply(it,et)}y._fillElement=null,y._fillExclusionElement=G,y._fillsegments=Be.slice(0,at),Be=y._fillsegments,Ie.length&&(ie=Ie[0][0].slice(),fe=Ie[Ie.length-1],be=fe[fe.length-1].slice()),Ze=function(ar){return function(Cr){if($=ne(Cr),J=ee(Cr),Z?N?(Z+="L"+$.substr(1),re=J+("L"+re.substr(1))):(Z+="Z"+$,re=J+"Z"+re):(Z=$,re=J),r.hasLines(y)){var vr=g.select(this);if(vr.datum(T),ar)b(vr.style("opacity",0).attr("d",$).call(t.lineGroupStyle)).style("opacity",1);else{var _r=b(vr);_r.attr("d",$),t.singleLineStyle(T,_r)}}}}}var lt=z.selectAll(".js-line").data(Ie);b(lt.exit()).style("opacity",0).remove(),lt.each(Ze(!1)),lt.enter().append("path").classed("js-line",!0).style("vector-effect",S?"none":"non-scaling-stroke").call(t.lineGroupStyle).each(Ze(!0)),t.setClipUrl(lt,p.layerClipId,h);function Me(ar){b(ar).attr("d","M0,0Z")}var ge=function(){var ar=new Array(Be.length);for(E=0;E<Be.length;E++)ar[E]=i(Be[E]);return ar},ce=function(ar){var Cr,vr;if(!ar||ar.length===0)for(Cr=new Array(Be.length),vr=0;vr<Be.length;vr++){var _r=Be[vr][0].slice(),yt=Be[vr][Be[vr].length-1].slice();_r[U]=yt[U]=W;var Fe=[yt,_r],Ke=Fe.concat(Be[vr]);Cr[vr]=i(Ke)}else{for(Cr=new Array(ar.length-1+Be.length),vr=0;vr<ar.length-1;vr++)Cr[vr]=i(ar[vr]);var Ne=ar[ar.length-1].slice();for(Ne.reverse(),vr=0;vr<Be.length;vr++)Cr[ar.length-1+vr]=i(Be[vr].concat(Ne))}return Cr};Ie.length?(O?(O.datum(T),ie&&be&&(N?(ie[U]=be[U]=W,b(O).attr("d","M"+be+"L"+ie+"L"+Z.substr(1)).call(t.singleFillStyle,h),Ae=ce(null)):(b(O).attr("d",Z+"Z").call(t.singleFillStyle,h),Ae=ge())),y._polygons=Ae,y._fillElement=O):I&&(y.fill.substr(0,6)==="tonext"&&Z&&Q?(y.fill==="tonext"?(b(I).attr("d",Z+"Z"+Q+"Z").call(t.singleFillStyle,h),Ae=ge(),y._polygons=Ae.concat(ue)):(b(I).attr("d",Z+"L"+Q.substr(1)+"Z").call(t.singleFillStyle,h),Ae=ce(he),y._polygons=Ae),y._fillElement=I):Me(I)),y._prevRevpath=re):(O?Me(O):I&&Me(I),y._prevRevpath=null),y._ownPolygons=Ae;function ze(ar){return ar.filter(function(Cr){return!Cr.gap&&Cr.vis})}function tt(ar){return ar.filter(function(Cr){return Cr.vis})}function nt(ar){return ar.filter(function(Cr){return!Cr.gap})}function Qe(ar){return ar.id}function Ct(ar){if(ar.ids)return Qe}function St(){return!1}function Ot(ar,Cr,vr){var _r,yt,Fe,Ke=vr[0].trace,Ne=r.hasMarkers(Ke),Ee=r.hasText(Ke),Ve=Ct(Ke),ke=St,Te=St;if(Ne||Ee){var Le=e,rt=Ke.stackgroup,dt=rt&&h._fullLayout._scatterStackOpts[d._id+u._id][rt].stackgaps==="infer zero";Ke.marker.maxdisplayed||Ke._needsCull?Le=dt?tt:ze:rt&&!dt&&(Le=nt),Ne&&(ke=Le),Ee&&(Te=Le)}yt=ar.selectAll("path.point"),_r=yt.data(ke,Ve);var xt=_r.enter().append("path").classed("point",!0);m&&xt.call(t.pointStyle,Ke,h).call(t.translatePoints,d,u).style("opacity",0).transition().style("opacity",1),_r.order();var It;Ne&&(It=t.makePointStyleFns(Ke)),_r.each(function(Bt){var Gt=g.select(this),Kt=b(Gt);Fe=t.translatePoint(Bt,Kt,d,u),Fe?(t.singlePointStyle(Bt,Kt,Ke,It,h),p.layerClipId&&t.hideOutsideRangePoint(Bt,Kt,d,u,Ke.xcalendar,Ke.ycalendar),Ke.customdata&&Gt.classed("plotly-customdata",Bt.data!==null&&Bt.data!==void 0)):Kt.remove()}),m?_r.exit().transition().style("opacity",0).remove():_r.exit().remove(),yt=Cr.selectAll("g"),_r=yt.data(Te,Ve),_r.enter().append("g").classed("textpoint",!0).append("text"),_r.order(),_r.each(function(Bt){var Gt=g.select(this),Kt=b(Gt.select("text"));Fe=t.translatePoint(Bt,Kt,d,u),Fe?p.layerClipId&&t.hideOutsideRangePoint(Bt,Gt,d,u,Ke.xcalendar,Ke.ycalendar):Gt.remove()}),_r.selectAll("text").call(t.textPointStyle,Ke,h).each(function(Bt){var Gt=d.c2p(Bt.x),Kt=u.c2p(Bt.y);g.select(this).selectAll("tspan.line").each(function(){b(g.select(this)).attr({x:Gt,y:Kt})})}),_r.exit().remove()}F.datum(T),B.datum(T),Ot(F,B,T);var jt=y.cliponaxis===!1,ur=jt?null:p.layerClipId;t.setClipUrl(F,ur,h),t.setClipUrl(B,ur,h)}function c(h,v,p,T,l){var _=p.xaxis,w=p.yaxis,S=g.extent(A.simpleMap(_.range,_.r2c)),E=g.extent(A.simpleMap(w.range,w.r2c)),m=T[0].trace;if(r.hasMarkers(m)){var b=m.marker.maxdisplayed;if(b!==0){var d=T.filter(function(P){return P.x>=S[0]&&P.x<=S[1]&&P.y>=E[0]&&P.y<=E[1]}),u=Math.ceil(d.length/b),y=0;l.forEach(function(P,L){var z=P[0].trace;r.hasMarkers(z)&&z.marker.maxdisplayed>0&&L<v&&y++});var f=Math.round(y*u/3+Math.floor(y/3)*u/7.1);T.forEach(function(P){delete P.vis}),d.forEach(function(P,L){Math.round((L+f)%u)===0&&(P.vis=!0)})}}}}}),cp=Ye({"src/traces/scatter/marker_colorbar.js"(X,H){"use strict";H.exports={container:"marker",min:"cmin",max:"cmax"}}}),L2=Ye({"src/traces/scatter/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r={_fullLayout:e},o=g.getFromTrace(r,M,"x"),a=g.getFromTrace(r,M,"y"),i=A.orig_x;i===void 0&&(i=A.x);var n=A.orig_y;return n===void 0&&(n=A.y),t.xLabel=g.tickText(o,o.c2l(i),!0).text,t.yLabel=g.tickText(a,a.c2l(n),!0).text,t}}}),ed=Ye({"src/traces/scatter/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Hn();function M(o){var a=g.select(o).selectAll("g.trace.scatter");a.style("opacity",function(i){return i[0].trace.opacity}),a.selectAll("g.points").each(function(i){var n=g.select(this),s=i.trace||i[0].trace;e(n,s,o)}),a.selectAll("g.text").each(function(i){var n=g.select(this),s=i.trace||i[0].trace;t(n,s,o)}),a.selectAll("g.trace path.js-line").call(x.lineGroupStyle),a.selectAll("g.trace path.js-fill").call(x.fillGroupStyle,o,!1),A.getComponentMethod("errorbars","style")(a)}function e(o,a,i){x.pointStyle(o.selectAll("path.point"),a,i)}function t(o,a,i){x.textPointStyle(o.selectAll("text"),a,i)}function r(o,a,i){var n=a[0].trace;n.selectedpoints?(x.selectedPointStyle(i.selectAll("path.point"),n),x.selectedTextStyle(i.selectAll("text"),n)):(e(i,n,o),t(i,n,o))}H.exports={style:M,stylePoints:e,styleText:t,styleOnSelect:r}}}),s1=Ye({"src/traces/scatter/get_trace_color.js"(X,H){"use strict";var g=Fn(),x=uu();H.exports=function(M,e){var t,r;if(M.mode==="lines")return t=M.line.color,t&&g.opacity(t)?t:M.fillcolor;if(M.mode==="none")return M.fill?M.fillcolor:"";var o=e.mcc||(M.marker||{}).color,a=e.mlcc||((M.marker||{}).line||{}).color;return r=o&&g.opacity(o)?o:a&&g.opacity(a)&&(e.mlw||((M.marker||{}).line||{}).width)?a:"",r?g.opacity(r)<.3?g.addOpacity(r,.3):r:(t=(M.line||{}).color,t&&g.opacity(t)&&x.hasLines(M)&&M.line.width?t:M.fillcolor)}}}),l1=Ye({"src/traces/scatter/hover.js"(X,H){"use strict";var g=ta(),x=Lc(),A=Hn(),M=s1(),e=Fn(),t=g.fillText;H.exports=function(o,a,i,n){var s=o.cd,c=s[0].trace,h=o.xa,v=o.ya,p=h.c2p(a),T=v.c2p(i),l=[p,T],_=c.hoveron||"",w=c.mode.indexOf("markers")!==-1?3:.5,S=!!c.xperiodalignment,E=!!c.yperiodalignment;if(_.indexOf("points")!==-1){var m=function(ue){if(S){var se=h.c2p(ue.xStart),he=h.c2p(ue.xEnd);return p>=Math.min(se,he)&&p<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(h.c2p(ue.x)-p);return J<G?$*J/G:J-G+$},b=function(ue){if(E){var se=v.c2p(ue.yStart),he=v.c2p(ue.yEnd);return T>=Math.min(se,he)&&T<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(v.c2p(ue.y)-T);return J<G?$*J/G:J-G+$},d=function(ue){var se=Math.max(w,ue.mrc||0),he=h.c2p(ue.x)-p,G=v.c2p(ue.y)-T;return Math.max(Math.sqrt(he*he+G*G)-se,1-w/se)},u=x.getDistanceFunction(n,m,b,d);if(x.getClosest(s,u,o),o.index!==!1){var y=s[o.index],f=h.c2p(y.x,!0),P=v.c2p(y.y,!0),L=y.mrc||1;o.index=y.i;var z=s[0].t.orientation,F=z&&(y.sNorm||y.s),B=z==="h"?F:y.orig_x!==void 0?y.orig_x:y.x,O=z==="v"?F:y.orig_y!==void 0?y.orig_y:y.y;return g.extendFlat(o,{color:M(c,y),x0:f-L,x1:f+L,xLabelVal:B,y0:P-L,y1:P+L,yLabelVal:O,spikeDistance:d(y),hovertemplate:c.hovertemplate}),t(y,c,o),A.getComponentMethod("errorbars","hoverInfo")(y,c,o),[o]}}function I(ue){if(!ue)return!1;var se=ue.node();try{var he=new DOMPoint(l[0],l[1]);return se.isPointInFill(he)}catch{var G=se.ownerSVGElement.createSVGPoint();return G.x=l[0],G.y=l[1],se.isPointInFill(G)}}function N(ue){var se,he=[],G=1/0,$=-1/0,J=1/0,Z=-1/0,re;for(se=0;se<ue.length;se++){var ne=ue[se];ne.contains(l)&&(he.push(ne),J=Math.min(J,ne.ymin),Z=Math.max(Z,ne.ymax))}if(he.length===0)return null;J=Math.max(J,0),Z=Math.min(Z,v._length),re=(J+Z)/2;var j,ee,ie,fe,be,Ae,Be;for(se=0;se<he.length;se++)for(ee=he[se].pts,j=1;j<ee.length;j++)Ae=ee[j-1][1],Be=ee[j][1],Ae>re!=Be>=re&&(fe=ee[j-1][0],be=ee[j][0],Be-Ae&&(ie=fe+(be-fe)*(re-Ae)/(Be-Ae),G=Math.min(G,ie),$=Math.max($,ie)));return G=Math.max(G,0),$=Math.min($,h._length),{x0:G,x1:$,y0:re,y1:re}}if(_.indexOf("fills")!==-1&&c._fillElement){var U=I(c._fillElement)&&!I(c._fillExclusionElement);if(U){var W=N(c._polygons);W===null&&(W={x0:l[0],x1:l[0],y0:l[1],y1:l[1]});var Q=e.defaultLine;return e.opacity(c.fillcolor)?Q=c.fillcolor:e.opacity((c.line||{}).color)&&(Q=c.line.color),g.extendFlat(o,{distance:o.maxHoverDistance,x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1,color:Q,hovertemplate:!1}),delete o.index,c.text&&!g.isArrayOrTypedArray(c.text)?o.text=String(c.text):o.text=c.name,[o]}}}}}),u1=Ye({"src/traces/scatter/select.js"(X,H){"use strict";var g=uu();H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=[],a=e[0].trace,i,n,s,c,h=!g.hasMarkers(a)&&!g.hasText(a);if(h)return[];if(M===!1)for(i=0;i<e.length;i++)e[i].selected=0;else for(i=0;i<e.length;i++)n=e[i],s=t.c2p(n.x),c=r.c2p(n.y),n.i!==null&&M.contains([s,c],!1,i,A)?(o.push({pointNumber:n.i,x:t.c2d(n.x),y:r.c2d(n.y)}),n.selected=1):n.selected=0;return o}}}),GO=Ye({"src/plots/cartesian/attributes.js"(X,H){"use strict";H.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}}}),FS=Ye({"src/plots/cartesian/type_defaults.js"(X,H){"use strict";var g=Hn().traceIs,x=r1();H.exports=function(o,a,i,n){i("autotypenumbers",n.autotypenumbersDflt);var s=i("type",(n.splomStash||{}).type);s==="-"&&(A(a,n.data),a.type==="-"?a.type="linear":o.type=a.type)};function A(r,o){if(r.type==="-"){var a=r._id,i=a.charAt(0),n;a.indexOf("scene")!==-1&&(a=i);var s=M(o,a,i);if(s){if(s.type==="histogram"&&i==={v:"y",h:"x"}[s.orientation||"v"]){r.type="linear";return}var c=i+"calendar",h=s[c],v={noMultiCategory:!g(s,"cartesian")||g(s,"noMultiCategory")};if(s.type==="box"&&s._hasPreCompStats&&i==={h:"x",v:"y"}[s.orientation||"v"]&&(v.noMultiCategory=!0),v.autotypenumbers=r.autotypenumbers,t(s,i)){var p=e(s),T=[];for(n=0;n<o.length;n++){var l=o[n];!g(l,"box-violin")||(l[i+"axis"]||i)!==a||(l[p]!==void 0?T.push(l[p][0]):l.name!==void 0?T.push(l.name):T.push("text"),l[c]!==h&&(h=void 0))}r.type=x(T,h,v)}else if(s.type==="splom"){var _=s.dimensions,w=_[s._axesDim[a]];w.visible&&(r.type=x(w.values,h,v))}else r.type=x(s[i]||[s[i+"0"]],h,v)}}}function M(r,o,a){for(var i=0;i<r.length;i++){var n=r[i];if(n.type==="splom"&&n._length>0&&(n["_"+a+"axes"]||{})[o])return n;if((n[a+"axis"]||a)===o){if(t(n,a))return n;if((n[a]||[]).length||n[a+"0"])return n}}}function e(r){return{v:"x",h:"y"}[r.orientation||"v"]}function t(r,o){var a=e(r),i=g(r,"box-violin"),n=g(r._fullInput||{},"candlestick");return i&&!n&&o===a&&r[a]===void 0&&r[a+"0"]===void 0}}}),P2=Ye({"src/plots/cartesian/category_order_defaults.js"(X,H){"use strict";var g=xp().isTypedArraySpec;function x(A,M){var e=M.dataAttr||A._id.charAt(0),t={},r,o,a;if(M.axData)r=M.axData;else for(r=[],o=0;o<M.data.length;o++){var i=M.data[o];i[e+"axis"]===A._id&&r.push(i)}for(o=0;o<r.length;o++){var n=r[o][e];for(a=0;a<n.length;a++){var s=n[a];s!=null&&(t[s]=1)}}return Object.keys(t)}H.exports=function(M,e,t,r){if(e.type==="category"){var o=M.categoryarray,a=Array.isArray(o)&&o.length>0||g(o),i;a&&(i="array");var n=t("categoryorder",i),s;n==="array"&&(s=t("categoryarray")),!a&&n==="array"&&(n=e.categoryorder="trace"),n==="trace"?e._initialCategories=[]:n==="array"?e._initialCategories=s.slice():(s=x(e,r).sort(),n==="category ascending"?e._initialCategories=s:n==="category descending"&&(e._initialCategories=s.reverse()))}}}}),I_=Ye({"src/plots/cartesian/line_grid_defaults.js"(X,H){"use strict";var g=bh().mix,x=Gf(),A=ta();H.exports=function(e,t,r,o){o=o||{};var a=o.dfltColor;function i(y,f){return A.coerce2(e,t,o.attributes,y,f)}var n=i("linecolor",a),s=i("linewidth"),c=r("showline",o.showLine||!!n||!!s);c||(delete t.linecolor,delete t.linewidth);var h=g(a,o.bgColor,o.blend||x.lightFraction).toRgbString(),v=i("gridcolor",h),p=i("gridwidth"),T=i("griddash"),l=r("showgrid",o.showGrid||!!v||!!p||!!T);if(l||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),o.hasMinor){var _=g(t.gridcolor,o.bgColor,67).toRgbString(),w=i("minor.gridcolor",_),S=i("minor.gridwidth",t.gridwidth||1),E=i("minor.griddash",t.griddash||"solid"),m=r("minor.showgrid",!!w||!!S||!!E);m||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!o.noZeroLine){var b=i("zerolinecolor",a),d=i("zerolinewidth"),u=r("zeroline",o.showGrid||!!b||!!d);u||(delete t.zerolinecolor,delete t.zerolinewidth)}}}}),R_=Ye({"src/plots/cartesian/axis_defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=up(),t=Vh(),r=Zg(),o=e1(),a=$m(),i=Qm(),n=P2(),s=I_(),c=fS(),h=wv(),v=wh().WEEKDAY_PATTERN,p=wh().HOUR_PATTERN;H.exports=function(S,E,m,b,d){var u=b.letter,y=b.font||{},f=b.splomStash||{},P=m("visible",!b.visibleDflt),L=E._template||{},z=E.type||L.type||"-",F;if(z==="date"){var B=x.getComponentMethod("calendars","handleDefaults");B(S,E,"calendar",b.calendar),b.noTicklabelmode||(F=m("ticklabelmode"))}!b.noTicklabelindex&&(z==="date"||z==="linear")&&m("ticklabelindex");var O="";(!b.noTicklabelposition||z==="multicategory")&&(O=A.coerce(S,E,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:F==="period"?["outside","inside"]:u==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),b.noTicklabeloverflow||m("ticklabeloverflow",O.indexOf("inside")!==-1?"hide past domain":z==="category"||z==="multicategory"?"allow":"hide past div"),h(E,d),c(S,E,m,b),n(S,E,m,b),z!=="category"&&!b.noHover&&m("hoverformat");var I=m("color"),N=I!==t.color.dflt?I:y.color,U=f.label||d._dfltTitle[u];if(i(S,E,m,z,b),!P)return E;m("title.text",U),A.coerceFont(m,"title.font",y,{overrideDflt:{size:A.bigFont(y.size),color:N}}),r(S,E,m,z);var W=b.hasMinor;if(W&&(M.newContainer(E,"minor"),r(S,E,m,z,{isMinor:!0})),a(S,E,m,z,b),o(S,E,m,b),W){var Q=b.isMinor;b.isMinor=!0,o(S,E,m,b),b.isMinor=Q}s(S,E,m,{dfltColor:I,bgColor:b.bgColor,showGrid:b.showGrid,hasMinor:W,attributes:t}),W&&!E.minor.ticks&&!E.minor.showgrid&&delete E.minor,(E.showline||E.ticks)&&m("mirror");var ue=z==="multicategory";if(!b.noTickson&&(z==="category"||ue)&&(E.ticks||E.showgrid)){var se;ue&&(se="boundaries");var he=m("tickson",se);he==="boundaries"&&delete E.ticklabelposition}if(ue){var G=m("showdividers");G&&(m("dividercolor"),m("dividerwidth"))}if(z==="date")if(e(S,E,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:T}),!E.rangebreaks.length)delete E.rangebreaks;else{for(var $=0;$<E.rangebreaks.length;$++)if(E.rangebreaks[$].pattern===v){E._hasDayOfWeekBreaks=!0;break}if(h(E,d),d._has("scattergl")||d._has("splom"))for(var J=0;J<b.data.length;J++){var Z=b.data[J];(Z.type==="scattergl"||Z.type==="splom")&&(Z.visible=!1,A.warn(Z.type+" traces do not work on axes with rangebreaks. Setting trace "+Z.index+" to `visible: false`."))}}return E};function T(w,S,E){function m(F,B){return A.coerce(w,S,t.rangebreaks,F,B)}var b=m("enabled");if(b){var d=m("bounds");if(d&&d.length>=2){var u="",y,f;if(d.length===2){for(y=0;y<2;y++)if(f=_(d[y]),f){u=v;break}}var P=m("pattern",u);if(P===v)for(y=0;y<2;y++)f=_(d[y]),f&&(S.bounds[y]=d[y]=f-1);if(P)for(y=0;y<2;y++)switch(f=d[y],P){case v:if(!g(f)){S.enabled=!1;return}if(f=+f,f!==Math.floor(f)||f<0||f>=7){S.enabled=!1;return}S.bounds[y]=d[y]=f;break;case p:if(!g(f)){S.enabled=!1;return}if(f=+f,f<0||f>24){S.enabled=!1;return}S.bounds[y]=d[y]=f;break}if(E.autorange===!1){var L=E.range;if(L[0]<L[1]){if(d[0]<L[0]&&d[1]>L[1]){S.enabled=!1;return}}else if(d[0]>L[0]&&d[1]<L[1]){S.enabled=!1;return}}}else{var z=m("values");if(z&&z.length)m("dvalue");else{S.enabled=!1;return}}}}var l={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function _(w){if(typeof w=="string")return l[w.substr(0,3).toLowerCase()]}}}),I2=Ye({"src/plots/cartesian/position_defaults.js"(X,H){"use strict";var g=jo(),x=ta();H.exports=function(M,e,t,r){var o=r.counterAxes||[],a=r.overlayableAxes||[],i=r.letter,n=r.grid,s=r.overlayingDomain,c,h,v,p,T,l;n&&(h=n._domains[i][n._axisMap[e._id]],c=n._anchors[e._id],h&&(v=n[i+"side"].split(" ")[0],p=n.domain[i][v==="right"||v==="top"?1:0])),h=h||[0,1],c=c||(g(M.position)?"free":o[0]||"free"),v=v||(i==="x"?"bottom":"left"),p=p||0,T=0,l=!1;var _=x.coerce(M,e,{anchor:{valType:"enumerated",values:["free"].concat(o),dflt:c}},"anchor"),w=x.coerce(M,e,{side:{valType:"enumerated",values:i==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(_==="free"){if(i==="y"){var S=t("autoshift");S&&(p=w==="left"?s[0]:s[1],l=e.automargin?e.automargin:!0,T=w==="left"?-3:3),t("shift",T)}t("position",p)}t("automargin",l);var E=!1;if(a.length&&(E=x.coerce(M,e,{overlaying:{valType:"enumerated",values:[!1].concat(a),dflt:!1}},"overlaying")),!E){var m=t("domain",h);m[0]>m[1]-1/4096&&(e.domain=h),x.noneOrAll(M.domain,e.domain,h),e.tickmode==="sync"&&(e.tickmode="auto")}return t("layer"),e}}}),WO=Ye({"src/plots/cartesian/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover,M=yS(),e=cl(),t=Jy(),r=Vh(),o=FS(),a=R_(),i=Yg(),n=I2(),s=Xc(),c=s.id2name,h=s.name2id,v=wh().AX_ID_PATTERN,p=Hn(),T=p.traceIs,l=p.getComponentMethod;function _(w,S,E){Array.isArray(w[S])?w[S].push(E):w[S]=[E]}H.exports=function(S,E,m){var b=E.autotypenumbers,d={},u={},y={},f={},P={},L={},z={},F={},B={},O={},I,N;for(I=0;I<m.length;I++){var U=m[I];if(T(U,"cartesian")){var W;if(U.xaxis)W=c(U.xaxis),_(d,W,U);else if(U.xaxes)for(N=0;N<U.xaxes.length;N++)_(d,c(U.xaxes[N]),U);var Q;if(U.yaxis)Q=c(U.yaxis),_(d,Q,U);else if(U.yaxes)for(N=0;N<U.yaxes.length;N++)_(d,c(U.yaxes[N]),U);if(U.type==="funnel"?U.orientation==="h"?(W&&(u[W]=!0),Q&&(z[Q]=!0)):Q&&(y[Q]=!0):U.type==="image"?(Q&&(F[Q]=!0),W&&(F[W]=!0)):(Q&&(P[Q]=!0,L[Q]=!0),(!T(U,"carpet")||U.type==="carpet"&&!U._cheater)&&W&&(f[W]=!0)),U.type==="carpet"&&U._cheater&&W&&(u[W]=!0),T(U,"2dMap")&&(B[W]=!0,B[Q]=!0),T(U,"oriented")){var ue=U.orientation==="h"?Q:W;O[ue]=!0}}}var se=E._subplots,he=se.xaxis,G=se.yaxis,$=g.simpleMap(he,c),J=g.simpleMap(G,c),Z=$.concat(J),re=x.background;he.length&&G.length&&(re=g.coerce(S,E,t,"plot_bgcolor"));var ne=x.combine(re,E.paper_bgcolor),j,ee,ie,fe,be;function Ae(){var ke=d[j]||[];be._traceIndices=ke.map(function(Te){return Te.index}),be._annIndices=[],be._shapeIndices=[],be._selectionIndices=[],be._imgIndices=[],be._subplotsWith=[],be._counterAxes=[],be._name=be._attr=j,be._id=ee}function Be(ke,Te){return g.coerce(fe,be,r,ke,Te)}function Ie(ke,Te){return g.coerce2(fe,be,r,ke,Te)}function Ze(ke){return ke==="x"?G:he}function at(ke,Te){for(var Le=ke==="x"?$:J,rt=[],dt=0;dt<Le.length;dt++){var xt=Le[dt];xt!==Te&&!(S[xt]||{}).overlaying&&rt.push(h(xt))}return rt}var it={x:Ze("x"),y:Ze("y")},et=it.x.concat(it.y),lt={},Me=[];function ge(){var ke=fe.matches;v.test(ke)&&et.indexOf(ke)===-1&&(lt[ke]=fe.type,Me=Object.keys(lt))}var ce=M(S,E),ze=A(ce);for(I=0;I<Z.length;I++){j=Z[I],ee=h(j),ie=j.charAt(0),g.isPlainObject(S[j])||(S[j]={}),fe=S[j],be=e.newContainer(E,j,ie+"axis"),Ae();var tt=ie==="x"&&!f[j]&&u[j]||ie==="y"&&!P[j]&&y[j],nt=ie==="y"&&(!L[j]&&z[j]||F[j]),Qe={hasMinor:!0,letter:ie,font:E.font,outerTicks:B[j],showGrid:!O[j],data:d[j]||[],bgColor:ne,calendar:E.calendar,automargin:!0,visibleDflt:tt,reverseDflt:nt,autotypenumbersDflt:b,splomStash:((E._splomAxes||{})[ie]||{})[ee],noAutotickangles:ie==="y"};Be("uirevision",E.uirevision),o(fe,be,Be,Qe),a(fe,be,Be,Qe,E);var Ct=ze&&ie===ce.charAt(0),St=Ie("spikecolor",ze?be.color:void 0),Ot=Ie("spikethickness",ze?1.5:void 0),jt=Ie("spikedash",ze?"dot":void 0),ur=Ie("spikemode",ze?"across":void 0),ar=Ie("spikesnap"),Cr=Be("showspikes",!!Ct||!!St||!!Ot||!!jt||!!ur||!!ar);Cr||(delete be.spikecolor,delete be.spikethickness,delete be.spikedash,delete be.spikemode,delete be.spikesnap);var vr=c(fe.overlaying),_r=[0,1];if(E[vr]!==void 0){var yt=c(E[vr].anchor);E[yt]!==void 0&&(_r=E[yt].domain)}n(fe,be,Be,{letter:ie,counterAxes:it[ie],overlayableAxes:at(ie,j),grid:E.grid,overlayingDomain:_r}),Be("title.standoff"),ge(),be._input=fe}for(I=0;I<Me.length;){ee=Me[I++],j=c(ee),ie=j.charAt(0),g.isPlainObject(S[j])||(S[j]={}),fe=S[j],be=e.newContainer(E,j,ie+"axis"),Ae();var Fe={letter:ie,font:E.font,outerTicks:B[j],showGrid:!O[j],data:[],bgColor:ne,calendar:E.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:b,splomStash:((E._splomAxes||{})[ie]||{})[ee]};Be("uirevision",E.uirevision),be.type=lt[ee]||"linear",a(fe,be,Be,Fe,E),n(fe,be,Be,{letter:ie,counterAxes:it[ie],overlayableAxes:at(ie,j),grid:E.grid}),Be("fixedrange"),ge(),be._input=fe}var Ke=l("rangeslider","handleDefaults"),Ne=l("rangeselector","handleDefaults");for(I=0;I<$.length;I++)j=$[I],fe=S[j],be=E[j],Ke(S,E,j),be.type==="date"&&Ne(fe,be,E,J,be.calendar),Be("fixedrange");for(I=0;I<J.length;I++){j=J[I],fe=S[j],be=E[j];var Ee=E[c(be.anchor)],Ve=l("rangeslider","isVisible")(Ee);Be("fixedrange",Ve)}i.handleDefaults(S,E,{axIds:et.concat(Me).sort(s.idSort),axHasImage:F})}}}),ZO=Ye({"src/plots/cartesian/transition_axes.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=Bo(),e=Co();H.exports=function(r,o,a,i){var n=r._fullLayout;if(o.length===0){e.redrawComponents(r);return}function s(E){var m=E.xaxis,b=E.yaxis;n._defs.select("#"+E.clipId+"> rect").call(M.setTranslate,0,0).call(M.setScale,1,1),E.plot.call(M.setTranslate,m._offset,b._offset).call(M.setScale,1,1);var d=E.plot.selectAll(".scatterlayer .trace");d.selectAll(".point").call(M.setPointGroupScale,1,1),d.selectAll(".textpoint").call(M.setTextPointsScale,1,1),d.call(M.hideOutsideRangePoints,E)}function c(E,m){var b=E.plotinfo,d=b.xaxis,u=b.yaxis,y=d._length,f=u._length,P=!!E.xr1,L=!!E.yr1,z=[];if(P){var F=A.simpleMap(E.xr0,d.r2l),B=A.simpleMap(E.xr1,d.r2l),O=F[1]-F[0],I=B[1]-B[0];z[0]=(F[0]*(1-m)+m*B[0]-F[0])/(F[1]-F[0])*y,z[2]=y*(1-m+m*I/O),d.range[0]=d.l2r(F[0]*(1-m)+m*B[0]),d.range[1]=d.l2r(F[1]*(1-m)+m*B[1])}else z[0]=0,z[2]=y;if(L){var N=A.simpleMap(E.yr0,u.r2l),U=A.simpleMap(E.yr1,u.r2l),W=N[1]-N[0],Q=U[1]-U[0];z[1]=(N[1]*(1-m)+m*U[1]-N[1])/(N[0]-N[1])*f,z[3]=f*(1-m+m*Q/W),u.range[0]=d.l2r(N[0]*(1-m)+m*U[0]),u.range[1]=u.l2r(N[1]*(1-m)+m*U[1])}else z[1]=0,z[3]=f;e.drawOne(r,d,{skipTitle:!0}),e.drawOne(r,u,{skipTitle:!0}),e.redrawComponents(r,[d._id,u._id]);var ue=P?y/z[2]:1,se=L?f/z[3]:1,he=P?z[0]:0,G=L?z[1]:0,$=P?z[0]/z[2]*y:0,J=L?z[1]/z[3]*f:0,Z=d._offset-$,re=u._offset-J;b.clipRect.call(M.setTranslate,he,G).call(M.setScale,1/ue,1/se),b.plot.call(M.setTranslate,Z,re).call(M.setScale,ue,se),M.setPointGroupScale(b.zoomScalePts,1/ue,1/se),M.setTextPointsScale(b.zoomScaleTxt,1/ue,1/se)}var h;i&&(h=i());function v(){for(var E={},m=0;m<o.length;m++){var b=o[m],d=b.plotinfo.xaxis,u=b.plotinfo.yaxis;b.xr1&&(E[d._name+".range"]=b.xr1.slice()),b.yr1&&(E[u._name+".range"]=b.yr1.slice())}return h&&h(),x.call("relayout",r,E).then(function(){for(var y=0;y<o.length;y++)s(o[y].plotinfo)})}function p(){for(var E={},m=0;m<o.length;m++){var b=o[m],d=b.plotinfo.xaxis,u=b.plotinfo.yaxis;b.xr0&&(E[d._name+".range"]=b.xr0.slice()),b.yr0&&(E[u._name+".range"]=b.yr0.slice())}return x.call("relayout",r,E).then(function(){for(var y=0;y<o.length;y++)s(o[y].plotinfo)})}var T,l,_,w=g.ease(a.easing);r._transitionData._interruptCallbacks.push(function(){return window.cancelAnimationFrame(_),_=null,p()});function S(){l=Date.now();for(var E=Math.min(1,(l-T)/a.duration),m=w(E),b=0;b<o.length;b++)c(o[b],m);l-T>a.duration?(v(),_=window.cancelAnimationFrame(S)):_=window.requestAnimationFrame(S)}return T=Date.now(),_=window.requestAnimationFrame(S),Promise.resolve()}}}),Pf=Ye({"src/plots/cartesian/index.js"(X){"use strict";var H=_n(),g=Hn(),x=ta(),A=Gu(),M=Bo(),e=jh().getModuleCalcData,t=Xc(),r=wh(),o=vd(),a=x.ensureSingle;function i(T,l,_){return x.ensureSingle(T,l,_,function(w){w.datum(_)})}var n=r.zindexSeparator;X.name="cartesian",X.attr=["xaxis","yaxis"],X.idRoot=["x","y"],X.idRegex=r.idRegex,X.attrRegex=r.attrRegex,X.attributes=GO(),X.layoutAttributes=Vh(),X.supplyLayoutDefaults=WO(),X.transitionAxes=ZO(),X.finalizeSubplots=function(T,l){var _=l._subplots,w=_.xaxis,S=_.yaxis,E=_.cartesian,m=E,b={},d={},u,y,f;for(u=0;u<m.length;u++){var P=m[u].split("y");b[P[0]]=1,d["y"+P[1]]=1}for(u=0;u<w.length;u++)y=w[u],b[y]||(f=(T[t.id2name(y)]||{}).anchor,r.idRegex.y.test(f)||(f="y"),E.push(y+f),m.push(y+f),d[f]||(d[f]=1,x.pushUnique(S,f)));for(u=0;u<S.length;u++)f=S[u],d[f]||(y=(T[t.id2name(f)]||{}).anchor,r.idRegex.x.test(y)||(y="x"),E.push(y+f),m.push(y+f),b[y]||(b[y]=1,x.pushUnique(w,y)));if(!m.length){y="",f="";for(var L in T)if(r.attrRegex.test(L)){var z=L.charAt(0);z==="x"?(!y||+L.substr(5)<+y.substr(5))&&(y=L):(!f||+L.substr(5)<+f.substr(5))&&(f=L)}y=y?t.name2id(y):"x",f=f?t.name2id(f):"y",w.push(y),S.push(f),E.push(y+f)}},X.plot=function(T,l,_,w){var S=T._fullLayout,E=S._subplots.cartesian,m=T.calcdata,b;if(!Array.isArray(l))for(l=[],b=0;b<m.length;b++)l.push(b);for(var d=S._zindices,u=0;u<d.length;u++){var y=d[u];for(b=0;b<E.length;b++){var f=E[b],P=S._plots[f];if(u>0){var L=P.id;if(L.indexOf(n)!==-1)continue;L+=n+(u+1),P=x.extendFlat({},P,{id:L,plot:S._cartesianlayer.selectAll(".subplot").select("."+L)})}for(var z=[],F,B=0;B<m.length;B++){var O=m[B],I=O[0].trace;y===(I.zorder||0)&&I.xaxis+I.yaxis===f&&((l.indexOf(I.index)!==-1||I.carpet)&&(F&&F[0].trace.xaxis+F[0].trace.yaxis===f&&["tonextx","tonexty","tonext"].indexOf(I.fill)!==-1&&z.indexOf(F)===-1&&z.push(F),z.push(O)),F=O)}s(T,P,z,_,w)}}};function s(T,l,_,w,S){for(var E=r.traceLayerClasses,m=T._fullLayout,b=m._zindices,d=m._modules,u,y,f,P=[],L=[],z=0;z<b.length;z++)for(var F=b[z],B=0;B<d.length;B++){u=d[B];var O=u.name,I=g.modules[O].categories;if(I.svg){var N=u.layerName||O+"layer",U=N+(z?Number(z)+1:""),W=u.plot;y=e(_,W,F),f=y[0],_=y[1],f.length&&P.push({i:E.indexOf(N),zindex:z,className:U,plotMethod:W,cdModule:f}),I.zoomScale&&L.push("."+U)}}P.sort(function(se,he){return(se.zindex||0)-(he.zindex||0)||se.i-he.i});var Q=l.plot.selectAll("g.mlayer").data(P,function(se){return se.className});if(Q.enter().append("g").attr("class",function(se){return se.className}).classed("mlayer",!0).classed("rangeplot",l.isRangePlot),Q.exit().remove(),Q.order(),Q.each(function(se){var he=H.select(this),G=se.className;se.plotMethod(T,l,se.cdModule,he,w,S),r.clipOnAxisFalseQuery.indexOf("."+G)===-1&&M.setClipUrl(he,l.layerClipId,T)}),m._has("scattergl")&&(u=g.getModule("scattergl"),f=e(_,u)[0],u.plot(T,l,f)),!T._context.staticPlot&&(l._hasClipOnAxisFalse&&(l.clipOnAxisFalseTraces=l.plot.selectAll(r.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),L.length)){var ue=l.plot.selectAll(L.join(",")).selectAll(".trace");l.zoomScalePts=ue.selectAll("path.point"),l.zoomScaleTxt=ue.selectAll(".textpoint")}}X.clean=function(T,l,_,w){var S=w._plots||{},E=l._plots||{},m=w._subplots||{},b,d,u;if(w._hasOnlyLargeSploms&&!l._hasOnlyLargeSploms)for(u in S)b=S[u],b.plotgroup&&b.plotgroup.remove();var y=w._has&&w._has("gl"),f=l._has&&l._has("gl");if(y&&!f)for(u in S)b=S[u],b._scene&&b._scene.destroy();if(m.xaxis&&m.yaxis){var P=t.listIds({_fullLayout:w});for(d=0;d<P.length;d++){var L=P[d];l[t.id2name(L)]||w._infolayer.selectAll(".g-"+L+"title").remove()}}var z=w._has&&w._has("cartesian"),F=l._has&&l._has("cartesian");if(z&&!F)v(w._cartesianlayer.selectAll(".subplot"),w),w._defs.selectAll(".axesclip").remove(),delete w._axisConstraintGroups,delete w._axisMatchGroups;else if(m.cartesian)for(d=0;d<m.cartesian.length;d++){var B=m.cartesian[d];if(B.indexOf(n)===-1&&!E[B]){var O="."+B+",."+B+"-x,."+B+"-y";w._cartesianlayer.selectAll(O).remove(),p(B,w)}}},X.drawFramework=function(T){var l=T._fullLayout,_=T.calcdata,w,S={};for(w=0;w<_.length;w++){var E=_[w][0],m=E.trace,b=m.zorder||0;S[b]||(S[b]=[]),S[b].push(E)}var d=Object.keys(S).map(Number).sort(x.sorterAsc);d.length||(d=[0]),l._zindices=d;var u=c(T),y=u.length,f=[];for(w=0;w<y;w++)f[w]=u[w].slice();for(var P=1;P<d.length;P++){var L=[];for(w=0;w<y;w++)L[w]=u[w].slice(),L[w][0]+=n+(P+1);f=f.concat(L)}var z=l._cartesianlayer.selectAll(".subplot").data(f,String);z.enter().append("g").attr("class",function(F){return"subplot "+F[0]}),z.order(),z.exit().call(v,l),z.each(function(F){var B=F[0],O=B.indexOf(n),I=O!==-1,N=I?B.slice(0,O):B,U=l._plots[B];U||(U=x.extendFlat({},l._plots[N]),U&&(U.id=B,l._plots[B]=U,l._subplots.cartesian.push(B))),U&&(U.plotgroup=H.select(this),h(T,U),I||(U.draglayer=a(l._draggers,"g",B)))})},X.rangePlot=function(T,l,_){h(T,l),s(T,l,_),A.style(T)};function c(T){var l=T._fullLayout,_=l._zindices.length,w=l._subplots.cartesian,S=w.length,E,m,b,d,u,y,f=[],P=[];for(E=0;E<S;E++){b=w[E],d=l._plots[b],u=d.xaxis,y=d.yaxis;var L=u._mainAxis,z=y._mainAxis,F=L._id+z._id,B=l._plots[F];d.overlays=[],F!==b&&B?(d.mainplot=F,d.mainplotinfo=B,P.push(b)):(d.mainplot=void 0,d.mainplotinfo=void 0,f.push(b))}for(E=0;E<P.length;E++)b=P[E],d=l._plots[b],d.mainplotinfo.overlays.push(d);var O=f.concat(P),I=[];for(E=0;E<S;E++){b=O[E],d=l._plots[b],u=d.xaxis,y=d.yaxis;for(var N=[],U=1;U<=_;U++){var W="";for(U>1&&(W+=n+U),N.push(b+W),m=0;m<d.overlays.length;m++)N.push(d.overlays[m].id+W)}N=N.concat([u.layer,y.layer,u.overlaying||"",y.overlaying||""]),I.push(N)}return I}function h(T,l){var _=T._fullLayout,w=l.plotgroup,S=l.id,E=S.indexOf(n),m=E!==-1,b=r.layerValue2layerClass[l.xaxis.layer],d=r.layerValue2layerClass[l.yaxis.layer],u=_._hasOnlyLargeSploms,y=_._zindices.length>1,f=l.mainplotinfo;if(!l.mainplot||y)if(u)l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.xaxislayer=a(w,"g","xaxislayer-above"),l.yaxislayer=a(w,"g","yaxislayer-above");else{if(!m){var P=a(w,"g","layer-subplot");l.shapelayer=a(P,"g","shapelayer"),l.imagelayer=a(P,"g","imagelayer"),f&&y?(l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer):(l.minorGridlayer=a(w,"g","minor-gridlayer"),l.gridlayer=a(w,"g","gridlayer"),l.zerolinelayer=a(w,"g","zerolinelayer"));var L=a(w,"g","layer-between");l.shapelayerBetween=a(L,"g","shapelayer"),l.imagelayerBetween=a(L,"g","imagelayer"),a(w,"path","xlines-below"),a(w,"path","ylines-below"),l.overlinesBelow=a(w,"g","overlines-below"),a(w,"g","xaxislayer-below"),a(w,"g","yaxislayer-below"),l.overaxesBelow=a(w,"g","overaxes-below")}l.overplot=a(w,"g","overplot"),l.plot=a(l.overplot,"g",S),m||(l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.overlinesAbove=a(w,"g","overlines-above"),a(w,"g","xaxislayer-above"),a(w,"g","yaxislayer-above"),l.overaxesAbove=a(w,"g","overaxes-above"),l.xlines=w.select(".xlines-"+b),l.ylines=w.select(".ylines-"+d),l.xaxislayer=w.select(".xaxislayer-"+b),l.yaxislayer=w.select(".yaxislayer-"+d))}else{var z=f.plotgroup,F=S+"-x",B=S+"-y";l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer,a(f.overlinesBelow,"path",F),a(f.overlinesBelow,"path",B),a(f.overaxesBelow,"g",F),a(f.overaxesBelow,"g",B),l.plot=a(f.overplot,"g",S),a(f.overlinesAbove,"path",F),a(f.overlinesAbove,"path",B),a(f.overaxesAbove,"g",F),a(f.overaxesAbove,"g",B),l.xlines=z.select(".overlines-"+b).select("."+F),l.ylines=z.select(".overlines-"+d).select("."+B),l.xaxislayer=z.select(".overaxes-"+b).select("."+F),l.yaxislayer=z.select(".overaxes-"+d).select("."+B)}m||(u||(i(l.minorGridlayer,"g",l.xaxis._id),i(l.minorGridlayer,"g",l.yaxis._id),l.minorGridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort),i(l.gridlayer,"g",l.xaxis._id),i(l.gridlayer,"g",l.yaxis._id),l.gridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort)),l.xlines.style("fill","none").classed("crisp",!0),l.ylines.style("fill","none").classed("crisp",!0))}function v(T,l){if(T){var _={};T.each(function(d){var u=d[0],y=H.select(this);y.remove(),p(u,l),_[u]=!0});for(var w in l._plots)for(var S=l._plots[w],E=S.overlays||[],m=0;m<E.length;m++){var b=E[m];_[b.id]&&b.plot.selectAll(".trace").remove()}}}function p(T,l){l._draggers.selectAll("g."+T).remove(),l._defs.select("#clip"+l._uid+T+"plot").remove()}X.toSVG=function(T){var l=T._fullLayout._glimages,_=H.select(T).selectAll(".svg-container"),w=_.filter(function(E,m){return m===_.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function S(){var E=this,m=E.toDataURL("image/png"),b=l.append("svg:image");b.attr({xmlns:o.svg,"xlink:href":m,preserveAspectRatio:"none",x:0,y:0,width:E.style.width,height:E.style.height})}w.each(S)},X.updateFx=LS().updateFx}}),XO=Ye({"src/traces/scatter/index.js"(X,H){"use strict";var g=uu();H.exports={hasLines:g.hasLines,hasMarkers:g.hasMarkers,hasText:g.hasText,isBubble:g.isBubble,attributes:Pc(),layoutAttributes:g2(),supplyDefaults:jO(),crossTraceDefaults:RS(),supplyLayoutDefaults:VO(),calc:Bd().calc,crossTraceCalc:HO(),arraysToCalcdata:Av(),plot:o1(),colorbar:cp(),formatLabels:L2(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:l1(),selectPoints:u1(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Pf(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}}}),YO=Ye({"src/components/annotations/draw_arrow_head.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ES(),M=ta(),e=M.strScale,t=M.strRotate,r=M.strTranslate;H.exports=function(a,i,n){var s=a.node(),c=A[n.arrowhead||0],h=A[n.startarrowhead||0],v=(n.arrowwidth||1)*(n.arrowsize||1),p=(n.arrowwidth||1)*(n.startarrowsize||1),T=i.indexOf("start")>=0,l=i.indexOf("end")>=0,_=c.backoff*v+n.standoff,w=h.backoff*p+n.startstandoff,S,E,m,b;if(s.nodeName==="line"){S={x:+a.attr("x1"),y:+a.attr("y1")},E={x:+a.attr("x2"),y:+a.attr("y2")};var d=S.x-E.x,u=S.y-E.y;if(m=Math.atan2(u,d),b=m+Math.PI,_&&w&&_+w>Math.sqrt(d*d+u*u)){W();return}if(_){if(_*_>d*d+u*u){W();return}var y=_*Math.cos(m),f=_*Math.sin(m);E.x+=y,E.y+=f,a.attr({x2:E.x,y2:E.y})}if(w){if(w*w>d*d+u*u){W();return}var P=w*Math.cos(m),L=w*Math.sin(m);S.x-=P,S.y-=L,a.attr({x1:S.x,y1:S.y})}}else if(s.nodeName==="path"){var z=s.getTotalLength(),F="";if(z<_+w){W();return}var B=s.getPointAtLength(0),O=s.getPointAtLength(.1);m=Math.atan2(B.y-O.y,B.x-O.x),S=s.getPointAtLength(Math.min(w,z)),F="0px,"+w+"px,";var I=s.getPointAtLength(z),N=s.getPointAtLength(z-.1);b=Math.atan2(I.y-N.y,I.x-N.x),E=s.getPointAtLength(Math.max(0,z-_));var U=F?w+_:_;F+=z-U+"px,"+z+"px",a.style("stroke-dasharray",F)}function W(){a.style("stroke-dasharray","0px,100px")}function Q(ue,se,he,G){ue.path&&(ue.noRotate&&(he=0),g.select(s.parentNode).append("path").attr({class:a.attr("class"),d:ue.path,transform:r(se.x,se.y)+t(he*180/Math.PI)+e(G)}).style({fill:x.rgb(n.arrowcolor),"stroke-width":0}))}T&&Q(h,S,m,p),l&&Q(c,E,b,v)}}}),R2=Ye({"src/components/annotations/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Co(),r=Fn(),o=Bo(),a=Lc(),i=jl(),n=Kd(),s=bp(),c=cl().arrayEditor,h=YO();H.exports={draw:v,drawOne:p,drawRaw:l};function v(_){var w=_._fullLayout;w._infolayer.selectAll(".annotation").remove();for(var S=0;S<w.annotations.length;S++)w.annotations[S].visible&&p(_,S);return A.previousPromises(_)}function p(_,w){var S=_._fullLayout,E=S.annotations[w]||{},m=t.getFromId(_,E.xref),b=t.getFromId(_,E.yref);m&&m.setScale(),b&&b.setScale(),l(_,E,w,!1,m,b)}function T(_,w,S,E,m){var b=m[S],d=m[S+"ref"],u=S.indexOf("y")!==-1,y=t.getRefType(d)==="domain",f=u?E.h:E.w;return _?y?b+(u?-w:w)/_._length:_.p2r(_.r2p(b)+w):b+(u?-w:w)/f}function l(_,w,S,E,m,b){var d=_._fullLayout,u=_._fullLayout._size,y=_._context.edits,f,P;E?(f="annotation-"+E,P=E+".annotations"):(f="annotation",P="annotations");var L=c(_.layout,P,w),z=L.modifyBase,F=L.modifyItem,B=L.getUpdateObj;d._infolayer.selectAll("."+f+'[data-index="'+S+'"]').remove();var O="clip"+d._uid+"_ann"+S;if(!w._input||w.visible===!1){g.selectAll("#"+O).remove();return}var I={x:{},y:{}},N=+w.textangle||0,U=d._infolayer.append("g").classed(f,!0).attr("data-index",String(S)).style("opacity",w.opacity),W=U.append("g").classed("annotation-text-g",!0),Q=y[w.showarrow?"annotationTail":"annotationPosition"],ue=w.captureevents||y.annotationText||Q;function se(Ae){var Be={index:S,annotation:w._input,fullAnnotation:w,event:Ae};return E&&(Be.subplotId=E),Be}var he=W.append("g").style("pointer-events",ue?"all":null).call(n,"pointer").on("click",function(){_._dragging=!1,_.emit("plotly_clickannotation",se(g.event))});w.hovertext&&he.on("mouseover",function(){var Ae=w.hoverlabel,Be=Ae.font,Ie=this.getBoundingClientRect(),Ze=_.getBoundingClientRect();a.loneHover({x0:Ie.left-Ze.left,x1:Ie.right-Ze.left,y:(Ie.top+Ie.bottom)/2-Ze.top,text:w.hovertext,color:Ae.bgcolor,borderColor:Ae.bordercolor,fontFamily:Be.family,fontSize:Be.size,fontColor:Be.color,fontWeight:Be.weight,fontStyle:Be.style,fontVariant:Be.variant,fontShadow:Be.fontShadow,fontLineposition:Be.fontLineposition,fontTextcase:Be.fontTextcase},{container:d._hoverlayer.node(),outerContainer:d._paper.node(),gd:_})}).on("mouseout",function(){a.loneUnhover(d._hoverlayer.node())});var G=w.borderwidth,$=w.borderpad,J=G+$,Z=he.append("rect").attr("class","bg").style("stroke-width",G+"px").call(r.stroke,w.bordercolor).call(r.fill,w.bgcolor),re=w.width||w.height,ne=d._topclips.selectAll("#"+O).data(re?[0]:[]);ne.enter().append("clipPath").classed("annclip",!0).attr("id",O).append("rect"),ne.exit().remove();var j=w.font,ee=d._meta?M.templateString(w.text,d._meta):w.text,ie=he.append("text").classed("annotation-text",!0).text(ee);function fe(Ae){return Ae.call(o.font,j).attr({"text-anchor":{left:"start",right:"end"}[w.align]||"middle"}),i.convertToTspans(Ae,_,be),Ae}function be(){var Ae=ie.selectAll("a");if(Ae.size()===1&&Ae.text()===ie.text()){var Be=he.insert("a",":first-child").attr({"xlink:xlink:href":Ae.attr("xlink:href"),"xlink:xlink:show":Ae.attr("xlink:show")}).style({cursor:"pointer"});Be.node().appendChild(Z.node())}var Ie=he.select(".annotation-text-math-group"),Ze=!Ie.empty(),at=o.bBox((Ze?Ie:ie).node()),it=at.width,et=at.height,lt=w.width||it,Me=w.height||et,ge=Math.round(lt+2*J),ce=Math.round(Me+2*J);function ze(Ga,Ma){return Ma==="auto"&&(Ga<1/3?Ma="left":Ga>2/3?Ma="right":Ma="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ma]}for(var tt=!1,nt=["x","y"],Qe=0;Qe<nt.length;Qe++){var Ct=nt[Qe],St=w[Ct+"ref"]||Ct,Ot=w["a"+Ct+"ref"],jt={x:m,y:b}[Ct],ur=(N+(Ct==="x"?0:-90))*Math.PI/180,ar=ge*Math.cos(ur),Cr=ce*Math.sin(ur),vr=Math.abs(ar)+Math.abs(Cr),_r=w[Ct+"anchor"],yt=w[Ct+"shift"]*(Ct==="x"?1:-1),Fe=I[Ct],Ke,Ne,Ee,Ve,ke,Te=t.getRefType(St);if(jt&&Te!=="domain"){var Le=jt.r2fraction(w[Ct]);(Le<0||Le>1)&&(Ot===St?(Le=jt.r2fraction(w["a"+Ct]),(Le<0||Le>1)&&(tt=!0)):tt=!0),Ke=jt._offset+jt.r2p(w[Ct]),Ve=.5}else{var rt=Te==="domain";Ct==="x"?(Ee=w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.l+u.w*Ee):(Ee=1-w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.t+u.h*Ee),Ve=w.showarrow?.5:Ee}if(w.showarrow){Fe.head=Ke;var dt=w["a"+Ct];if(ke=ar*ze(.5,w.xanchor)-Cr*ze(.5,w.yanchor),Ot===St){var xt=t.getRefType(Ot);xt==="domain"?(Ct==="y"&&(dt=1-dt),Fe.tail=jt._offset+jt._length*dt):xt==="paper"?Ct==="y"?(dt=1-dt,Fe.tail=u.t+u.h*dt):Fe.tail=u.l+u.w*dt:Fe.tail=jt._offset+jt.r2p(dt),Ne=ke}else Fe.tail=Ke+dt,Ne=ke+dt;Fe.text=Fe.tail+ke;var It=d[Ct==="x"?"width":"height"];if(St==="paper"&&(Fe.head=M.constrain(Fe.head,1,It-1)),Ot==="pixel"){var Bt=-Math.max(Fe.tail-3,Fe.text),Gt=Math.min(Fe.tail+3,Fe.text)-It;Bt>0?(Fe.tail+=Bt,Fe.text+=Bt):Gt>0&&(Fe.tail-=Gt,Fe.text-=Gt)}Fe.tail+=yt,Fe.head+=yt}else ke=vr*ze(Ve,_r),Ne=ke,Fe.text=Ke+ke;Fe.text+=yt,ke+=yt,Ne+=yt,w["_"+Ct+"padplus"]=vr/2+Ne,w["_"+Ct+"padminus"]=vr/2-Ne,w["_"+Ct+"size"]=vr,w["_"+Ct+"shift"]=ke}if(tt){he.remove();return}var Kt=0,sr=0;if(w.align!=="left"&&(Kt=(lt-it)*(w.align==="center"?.5:1)),w.valign!=="top"&&(sr=(Me-et)*(w.valign==="middle"?.5:1)),Ze)Ie.select("svg").attr({x:J+Kt-1,y:J+sr}).call(o.setClipUrl,re?O:null,_);else{var sa=J+sr-at.top,Aa=J+Kt-at.left;ie.call(i.positionText,Aa,sa).call(o.setClipUrl,re?O:null,_)}ne.select("rect").call(o.setRect,J,J,lt,Me),Z.call(o.setRect,G/2,G/2,ge-G,ce-G),he.call(o.setTranslate,Math.round(I.x.text-ge/2),Math.round(I.y.text-ce/2)),W.attr({transform:"rotate("+N+","+I.x.text+","+I.y.text+")"});var La=function(Ga,Ma){U.selectAll(".annotation-arrow-g").remove();var Ua=I.x.head,ni=I.y.head,Wt=I.x.tail+Ga,zt=I.y.tail+Ma,Vt=I.x.text+Ga,Ut=I.y.text+Ma,xr=M.rotationXYMatrix(N,Vt,Ut),Zr=M.apply2DTransform(xr),pa=M.apply2DTransform2(xr),Xr=+Z.attr("width"),Ea=+Z.attr("height"),Fa=Vt-.5*Xr,qa=Fa+Xr,ya=Ut-.5*Ea,$a=ya+Ea,mt=[[Fa,ya,Fa,$a],[Fa,$a,qa,$a],[qa,$a,qa,ya],[qa,ya,Fa,ya]].map(pa);if(!mt.reduce(function(kt,ir){return kt^!!M.segmentsIntersect(Ua,ni,Ua+1e6,ni+1e6,ir[0],ir[1],ir[2],ir[3])},!1)){mt.forEach(function(kt){var ir=M.segmentsIntersect(Wt,zt,Ua,ni,kt[0],kt[1],kt[2],kt[3]);ir&&(Wt=ir.x,zt=ir.y)});var gt=w.arrowwidth,Er=w.arrowcolor,kr=w.arrowside,br=U.append("g").style({opacity:r.opacity(Er)}).classed("annotation-arrow-g",!0),Tr=br.append("path").attr("d","M"+Wt+","+zt+"L"+Ua+","+ni).style("stroke-width",gt+"px").call(r.stroke,r.rgb(Er));if(h(Tr,kr,w),y.annotationPosition&&Tr.node().parentNode&&!E){var Mr=Ua,Fr=ni;if(w.standoff){var Lr=Math.sqrt(Math.pow(Ua-Wt,2)+Math.pow(ni-zt,2));Mr+=w.standoff*(Wt-Ua)/Lr,Fr+=w.standoff*(zt-ni)/Lr}var Jr=br.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Wt-Mr)+","+(zt-Fr),transform:e(Mr,Fr)}).style("stroke-width",gt+6+"px").call(r.stroke,"rgba(0,0,0,0)").call(r.fill,"rgba(0,0,0,0)"),oa,ca;s.init({element:Jr.node(),gd:_,prepFn:function(){var kt=o.getTranslate(he);oa=kt.x,ca=kt.y,m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0)},moveFn:function(kt,ir){var mr=Zr(oa,ca),$r=mr[0]+kt,ma=mr[1]+ir;he.call(o.setTranslate,$r,ma),F("x",T(m,kt,"x",u,w)),F("y",T(b,ir,"y",u,w)),w.axref===w.xref&&F("ax",T(m,kt,"ax",u,w)),w.ayref===w.yref&&F("ay",T(b,ir,"ay",u,w)),br.attr("transform",e(kt,ir)),W.attr({transform:"rotate("+N+","+$r+","+ma+")"})},doneFn:function(){x.call("_guiRelayout",_,B());var kt=document.querySelector(".js-notes-box-panel");kt&&kt.redraw(kt.selectedObj)}})}}};if(w.showarrow&&La(0,0),Q){var ka;s.init({element:he.node(),gd:_,prepFn:function(){ka=W.attr("transform")},moveFn:function(Ga,Ma){var Ua="pointer";if(w.showarrow)w.axref===w.xref?F("ax",T(m,Ga,"ax",u,w)):F("ax",w.ax+Ga),w.ayref===w.yref?F("ay",T(b,Ma,"ay",u.w,w)):F("ay",w.ay+Ma),La(Ga,Ma);else{if(E)return;var ni,Wt;if(m)ni=T(m,Ga,"x",u,w);else{var zt=w._xsize/u.w,Vt=w.x+(w._xshift-w.xshift)/u.w-zt/2;ni=s.align(Vt+Ga/u.w,zt,0,1,w.xanchor)}if(b)Wt=T(b,Ma,"y",u,w);else{var Ut=w._ysize/u.h,xr=w.y-(w._yshift+w.yshift)/u.h-Ut/2;Wt=s.align(xr-Ma/u.h,Ut,0,1,w.yanchor)}F("x",ni),F("y",Wt),(!m||!b)&&(Ua=s.getCursor(m?.5:ni,b?.5:Wt,w.xanchor,w.yanchor))}W.attr({transform:e(Ga,Ma)+ka}),n(he,Ua)},clickFn:function(Ga,Ma){w.captureevents&&_.emit("plotly_clickannotation",se(Ma))},doneFn:function(){n(he),x.call("_guiRelayout",_,B());var Ga=document.querySelector(".js-notes-box-panel");Ga&&Ga.redraw(Ga.selectedObj)}})}}y.annotationText?ie.call(i.makeEditable,{delegate:he,gd:_}).call(fe).on("edit",function(Ae){w.text=Ae,this.call(fe),F("text",Ae),m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0),x.call("_guiRelayout",_,B())}):ie.call(fe)}}}),KO=Ye({"src/components/annotations/click.js"(X,H){"use strict";var g=ta(),x=Hn(),A=cl().arrayEditor;H.exports={hasClickToShow:M,onClick:e};function M(o,a){var i=t(o,a);return i.on.length>0||i.explicitOff.length>0}function e(o,a){var i=t(o,a),n=i.on,s=i.off.concat(i.explicitOff),c={},h=o._fullLayout.annotations,v,p;if(n.length||s.length){for(v=0;v<n.length;v++)p=A(o.layout,"annotations",h[n[v]]),p.modifyItem("visible",!0),g.extendFlat(c,p.getUpdateObj());for(v=0;v<s.length;v++)p=A(o.layout,"annotations",h[s[v]]),p.modifyItem("visible",!1),g.extendFlat(c,p.getUpdateObj());return x.call("update",o,{},c)}}function t(o,a){var i=o._fullLayout.annotations,n=[],s=[],c=[],h=(a||[]).length,v,p,T,l,_,w,S,E;for(v=0;v<i.length;v++)if(T=i[v],l=T.clicktoshow,l){for(p=0;p<h;p++)if(_=a[p],w=_.xaxis,S=_.yaxis,w._id===T.xref&&S._id===T.yref&&w.d2r(_.x)===r(T._xclick,w)&&S.d2r(_.y)===r(T._yclick,S)){T.visible?l==="onout"?E=s:E=c:E=n,E.push(v);break}p===h&&T.visible&&l==="onout"&&s.push(v)}return{on:n,off:s,explicitOff:c}}function r(o,a){return a.type==="log"?a.l2r(o):a.d2r(o)}}}),OS=Ye({"src/components/annotations/common_defaults.js"(X,H){"use strict";var g=ta(),x=Fn();H.exports=function(M,e,t,r){r("opacity");var o=r("bgcolor"),a=r("bordercolor"),i=x.opacity(a);r("borderpad");var n=r("borderwidth"),s=r("showarrow");r("text",s?" ":t._dfltTitle.annotation),r("textangle"),g.coerceFont(r,"font",t.font),r("width"),r("align");var c=r("height");if(c&&r("valign"),s){var h=r("arrowside"),v,p;h.indexOf("end")!==-1&&(v=r("arrowhead"),p=r("arrowsize")),h.indexOf("start")!==-1&&(r("startarrowhead",v),r("startarrowsize",p)),r("arrowcolor",i?e.bordercolor:x.defaultLine),r("arrowwidth",(i&&n||1)*2),r("standoff"),r("startstandoff")}var T=r("hovertext"),l=t.hoverlabel||{};if(T){var _=r("hoverlabel.bgcolor",l.bgcolor||(x.opacity(o)?x.rgb(o):x.defaultLine)),w=r("hoverlabel.bordercolor",l.bordercolor||x.contrast(_)),S=g.extendFlat({},l.font);S.color||(S.color=w),g.coerceFont(r,"hoverlabel.font",S)}r("captureevents",!!T)}}}),JO=Ye({"src/components/annotations/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=OS(),e=Kg();H.exports=function(o,a){A(o,a,{name:"annotations",handleItemDefaults:t})};function t(r,o,a){function i(u,y){return g.coerce(r,o,e,u,y)}var n=i("visible"),s=i("clicktoshow");if(n||s){M(r,o,a,i);for(var c=o.showarrow,h=["x","y"],v=[-10,-30],p={_fullLayout:a},T=0;T<2;T++){var l=h[T],_=x.coerceRef(r,o,p,l,"","paper");if(_!=="paper"){var w=x.getFromId(p,_);w._annIndices.push(o._index)}if(x.coercePosition(o,p,i,_,l,.5),c){var S="a"+l,E=x.coerceRef(r,o,p,S,"pixel",["pixel","paper"]);E!=="pixel"&&E!==_&&(E=o[S]="pixel");var m=E==="pixel"?v[T]:.4;x.coercePosition(o,p,i,E,S,m)}i(l+"anchor"),i(l+"shift")}if(g.noneOrAll(r,o,["x","y"]),c&&g.noneOrAll(r,o,["ax","ay"]),s){var b=i("xclick"),d=i("yclick");o._xclick=b===void 0?o.x:x.cleanPosition(b,p,o.xref),o._yclick=d===void 0?o.y:x.cleanPosition(d,p,o.yref)}}}}}),$O=Ye({"src/components/annotations/calc_autorange.js"(X,H){"use strict";var g=ta(),x=Co(),A=R2().draw;H.exports=function(r){var o=r._fullLayout,a=g.filterVisible(o.annotations);if(a.length&&r._fullData.length)return g.syncOrAsync([A,M],r)};function M(t){var r=t._fullLayout;g.filterVisible(r.annotations).forEach(function(o){var a=x.getFromId(t,o.xref),i=x.getFromId(t,o.yref),n=x.getRefType(o.xref),s=x.getRefType(o.yref);o._extremes={},n==="range"&&e(o,a),s==="range"&&e(o,i)})}function e(t,r){var o=r._id,a=o.charAt(0),i=t[a],n=t["a"+a],s=t[a+"ref"],c=t["a"+a+"ref"],h=t["_"+a+"padplus"],v=t["_"+a+"padminus"],p={x:1,y:-1}[a]*t[a+"shift"],T=3*t.arrowsize*t.arrowwidth||0,l=T+p,_=T-p,w=3*t.startarrowsize*t.arrowwidth||0,S=w+p,E=w-p,m;if(c===s){var b=x.findExtremes(r,[r.r2c(i)],{ppadplus:l,ppadminus:_}),d=x.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(h,S),ppadminus:Math.max(v,E)});m={min:[b.min[0],d.min[0]],max:[b.max[0],d.max[0]]}}else S=n?S+n:S,E=n?E-n:E,m=x.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(h,l,S),ppadminus:Math.max(v,_,E)});t._extremes[o]=m}}}),QO=Ye({"src/components/annotations/convert_coords.js"(X,H){"use strict";var g=jo(),x=c2();H.exports=function(M,e,t,r){e=e||{};var o=t==="log"&&e.type==="linear",a=t==="linear"&&e.type==="log";if(!(o||a))return;var i=M._fullLayout.annotations,n=e._id.charAt(0),s,c;function h(p){var T=s[p],l=null;o?l=x(T,e.range):l=Math.pow(10,T),g(l)||(l=null),r(c+p,l)}for(var v=0;v<i.length;v++)s=i[v],c="annotations["+v+"].",s[n+"ref"]===e._id&&h(n),s["a"+n+"ref"]===e._id&&h("a"+n)}}}),eB=Ye({"src/components/annotations/index.js"(X,H){"use strict";var g=R2(),x=KO();H.exports={moduleType:"component",name:"annotations",layoutAttributes:Kg(),supplyLayoutDefaults:JO(),includeBasePlot:P_()("annotations"),calcAutorange:$O(),draw:g.draw,drawOne:g.drawOne,drawRaw:g.drawRaw,hasClickToShow:x.hasClickToShow,onClick:x.onClick,convertCoords:QO()}}}),D2=Ye({"src/components/annotations3d/attributes.js"(X,H){"use strict";var g=Kg(),x=Ou().overrideAll,A=cl().templatedArray;H.exports=x(A("annotation",{visible:g.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:g.xanchor,xshift:g.xshift,yanchor:g.yanchor,yshift:g.yshift,text:g.text,textangle:g.textangle,font:g.font,width:g.width,height:g.height,opacity:g.opacity,align:g.align,valign:g.valign,bgcolor:g.bgcolor,bordercolor:g.bordercolor,borderpad:g.borderpad,borderwidth:g.borderwidth,showarrow:g.showarrow,arrowcolor:g.arrowcolor,arrowhead:g.arrowhead,startarrowhead:g.startarrowhead,arrowside:g.arrowside,arrowsize:g.arrowsize,startarrowsize:g.startarrowsize,arrowwidth:g.arrowwidth,standoff:g.standoff,startstandoff:g.startstandoff,hovertext:g.hovertext,hoverlabel:g.hoverlabel,captureevents:g.captureevents}),"calc","from-root")}}),tB=Ye({"src/components/annotations3d/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=OS(),e=D2();H.exports=function(o,a,i){A(o,a,{name:"annotations",handleItemDefaults:t,fullLayout:i.fullLayout})};function t(r,o,a,i){function n(h,v){return g.coerce(r,o,e,h,v)}function s(h){var v=h+"axis",p={_fullLayout:{}};return p._fullLayout[v]=a[v],x.coercePosition(o,p,n,h,h,.5)}var c=n("visible");c&&(M(r,o,i.fullLayout,n),s("x"),s("y"),s("z"),g.noneOrAll(r,o,["x","y","z"]),o.xref="x",o.yref="y",o.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),o.showarrow&&(o.axref="pixel",o.ayref="pixel",n("ax",-10),n("ay",-30),g.noneOrAll(r,o,["ax","ay"])))}}}),rB=Ye({"src/components/annotations3d/convert.js"(X,H){"use strict";var g=ta(),x=Co();H.exports=function(e){for(var t=e.fullSceneLayout,r=t.annotations,o=0;o<r.length;o++)A(r[o],e);e.fullLayout._infolayer.selectAll(".annotation-"+e.id).remove()};function A(M,e){var t=e.fullSceneLayout,r=t.domain,o=e.fullLayout._size,a={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};M._xa={},g.extendFlat(M._xa,a),x.setConvert(M._xa),M._xa._offset=o.l+r.x[0]*o.w,M._xa.l2p=function(){return .5*(1+M._pdata[0]/M._pdata[3])*o.w*(r.x[1]-r.x[0])},M._ya={},g.extendFlat(M._ya,a),x.setConvert(M._ya),M._ya._offset=o.t+(1-r.y[1])*o.h,M._ya.l2p=function(){return .5*(1-M._pdata[1]/M._pdata[3])*o.h*(r.y[1]-r.y[0])}}}}),BS=Ye({"src/plots/gl3d/project.js"(X,H){"use strict";function g(A,M){var e=[0,0,0,0],t,r;for(t=0;t<4;++t)for(r=0;r<4;++r)e[r]+=A[4*t+r]*M[t];return e}function x(A,M){var e=g(A.projection,g(A.view,g(A.model,[M[0],M[1],M[2],1])));return e}H.exports=x}}),aB=Ye({"src/components/annotations3d/draw.js"(X,H){"use strict";var g=R2().drawRaw,x=BS(),A=["x","y","z"];H.exports=function(e){for(var t=e.fullSceneLayout,r=e.dataScale,o=t.annotations,a=0;a<o.length;a++){for(var i=o[a],n=!1,s=0;s<3;s++){var c=A[s],h=i[c],v=t[c+"axis"],p=v.r2fraction(h);if(p<0||p>1){n=!0;break}}n?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+a+'"]').remove():(i._pdata=x(e.glplot.cameraParams,[t.xaxis.r2l(i.x)*r[0],t.yaxis.r2l(i.y)*r[1],t.zaxis.r2l(i.z)*r[2]]),g(e.graphDiv,i,a,e.id,i._xa,i._ya))}}}}),iB=Ye({"src/components/annotations3d/index.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:D2()}}},layoutAttributes:D2(),handleDefaults:tB(),includeBasePlot:A,convert:rB(),draw:aB()};function A(M,e){var t=g.subplotsRegistry.gl3d;if(t)for(var r=t.attrRegex,o=Object.keys(M),a=0;a<o.length;a++){var i=o[a];r.test(i)&&(M[i].annotations||[]).length&&(x.pushUnique(e._basePlotModules,t),x.pushUnique(e._subplots.gl3d,i))}}}}),NS=Ye({"src/components/shapes/attributes.js"(X,H){"use strict";var g=Kg(),x=Au(),A=Pc().line,M=Uh().dash,e=Oo().extendFlat,t=cl().templatedArray,r=L_(),o=Pl(),a=xs().shapeTexttemplateAttrs,i=p2();H.exports=t("shape",{visible:e({},o.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:e({},o.legend,{editType:"calc+arraydraw"}),legendgroup:e({},o.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:e({},o.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:x({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:e({},o.legendrank,{editType:"calc+arraydraw"}),legendwidth:e({},o.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:e({},g.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:e({},g.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:e({},A.color,{editType:"arraydraw"}),width:e({},A.width,{editType:"calc+arraydraw"}),dash:e({},M,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:a({},{keys:Object.keys(i)}),font:x({editType:"calc+arraydraw",colorEditType:"arraydraw"}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})}}),nB=Ye({"src/components/shapes/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=NS(),e=rg();H.exports=function(a,i){A(a,i,{name:"shapes",handleItemDefaults:r})};function t(o,a){return o?"bottom":a.indexOf("top")!==-1?"top":a.indexOf("bottom")!==-1?"bottom":"middle"}function r(o,a,i){function n(G,$){return g.coerce(o,a,M,G,$)}a._isShape=!0;var s=n("visible");if(s){var c=n("showlegend");c&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),g.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var h=n("path"),v=h?"path":"rect",p=n("type",v),T=p!=="path";T&&delete a.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var l=n("line.width");l&&(n("line.color"),n("line.dash"));for(var _=n("xsizemode"),w=n("ysizemode"),S=["x","y"],E=0;E<2;E++){var m=S[E],b=m+"anchor",d=m==="x"?_:w,u={_fullLayout:i},y,f,P,L=x.coerceRef(o,a,u,m,void 0,"paper"),z=x.getRefType(L);if(z==="range"?(y=x.getFromId(u,L),y._shapeIndices.push(a._index),P=e.rangeToShapePosition(y),f=e.shapePositionToRange(y),(y.type==="category"||y.type==="multicategory")&&(n(m+"0shift"),n(m+"1shift"))):f=P=g.identity,T){var F=.25,B=.75,O=m+"0",I=m+"1",N=o[O],U=o[I];o[O]=f(o[O],!0),o[I]=f(o[I],!0),d==="pixel"?(n(O,0),n(I,10)):(x.coercePosition(a,u,n,L,O,F),x.coercePosition(a,u,n,L,I,B)),a[O]=P(a[O]),a[I]=P(a[I]),o[O]=N,o[I]=U}if(d==="pixel"){var W=o[b];o[b]=f(o[b],!0),x.coercePosition(a,u,n,L,b,.25),a[b]=P(a[b]),o[b]=W}}T&&g.noneOrAll(o,a,["x0","x1","y0","y1"]);var Q=p==="line",ue,se;if(T&&(ue=n("label.texttemplate")),ue||(se=n("label.text")),se||ue){n("label.textangle");var he=n("label.textposition",Q?"middle":"middle center");n("label.xanchor"),n("label.yanchor",t(Q,he)),n("label.padding"),g.coerceFont(n,"label.font",i.font)}}}}}),oB=Ye({"src/components/shapes/draw_newshape/defaults.js"(X,H){"use strict";var g=Fn(),x=ta();function A(M,e){return M?"bottom":e.indexOf("top")!==-1?"top":e.indexOf("bottom")!==-1?"bottom":"middle"}H.exports=function(e,t,r){r("newshape.visible"),r("newshape.name"),r("newshape.showlegend"),r("newshape.legend"),r("newshape.legendwidth"),r("newshape.legendgroup"),r("newshape.legendgrouptitle.text"),x.coerceFont(r,"newshape.legendgrouptitle.font"),r("newshape.legendrank"),r("newshape.drawdirection"),r("newshape.layer"),r("newshape.fillcolor"),r("newshape.fillrule"),r("newshape.opacity");var o=r("newshape.line.width");if(o){var a=(e||{}).plot_bgcolor||"#FFF";r("newshape.line.color",g.contrast(a)),r("newshape.line.dash")}var i=e.dragmode==="drawline",n=r("newshape.label.text"),s=r("newshape.label.texttemplate");if(n||s){r("newshape.label.textangle");var c=r("newshape.label.textposition",i?"middle":"middle center");r("newshape.label.xanchor"),r("newshape.label.yanchor",A(i,c)),r("newshape.label.padding"),x.coerceFont(r,"newshape.label.font",t.font)}r("activeshape.fillcolor"),r("activeshape.opacity")}}}),sB=Ye({"src/components/shapes/calc_autorange.js"(X,H){"use strict";var g=ta(),x=Co(),A=E_(),M=rg();H.exports=function(i){var n=i._fullLayout,s=g.filterVisible(n.shapes);if(!(!s.length||!i._fullData.length))for(var c=0;c<s.length;c++){var h=s[c];h._extremes={};var v,p,T=x.getRefType(h.xref),l=x.getRefType(h.yref);h.xref!=="paper"&&T!=="domain"&&(v=x.getFromId(i,h.xref),p=o(v,h,A.paramIsX),p&&(h._extremes[v._id]=x.findExtremes(v,p,e(h)))),h.yref!=="paper"&&l!=="domain"&&(v=x.getFromId(i,h.yref),p=o(v,h,A.paramIsY),p&&(h._extremes[v._id]=x.findExtremes(v,p,t(h))))}};function e(a){return r(a.line.width,a.xsizemode,a.x0,a.x1,a.path,!1)}function t(a){return r(a.line.width,a.ysizemode,a.y0,a.y1,a.path,!0)}function r(a,i,n,s,c,h){var v=a/2,p=h;if(i==="pixel"){var T=c?M.extractPathCoords(c,h?A.paramIsY:A.paramIsX):[n,s],l=g.aggNums(Math.max,null,T),_=g.aggNums(Math.min,null,T),w=_<0?Math.abs(_)+v:v,S=l>0?l+v:v;return{ppad:v,ppadplus:p?w:S,ppadminus:p?S:w}}else return{ppad:v}}function o(a,i,n){var s=a._id.charAt(0)==="x"?"x":"y",c=a.type==="category"||a.type==="multicategory",h,v,p=0,T=0,l=c?a.r2c:a.d2c,_=i[s+"sizemode"]==="scaled";if(_?(h=i[s+"0"],v=i[s+"1"],c&&(p=i[s+"0shift"],T=i[s+"1shift"])):(h=i[s+"anchor"],v=i[s+"anchor"]),h!==void 0)return[l(h)+p,l(v)+T];if(i.path){var w=1/0,S=-1/0,E=i.path.match(A.segmentRE),m,b,d,u,y;for(a.type==="date"&&(l=M.decodeDate(l)),m=0;m<E.length;m++)b=E[m],d=n[b.charAt(0)].drawn,d!==void 0&&(u=E[m].substr(1).match(A.paramRE),!(!u||u.length<d)&&(y=l(u[d]),y<w&&(w=y),y>S&&(S=y)));if(S>=w)return[w,S]}}}}),lB=Ye({"src/components/shapes/index.js"(X,H){"use strict";var g=M2();H.exports={moduleType:"component",name:"shapes",layoutAttributes:NS(),supplyLayoutDefaults:nB(),supplyDrawNewShapeDefaults:oB(),includeBasePlot:P_()("shapes"),calcAutorange:sB(),draw:g.draw,drawOne:g.drawOne}}}),US=Ye({"src/components/images/attributes.js"(X,H){"use strict";var g=wh(),x=cl().templatedArray,A=L_();H.exports=x("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",g.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",g.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})}}),uB=Ye({"src/components/images/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=US(),e="images";H.exports=function(o,a){var i={name:e,handleItemDefaults:t};A(o,a,i)};function t(r,o,a){function i(_,w){return g.coerce(r,o,M,_,w)}var n=i("source"),s=i("visible",!!n);if(!s)return o;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var c={_fullLayout:a},h=["x","y"],v=0;v<2;v++){var p=h[v],T=x.coerceRef(r,o,c,p,"paper",void 0);if(T!=="paper"){var l=x.getFromId(c,T);l._imgIndices.push(o._index)}x.coercePosition(o,c,i,T,p,0)}return o}}}),cB=Ye({"src/components/images/draw.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Co(),M=Xc(),e=vd();H.exports=function(r){var o=r._fullLayout,a=[],i={},n=[],s,c;for(c=0;c<o.images.length;c++){var h=o.images[c];if(h.visible)if(h.layer==="below"&&h.xref!=="paper"&&h.yref!=="paper"){s=M.ref2id(h.xref)+M.ref2id(h.yref);var v=o._plots[s];if(!v){n.push(h);continue}v.mainplot&&(s=v.mainplot.id),i[s]||(i[s]=[]),i[s].push(h)}else h.layer==="above"?a.push(h):n.push(h)}var p={x:{left:{sizing:"xMin",offset:0},center:{sizing:"xMid",offset:-1/2},right:{sizing:"xMax",offset:-1}},y:{top:{sizing:"YMin",offset:0},middle:{sizing:"YMid",offset:-1/2},bottom:{sizing:"YMax",offset:-1}}};function T(u){var y=g.select(this);if(this._imgSrc!==u.source)if(y.attr("xmlns",e.svg),!r._context.staticPlot||u.source&&u.source.slice(0,5)==="data:")y.attr("xlink:href",u.source),this._imgSrc=u.source;else{var f=new Promise(function(P){var L=new Image;this.img=L,L.setAttribute("crossOrigin","anonymous"),L.onerror=z,L.onload=function(){var F=document.createElement("canvas");F.width=this.width,F.height=this.height;var B=F.getContext("2d",{willReadFrequently:!0});B.drawImage(this,0,0);var O=F.toDataURL("image/png");y.attr("xlink:href",O),P()},y.on("error",z),L.src=u.source,this._imgSrc=u.source;function z(){y.remove(),P()}}.bind(this));r._promises.push(f)}}function l(u){var y=g.select(this),f=A.getFromId(r,u.xref),P=A.getFromId(r,u.yref),L=A.getRefType(u.xref)==="domain",z=A.getRefType(u.yref)==="domain",F=o._size,B,O;f!==void 0?B=typeof u.xref=="string"&&L?f._length*u.sizex:Math.abs(f.l2p(u.sizex)-f.l2p(0)):B=u.sizex*F.w,P!==void 0?O=typeof u.yref=="string"&&z?P._length*u.sizey:Math.abs(P.l2p(u.sizey)-P.l2p(0)):O=u.sizey*F.h;var I=B*p.x[u.xanchor].offset,N=O*p.y[u.yanchor].offset,U=p.x[u.xanchor].sizing+p.y[u.yanchor].sizing,W,Q;switch(f!==void 0?W=typeof u.xref=="string"&&L?f._length*u.x+f._offset:f.r2p(u.x)+f._offset:W=u.x*F.w+F.l,W+=I,P!==void 0?Q=typeof u.yref=="string"&&z?P._length*(1-u.y)+P._offset:P.r2p(u.y)+P._offset:Q=F.h-u.y*F.h+F.t,Q+=N,u.sizing){case"fill":U+=" slice";break;case"stretch":U="none";break}y.attr({x:W,y:Q,width:B,height:O,preserveAspectRatio:U,opacity:u.opacity});var ue=f&&A.getRefType(u.xref)!=="domain"?f._id:"",se=P&&A.getRefType(u.yref)!=="domain"?P._id:"",he=ue+se;x.setClipUrl(y,he?"clip"+o._uid+he:null,r)}function _(u){return[u.xref,u.x,u.sizex,u.yref,u.y,u.sizey].join("_")}function w(u,y){return u._index-y._index}var S=o._imageLowerLayer.selectAll("image").data(n,_),E=o._imageUpperLayer.selectAll("image").data(a,_);S.enter().append("image"),E.enter().append("image"),S.exit().remove(),E.exit().remove(),S.each(function(u){T.bind(this)(u),l.bind(this)(u)}),E.each(function(u){T.bind(this)(u),l.bind(this)(u)}),S.sort(w),E.sort(w);var m=Object.keys(o._plots);for(c=0;c<m.length;c++){s=m[c];var b=o._plots[s];if(b.imagelayer){var d=b.imagelayer.selectAll("image").data(i[s]||[],_);d.enter().append("image"),d.exit().remove(),d.each(function(u){T.bind(this)(u),l.bind(this)(u)}),d.sort(w)}}}}}),fB=Ye({"src/components/images/convert_coords.js"(X,H){"use strict";var g=jo(),x=c2();H.exports=function(M,e,t,r){e=e||{};var o=t==="log"&&e.type==="linear",a=t==="linear"&&e.type==="log";if(o||a){for(var i=M._fullLayout.images,n=e._id.charAt(0),s,c,h=0;h<i.length;h++)if(s=i[h],c="images["+h+"].",s[n+"ref"]===e._id){var v=s[n],p=s["size"+n],T=null,l=null;if(o){T=x(v,e.range);var _=p/Math.pow(10,T)/2;l=2*Math.log(_+Math.sqrt(1+_*_))/Math.LN10}else T=Math.pow(10,v),l=T*(Math.pow(10,p/2)-Math.pow(10,-p/2));g(T)?g(l)||(l=null):(T=null,l=null),r(c+n,T),r(c+"size"+n,l)}}}}}),hB=Ye({"src/components/images/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"images",layoutAttributes:US(),supplyLayoutDefaults:uB(),includeBasePlot:P_()("images"),draw:cB(),convertCoords:fB()}}}),z2=Ye({"src/components/updatemenus/constants.js"(X,H){"use strict";H.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}}}),jS=Ye({"src/components/updatemenus/attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Oo().extendFlat,M=Ou().overrideAll,e=d2(),t=cl().templatedArray,r=t("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});H.exports=M(t("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:r,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:A(e({editType:"arraydraw"}),{}),font:g({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:x.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")}}),pB=Ye({"src/components/updatemenus/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=jS(),M=z2(),e=M.name,t=A.buttons;H.exports=function(i,n){var s={name:e,handleItemDefaults:r};x(i,n,s)};function r(a,i,n){function s(v,p){return g.coerce(a,i,A,v,p)}var c=x(a,i,{name:"buttons",handleItemDefaults:o}),h=s("visible",c.length>0);h&&(s("active"),s("direction"),s("type"),s("showactive"),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font),s("bgcolor",n.paper_bgcolor),s("bordercolor"),s("borderwidth"))}function o(a,i){function n(c,h){return g.coerce(a,i,t,c,h)}var s=n("visible",a.method==="skip"||Array.isArray(a.args));s&&(n("method"),n("args"),n("args2"),n("label"),n("execute"))}}}),dB=Ye({"src/components/updatemenus/scrollbox.js"(X,H){"use strict";H.exports=e;var g=_n(),x=Fn(),A=Bo(),M=ta();function e(t,r,o){this.gd=t,this.container=r,this.id=o,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}e.barWidth=2,e.barLength=20,e.barRadius=2,e.barPad=1,e.barColor="#808BA4",e.prototype.enable=function(r,o,a){var i=this.gd._fullLayout,n=i.width,s=i.height;this.position=r;var c=this.position.l,h=this.position.w,v=this.position.t,p=this.position.h,T=this.position.direction,l=T==="down",_=T==="left",w=T==="right",S=T==="up",E=h,m=p,b,d,u,y;!l&&!_&&!w&&!S&&(this.position.direction="down",l=!0);var f=l||S;f?(b=c,d=b+E,l?(u=v,y=Math.min(u+m,s),m=y-u):(y=v+m,u=Math.max(y-m,0),m=y-u)):(u=v,y=u+m,_?(d=c+E,b=Math.max(d-E,0),E=d-b):(b=c,d=Math.min(b+E,n),E=d-b)),this._box={l:b,t:u,w:E,h:m};var P=h>E,L=e.barLength+2*e.barPad,z=e.barWidth+2*e.barPad,F=c,B=v+p;B+z>s&&(B=s-z);var O=this.container.selectAll("rect.scrollbar-horizontal").data(P?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-horizontal",!0).call(x.fill,e.barColor),P?(this.hbar=O.attr({rx:e.barRadius,ry:e.barRadius,x:F,y:B,width:L,height:z}),this._hbarXMin=F+L/2,this._hbarTranslateMax=E-L):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=p>m,N=e.barWidth+2*e.barPad,U=e.barLength+2*e.barPad,W=c+h,Q=v;W+N>n&&(W=n-N);var ue=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);ue.exit().on(".drag",null).remove(),ue.enter().append("rect").classed("scrollbar-vertical",!0).call(x.fill,e.barColor),I?(this.vbar=ue.attr({rx:e.barRadius,ry:e.barRadius,x:W,y:Q,width:N,height:U}),this._vbarYMin=Q+U/2,this._vbarTranslateMax=m-U):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var se=this.id,he=b-.5,G=I?d+N+.5:d+.5,$=u-.5,J=P?y+z+.5:y+.5,Z=i._topdefs.selectAll("#"+se).data(P||I?[0]:[]);if(Z.exit().remove(),Z.enter().append("clipPath").attr("id",se).append("rect"),P||I?(this._clipRect=Z.select("rect").attr({x:Math.floor(he),y:Math.floor($),width:Math.ceil(G)-Math.floor(he),height:Math.ceil(J)-Math.floor($)}),this.container.call(A.setClipUrl,se,this.gd),this.bg.attr({x:c,y:v,width:h,height:p})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),P||I){var re=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(re);var ne=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault(),g.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));P&&this.hbar.on(".drag",null).call(ne),I&&this.vbar.on(".drag",null).call(ne)}this.setTranslate(o,a)},e.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(".drag",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(".drag",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},e.prototype._onBoxDrag=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r-=g.event.dx),this.vbar&&(o-=g.event.dy),this.setTranslate(r,o)},e.prototype._onBoxWheel=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r+=g.event.deltaY),this.vbar&&(o+=g.event.deltaY),this.setTranslate(r,o)},e.prototype._onBarDrag=function(){var r=this.translateX,o=this.translateY;if(this.hbar){var a=r+this._hbarXMin,i=a+this._hbarTranslateMax,n=M.constrain(g.event.x,a,i),s=(n-a)/(i-a),c=this.position.w-this._box.w;r=s*c}if(this.vbar){var h=o+this._vbarYMin,v=h+this._vbarTranslateMax,p=M.constrain(g.event.y,h,v),T=(p-h)/(v-h),l=this.position.h-this._box.h;o=T*l}this.setTranslate(r,o)},e.prototype.setTranslate=function(r,o){var a=this.position.w-this._box.w,i=this.position.h-this._box.h;if(r=M.constrain(r||0,0,a),o=M.constrain(o||0,0,i),this.translateX=r,this.translateY=o,this.container.call(A.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-o),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+o-.5)}),this.hbar){var n=r/a;this.hbar.call(A.setTranslate,r+n*this._hbarTranslateMax,o)}if(this.vbar){var s=o/i;this.vbar.call(A.setTranslate,r,o+s*this._vbarTranslateMax)}}}}),vB=Ye({"src/components/updatemenus/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=jl(),r=cl().arrayEditor,o=oh().LINE_SPACING,a=z2(),i=dB();H.exports=function(L){var z=L._fullLayout,F=e.filterVisible(z[a.name]);function B(se){x.autoMargin(L,u(se))}var O=z._menulayer.selectAll("g."+a.containerClassName).data(F.length>0?[0]:[]);if(O.enter().append("g").classed(a.containerClassName,!0).style("cursor","pointer"),O.exit().each(function(){g.select(this).selectAll("g."+a.headerGroupClassName).each(B)}).remove(),F.length!==0){var I=O.selectAll("g."+a.headerGroupClassName).data(F,n);I.enter().append("g").classed(a.headerGroupClassName,!0);for(var N=e.ensureSingle(O,"g",a.dropdownButtonGroupClassName,function(se){se.style("pointer-events","all")}),U=0;U<F.length;U++){var W=F[U];d(L,W)}var Q="updatemenus"+z._uid,ue=new i(L,N,Q);I.enter().size()&&(N.node().parentNode.appendChild(N.node()),N.call(f)),I.exit().each(function(se){N.call(f),B(se)}).remove(),I.each(function(se){var he=g.select(this),G=se.type==="dropdown"?N:null;x.manageCommandObserver(L,se,se.buttons,function($){h(L,se,se.buttons[$.index],he,G,ue,$.index,!0)}),se.type==="dropdown"?(v(L,he,N,ue,se),c(N,se)&&p(L,he,N,ue,se)):p(L,he,null,null,se)})}};function n(P){return P._index}function s(P){return+P.attr(a.menuIndexAttrName)==-1}function c(P,L){return+P.attr(a.menuIndexAttrName)===L._index}function h(P,L,z,F,B,O,I,N){L.active=I,r(P.layout,a.name,L).applyUpdate("active",I),L.type==="buttons"?p(P,F,null,null,L):L.type==="dropdown"&&(B.attr(a.menuIndexAttrName,"-1"),v(P,F,B,O,L),N||p(P,F,B,O,L))}function v(P,L,z,F,B){var O=e.ensureSingle(L,"g",a.headerClassName,function(se){se.style("pointer-events","all")}),I=B._dims,N=B.active,U=B.buttons[N]||a.blankHeaderOpts,W={y:B.pad.t,yPad:0,x:B.pad.l,xPad:0,index:0},Q={width:I.headerWidth,height:I.headerHeight};O.call(_,B,U,P).call(y,B,W,Q);var ue=e.ensureSingle(L,"text",a.headerArrowClassName,function(se){se.attr("text-anchor","end").call(M.font,B.font).text(a.arrowSymbol[B.direction])});ue.attr({x:I.headerWidth-a.arrowOffsetX+B.pad.l,y:I.headerHeight/2+a.textOffsetY+B.pad.t}),O.on("click",function(){z.call(f,String(c(z,B)?-1:B._index)),p(P,L,z,F,B)}),O.on("mouseover",function(){O.call(m)}),O.on("mouseout",function(){O.call(b,B)}),M.setTranslate(L,I.lx,I.ly)}function p(P,L,z,F,B){z||(z=L,z.attr("pointer-events","all"));var O=!s(z)||B.type==="buttons"?B.buttons:[],I=B.type==="dropdown"?a.dropdownButtonClassName:a.buttonClassName,N=z.selectAll("g."+I).data(e.filterVisible(O)),U=N.enter().append("g").classed(I,!0),W=N.exit();B.type==="dropdown"?(U.attr("opacity","0").transition().attr("opacity","1"),W.transition().attr("opacity","0").remove()):W.remove();var Q=0,ue=0,se=B._dims,he=["up","down"].indexOf(B.direction)!==-1;B.type==="dropdown"&&(he?ue=se.headerHeight+a.gapButtonHeader:Q=se.headerWidth+a.gapButtonHeader),B.type==="dropdown"&&B.direction==="up"&&(ue=-a.gapButtonHeader+a.gapButton-se.openHeight),B.type==="dropdown"&&B.direction==="left"&&(Q=-a.gapButtonHeader+a.gapButton-se.openWidth);var G={x:se.lx+Q+B.pad.l,y:se.ly+ue+B.pad.t,yPad:a.gapButton,xPad:a.gapButton,index:0},$={l:G.x+B.borderwidth,t:G.y+B.borderwidth};N.each(function(J,Z){var re=g.select(this);re.call(_,B,J,P).call(y,B,G),re.on("click",function(){g.event.defaultPrevented||(J.execute&&(J.args2&&B.active===Z?(h(P,B,J,L,z,F,-1),x.executeAPICommand(P,J.method,J.args2)):(h(P,B,J,L,z,F,Z),x.executeAPICommand(P,J.method,J.args))),P.emit("plotly_buttonclicked",{menu:B,button:J,active:B.active}))}),re.on("mouseover",function(){re.call(m)}),re.on("mouseout",function(){re.call(b,B),N.call(E,B)})}),N.call(E,B),he?($.w=Math.max(se.openWidth,se.headerWidth),$.h=G.y-$.t):($.w=G.x-$.l,$.h=Math.max(se.openHeight,se.headerHeight)),$.direction=B.direction,F&&(N.size()?T(P,L,z,F,B,$):l(F))}function T(P,L,z,F,B,O){var I=B.direction,N=I==="up"||I==="down",U=B._dims,W=B.active,Q,ue,se;if(N)for(ue=0,se=0;se<W;se++)ue+=U.heights[se]+a.gapButton;else for(Q=0,se=0;se<W;se++)Q+=U.widths[se]+a.gapButton;F.enable(O,Q,ue),F.hbar&&F.hbar.attr("opacity","0").transition().attr("opacity","1"),F.vbar&&F.vbar.attr("opacity","0").transition().attr("opacity","1")}function l(P){var L=!!P.hbar,z=!!P.vbar;L&&P.hbar.transition().attr("opacity","0").each("end",function(){L=!1,z||P.disable()}),z&&P.vbar.transition().attr("opacity","0").each("end",function(){z=!1,L||P.disable()})}function _(P,L,z,F){P.call(w,L).call(S,L,z,F)}function w(P,L){var z=e.ensureSingle(P,"rect",a.itemRectClassName,function(F){F.attr({rx:a.rx,ry:a.ry,"shape-rendering":"crispEdges"})});z.call(A.stroke,L.bordercolor).call(A.fill,L.bgcolor).style("stroke-width",L.borderwidth+"px")}function S(P,L,z,F){var B=e.ensureSingle(P,"text",a.itemTextClassName,function(N){N.attr({"text-anchor":"start","data-notex":1})}),O=z.label,I=F._fullLayout._meta;I&&(O=e.templateString(O,I)),B.call(M.font,L.font).text(O).call(t.convertToTspans,F)}function E(P,L){var z=L.active;P.each(function(F,B){var O=g.select(this);B===z&&L.showactive&&O.select("rect."+a.itemRectClassName).call(A.fill,a.activeColor)})}function m(P){P.select("rect."+a.itemRectClassName).call(A.fill,a.hoverColor)}function b(P,L){P.select("rect."+a.itemRectClassName).call(A.fill,L.bgcolor)}function d(P,L){var z=L._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},F=M.tester.selectAll("g."+a.dropdownButtonClassName).data(e.filterVisible(L.buttons));F.enter().append("g").classed(a.dropdownButtonClassName,!0);var B=["up","down"].indexOf(L.direction)!==-1;F.each(function(Q,ue){var se=g.select(this);se.call(_,L,Q,P);var he=se.select("."+a.itemTextClassName),G=he.node()&&M.bBox(he.node()).width,$=Math.max(G+a.textPadX,a.minWidth),J=L.font.size*o,Z=t.lineCount(he),re=Math.max(J*Z,a.minHeight)+a.textOffsetY;re=Math.ceil(re),$=Math.ceil($),z.widths[ue]=$,z.heights[ue]=re,z.height1=Math.max(z.height1,re),z.width1=Math.max(z.width1,$),B?(z.totalWidth=Math.max(z.totalWidth,$),z.openWidth=z.totalWidth,z.totalHeight+=re+a.gapButton,z.openHeight+=re+a.gapButton):(z.totalWidth+=$+a.gapButton,z.openWidth+=$+a.gapButton,z.totalHeight=Math.max(z.totalHeight,re),z.openHeight=z.totalHeight)}),B?z.totalHeight-=a.gapButton:z.totalWidth-=a.gapButton,z.headerWidth=z.width1+a.arrowPadX,z.headerHeight=z.height1,L.type==="dropdown"&&(B?(z.width1+=a.arrowPadX,z.totalHeight=z.height1):z.totalWidth=z.width1,z.totalWidth+=a.arrowPadX),F.remove();var O=z.totalWidth+L.pad.l+L.pad.r,I=z.totalHeight+L.pad.t+L.pad.b,N=P._fullLayout._size;z.lx=N.l+N.w*L.x,z.ly=N.t+N.h*(1-L.y);var U="left";e.isRightAnchor(L)&&(z.lx-=O,U="right"),e.isCenterAnchor(L)&&(z.lx-=O/2,U="center");var W="top";e.isBottomAnchor(L)&&(z.ly-=I,W="bottom"),e.isMiddleAnchor(L)&&(z.ly-=I/2,W="middle"),z.totalWidth=Math.ceil(z.totalWidth),z.totalHeight=Math.ceil(z.totalHeight),z.lx=Math.round(z.lx),z.ly=Math.round(z.ly),x.autoMargin(P,u(L),{x:L.x,y:L.y,l:O*({right:1,center:.5}[U]||0),r:O*({left:1,center:.5}[U]||0),b:I*({top:1,middle:.5}[W]||0),t:I*({bottom:1,middle:.5}[W]||0)})}function u(P){return a.autoMarginIdRoot+P._index}function y(P,L,z,F){F=F||{};var B=P.select("."+a.itemRectClassName),O=P.select("."+a.itemTextClassName),I=L.borderwidth,N=z.index,U=L._dims;M.setTranslate(P,I+z.x,I+z.y);var W=["up","down"].indexOf(L.direction)!==-1,Q=F.height||(W?U.heights[N]:U.height1);B.attr({x:0,y:0,width:F.width||(W?U.width1:U.widths[N]),height:Q});var ue=L.font.size*o,se=t.lineCount(O),he=(se-1)*ue/2;t.positionText(O,a.textOffsetX,Q/2-he+a.textOffsetY),W?z.y+=U.heights[N]+z.yPad:z.x+=U.widths[N]+z.xPad,z.index++}function f(P,L){P.attr(a.menuIndexAttrName,L||"-1").selectAll("g."+a.dropdownButtonClassName).remove()}}}),mB=Ye({"src/components/updatemenus/index.js"(X,H){"use strict";var g=z2();H.exports={moduleType:"component",name:g.name,layoutAttributes:jS(),supplyLayoutDefaults:pB(),draw:vB()}}}),D_=Ye({"src/components/sliders/constants.js"(X,H){"use strict";H.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}}}),VS=Ye({"src/components/sliders/attributes.js"(X,H){"use strict";var g=Au(),x=d2(),A=Oo().extendDeepAll,M=Ou().overrideAll,e=w_(),t=cl().templatedArray,r=D_(),o=t("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});H.exports=M(t("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:o,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:A(x({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:e.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:g({})},font:g({}),activebgcolor:{valType:"color",dflt:r.gripBgActiveColor},bgcolor:{valType:"color",dflt:r.railBgColor},bordercolor:{valType:"color",dflt:r.railBorderColor},borderwidth:{valType:"number",min:0,dflt:r.railBorderWidth},ticklen:{valType:"number",min:0,dflt:r.tickLength},tickcolor:{valType:"color",dflt:r.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:r.minorTickLength}}),"arraydraw","from-root")}}),gB=Ye({"src/components/sliders/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=VS(),M=D_(),e=M.name,t=A.steps;H.exports=function(i,n){x(i,n,{name:e,handleItemDefaults:r})};function r(a,i,n){function s(w,S){return g.coerce(a,i,A,w,S)}for(var c=x(a,i,{name:"steps",handleItemDefaults:o}),h=0,v=0;v<c.length;v++)c[v].visible&&h++;var p;if(h<2?p=i.visible=!1:p=s("visible"),!!p){i._stepCount=h;var T=i._visibleSteps=g.filterVisible(c),l=s("active");(c[l]||{}).visible||(i.active=T[0]._index),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("len"),s("lenmode"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font);var _=s("currentvalue.visible");_&&(s("currentvalue.xanchor"),s("currentvalue.prefix"),s("currentvalue.suffix"),s("currentvalue.offset"),g.coerceFont(s,"currentvalue.font",i.font)),s("transition.duration"),s("transition.easing"),s("bgcolor"),s("activebgcolor"),s("bordercolor"),s("borderwidth"),s("ticklen"),s("tickwidth"),s("tickcolor"),s("minorticklen")}}function o(a,i){function n(h,v){return g.coerce(a,i,t,h,v)}var s;if(a.method!=="skip"&&!Array.isArray(a.args)?s=i.visible=!1:s=n("visible"),s){n("method"),n("args");var c=n("label","step-"+i._index);n("value",c),n("execute")}}}}),yB=Ye({"src/components/sliders/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=e.strTranslate,r=jl(),o=cl().arrayEditor,a=D_(),i=oh(),n=i.LINE_SPACING,s=i.FROM_TL,c=i.FROM_BR;H.exports=function(O){var I=O._context.staticPlot,N=O._fullLayout,U=v(N,O),W=N._infolayer.selectAll("g."+a.containerClassName).data(U.length>0?[0]:[]);W.enter().append("g").classed(a.containerClassName,!0).style("cursor",I?null:"ew-resize");function Q(G){G._commandObserver&&(G._commandObserver.remove(),delete G._commandObserver),x.autoMargin(O,h(G))}if(W.exit().each(function(){g.select(this).selectAll("g."+a.groupClassName).each(Q)}).remove(),U.length!==0){var ue=W.selectAll("g."+a.groupClassName).data(U,p);ue.enter().append("g").classed(a.groupClassName,!0),ue.exit().each(Q).remove();for(var se=0;se<U.length;se++){var he=U[se];T(O,he)}ue.each(function(G){var $=g.select(this);y(G),x.manageCommandObserver(O,G,G._visibleSteps,function(J){var Z=$.data()[0];Z.active!==J.index&&(Z._dragging||b(O,$,Z,J.index,!1,!0))}),l(O,g.select(this),G)})}};function h(B){return a.autoMarginIdRoot+B._index}function v(B,O){for(var I=B[a.name],N=[],U=0;U<I.length;U++){var W=I[U];W.visible&&(W._gd=O,N.push(W))}return N}function p(B){return B._index}function T(B,O){var I=M.tester.selectAll("g."+a.labelGroupClass).data(O._visibleSteps);I.enter().append("g").classed(a.labelGroupClass,!0);var N=0,U=0;I.each(function(re){var ne=g.select(this),j=S(ne,{step:re},O),ee=j.node();if(ee){var ie=M.bBox(ee);U=Math.max(U,ie.height),N=Math.max(N,ie.width)}}),I.remove();var W=O._dims={};W.inputAreaWidth=Math.max(a.railWidth,a.gripHeight);var Q=B._fullLayout._size;W.lx=Q.l+Q.w*O.x,W.ly=Q.t+Q.h*(1-O.y),O.lenmode==="fraction"?W.outerLength=Math.round(Q.w*O.len):W.outerLength=O.len,W.inputAreaStart=0,W.inputAreaLength=Math.round(W.outerLength-O.pad.l-O.pad.r);var ue=W.inputAreaLength-2*a.stepInset,se=ue/(O._stepCount-1),he=N+a.labelPadding;if(W.labelStride=Math.max(1,Math.ceil(he/se)),W.labelHeight=U,W.currentValueMaxWidth=0,W.currentValueHeight=0,W.currentValueTotalHeight=0,W.currentValueMaxLines=1,O.currentvalue.visible){var G=M.tester.append("g");I.each(function(re){var ne=_(G,O,re.label),j=ne.node()&&M.bBox(ne.node())||{width:0,height:0},ee=r.lineCount(ne);W.currentValueMaxWidth=Math.max(W.currentValueMaxWidth,Math.ceil(j.width)),W.currentValueHeight=Math.max(W.currentValueHeight,Math.ceil(j.height)),W.currentValueMaxLines=Math.max(W.currentValueMaxLines,ee)}),W.currentValueTotalHeight=W.currentValueHeight+O.currentvalue.offset,G.remove()}W.height=W.currentValueTotalHeight+a.tickOffset+O.ticklen+a.labelOffset+W.labelHeight+O.pad.t+O.pad.b;var $="left";e.isRightAnchor(O)&&(W.lx-=W.outerLength,$="right"),e.isCenterAnchor(O)&&(W.lx-=W.outerLength/2,$="center");var J="top";e.isBottomAnchor(O)&&(W.ly-=W.height,J="bottom"),e.isMiddleAnchor(O)&&(W.ly-=W.height/2,J="middle"),W.outerLength=Math.ceil(W.outerLength),W.height=Math.ceil(W.height),W.lx=Math.round(W.lx),W.ly=Math.round(W.ly);var Z={y:O.y,b:W.height*c[J],t:W.height*s[J]};O.lenmode==="fraction"?(Z.l=0,Z.xl=O.x-O.len*s[$],Z.r=0,Z.xr=O.x+O.len*c[$]):(Z.x=O.x,Z.l=W.outerLength*s[$],Z.r=W.outerLength*c[$]),x.autoMargin(B,h(O),Z)}function l(B,O,I){(I.steps[I.active]||{}).visible||(I.active=I._visibleSteps[0]._index),O.call(_,I).call(F,I).call(E,I).call(u,I).call(z,B,I).call(w,B,I);var N=I._dims;M.setTranslate(O,N.lx+I.pad.l,N.ly+I.pad.t),O.call(f,I,!1),O.call(_,I)}function _(B,O,I){if(O.currentvalue.visible){var N=O._dims,U,W;switch(O.currentvalue.xanchor){case"right":U=N.inputAreaLength-a.currentValueInset-N.currentValueMaxWidth,W="left";break;case"center":U=N.inputAreaLength*.5,W="middle";break;default:U=a.currentValueInset,W="left"}var Q=e.ensureSingle(B,"text",a.labelClass,function(J){J.attr({"text-anchor":W,"data-notex":1})}),ue=O.currentvalue.prefix?O.currentvalue.prefix:"";if(typeof I=="string")ue+=I;else{var se=O.steps[O.active].label,he=O._gd._fullLayout._meta;he&&(se=e.templateString(se,he)),ue+=se}O.currentvalue.suffix&&(ue+=O.currentvalue.suffix),Q.call(M.font,O.currentvalue.font).text(ue).call(r.convertToTspans,O._gd);var G=r.lineCount(Q),$=(N.currentValueMaxLines+1-G)*O.currentvalue.font.size*n;return r.positionText(Q,U,$),Q}}function w(B,O,I){var N=e.ensureSingle(B,"rect",a.gripRectClass,function(U){U.call(d,O,B,I).style("pointer-events","all")});N.attr({width:a.gripWidth,height:a.gripHeight,rx:a.gripRadius,ry:a.gripRadius}).call(A.stroke,I.bordercolor).call(A.fill,I.bgcolor).style("stroke-width",I.borderwidth+"px")}function S(B,O,I){var N=e.ensureSingle(B,"text",a.labelClass,function(Q){Q.attr({"text-anchor":"middle","data-notex":1})}),U=O.step.label,W=I._gd._fullLayout._meta;return W&&(U=e.templateString(U,W)),N.call(M.font,I.font).text(U).call(r.convertToTspans,I._gd),N}function E(B,O){var I=e.ensureSingle(B,"g",a.labelsClass),N=O._dims,U=I.selectAll("g."+a.labelGroupClass).data(N.labelSteps);U.enter().append("g").classed(a.labelGroupClass,!0),U.exit().remove(),U.each(function(W){var Q=g.select(this);Q.call(S,W,O),M.setTranslate(Q,P(O,W.fraction),a.tickOffset+O.ticklen+O.font.size*n+a.labelOffset+N.currentValueTotalHeight)})}function m(B,O,I,N,U){var W=Math.round(N*(I._stepCount-1)),Q=I._visibleSteps[W]._index;Q!==I.active&&b(B,O,I,Q,!0,U)}function b(B,O,I,N,U,W){var Q=I.active;I.active=N,o(B.layout,a.name,I).applyUpdate("active",N);var ue=I.steps[I.active];O.call(f,I,W),O.call(_,I),B.emit("plotly_sliderchange",{slider:I,step:I.steps[I.active],interaction:U,previousActive:Q}),ue&&ue.method&&U&&(O._nextMethod?(O._nextMethod.step=ue,O._nextMethod.doCallback=U,O._nextMethod.doTransition=W):(O._nextMethod={step:ue,doCallback:U,doTransition:W},O._nextMethodRaf=window.requestAnimationFrame(function(){var se=O._nextMethod.step;se.method&&(se.execute&&x.executeAPICommand(B,se.method,se.args),O._nextMethod=null,O._nextMethodRaf=null)})))}function d(B,O,I){if(O._context.staticPlot)return;var N=I.node(),U=g.select(O);function W(){return I.data()[0]}function Q(){var ue=W();O.emit("plotly_sliderstart",{slider:ue});var se=I.select("."+a.gripRectClass);g.event.stopPropagation(),g.event.preventDefault(),se.call(A.fill,ue.activebgcolor);var he=L(ue,g.mouse(N)[0]);m(O,I,ue,he,!0),ue._dragging=!0;function G(){var J=W(),Z=L(J,g.mouse(N)[0]);m(O,I,J,Z,!1)}U.on("mousemove",G),U.on("touchmove",G);function $(){var J=W();J._dragging=!1,se.call(A.fill,J.bgcolor),U.on("mouseup",null),U.on("mousemove",null),U.on("touchend",null),U.on("touchmove",null),O.emit("plotly_sliderend",{slider:J,step:J.steps[J.active]})}U.on("mouseup",$),U.on("touchend",$)}B.on("mousedown",Q),B.on("touchstart",Q)}function u(B,O){var I=B.selectAll("rect."+a.tickRectClass).data(O._visibleSteps),N=O._dims;I.enter().append("rect").classed(a.tickRectClass,!0),I.exit().remove(),I.attr({width:O.tickwidth+"px","shape-rendering":"crispEdges"}),I.each(function(U,W){var Q=W%N.labelStride===0,ue=g.select(this);ue.attr({height:Q?O.ticklen:O.minorticklen}).call(A.fill,O.tickcolor),M.setTranslate(ue,P(O,W/(O._stepCount-1))-.5*O.tickwidth,(Q?a.tickOffset:a.minorTickOffset)+N.currentValueTotalHeight)})}function y(B){var O=B._dims;O.labelSteps=[];for(var I=B._stepCount,N=0;N<I;N+=O.labelStride)O.labelSteps.push({fraction:N/(I-1),step:B._visibleSteps[N]})}function f(B,O,I){for(var N=B.select("rect."+a.gripRectClass),U=0,W=0;W<O._stepCount;W++)if(O._visibleSteps[W]._index===O.active){U=W;break}var Q=P(O,U/(O._stepCount-1));if(!O._invokingCommand){var ue=N;I&&O.transition.duration>0&&(ue=ue.transition().duration(O.transition.duration).ease(O.transition.easing)),ue.attr("transform",t(Q-a.gripWidth*.5,O._dims.currentValueTotalHeight))}}function P(B,O){var I=B._dims;return I.inputAreaStart+a.stepInset+(I.inputAreaLength-2*a.stepInset)*Math.min(1,Math.max(0,O))}function L(B,O){var I=B._dims;return Math.min(1,Math.max(0,(O-a.stepInset-I.inputAreaStart)/(I.inputAreaLength-2*a.stepInset-2*I.inputAreaStart)))}function z(B,O,I){var N=I._dims,U=e.ensureSingle(B,"rect",a.railTouchRectClass,function(W){W.call(d,O,B,I).style("pointer-events","all")});U.attr({width:N.inputAreaLength,height:Math.max(N.inputAreaWidth,a.tickOffset+I.ticklen+N.labelHeight)}).call(A.fill,I.bgcolor).attr("opacity",0),M.setTranslate(U,0,N.currentValueTotalHeight)}function F(B,O){var I=O._dims,N=I.inputAreaLength-a.railInset*2,U=e.ensureSingle(B,"rect",a.railRectClass);U.attr({width:N,height:a.railWidth,rx:a.railRadius,ry:a.railRadius,"shape-rendering":"crispEdges"}).call(A.stroke,O.bordercolor).call(A.fill,O.bgcolor).style("stroke-width",O.borderwidth+"px"),M.setTranslate(U,a.railInset,(I.inputAreaWidth-a.railWidth)*.5+I.currentValueTotalHeight)}}}),_B=Ye({"src/components/sliders/index.js"(X,H){"use strict";var g=D_();H.exports={moduleType:"component",name:g.name,layoutAttributes:VS(),supplyLayoutDefaults:gB(),draw:yB()}}}),F2=Ye({"src/components/rangeslider/attributes.js"(X,H){"use strict";var g=Gf();H.exports={bgcolor:{valType:"color",dflt:g.background,editType:"plot"},bordercolor:{valType:"color",dflt:g.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}}}),qS=Ye({"src/components/rangeslider/oppaxis_attributes.js"(X,H){"use strict";H.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}}}),O2=Ye({"src/components/rangeslider/constants.js"(X,H){"use strict";H.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}}}),xB=Ye({"src/components/rangeslider/helpers.js"(X){"use strict";var H=Xc(),g=jl(),x=O2(),A=oh().LINE_SPACING,M=x.name;function e(t){var r=t&&t[M];return r&&r.visible}X.isVisible=e,X.makeData=function(t){for(var r=H.list({_fullLayout:t},"x",!0),o=t.margin,a=[],i=0;i<r.length;i++){var n=r[i];if(e(n)){a.push(n);var s=n[M];s._id=M+n._id,s._height=(t.height-o.b-o.t)*s.thickness,s._offsetShift=Math.floor(s.borderwidth/2)}}t._rangeSliderData=a},X.autoMarginOpts=function(t,r){var o=t._fullLayout,a=r[M],i=r._id.charAt(0),n=0,s=0;if(r.side==="bottom"&&(n=r._depth,r.title.text!==o._dfltTitle[i])){s=1.5*r.title.font.size+10+a._offsetShift;var c=(r.title.text.match(g.BR_TAG_ALL)||[]).length;s+=c*r.title.font.size*A}return{x:0,y:r._counterDomainMin,l:0,r:0,t:0,b:a._height+n+Math.max(o.margin.b,s),pad:x.extraPad+a._offsetShift*2}}}}),bB=Ye({"src/components/rangeslider/defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Xc(),M=F2(),e=qS();H.exports=function(r,o,a){var i=r[a],n=o[a];if(!(i.rangeslider||o._requestRangeslider[n._id]))return;g.isPlainObject(i.rangeslider)||(i.rangeslider={});var s=i.rangeslider,c=x.newContainer(n,"rangeslider");function h(y,f){return g.coerce(s,c,M,y,f)}var v,p;function T(y,f){return g.coerce(v,p,e,y,f)}var l=h("visible");if(l){h("bgcolor",o.plot_bgcolor),h("bordercolor"),h("borderwidth"),h("thickness"),h("autorange",!n.isValidRange(s.range)),h("range");var _=o._subplots;if(_)for(var w=_.cartesian.filter(function(y){return y.substr(0,y.indexOf("y"))===A.name2id(a)}).map(function(y){return y.substr(y.indexOf("y"),y.length)}),S=g.simpleMap(w,A.id2name),E=0;E<S.length;E++){var m=S[E];v=s[m]||{},p=x.newContainer(c,m,"yaxis");var b=o[m],d;v.range&&b.isValidRange(v.range)&&(d="fixed");var u=T("rangemode",d);u!=="match"&&T("range",b.range.slice())}c._input=s}}}}),wB=Ye({"src/components/rangeslider/calc_autorange.js"(X,H){"use strict";var g=Xc().list,x=Yd().getAutoRange,A=O2();H.exports=function(e){for(var t=g(e,"x",!0),r=0;r<t.length;r++){var o=t[r],a=o[A.name];a&&a.visible&&a.autorange&&(a._input.autorange=!0,a._input.range=a.range=x(e,o))}}}}),TB=Ye({"src/components/rangeslider/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Bo(),r=Fn(),o=Xg(),a=Pf(),i=Xc(),n=bp(),s=Kd(),c=O2();H.exports=function(d){for(var u=d._fullLayout,y=u._rangeSliderData,f=0;f<y.length;f++){var P=y[f][c.name];P._clipId=P._id+"-"+u._uid}function L(F){return F._name}var z=u._infolayer.selectAll("g."+c.containerClassName).data(y,L);z.exit().each(function(F){var B=F[c.name];u._topdefs.select("#"+B._clipId).remove()}).remove(),y.length!==0&&(z.enter().append("g").classed(c.containerClassName,!0).attr("pointer-events","all"),z.each(function(F){var B=g.select(this),O=F[c.name],I=u[i.id2name(F.anchor)],N=O[i.id2name(F.anchor)];if(O.range){var U=M.simpleMap(O.range,F.r2l),W=M.simpleMap(F.range,F.r2l),Q;W[0]<W[1]?Q=[Math.min(U[0],W[0]),Math.max(U[1],W[1])]:Q=[Math.max(U[0],W[0]),Math.min(U[1],W[1])],O.range=O._input.range=M.simpleMap(Q,F.l2r)}F.cleanRange("rangeslider.range");var ue=u._size,se=F.domain;O._width=ue.w*(se[1]-se[0]);var he=Math.round(ue.l+ue.w*se[0]),G=Math.round(ue.t+ue.h*(1-F._counterDomainMin)+(F.side==="bottom"?F._depth:0)+O._offsetShift+c.extraPad);B.attr("transform",e(he,G)),O._rl=M.simpleMap(O.range,F.r2l);var $=O._rl[0],J=O._rl[1],Z=J-$;if(O.p2d=function(Ie){return Ie/O._width*Z+$},O.d2p=function(Ie){return(Ie-$)/Z*O._width},F.rangebreaks){var re=F.locateBreaks($,J);if(re.length){var ne,j,ee=0;for(ne=0;ne<re.length;ne++)j=re[ne],ee+=j.max-j.min;var ie=O._width/(J-$-ee),fe=[-ie*$];for(ne=0;ne<re.length;ne++)j=re[ne],fe.push(fe[fe.length-1]-ie*(j.max-j.min));for(O.d2p=function(Ie){for(var Ze=fe[0],at=0;at<re.length;at++){var it=re[at];if(Ie>=it.max)Ze=fe[at+1];else if(Ie<it.min)break}return Ze+ie*Ie},ne=0;ne<re.length;ne++)j=re[ne],j.pmin=O.d2p(j.min),j.pmax=O.d2p(j.max);O.p2d=function(Ie){for(var Ze=fe[0],at=0;at<re.length;at++){var it=re[at];if(Ie>=it.pmax)Ze=fe[at+1];else if(Ie<it.pmin)break}return(Ie-Ze)/ie}}}if(N.rangemode!=="match"){var be=I.r2l(N.range[0]),Ae=I.r2l(N.range[1]),Be=Ae-be;O.d2pOppAxis=function(Ie){return(Ie-be)/Be*O._height}}B.call(l,d,F,O).call(_,d,F,O).call(w,d,F,O).call(E,d,F,O,N).call(m,d,F,O).call(b,d,F,O),v(B,d,F,O),T(B,d,F,O,I,N),F.side==="bottom"&&o.draw(d,F._id+"title",{propContainer:F,propName:F._name+".title",placeholder:u._dfltTitle.x,attributes:{x:F._offset+F._length/2,y:G+O._height+O._offsetShift+10+1.5*F.title.font.size,"text-anchor":"middle"}})}))};function h(d){return typeof d.clientX=="number"?d.clientX:d.touches&&d.touches.length>0?d.touches[0].clientX:0}function v(d,u,y,f){if(u._context.staticPlot)return;var P=d.select("rect."+c.slideBoxClassName).node(),L=d.select("rect."+c.grabAreaMinClassName).node(),z=d.select("rect."+c.grabAreaMaxClassName).node();function F(){var B=g.event,O=B.target,I=h(B),N=I-d.node().getBoundingClientRect().left,U=f.d2p(y._rl[0]),W=f.d2p(y._rl[1]),Q=n.coverSlip();this.addEventListener("touchmove",ue),this.addEventListener("touchend",se),Q.addEventListener("mousemove",ue),Q.addEventListener("mouseup",se);function ue(he){var G=h(he),$=+G-I,J,Z,re;switch(O){case P:if(re="ew-resize",U+$>y._length||W+$<0)return;J=U+$,Z=W+$;break;case L:if(re="col-resize",U+$>y._length)return;J=U+$,Z=W;break;case z:if(re="col-resize",W+$<0)return;J=U,Z=W+$;break;default:re="ew-resize",J=N,Z=N+$;break}if(Z<J){var ne=Z;Z=J,J=ne}f._pixelMin=J,f._pixelMax=Z,s(g.select(Q),re),p(d,u,y,f)}function se(){Q.removeEventListener("mousemove",ue),Q.removeEventListener("mouseup",se),this.removeEventListener("touchmove",ue),this.removeEventListener("touchend",se),M.removeElement(Q)}}d.on("mousedown",F),d.on("touchstart",F)}function p(d,u,y,f){function P(F){return y.l2r(M.constrain(F,f._rl[0],f._rl[1]))}var L=P(f.p2d(f._pixelMin)),z=P(f.p2d(f._pixelMax));window.requestAnimationFrame(function(){x.call("_guiRelayout",u,y._name+".range",[L,z])})}function T(d,u,y,f,P,L){var z=c.handleWidth/2;function F(he){return M.constrain(he,0,f._width)}function B(he){return M.constrain(he,0,f._height)}function O(he){return M.constrain(he,-z,f._width+z)}var I=F(f.d2p(y._rl[0])),N=F(f.d2p(y._rl[1]));if(d.select("rect."+c.slideBoxClassName).attr("x",I).attr("width",N-I),d.select("rect."+c.maskMinClassName).attr("width",I),d.select("rect."+c.maskMaxClassName).attr("x",N).attr("width",f._width-N),L.rangemode!=="match"){var U=f._height-B(f.d2pOppAxis(P._rl[1])),W=f._height-B(f.d2pOppAxis(P._rl[0]));d.select("rect."+c.maskMinOppAxisClassName).attr("x",I).attr("height",U).attr("width",N-I),d.select("rect."+c.maskMaxOppAxisClassName).attr("x",I).attr("y",W).attr("height",f._height-W).attr("width",N-I),d.select("rect."+c.slideBoxClassName).attr("y",U).attr("height",W-U)}var Q=.5,ue=Math.round(O(I-z))-Q,se=Math.round(O(N-z))+Q;d.select("g."+c.grabberMinClassName).attr("transform",e(ue,Q)),d.select("g."+c.grabberMaxClassName).attr("transform",e(se,Q))}function l(d,u,y,f){var P=M.ensureSingle(d,"rect",c.bgClassName,function(B){B.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),L=f.borderwidth%2===0?f.borderwidth:f.borderwidth-1,z=-f._offsetShift,F=t.crispRound(u,f.borderwidth);P.attr({width:f._width+L,height:f._height+L,transform:e(z,z),"stroke-width":F}).call(r.stroke,f.bordercolor).call(r.fill,f.bgcolor)}function _(d,u,y,f){var P=u._fullLayout,L=M.ensureSingleById(P._topdefs,"clipPath",f._clipId,function(z){z.append("rect").attr({x:0,y:0})});L.select("rect").attr({width:f._width,height:f._height})}function w(d,u,y,f){var P=u.calcdata,L=d.selectAll("g."+c.rangePlotClassName).data(y._subplotsWith,M.identity);L.enter().append("g").attr("class",function(F){return c.rangePlotClassName+" "+F}).call(t.setClipUrl,f._clipId,u),L.order(),L.exit().remove();var z;L.each(function(F,B){var O=g.select(this),I=B===0,N=i.getFromId(u,F,"y"),U=N._name,W=f[U],Q={data:[],layout:{xaxis:{type:y.type,domain:[0,1],range:f.range.slice(),calendar:y.calendar},width:f._width,height:f._height,margin:{t:0,b:0,l:0,r:0}},_context:u._context};y.rangebreaks&&(Q.layout.xaxis.rangebreaks=y.rangebreaks),Q.layout[U]={type:N.type,domain:[0,1],range:W.rangemode!=="match"?W.range.slice():N.range.slice(),calendar:N.calendar},N.rangebreaks&&(Q.layout[U].rangebreaks=N.rangebreaks),A.supplyDefaults(Q);var ue=Q._fullLayout.xaxis,se=Q._fullLayout[U];ue.clearCalc(),ue.setScale(),se.clearCalc(),se.setScale();var he={id:F,plotgroup:O,xaxis:ue,yaxis:se,isRangePlot:!0};I?z=he:(he.mainplot="xy",he.mainplotinfo=z),a.rangePlot(u,he,S(P,F))})}function S(d,u){for(var y=[],f=0;f<d.length;f++){var P=d[f],L=P[0].trace;L.xaxis+L.yaxis===u&&y.push(P)}return y}function E(d,u,y,f,P){var L=M.ensureSingle(d,"rect",c.maskMinClassName,function(O){O.attr({x:0,y:0,"shape-rendering":"crispEdges"})});L.attr("height",f._height).call(r.fill,c.maskColor);var z=M.ensureSingle(d,"rect",c.maskMaxClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});if(z.attr("height",f._height).call(r.fill,c.maskColor),P.rangemode!=="match"){var F=M.ensureSingle(d,"rect",c.maskMinOppAxisClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});F.attr("width",f._width).call(r.fill,c.maskOppAxisColor);var B=M.ensureSingle(d,"rect",c.maskMaxOppAxisClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});B.attr("width",f._width).style("border-top",c.maskOppBorder).call(r.fill,c.maskOppAxisColor)}}function m(d,u,y,f){if(!u._context.staticPlot){var P=M.ensureSingle(d,"rect",c.slideBoxClassName,function(L){L.attr({y:0,cursor:c.slideBoxCursor,"shape-rendering":"crispEdges"})});P.attr({height:f._height,fill:c.slideBoxFill})}}function b(d,u,y,f){var P=M.ensureSingle(d,"g",c.grabberMinClassName),L=M.ensureSingle(d,"g",c.grabberMaxClassName),z={x:0,width:c.handleWidth,rx:c.handleRadius,fill:r.background,stroke:r.defaultLine,"stroke-width":c.handleStrokeWidth,"shape-rendering":"crispEdges"},F={y:Math.round(f._height/4),height:Math.round(f._height/2)},B=M.ensureSingle(P,"rect",c.handleMinClassName,function(W){W.attr(z)});B.attr(F);var O=M.ensureSingle(L,"rect",c.handleMaxClassName,function(W){W.attr(z)});O.attr(F);var I={width:c.grabAreaWidth,x:0,y:0,fill:c.grabAreaFill,cursor:u._context.staticPlot?void 0:c.grabAreaCursor},N=M.ensureSingle(P,"rect",c.grabAreaMinClassName,function(W){W.attr(I)});N.attr("height",f._height);var U=M.ensureSingle(L,"rect",c.grabAreaMaxClassName,function(W){W.attr(I)});U.attr("height",f._height)}}}),AB=Ye({"src/components/rangeslider/index.js"(X,H){"use strict";var g=ta(),x=F2(),A=qS(),M=xB();H.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:g.extendFlat({},x,{yaxis:A})}}},layoutAttributes:F2(),handleDefaults:bB(),calcAutorange:wB(),draw:TB(),isVisible:M.isVisible,makeData:M.makeData,autoMarginOpts:M.autoMarginOpts}}}),B2=Ye({"src/components/rangeselector/attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=cl().templatedArray,M=A("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});H.exports={visible:{valType:"boolean",editType:"plot"},buttons:M,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:g({editType:"plot"}),bgcolor:{valType:"color",dflt:x.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:x.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}}}),HS=Ye({"src/components/rangeselector/constants.js"(X,H){"use strict";H.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}}}),SB=Ye({"src/components/rangeselector/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=up(),e=B2(),t=HS();H.exports=function(i,n,s,c,h){var v=i.rangeselector||{},p=A.newContainer(n,"rangeselector");function T(E,m){return g.coerce(v,p,e,E,m)}var l=M(v,p,{name:"buttons",handleItemDefaults:r,calendar:h}),_=T("visible",l.length>0);if(_){var w=o(n,s,c);T("x",w[0]),T("y",w[1]),g.noneOrAll(i,n,["x","y"]),T("xanchor"),T("yanchor"),g.coerceFont(T,"font",s.font);var S=T("bgcolor");T("activecolor",x.contrast(S,t.lightAmount,t.darkAmount)),T("bordercolor"),T("borderwidth")}};function r(a,i,n,s){var c=s.calendar;function h(T,l){return g.coerce(a,i,e.buttons,T,l)}var v=h("visible");if(v){var p=h("step");p!=="all"&&(c&&c!=="gregorian"&&(p==="month"||p==="year")?i.stepmode="backward":h("stepmode"),h("count")),h("label")}}function o(a,i,n){for(var s=n.filter(function(p){return i[p].anchor===a._id}),c=0,h=0;h<s.length;h++){var v=i[s[h]].domain;v&&(c=Math.max(v[1],c))}return[a.domain[0],c+t.yPad]}}}),MB=Ye({"src/components/rangeselector/get_update_object.js"(X,H){"use strict";var g=$p(),x=ta().titleCase;H.exports=function(e,t){var r=e._name,o={};if(t.step==="all")o[r+".autorange"]=!0;else{var a=A(e,t);o[r+".range[0]"]=a[0],o[r+".range[1]"]=a[1]}return o};function A(M,e){var t=M.range,r=new Date(M.r2l(t[1])),o=e.step,a=g["utc"+x(o)],i=e.count,n;switch(e.stepmode){case"backward":n=M.l2r(+a.offset(r,-i));break;case"todate":var s=a.offset(r,-i);n=M.l2r(+a.ceil(s));break}var c=t[1];return[n,c]}}}),EB=Ye({"src/components/rangeselector/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=Fn(),e=Bo(),t=ta(),r=t.strTranslate,o=jl(),a=Xc(),i=oh(),n=i.LINE_SPACING,s=i.FROM_TL,c=i.FROM_BR,h=HS(),v=MB();H.exports=function(d){var u=d._fullLayout,y=u._infolayer.selectAll(".rangeselector").data(p(d),T);y.enter().append("g").classed("rangeselector",!0),y.exit().remove(),y.style({cursor:"pointer","pointer-events":"all"}),y.each(function(f){var P=g.select(this),L=f,z=L.rangeselector,F=P.selectAll("g.button").data(t.filterVisible(z.buttons));F.enter().append("g").classed("button",!0),F.exit().remove(),F.each(function(B){var O=g.select(this),I=v(L,B);B._isActive=l(L,B,I),O.call(_,z,B),O.call(S,z,B,d),O.on("click",function(){d._dragged||x.call("_guiRelayout",d,I)}),O.on("mouseover",function(){B._isHovered=!0,O.call(_,z,B)}),O.on("mouseout",function(){B._isHovered=!1,O.call(_,z,B)})}),m(d,F,z,L._name,P)})};function p(b){for(var d=a.list(b,"x",!0),u=[],y=0;y<d.length;y++){var f=d[y];f.rangeselector&&f.rangeselector.visible&&u.push(f)}return u}function T(b){return b._id}function l(b,d,u){if(d.step==="all")return b.autorange===!0;var y=Object.keys(u);return b.range[0]===u[y[0]]&&b.range[1]===u[y[1]]}function _(b,d,u){var y=t.ensureSingle(b,"rect","selector-rect",function(f){f.attr("shape-rendering","crispEdges")});y.attr({rx:h.rx,ry:h.ry}),y.call(M.stroke,d.bordercolor).call(M.fill,w(d,u)).style("stroke-width",d.borderwidth+"px")}function w(b,d){return d._isActive||d._isHovered?b.activecolor:b.bgcolor}function S(b,d,u,y){function f(L){o.convertToTspans(L,y)}var P=t.ensureSingle(b,"text","selector-text",function(L){L.attr("text-anchor","middle")});P.call(e.font,d.font).text(E(u,y._fullLayout._meta)).call(f)}function E(b,d){return b.label?d?t.templateString(b.label,d):b.label:b.step==="all"?"all":b.count+b.step.charAt(0)}function m(b,d,u,y,f){var P=0,L=0,z=u.borderwidth;d.each(function(){var U=g.select(this),W=U.select(".selector-text"),Q=u.font.size*n,ue=Math.max(Q*o.lineCount(W),16)+3;L=Math.max(L,ue)}),d.each(function(){var U=g.select(this),W=U.select(".selector-rect"),Q=U.select(".selector-text"),ue=Q.node()&&e.bBox(Q.node()).width,se=u.font.size*n,he=o.lineCount(Q),G=Math.max(ue+10,h.minButtonWidth);U.attr("transform",r(z+P,z)),W.attr({x:0,y:0,width:G,height:L}),o.positionText(Q,G/2,L/2-(he-1)*se/2+3),P+=G+5});var F=b._fullLayout._size,B=F.l+F.w*u.x,O=F.t+F.h*(1-u.y),I="left";t.isRightAnchor(u)&&(B-=P,I="right"),t.isCenterAnchor(u)&&(B-=P/2,I="center");var N="top";t.isBottomAnchor(u)&&(O-=L,N="bottom"),t.isMiddleAnchor(u)&&(O-=L/2,N="middle"),P=Math.ceil(P),L=Math.ceil(L),B=Math.round(B),O=Math.round(O),A.autoMargin(b,y+"-range-selector",{x:u.x,y:u.y,l:P*s[I],r:P*c[I],b:L*c[N],t:L*s[N]}),f.attr("transform",r(B,O))}}}),kB=Ye({"src/components/rangeselector/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:B2()}}},layoutAttributes:B2(),handleDefaults:SB(),draw:EB()}}}),Wu=Ye({"src/plots/domain.js"(X){"use strict";var H=Oo().extendFlat;X.attributes=function(g,x){g=g||{},x=x||{};var A={valType:"info_array",editType:g.editType,items:[{valType:"number",min:0,max:1,editType:g.editType},{valType:"number",min:0,max:1,editType:g.editType}],dflt:[0,1]},M=g.name?g.name+" ":"",e=g.trace?"trace ":"subplot ",t=x.description?" "+x.description:"",r={x:H({},A,{}),y:H({},A,{}),editType:g.editType};return g.noGridCell||(r.row={valType:"integer",min:0,dflt:0,editType:g.editType},r.column={valType:"integer",min:0,dflt:0,editType:g.editType}),r},X.defaults=function(g,x,A,M){var e=M&&M.x||[0,1],t=M&&M.y||[0,1],r=x.grid;if(r){var o=A("domain.column");o!==void 0&&(o<r.columns?e=r._domains.x[o]:delete g.domain.column);var a=A("domain.row");a!==void 0&&(a<r.rows?t=r._domains.y[a]:delete g.domain.row)}var i=A("domain.x",e),n=A("domain.y",t);i[0]<i[1]||(g.domain.x=e.slice()),n[0]<n[1]||(g.domain.y=t.slice())}}}),GS=Ye({"src/components/grid/index.js"(X,H){"use strict";var g=ta(),x=Ky().counter,A=Wu().attributes,M=wh().idRegex,e=cl(),t={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[x("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[M.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[M.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:A({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function r(s,c,h){var v=c[h+"axes"],p=Object.keys((s._splomAxes||{})[h]||{});if(Array.isArray(v))return v;if(p.length)return p}function o(s,c){var h=s.grid||{},v=r(c,h,"x"),p=r(c,h,"y");if(!s.grid&&!v&&!p)return;var T=Array.isArray(h.subplots)&&Array.isArray(h.subplots[0]),l=Array.isArray(v),_=Array.isArray(p),w=l&&v!==h.xaxes&&_&&p!==h.yaxes,S,E;T?(S=h.subplots.length,E=h.subplots[0].length):(_&&(S=p.length),l&&(E=v.length));var m=e.newContainer(c,"grid");function b(O,I){return g.coerce(h,m,t,O,I)}var d=b("rows",S),u=b("columns",E);if(!(d*u>1)){delete c.grid;return}if(!T&&!l&&!_){var y=b("pattern")==="independent";y&&(T=!0)}m._hasSubplotGrid=T;var f=b("roworder"),P=f==="top to bottom",L=T?.2:.1,z=T?.3:.1,F,B;w&&c._splomGridDflt&&(F=c._splomGridDflt.xside,B=c._splomGridDflt.yside),m._domains={x:a("x",b,L,F,u),y:a("y",b,z,B,d,P)}}function a(s,c,h,v,p,T){var l=c(s+"gap",h),_=c("domain."+s);c(s+"side",v);for(var w=new Array(p),S=_[0],E=(_[1]-S)/(p-l),m=E*(1-l),b=0;b<p;b++){var d=S+E*b;w[T?p-1-b:b]=[d,d+m]}return w}function i(s,c){var h=c.grid;if(!(!h||!h._domains)){var v=s.grid||{},p=c._subplots,T=h._hasSubplotGrid,l=h.rows,_=h.columns,w=h.pattern==="independent",S,E,m,b,d,u,y,f=h._axisMap={};if(T){var P=v.subplots||[];u=h.subplots=new Array(l);var L=1;for(S=0;S<l;S++){var z=u[S]=new Array(_),F=P[S]||[];for(E=0;E<_;E++)if(w?(d=L===1?"xy":"x"+L+"y"+L,L++):d=F[E],z[E]="",p.cartesian.indexOf(d)!==-1){if(y=d.indexOf("y"),m=d.slice(0,y),b=d.slice(y),f[m]!==void 0&&f[m]!==E||f[b]!==void 0&&f[b]!==S)continue;z[E]=d,f[m]=E,f[b]=S}}}else{var B=r(c,v,"x"),O=r(c,v,"y");h.xaxes=n(B,p.xaxis,_,f,"x"),h.yaxes=n(O,p.yaxis,l,f,"y")}var I=h._anchors={},N=h.roworder==="top to bottom";for(var U in f){var W=U.charAt(0),Q=h[W+"side"],ue,se,he;if(Q.length<8)I[U]="free";else if(W==="x"){if(Q.charAt(0)==="t"===N?(ue=0,se=1,he=l):(ue=l-1,se=-1,he=-1),T){var G=f[U];for(S=ue;S!==he;S+=se)if(d=u[S][G],!!d&&(y=d.indexOf("y"),d.slice(0,y)===U)){I[U]=d.slice(y);break}}else for(S=ue;S!==he;S+=se)if(b=h.yaxes[S],p.cartesian.indexOf(U+b)!==-1){I[U]=b;break}}else if(Q.charAt(0)==="l"?(ue=0,se=1,he=_):(ue=_-1,se=-1,he=-1),T){var $=f[U];for(S=ue;S!==he;S+=se)if(d=u[$][S],!!d&&(y=d.indexOf("y"),d.slice(y)===U)){I[U]=d.slice(0,y);break}}else for(S=ue;S!==he;S+=se)if(m=h.xaxes[S],p.cartesian.indexOf(m+U)!==-1){I[U]=m;break}}}}function n(s,c,h,v,p){var T=new Array(h),l;function _(w,S){c.indexOf(S)!==-1&&v[S]===void 0?(T[w]=S,v[S]=w):T[w]=""}if(Array.isArray(s))for(l=0;l<h;l++)_(l,s[l]);else for(_(0,p),l=1;l<h;l++)_(l,p+(l+1));return T}H.exports={moduleType:"component",name:"grid",schema:{layout:{grid:t}},layoutAttributes:t,sizeDefaults:o,contentDefaults:i}}}),WS=Ye({"src/components/errorbars/attributes.js"(X,H){"use strict";H.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}}}),CB=Ye({"src/components/errorbars/defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=WS();H.exports=function(t,r,o,a){var i="error_"+a.axis,n=M.newContainer(r,i),s=t[i]||{};function c(w,S){return A.coerce(s,n,e,w,S)}var h=s.array!==void 0||s.value!==void 0||s.type==="sqrt",v=c("visible",h);if(v!==!1){var p=c("type","array"in s?"data":"percent"),T=!0;p!=="sqrt"&&(T=c("symmetric",!((p==="data"?"arrayminus":"valueminus")in s))),p==="data"?(c("array"),c("traceref"),T||(c("arrayminus"),c("tracerefminus"))):(p==="percent"||p==="constant")&&(c("value"),T||c("valueminus"));var l="copy_"+a.inherit+"style";if(a.inherit){var _=r["error_"+a.inherit];(_||{}).visible&&c(l,!(s.color||g(s.thickness)||g(s.width)))}(!a.inherit||!n[l])&&(c("color",o),c("thickness"),c("width",x.traceIs(r,"gl3d")?0:4))}}}}),ZS=Ye({"src/components/errorbars/compute_error.js"(X,H){"use strict";H.exports=function(A){var M=A.type,e=A.symmetric;if(M==="data"){var t=A.array||[];if(e)return function(n,s){var c=+t[s];return[c,c]};var r=A.arrayminus||[];return function(n,s){var c=+t[s],h=+r[s];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var o=g(M,A.value),a=g(M,A.valueminus);return e||A.valueminus===void 0?function(n){var s=o(n);return[s,s]}:function(n){return[a(n),o(n)]}}};function g(x,A){if(x==="percent")return function(M){return Math.abs(M*A/100)};if(x==="constant")return function(){return Math.abs(A)};if(x==="sqrt")return function(M){return Math.sqrt(Math.abs(M))}}}}),LB=Ye({"src/components/errorbars/calc.js"(X,H){"use strict";var g=jo(),x=Hn(),A=Co(),M=ta(),e=ZS();H.exports=function(o){for(var a=o.calcdata,i=0;i<a.length;i++){var n=a[i],s=n[0].trace;if(s.visible===!0&&x.traceIs(s,"errorBarsOK")){var c=A.getFromId(o,s.xaxis),h=A.getFromId(o,s.yaxis);t(n,s,c,"x"),t(n,s,h,"y")}}};function t(r,o,a,i){var n=o["error_"+i]||{},s=n.visible&&["linear","log"].indexOf(a.type)!==-1,c=[];if(s){for(var h=e(n),v=0;v<r.length;v++){var p=r[v],T=p.i;if(T===void 0)T=v;else if(T===null)continue;var l=p[i];if(g(a.c2l(l))){var _=h(l,T);if(g(_[0])&&g(_[1])){var w=p[i+"s"]=l-_[0],S=p[i+"h"]=l+_[1];c.push(w,S)}}}var E=a._id,m=o._extremes[E],b=A.findExtremes(a,c,M.extendFlat({tozero:m.opts.tozero},{padded:!0}));m.min=m.min.concat(b.min),m.max=m.max.concat(b.max)}}}}),PB=Ye({"src/components/errorbars/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=Bo(),M=uu();H.exports=function(r,o,a,i){var n,s=a.xaxis,c=a.yaxis,h=i&&i.duration>0,v=r._context.staticPlot;o.each(function(p){var T=p[0].trace,l=T.error_x||{},_=T.error_y||{},w;T.ids&&(w=function(b){return b.id});var S=M.hasMarkers(T)&&T.marker.maxdisplayed>0;!_.visible&&!l.visible&&(p=[]);var E=g.select(this).selectAll("g.errorbar").data(p,w);if(E.exit().remove(),!!p.length){l.visible||E.selectAll("path.xerror").remove(),_.visible||E.selectAll("path.yerror").remove(),E.style("opacity",1);var m=E.enter().append("g").classed("errorbar",!0);h&&m.style("opacity",0).transition().duration(i.duration).style("opacity",1),A.setClipUrl(E,a.layerClipId,r),E.each(function(b){var d=g.select(this),u=e(b,s,c);if(!(S&&!b.vis)){var y,f=d.select("path.yerror");if(_.visible&&x(u.x)&&x(u.yh)&&x(u.ys)){var P=_.width;y="M"+(u.x-P)+","+u.yh+"h"+2*P+"m-"+P+",0V"+u.ys,u.noYS||(y+="m-"+P+",0h"+2*P),n=!f.size(),n?f=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("yerror",!0):h&&(f=f.transition().duration(i.duration).ease(i.easing)),f.attr("d",y)}else f.remove();var L=d.select("path.xerror");if(l.visible&&x(u.y)&&x(u.xh)&&x(u.xs)){var z=(l.copy_ystyle?_:l).width;y="M"+u.xh+","+(u.y-z)+"v"+2*z+"m0,-"+z+"H"+u.xs,u.noXS||(y+="m0,-"+z+"v"+2*z),n=!L.size(),n?L=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("xerror",!0):h&&(L=L.transition().duration(i.duration).ease(i.easing)),L.attr("d",y)}else L.remove()}})}})};function e(t,r,o){var a={x:r.c2p(t.x),y:o.c2p(t.y)};return t.yh!==void 0&&(a.yh=o.c2p(t.yh),a.ys=o.c2p(t.ys),x(a.ys)||(a.noYS=!0,a.ys=o.c2p(t.ys,!0))),t.xh!==void 0&&(a.xh=r.c2p(t.xh),a.xs=r.c2p(t.xs),x(a.xs)||(a.noXS=!0,a.xs=r.c2p(t.xs,!0))),a}}}),IB=Ye({"src/components/errorbars/style.js"(X,H){"use strict";var g=_n(),x=Fn();H.exports=function(M){M.each(function(e){var t=e[0].trace,r=t.error_y||{},o=t.error_x||{},a=g.select(this);a.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(x.stroke,r.color),o.copy_ystyle&&(o=r),a.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(x.stroke,o.color)})}}}),RB=Ye({"src/components/errorbars/index.js"(X,H){"use strict";var g=ta(),x=Ou().overrideAll,A=WS(),M={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A)};delete M.error_x.copy_zstyle,delete M.error_y.copy_zstyle,delete M.error_y.copy_ystyle;var e={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A),error_z:g.extendFlat({},A)};delete e.error_x.copy_ystyle,delete e.error_y.copy_ystyle,delete e.error_z.copy_ystyle,delete e.error_z.copy_zstyle,H.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:M,bar:M,histogram:M,scatter3d:x(e,"calc","nested"),scattergl:x(M,"calc","nested")}},supplyDefaults:CB(),calc:LB(),makeComputeError:ZS(),plot:PB(),style:IB(),hoverInfo:t};function t(r,o,a){(o.error_y||{}).visible&&(a.yerr=r.yh-r.y,o.error_y.symmetric||(a.yerrneg=r.y-r.ys)),(o.error_x||{}).visible&&(a.xerr=r.xh-r.x,o.error_x.symmetric||(a.xerrneg=r.x-r.xs))}}}),DB=Ye({"src/components/colorbar/constants.js"(X,H){"use strict";H.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}}}),zB=Ye({"src/components/colorbar/draw.js"(X,H){"use strict";var g=_n(),x=bh(),A=Gu(),M=Hn(),e=Co(),t=bp(),r=ta(),o=r.strTranslate,a=Oo().extendFlat,i=Kd(),n=Bo(),s=Fn(),c=Xg(),h=jl(),v=Up().flipScale,p=R_(),T=I2(),l=Vh(),_=oh(),w=_.LINE_SPACING,S=_.FROM_TL,E=_.FROM_BR,m=DB().cn;function b(L){var z=L._fullLayout,F=z._infolayer.selectAll("g."+m.colorbar).data(d(L),function(B){return B._id});F.enter().append("g").attr("class",function(B){return B._id}).classed(m.colorbar,!0),F.each(function(B){var O=g.select(this);r.ensureSingle(O,"rect",m.cbbg),r.ensureSingle(O,"g",m.cbfills),r.ensureSingle(O,"g",m.cblines),r.ensureSingle(O,"g",m.cbaxis,function(N){N.classed(m.crisp,!0)}),r.ensureSingle(O,"g",m.cbtitleunshift,function(N){N.append("g").classed(m.cbtitle,!0)}),r.ensureSingle(O,"rect",m.cboutline);var I=u(O,B,L);I&&I.then&&(L._promises||[]).push(I),L._context.edits.colorbarPosition&&y(O,B,L)}),F.exit().each(function(B){A.autoMargin(L,B._id)}).remove(),F.order()}function d(L){var z=L._fullLayout,F=L.calcdata,B=[],O,I,N,U;function W(j){return a(j,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function Q(){typeof U.calc=="function"?U.calc(L,N,O):(O._fillgradient=I.reversescale?v(I.colorscale):I.colorscale,O._zrange=[I[U.min],I[U.max]])}for(var ue=0;ue<F.length;ue++){var se=F[ue];if(N=se[0].trace,!!N._module){var he=N._module.colorbar;if(N.visible===!0&&he)for(var G=Array.isArray(he),$=G?he:[he],J=0;J<$.length;J++){U=$[J];var Z=U.container;I=Z?N[Z]:N,I&&I.showscale&&(O=W(I.colorbar),O._id="cb"+N.uid+(G&&Z?"-"+Z:""),O._traceIndex=N.index,O._propPrefix=(Z?Z+".":"")+"colorbar.",O._meta=N._meta,Q(),B.push(O))}}}for(var re in z._colorAxes)if(I=z[re],I.showscale){var ne=z._colorAxes[re];O=W(I.colorbar),O._id="cb"+re,O._propPrefix=re+".colorbar.",O._meta=z._meta,U={min:"cmin",max:"cmax"},ne[0]!=="heatmap"&&(N=ne[1],U.calc=N._module.colorbar.calc),Q(),B.push(O)}return B}function u(L,z,F){var B=z.orientation==="v",O=z.len,I=z.lenmode,N=z.thickness,U=z.thicknessmode,W=z.outlinewidth,Q=z.borderwidth,ue=z.bgcolor,se=z.xanchor,he=z.yanchor,G=z.xpad,$=z.ypad,J=z.x,Z=B?z.y:1-z.y,re=z.yref==="paper",ne=z.xref==="paper",j=F._fullLayout,ee=j._size,ie=z._fillcolor,fe=z._line,be=z.title,Ae=be.side,Be=z._zrange||g.extent((typeof ie=="function"?ie:fe.color).domain()),Ie=typeof fe.color=="function"?fe.color:function(){return fe.color},Ze=typeof ie=="function"?ie:function(){return ie},at=z._levels,it=f(F,z,Be),et=it.fill,lt=it.line,Me=Math.round(N*(U==="fraction"?B?ee.w:ee.h:1)),ge=Me/(B?ee.w:ee.h),ce=Math.round(O*(I==="fraction"?B?ee.h:ee.w:1)),ze=ce/(B?ee.h:ee.w),tt=ne?ee.w:F._fullLayout.width,nt=re?ee.h:F._fullLayout.height,Qe=Math.round(B?J*tt+G:Z*nt+$),Ct={center:.5,right:1}[se]||0,St={top:1,middle:.5}[he]||0,Ot=B?J-Ct*ge:Z-St*ge,jt=B?Z-St*ze:J-Ct*ze,ur=Math.round(B?nt*(1-jt):tt*jt);z._lenFrac=ze,z._thickFrac=ge,z._uFrac=Ot,z._vFrac=jt;var ar=z._axis=P(F,z,Be);ar.position=ge+(B?J+G/ee.w:Z+$/ee.h);var Cr=["top","bottom"].indexOf(Ae)!==-1;if(B&&Cr&&(ar.title.side=Ae,ar.titlex=J+G/ee.w,ar.titley=jt+(be.side==="top"?ze-$/ee.h:$/ee.h)),!B&&!Cr&&(ar.title.side=Ae,ar.titley=Z+$/ee.h,ar.titlex=jt+G/ee.w),fe.color&&z.tickmode==="auto"){ar.tickmode="linear",ar.tick0=at.start;var vr=at.size,_r=r.constrain(ce/50,4,15)+1,yt=(Be[1]-Be[0])/((z.nticks||_r)*vr);if(yt>1){var Fe=Math.pow(10,Math.floor(Math.log(yt)/Math.LN10));vr*=Fe*r.roundUp(yt/Fe,[2,5,10]),(Math.abs(at.start)/at.size+1e-6)%1<2e-6&&(ar.tick0=0)}ar.dtick=vr}ar.domain=B?[jt+$/ee.h,jt+ze-$/ee.h]:[jt+G/ee.w,jt+ze-G/ee.w],ar.setScale(),L.attr("transform",o(Math.round(ee.l),Math.round(ee.t)));var Ke=L.select("."+m.cbtitleunshift).attr("transform",o(-Math.round(ee.l),-Math.round(ee.t))),Ne=ar.ticklabelposition,Ee=ar.title.font.size,Ve=L.select("."+m.cbaxis),ke,Te=0,Le=0;function rt(Gt,Kt){var sr={propContainer:ar,propName:z._propPrefix+"title",traceIndex:z._traceIndex,_meta:z._meta,placeholder:j._dfltTitle.colorbar,containerGroup:L.select("."+m.cbtitle)},sa=Gt.charAt(0)==="h"?Gt.substr(1):"h"+Gt;L.selectAll("."+sa+",."+sa+"-math-group").remove(),c.draw(F,Gt,a(sr,Kt||{}))}function dt(){if(B&&Cr||!B&&!Cr){var Gt,Kt;Ae==="top"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt-ze)+3+Ee*.75),Ae==="bottom"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt)-3-Ee*.25),Ae==="right"&&(Kt=$+ee.t+nt*Z+3+Ee*.75,Gt=G+ee.l+tt*jt),rt(ar._id+"title",{attributes:{x:Gt,y:Kt,"text-anchor":B?"start":"middle"}})}}function xt(){if(B&&!Cr||!B&&Cr){var Gt=ar.position||0,Kt=ar._offset+ar._length/2,sr,sa;if(Ae==="right")sa=Kt,sr=ee.l+tt*Gt+10+Ee*(ar.showticklabels?1:.5);else if(sr=Kt,Ae==="bottom"&&(sa=ee.t+nt*Gt+10+(Ne.indexOf("inside")===-1?ar.tickfont.size:0)+(ar.ticks!=="intside"&&z.ticklen||0)),Ae==="top"){var Aa=be.text.split("<br>").length;sa=ee.t+nt*Gt+10-Me-w*Ee*Aa}rt((B?"h":"v")+ar._id+"title",{avoid:{selection:g.select(F).selectAll("g."+ar._id+"tick"),side:Ae,offsetTop:B?0:ee.t,offsetLeft:B?ee.l:0,maxShift:B?j.width:j.height},attributes:{x:sr,y:sa,"text-anchor":"middle"},transform:{rotate:B?-90:0,offset:0}})}}function It(){if(!B&&!Cr||B&&Cr){var Gt=L.select("."+m.cbtitle),Kt=Gt.select("text"),sr=[-W/2,W/2],sa=Gt.select(".h"+ar._id+"title-math-group").node(),Aa=15.6;Kt.node()&&(Aa=parseInt(Kt.node().style.fontSize,10)*w);var La;if(sa?(La=n.bBox(sa),Le=La.width,Te=La.height,Te>Aa&&(sr[1]-=(Te-Aa)/2)):Kt.node()&&!Kt.classed(m.jsPlaceholder)&&(La=n.bBox(Kt.node()),Le=La.width,Te=La.height),B){if(Te){if(Te+=5,Ae==="top")ar.domain[1]-=Te/ee.h,sr[1]*=-1;else{ar.domain[0]+=Te/ee.h;var ka=h.lineCount(Kt);sr[1]+=(1-ka)*Aa}Gt.attr("transform",o(sr[0],sr[1])),ar.setScale()}}else Le&&(Ae==="right"&&(ar.domain[0]+=(Le+Ee/2)/ee.w),Gt.attr("transform",o(sr[0],sr[1])),ar.setScale())}L.selectAll("."+m.cbfills+",."+m.cblines).attr("transform",B?o(0,Math.round(ee.h*(1-ar.domain[1]))):o(Math.round(ee.w*ar.domain[0]),0)),Ve.attr("transform",B?o(0,Math.round(-ee.t)):o(Math.round(-ee.l),0));var Ga=L.select("."+m.cbfills).selectAll("rect."+m.cbfill).attr("style","").data(et);Ga.enter().append("rect").classed(m.cbfill,!0).attr("style",""),Ga.exit().remove();var Ma=Be.map(ar.c2p).map(Math.round).sort(function(Vt,Ut){return Vt-Ut});Ga.each(function(Vt,Ut){var xr=[Ut===0?Be[0]:(et[Ut]+et[Ut-1])/2,Ut===et.length-1?Be[1]:(et[Ut]+et[Ut+1])/2].map(ar.c2p).map(Math.round);B&&(xr[1]=r.constrain(xr[1]+(xr[1]>xr[0])?1:-1,Ma[0],Ma[1]));var Zr=g.select(this).attr(B?"x":"y",Qe).attr(B?"y":"x",g.min(xr)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(g.max(xr)-g.min(xr),2));if(z._fillgradient)n.gradient(Zr,F,z._id,B?"vertical":"horizontalreversed",z._fillgradient,"fill");else{var pa=Ze(Vt).replace("e-","");Zr.attr("fill",x(pa).toHexString())}});var Ua=L.select("."+m.cblines).selectAll("path."+m.cbline).data(fe.color&&fe.width?lt:[]);Ua.enter().append("path").classed(m.cbline,!0),Ua.exit().remove(),Ua.each(function(Vt){var Ut=Qe,xr=Math.round(ar.c2p(Vt))+fe.width/2%1;g.select(this).attr("d","M"+(B?Ut+","+xr:xr+","+Ut)+(B?"h":"v")+Me).call(n.lineGroupStyle,fe.width,Ie(Vt),fe.dash)}),Ve.selectAll("g."+ar._id+"tick,path").remove();var ni=Qe+Me+(W||0)/2-(z.ticks==="outside"?1:0),Wt=e.calcTicks(ar),zt=e.getTickSigns(ar)[2];return e.drawTicks(F,ar,{vals:ar.ticks==="inside"?e.clipEnds(ar,Wt):Wt,layer:Ve,path:e.makeTickPath(ar,ni,zt),transFn:e.makeTransTickFn(ar)}),e.drawLabels(F,ar,{vals:Wt,layer:Ve,transFn:e.makeTransTickLabelFn(ar),labelFns:e.makeLabelFns(ar,ni)})}function Bt(){var Gt,Kt=Me+W/2;Ne.indexOf("inside")===-1&&(Gt=n.bBox(Ve.node()),Kt+=B?Gt.width:Gt.height),ke=Ke.select("text");var sr=0,sa=B&&Ae==="top",Aa=!B&&Ae==="right",La=0;if(ke.node()&&!ke.classed(m.jsPlaceholder)){var ka,Ga=Ke.select(".h"+ar._id+"title-math-group").node();Ga&&(B&&Cr||!B&&!Cr)?(Gt=n.bBox(Ga),sr=Gt.width,ka=Gt.height):(Gt=n.bBox(Ke.node()),sr=Gt.right-ee.l-(B?Qe:ur),ka=Gt.bottom-ee.t-(B?ur:Qe),!B&&Ae==="top"&&(Kt+=Gt.height,La=Gt.height)),Aa&&(ke.attr("transform",o(sr/2+Ee/2,0)),sr*=2),Kt=Math.max(Kt,B?sr:ka)}var Ma=(B?G:$)*2+Kt+Q+W/2,Ua=0;!B&&be.text&&he==="bottom"&&Z<=0&&(Ua=Ma/2,Ma+=Ua,La+=Ua),j._hColorbarMoveTitle=Ua,j._hColorbarMoveCBTitle=La;var ni=Q+W,Wt=(B?Qe:ur)-ni/2-(B?G:0),zt=(B?ur:Qe)-(B?ce:$+La-Ua);L.select("."+m.cbbg).attr("x",Wt).attr("y",zt).attr(B?"width":"height",Math.max(Ma-Ua,2)).attr(B?"height":"width",Math.max(ce+ni,2)).call(s.fill,ue).call(s.stroke,z.bordercolor).style("stroke-width",Q);var Vt=Aa?Math.max(sr-10,0):0;L.selectAll("."+m.cboutline).attr("x",(B?Qe:ur+G)+Vt).attr("y",(B?ur+$-ce:Qe)+(sa?Te:0)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(ce-(B?2*$+Te:2*G+Vt),2)).call(s.stroke,z.outlinecolor).style({fill:"none","stroke-width":W});var Ut=B?Ct*Ma:0,xr=B?0:(1-St)*Ma-La;if(Ut=ne?ee.l-Ut:-Ut,xr=re?ee.t-xr:-xr,L.attr("transform",o(Ut,xr)),!B&&(Q||x(ue).getAlpha()&&!x.equals(j.paper_bgcolor,ue))){var Zr=Ve.selectAll("text"),pa=Zr[0].length,Xr=L.select("."+m.cbbg).node(),Ea=n.bBox(Xr),Fa=n.getTranslate(L),qa=2;Zr.each(function(Fr,Lr){var Jr=0,oa=pa-1;if(Lr===Jr||Lr===oa){var ca=n.bBox(this),kt=n.getTranslate(this),ir;if(Lr===oa){var mr=ca.right+kt.x,$r=Ea.right+Fa.x+ur-Q-qa+J;ir=$r-mr,ir>0&&(ir=0)}else if(Lr===Jr){var ma=ca.left+kt.x,Ba=Ea.left+Fa.x+ur+Q+qa;ir=Ba-ma,ir<0&&(ir=0)}ir&&(pa<3?this.setAttribute("transform","translate("+ir+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var ya={},$a=S[se],mt=E[se],gt=S[he],Er=E[he],kr=Ma-Me;B?(I==="pixels"?(ya.y=Z,ya.t=ce*gt,ya.b=ce*Er):(ya.t=ya.b=0,ya.yt=Z+O*gt,ya.yb=Z-O*Er),U==="pixels"?(ya.x=J,ya.l=Ma*$a,ya.r=Ma*mt):(ya.l=kr*$a,ya.r=kr*mt,ya.xl=J-N*$a,ya.xr=J+N*mt)):(I==="pixels"?(ya.x=J,ya.l=ce*$a,ya.r=ce*mt):(ya.l=ya.r=0,ya.xl=J+O*$a,ya.xr=J-O*mt),U==="pixels"?(ya.y=1-Z,ya.t=Ma*gt,ya.b=Ma*Er):(ya.t=kr*gt,ya.b=kr*Er,ya.yt=Z-N*gt,ya.yb=Z+N*Er));var br=z.y<.5?"b":"t",Tr=z.x<.5?"l":"r";F._fullLayout._reservedMargin[z._id]={};var Mr={r:j.width-Wt-Ut,l:Wt+ya.r,b:j.height-zt-xr,t:zt+ya.b};ne&&re?A.autoMargin(F,z._id,ya):ne?F._fullLayout._reservedMargin[z._id][br]=Mr[br]:re||B?F._fullLayout._reservedMargin[z._id][Tr]=Mr[Tr]:F._fullLayout._reservedMargin[z._id][br]=Mr[br]}return r.syncOrAsync([A.previousPromises,dt,It,xt,A.previousPromises,Bt],F)}function y(L,z,F){var B=z.orientation==="v",O=F._fullLayout,I=O._size,N,U,W;t.init({element:L.node(),gd:F,prepFn:function(){N=L.attr("transform"),i(L)},moveFn:function(Q,ue){L.attr("transform",N+o(Q,ue)),U=t.align((B?z._uFrac:z._vFrac)+Q/I.w,B?z._thickFrac:z._lenFrac,0,1,z.xanchor),W=t.align((B?z._vFrac:1-z._uFrac)-ue/I.h,B?z._lenFrac:z._thickFrac,0,1,z.yanchor);var se=t.getCursor(U,W,z.xanchor,z.yanchor);i(L,se)},doneFn:function(){if(i(L),U!==void 0&&W!==void 0){var Q={};Q[z._propPrefix+"x"]=U,Q[z._propPrefix+"y"]=W,z._traceIndex!==void 0?M.call("_guiRestyle",F,Q,z._traceIndex):M.call("_guiRelayout",F,Q)}}})}function f(L,z,F){var B=z._levels,O=[],I=[],N,U,W=B.end+B.size/100,Q=B.size,ue=1.001*F[0]-.001*F[1],se=1.001*F[1]-.001*F[0];for(U=0;U<1e5&&(N=B.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>ue&&N<se&&O.push(N);if(z._fillgradient)I=[0];else if(typeof z._fillcolor=="function"){var he=z._filllevels;if(he)for(W=he.end+he.size/100,Q=he.size,U=0;U<1e5&&(N=he.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>F[0]&&N<F[1]&&I.push(N);else I=O.map(function(G){return G-B.size/2}),I.push(I[I.length-1]+B.size)}else z._fillcolor&&typeof z._fillcolor=="string"&&(I=[0]);return B.size<0&&(O.reverse(),I.reverse()),{line:O,fill:I}}function P(L,z,F){var B=L._fullLayout,O=z.orientation==="v",I={type:"linear",range:F,tickmode:z.tickmode,nticks:z.nticks,tick0:z.tick0,dtick:z.dtick,tickvals:z.tickvals,ticktext:z.ticktext,ticks:z.ticks,ticklen:z.ticklen,tickwidth:z.tickwidth,tickcolor:z.tickcolor,showticklabels:z.showticklabels,labelalias:z.labelalias,ticklabelposition:z.ticklabelposition,ticklabeloverflow:z.ticklabeloverflow,ticklabelstep:z.ticklabelstep,tickfont:z.tickfont,tickangle:z.tickangle,tickformat:z.tickformat,exponentformat:z.exponentformat,minexponent:z.minexponent,separatethousands:z.separatethousands,showexponent:z.showexponent,showtickprefix:z.showtickprefix,tickprefix:z.tickprefix,showticksuffix:z.showticksuffix,ticksuffix:z.ticksuffix,title:z.title,showline:!0,anchor:"free",side:O?"right":"bottom",position:1},N=O?"y":"x",U={type:"linear",_id:N+z._id},W={letter:N,font:B.font,noAutotickangles:N==="y",noHover:!0,noTickson:!0,noTicklabelmode:!0,noInsideRange:!0,calendar:B.calendar};function Q(ue,se){return r.coerce(I,U,l,ue,se)}return p(I,U,Q,W,B),T(I,U,Q,W),U}H.exports={draw:b}}}),FB=Ye({"src/components/colorbar/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"colorbar",attributes:y2(),supplyDefaults:uS(),draw:zB().draw,hasColorbar:oS()}}}),OB=Ye({"src/components/legend/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"legend",layoutAttributes:hS(),supplyLayoutDefaults:pS(),draw:mS(),style:vS()}}}),BB=Ye({"src/locale-en.js"(X,H){"use strict";H.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}}}),NB=Ye({"src/locale-en-us.js"(X,H){"use strict";H.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}}}),XS=Ye({"src/snapshot/cloneplot.js"(X,H){"use strict";var g=Hn(),x=ta(),A=x.extendFlat,M=x.extendDeep;function e(r){var o;switch(r){case"themes__thumb":o={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":o={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:o={}}return o}function t(r){var o=["xaxis","yaxis","zaxis"];return o.indexOf(r.slice(0,5))>-1}H.exports=function(o,a){var i,n=o.data,s=o.layout,c=M([],n),h=M({},s,e(a.tileClass)),v=o._context||{};if(a.width&&(h.width=a.width),a.height&&(h.height=a.height),a.tileClass==="thumbnail"||a.tileClass==="themes__thumb"){h.annotations=[];var p=Object.keys(h);for(i=0;i<p.length;i++)t(p[i])&&(h[p[i]].title={text:""});for(i=0;i<c.length;i++){var T=c[i];T.showscale=!1,T.marker&&(T.marker.showscale=!1),g.traceIs(T,"pie-like")&&(T.textposition="none")}}if(Array.isArray(a.annotations))for(i=0;i<a.annotations.length;i++)h.annotations.push(a.annotations[i]);var l=Object.keys(h).filter(function(m){return m.match(/^scene\d*$/)});if(l.length){var _={};for(a.tileClass==="thumbnail"&&(_={title:{text:""},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),i=0;i<l.length;i++){var w=h[l[i]];w.xaxis||(w.xaxis={}),w.yaxis||(w.yaxis={}),w.zaxis||(w.zaxis={}),A(w.xaxis,_),A(w.yaxis,_),A(w.zaxis,_),w._scene=null}}var S=document.createElement("div");a.tileClass&&(S.className=a.tileClass);var E={gd:S,td:S,layout:h,data:c,config:{staticPlot:a.staticPlot===void 0?!0:a.staticPlot,plotGlPixelRatio:a.plotGlPixelRatio===void 0?2:a.plotGlPixelRatio,displaylogo:a.displaylogo||!1,showLink:a.showLink||!1,showTips:a.showTips||!1,mapboxAccessToken:v.mapboxAccessToken}};return a.setBackground!=="transparent"&&(E.config.setBackground=a.setBackground||"opaque"),E.gd.defaultLayout=e(a.tileClass),E}}}),UB=Ye({"src/snapshot/toimage.js"(X,H){"use strict";var g=Wg().EventEmitter,x=Hn(),A=ta(),M=Xv(),e=XS(),t=k2(),r=C2();function o(a,i){var n=new g,s=e(a,{format:"png"}),c=s.gd;c.style.position="absolute",c.style.left="-5000px",document.body.appendChild(c);function h(){var p=M.getDelay(c._fullLayout);setTimeout(function(){var T=t(c),l=document.createElement("canvas");l.id=A.randstr(),n=r({format:i.format,width:c._fullLayout.width,height:c._fullLayout.height,canvas:l,emitter:n,svg:T}),n.clean=function(){c&&document.body.removeChild(c)}},p)}var v=M.getRedrawFunc(c);return x.call("_doPlot",c,s.data,s.layout,s.config).then(v).then(h).catch(function(p){n.emit("error",p)}),n}H.exports=o}}),jB=Ye({"src/snapshot/index.js"(X,H){"use strict";var g=Xv(),x={getDelay:g.getDelay,getRedrawFunc:g.getRedrawFunc,clone:XS(),toSVG:k2(),svgToImg:C2(),toImage:UB(),downloadImage:IS()};H.exports=x}}),VB=Ye({"src/core.js"(X){"use strict";X.version=xh().version,Bp(),$F();var H=Hn(),g=X.register=H.register,x=NO(),A=Object.keys(x);for(e=0;e<A.length;e++)M=A[e],M.charAt(0)!=="_"&&(X[M]=x[M]),g({moduleType:"apiMethod",name:M,fn:x[M]});var M,e;g(XO()),g([eB(),iB(),ff(),lB(),hB(),mB(),_B(),AB(),kB(),GS(),RB(),Su(),FB(),OB(),Lc(),AS()]),g([BB(),NB()]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(g(window.PlotlyLocales),delete window.PlotlyLocales),X.Icons=b2();var t=Lc(),r=Gu();X.Plots={resize:r.resize,graphJson:r.graphJson,sendDataToCloud:r.sendDataToCloud},X.Fx={hover:t.hover,unhover:t.unhover,loneHover:t.loneHover,loneUnhover:t.loneUnhover},X.Snapshot=jB(),X.PlotSchema=Qy()}}),qB=Ye({"lib/core.js"(X,H){"use strict";H.exports=VB()}}),Qg=Ye({"src/traces/bar/constants.js"(X,H){"use strict";H.exports={TEXTPAD:3,eventDataKeys:["value","label"]}}}),Sv=Ye({"src/traces/bar/attributes.js"(X,H){"use strict";var g=Pc(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=xs().texttemplateAttrs,e=tu(),t=Au(),r=Qg(),o=Uh().pattern,a=Oo().extendFlat,i=t({editType:"calc",arrayOk:!0,colorEditType:"style"}),n=g.marker,s=n.line,c=a({},s.width,{dflt:0}),h=a({width:c,editType:"calc"},e("marker.line")),v=a({line:h,editType:"calc"},e("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:o,cornerradius:{valType:"any",editType:"calc"}});H.exports={x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:x("x"),yhoverformat:x("y"),text:g.text,texttemplate:M({editType:"plot"},{keys:r.eventDataKeys}),hovertext:g.hovertext,hovertemplate:A({},{keys:r.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:a({},i,{}),insidetextfont:a({},i,{}),outsidetextfont:a({},i,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:a({},g.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:v,offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:{marker:{opacity:g.selected.marker.opacity,color:g.selected.marker.color,editType:"style"},textfont:g.selected.textfont,editType:"style"},unselected:{marker:{opacity:g.unselected.marker.opacity,color:g.unselected.marker.color,editType:"style"},textfont:g.unselected.textfont,editType:"style"},zorder:g.zorder}}}),N2=Ye({"src/traces/bar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}}}),U2=Ye({"src/traces/bar/style_defaults.js"(X,H){"use strict";var g=Fn(),x=Up().hasColorscale,A=sh(),M=ta().coercePattern;H.exports=function(t,r,o,a,i){var n=o("marker.color",a),s=x(t,"marker");s&&A(t,r,i,o,{prefix:"marker.",cLetter:"c"}),o("marker.line.color",g.defaultLine),x(t,"marker.line")&&A(t,r,i,o,{prefix:"marker.line.",cLetter:"c"}),o("marker.line.width"),o("marker.opacity"),M(o,"marker.pattern",n,s),o("selected.marker.color"),o("unselected.marker.color")}}}),gd=Ye({"src/traces/bar/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Hn(),e=i1(),t=Qd(),r=U2(),o=Jg(),a=Sv(),i=x.coerceFont;function n(v,p,T,l){function _(b,d){return x.coerce(v,p,a,b,d)}var w=e(v,p,l,_);if(!w){p.visible=!1;return}t(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("zorder"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");h(v,p,l,_,S,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r(v,p,_,T,l);var E=(p.marker.line||{}).color,m=M.getComponentMethod("errorbars","supplyDefaults");m(v,p,E||A.defaultLine,{axis:"y"}),m(v,p,E||A.defaultLine,{axis:"x",inherit:"y"}),x.coerceSelectionMarkerOpacity(p,_)}function s(v,p){var T,l;function _(E,m){return x.coerce(l._input,l,a,E,m)}for(var w=0;w<v.length;w++)if(l=v[w],l.type==="bar"){T=l._input;var S=_("marker.cornerradius",p.barcornerradius);l.marker&&(l.marker.cornerradius=c(S)),o(T,l,p,_,p.barmode)}}function c(v){if(g(v)){if(v=+v,v>=0)return v}else if(typeof v=="string"&&(v=v.trim(),v.slice(-1)==="%"&&g(v.slice(0,-1))&&(v=+v.slice(0,-1),v>=0)))return v+"%"}function h(v,p,T,l,_,w){w=w||{};var S=w.moduleHasSelected!==!1,E=w.moduleHasUnselected!==!1,m=w.moduleHasConstrain!==!1,b=w.moduleHasCliponaxis!==!1,d=w.moduleHasTextangle!==!1,u=w.moduleHasInsideanchor!==!1,y=!!w.hasPathbar,f=Array.isArray(_)||_==="auto",P=f||_==="inside",L=f||_==="outside";if(P||L){var z=i(l,"textfont",T.font),F=x.extendFlat({},z),B=v.textfont&&v.textfont.color,O=!B;if(O&&delete F.color,i(l,"insidetextfont",F),y){var I=x.extendFlat({},z);O&&delete I.color,i(l,"pathbar.textfont",I)}L&&i(l,"outsidetextfont",z),S&&l("selected.textfont.color"),E&&l("unselected.textfont.color"),m&&l("constraintext"),b&&l("cliponaxis"),d&&l("textangle"),l("texttemplate")}P&&u&&l("insidetextanchor")}H.exports={supplyDefaults:n,crossTraceDefaults:s,handleText:h,validateCornerradius:c}}}),YS=Ye({"src/traces/bar/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=Co(),A=ta(),M=N2(),e=gd().validateCornerradius;H.exports=function(t,r,o){function a(S,E){return A.coerce(t,r,M,S,E)}for(var i=!1,n=!1,s=!1,c={},h=a("barmode"),v=h==="group",p=0;p<o.length;p++){var T=o[p];if(g.traceIs(T,"bar")&&T.visible)i=!0;else continue;var l=T.xaxis+T.yaxis;if(v?(c[l]&&(s=!0),c[l]=!0):(l+=T._input.offsetgroup,c.length>0&&!c[l]&&(s=!0),c[l]=!0),T.visible&&T.type==="histogram"){var _=x.getFromId({_fullLayout:r},T[T.orientation==="v"?"xaxis":"yaxis"]);_.type!=="category"&&(n=!0)}}if(!i){delete r.barmode;return}h!=="overlay"&&a("barnorm"),a("bargap",n&&!s?0:.2),a("bargroupgap");var w=a("barcornerradius");r.barcornerradius=e(w)}}}),z_=Ye({"src/traces/bar/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.hovertext,A,"htx");var t=M.marker;if(t){g.mergeArray(t.opacity,A,"mo",!0),g.mergeArray(t.color,A,"mc");var r=t.line;r&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"))}}}}),HB=Ye({"src/traces/bar/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=Up().hasColorscale,M=jp(),e=z_(),t=Od();H.exports=function(o,a){var i=g.getFromId(o,a.xaxis||"x"),n=g.getFromId(o,a.yaxis||"y"),s,c,h,v,p,T,l={msUTC:!!(a.base||a.base===0)};a.orientation==="h"?(s=i.makeCalcdata(a,"x",l),h=n.makeCalcdata(a,"y"),v=x(a,n,"y",h),p=!!a.yperiodalignment,T="y"):(s=n.makeCalcdata(a,"y",l),h=i.makeCalcdata(a,"x"),v=x(a,i,"x",h),p=!!a.xperiodalignment,T="x"),c=v.vals;for(var _=Math.min(c.length,s.length),w=new Array(_),S=0;S<_;S++)w[S]={p:c[S],s:s[S]},p&&(w[S].orig_p=h[S],w[S][T+"End"]=v.ends[S],w[S][T+"Start"]=v.starts[S]),a.ids&&(w[S].id=String(a.ids[S]));return A(a,"marker")&&M(o,a,{vals:a.marker.color,containerStr:"marker",cLetter:"c"}),A(a,"marker.line")&&M(o,a,{vals:a.marker.line.color,containerStr:"marker.line",cLetter:"c"}),e(w,a),t(w,a),w}}}),wp=Ye({"src/traces/bar/uniform_text.js"(X,H){"use strict";var g=_n(),x=ta();function A(r,o,a){var i=r._fullLayout,n=i["_"+a+"Text_minsize"];if(n){var s=i.uniformtext.mode==="hide",c;switch(a){case"funnelarea":case"pie":case"sunburst":c="g.slice";break;case"treemap":case"icicle":c="g.slice, g.pathbar";break;default:c="g.points > g.point"}o.selectAll(c).each(function(h){var v=h.transform;if(v){v.scale=s&&v.hide?0:n/v.fontSize;var p=g.select(this).select("text");x.setTransormAndDisplay(p,v)}})}}function M(r,o,a){if(a.uniformtext.mode){var i=t(r),n=a.uniformtext.minsize,s=o.scale*o.fontSize;o.hide=s<n,a[i]=a[i]||1/0,o.hide||(a[i]=Math.min(a[i],Math.max(s,n)))}}function e(r,o){var a=t(r);o[a]=void 0}function t(r){return"_"+r+"Text_minsize"}H.exports={recordMinTextSize:M,clearMinTextSize:e,resizeText:A}}}),j2=Ye({"src/traces/bar/helpers.js"(X){"use strict";var H=jo(),g=bh(),x=ta().isArrayOrTypedArray;X.coerceString=function(A,M,e){if(typeof M=="string"){if(M||!A.noBlank)return M}else if((typeof M=="number"||M===!0)&&!A.strict)return String(M);return e!==void 0?e:A.dflt},X.coerceNumber=function(A,M,e){if(H(M)){M=+M;var t=A.min,r=A.max,o=t!==void 0&&M<t||r!==void 0&&M>r;if(!o)return M}return e!==void 0?e:A.dflt},X.coerceColor=function(A,M,e){return g(M).isValid()?M:e!==void 0?e:A.dflt},X.coerceEnumerated=function(A,M,e){return A.coerceNumber&&(M=+M),A.values.indexOf(M)!==-1?M:e!==void 0?e:A.dflt},X.getValue=function(A,M){var e;return x(A)?M<A.length&&(e=A[M]):e=A,e},X.getLineWidth=function(A,M){var e=0<M.mlw?M.mlw:x(A.marker.line.width)?0:A.marker.line.width;return e}}}),Nd=Ye({"src/traces/bar/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo(),M=ta(),e=Hn(),t=wp().resizeText,r=Sv(),o=r.textfont,a=r.insidetextfont,i=r.outsidetextfont,n=j2();function s(b){var d=g.select(b).selectAll('g[class^="barlayer"]').selectAll("g.trace");t(b,d,"bar");var u=d.size(),y=b._fullLayout;d.style("opacity",function(f){return f[0].trace.opacity}).each(function(f){(y.barmode==="stack"&&u>1||y.bargap===0&&y.bargroupgap===0&&!f[0].trace.marker.line.width)&&g.select(this).attr("shape-rendering","crispEdges")}),d.selectAll("g.points").each(function(f){var P=g.select(this),L=f[0].trace;c(P,L,b)}),e.getComponentMethod("errorbars","style")(d)}function c(b,d,u){A.pointStyle(b.selectAll("path"),d,u),h(b,d,u)}function h(b,d,u){b.selectAll("text").each(function(y){var f=g.select(this),P=M.ensureUniformFontSize(u,l(f,y,d,u));A.font(f,P)})}function v(b,d,u){var y=d[0].trace;y.selectedpoints?p(u,y,b):(c(u,y,b),e.getComponentMethod("errorbars","style")(u))}function p(b,d,u){A.selectedPointStyle(b.selectAll("path"),d),T(b.selectAll("text"),d,u)}function T(b,d,u){b.each(function(y){var f=g.select(this),P;if(y.selected){P=M.ensureUniformFontSize(u,l(f,y,d,u));var L=d.selected.textfont&&d.selected.textfont.color;L&&(P.color=L),A.font(f,P)}else A.selectedTextStyle(f,d)})}function l(b,d,u,y){var f=y._fullLayout.font,P=u.textfont;if(b.classed("bartext-inside")){var L=m(d,u);P=w(u,d.i,f,L)}else b.classed("bartext-outside")&&(P=S(u,d.i,f));return P}function _(b,d,u){return E(o,b.textfont,d,u)}function w(b,d,u,y){var f=_(b,d,u),P=b._input.textfont===void 0||b._input.textfont.color===void 0||Array.isArray(b.textfont.color)&&b.textfont.color[d]===void 0;return P&&(f={color:x.contrast(y),family:f.family,size:f.size,weight:f.weight,style:f.style,variant:f.variant,textcase:f.textcase,lineposition:f.lineposition,shadow:f.shadow}),E(a,b.insidetextfont,d,f)}function S(b,d,u){var y=_(b,d,u);return E(i,b.outsidetextfont,d,y)}function E(b,d,u,y){d=d||{};var f=n.getValue(d.family,u),P=n.getValue(d.size,u),L=n.getValue(d.color,u),z=n.getValue(d.weight,u),F=n.getValue(d.style,u),B=n.getValue(d.variant,u),O=n.getValue(d.textcase,u),I=n.getValue(d.lineposition,u),N=n.getValue(d.shadow,u);return{family:n.coerceString(b.family,f,y.family),size:n.coerceNumber(b.size,P,y.size),color:n.coerceColor(b.color,L,y.color),weight:n.coerceString(b.weight,z,y.weight),style:n.coerceString(b.style,F,y.style),variant:n.coerceString(b.variant,B,y.variant),textcase:n.coerceString(b.variant,O,y.textcase),lineposition:n.coerceString(b.variant,I,y.lineposition),shadow:n.coerceString(b.variant,N,y.shadow)}}function m(b,d){return d.type==="waterfall"?d[b.dir].marker.color:b.mcc||b.mc||d.marker.color}H.exports={style:s,styleTextPoints:h,styleOnSelect:v,getInsideTextFont:w,getOutsideTextFont:S,getBarColor:m,resizeText:t}}}),e0=Ye({"src/traces/bar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=jl(),e=Fn(),t=Bo(),r=Hn(),o=Co().tickText,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=Nd(),c=j2(),h=Qg(),v=Sv(),p=v.text,T=v.textposition,l=Qp().appendArrayPointValue,_=h.TEXTPAD;function w(Q){return Q.id}function S(Q){if(Q.ids)return w}function E(Q){return(Q>0)-(Q<0)}function m(Q,ue){return Q<ue?1:-1}function b(Q,ue,se,he){var G=[],$=[],J=he?ue:se,Z=he?se:ue;return G[0]=J.c2p(Q.s0,!0),$[0]=Z.c2p(Q.p0,!0),G[1]=J.c2p(Q.s1,!0),$[1]=Z.c2p(Q.p1,!0),he?[G,$]:[$,G]}function d(Q,ue,se,he){if(!ue.uniformtext.mode&&u(se)){var G;return he&&(G=he()),Q.transition().duration(se.duration).ease(se.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()})}else return Q}function u(Q){return Q&&Q.duration>0}function y(Q,ue,se,he,G,$){var J=ue.xaxis,Z=ue.yaxis,re=Q._fullLayout,ne=Q._context.staticPlot;G||(G={mode:re.barmode,norm:re.barmode,gap:re.bargap,groupgap:re.bargroupgap},n("bar",re));var j=A.makeTraceGroups(he,se,"trace bars").each(function(ee){var ie=g.select(this),fe=ee[0].trace,be=ee[0].t,Ae=fe.type==="waterfall",Be=fe.type==="funnel",Ie=fe.type==="histogram",Ze=fe.type==="bar",at=Ze||Be,it=0;Ae&&fe.connector.visible&&fe.connector.mode==="between"&&(it=fe.connector.line.width/2);var et=fe.orientation==="h",lt=u(G),Me=A.ensureSingle(ie,"g","points"),ge=S(fe),ce=Me.selectAll("g.point").data(A.identity,ge);ce.enter().append("g").classed("point",!0),ce.exit().remove(),ce.each(function(tt,nt){var Qe=g.select(this),Ct=b(tt,J,Z,et),St=Ct[0][0],Ot=Ct[0][1],jt=Ct[1][0],ur=Ct[1][1],ar=(et?Ot-St:ur-jt)===0;ar&&at&&c.getLineWidth(fe,tt)&&(ar=!1),ar||(ar=!x(St)||!x(Ot)||!x(jt)||!x(ur)),tt.isBlank=ar,ar&&(et?Ot=St:ur=jt),it&&!ar&&(et?(St-=m(St,Ot)*it,Ot+=m(St,Ot)*it):(jt-=m(jt,ur)*it,ur+=m(jt,ur)*it));var Cr,vr;if(fe.type==="waterfall"){if(!ar){var _r=fe[tt.dir].marker;Cr=_r.line.width,vr=_r.color}}else Cr=c.getLineWidth(fe,tt),vr=tt.mc||fe.marker.color;function yt(ni){var Wt=g.round(Cr/2%1,2);return G.gap===0&&G.groupgap===0?g.round(Math.round(ni)-Wt,2):ni}function Fe(ni,Wt,zt){return zt&&ni===Wt?ni:Math.abs(ni-Wt)>=2?yt(ni):ni>Wt?Math.ceil(ni):Math.floor(ni)}var Ke=e.opacity(vr),Ne=Ke<1||Cr>.01?yt:Fe;Q._context.staticPlot||(St=Ne(St,Ot,et),Ot=Ne(Ot,St,et),jt=Ne(jt,ur,!et),ur=Ne(ur,jt,!et));var Ee=et?J.c2p:Z.c2p,Ve;tt.s0>0?Ve=tt._sMax:tt.s0<0?Ve=tt._sMin:Ve=tt.s1>0?tt._sMax:tt._sMin;function ke(ni,Wt){if(!ni)return 0;var zt=Math.abs(et?ur-jt:Ot-St),Vt=Math.abs(et?Ot-St:ur-jt),Ut=Ne(Math.abs(Ee(Ve,!0)-Ee(0,!0))),xr=tt.hasB?Math.min(zt/2,Vt/2):Math.min(zt/2,Ut),Zr;if(Wt==="%"){var pa=Math.min(50,ni);Zr=zt*(pa/100)}else Zr=ni;return Ne(Math.max(Math.min(Zr,xr),0))}var Te=Ze||Ie?ke(be.cornerradiusvalue,be.cornerradiusform):0,Le,rt,dt="M"+St+","+jt+"V"+ur+"H"+Ot+"V"+jt+"Z",xt=0;if(Te&&tt.s){var It=E(tt.s0)===0||E(tt.s)===E(tt.s0)?tt.s1:tt.s0;if(xt=Ne(tt.hasB?0:Math.abs(Ee(Ve,!0)-Ee(It,!0))),xt<Te){var Bt=m(St,Ot),Gt=m(jt,ur),Kt=Bt===-Gt?1:0;if(et)if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(Ot-St)+xt;var sr=rt<Te?Te-Math.sqrt(rt*(2*Te-rt)):0,sa=xt>0?Math.sqrt(xt*(2*Te-xt)):0,Aa=Bt>0?Math.max:Math.min;Le="M"+St+","+jt+"V"+(ur-sr*Gt)+"H"+Aa(Ot-(Te-xt)*Bt,St)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt-sa)+"V"+(jt+Te*Gt+sa)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Aa(Ot-(Te-xt)*Bt,St)+","+(jt+sr*Gt)+"Z"}else if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(ur-jt)+xt;var La=rt<Te?Te-Math.sqrt(rt*(2*Te-rt)):0,ka=xt>0?Math.sqrt(xt*(2*Te-xt)):0,Ga=Gt>0?Math.max:Math.min;Le="M"+(St+La*Bt)+","+jt+"V"+Ga(ur-(Te-xt)*Gt,jt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt-ka)+","+ur+"H"+(Ot-Te*Bt+ka)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-La*Bt)+","+Ga(ur-(Te-xt)*Gt,jt)+"V"+jt+"Z"}}else Le=dt}else Le=dt;var Ma=d(A.ensureSingle(Qe,"path"),re,G,$);if(Ma.style("vector-effect",ne?"none":"non-scaling-stroke").attr("d",isNaN((Ot-St)*(ur-jt))||ar&&Q._context.staticPlot?"M0,0Z":Le).call(t.setClipUrl,ue.layerClipId,Q),!re.uniformtext.mode&&lt){var Ua=t.makePointStyleFns(fe);t.singlePointStyle(tt,Ma,fe,Ua,Q)}f(Q,ue,Qe,ee,nt,St,Ot,jt,ur,Te,xt,G,$),ue.layerClipId&&t.hideOutsideRangePoint(tt,Qe.select("text"),J,Z,fe.xcalendar,fe.ycalendar)});var ze=fe.cliponaxis===!1;t.setClipUrl(ie,ze?null:ue.layerClipId,Q)});r.getComponentMethod("errorbars","plot")(Q,j,ue,G)}function f(Q,ue,se,he,G,$,J,Z,re,ne,j,ee,ie){var fe=ue.xaxis,be=ue.yaxis,Ae=Q._fullLayout,Be;function Ie(rt,dt,xt){var It=A.ensureSingle(rt,"text").text(dt).attr({class:"bartext bartext-"+Be,"text-anchor":"middle","data-notex":1}).call(t.font,xt).call(M.convertToTspans,Q);return It}var Ze=he[0].trace,at=Ze.orientation==="h",it=I(Ae,he,G,fe,be);Be=N(Ze,G);var et=ee.mode==="stack"||ee.mode==="relative",lt=he[G],Me=!et||lt._outmost,ge=lt.hasB,ce=ne&&ne-j>_;if(!it||Be==="none"||(lt.isBlank||$===J||Z===re)&&(Be==="auto"||Be==="inside")){se.select("text").remove();return}var ze=Ae.font,tt=s.getBarColor(he[G],Ze),nt=s.getInsideTextFont(Ze,G,ze,tt),Qe=s.getOutsideTextFont(Ze,G,ze),Ct=Ze.insidetextanchor||"end",St=se.datum();at?fe.type==="log"&&St.s0<=0&&(fe.range[0]<fe.range[1]?$=0:$=fe._length):be.type==="log"&&St.s0<=0&&(be.range[0]<be.range[1]?Z=be._length:Z=0);var Ot=Math.abs(J-$),jt=Math.abs(re-Z),ur=Ot-2*_,ar=jt-2*_,Cr,vr,_r,yt,Fe;if(Be==="outside"&&!Me&&!lt.hasB&&(Be="inside"),Be==="auto")if(Me){Be="inside",Fe=A.ensureUniformFontSize(Q,nt),Cr=Ie(se,it,Fe),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height;var Ke=_r>0&&yt>0,Ne;ce?ge?Ne=P(ur-2*ne,ar,_r,yt,at)||P(ur,ar-2*ne,_r,yt,at):at?Ne=P(ur-(ne-j),ar,_r,yt,at)||P(ur,ar-2*(ne-j),_r,yt,at):Ne=P(ur,ar-(ne-j),_r,yt,at)||P(ur-2*(ne-j),ar,_r,yt,at):Ne=P(ur,ar,_r,yt,at),Ke&&Ne?Be="inside":(Be="outside",Cr.remove(),Cr=null)}else Be="inside";if(!Cr){Fe=A.ensureUniformFontSize(Q,Be==="outside"?Qe:nt),Cr=Ie(se,it,Fe);var Ee=Cr.attr("transform");if(Cr.attr("transform",""),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height,Cr.attr("transform",Ee),_r<=0||yt<=0){Cr.remove();return}}var Ve=Ze.textangle,ke,Te;Be==="outside"?(Te=Ze.constraintext==="both"||Ze.constraintext==="outside",ke=O($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve})):(Te=Ze.constraintext==="both"||Ze.constraintext==="inside",ke=F($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve,anchor:Ct,hasB:ge,r:ne,overhead:j})),ke.fontSize=Fe.size,i(Ze.type==="histogram"?"bar":Ze.type,ke,Ae),lt.transform=ke;var Le=d(Cr,Ae,ee,ie);A.setTransormAndDisplay(Le,ke)}function P(Q,ue,se,he,G){if(Q<0||ue<0)return!1;var $=se<=Q&&he<=ue,J=se<=ue&&he<=Q,Z=G?Q>=se*(ue/he):ue>=he*(Q/se);return $||J||Z}function L(Q){return Q==="auto"?0:Q}function z(Q,ue){var se=Math.PI/180*ue,he=Math.abs(Math.sin(se)),G=Math.abs(Math.cos(se));return{x:Q.width*G+Q.height*he,y:Q.width*he+Q.height*G}}function F(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=$.anchor,j=ne==="end",ee=ne==="start",ie=$.leftToRight||0,fe=(ie+1)/2,be=1-fe,Ae=$.hasB,Be=$.r,Ie=$.overhead,Ze=G.width,at=G.height,it=Math.abs(ue-Q),et=Math.abs(he-se),lt=it>2*_&&et>2*_?_:0;it-=2*lt,et-=2*lt;var Me=L(re);re==="auto"&&!(Ze<=it&&at<=et)&&(Ze>it||at>et)&&(!(Ze>et||at>it)||Ze<at!=it<et)&&(Me+=90);var ge=z(G,Me),ce,ze;if(Be&&Be-Ie>_){var tt=B(Q,ue,se,he,ge,Be,Ie,J,Ae);ce=tt.scale,ze=tt.pad}else ce=1,Z&&(ce=Math.min(1,it/ge.x,et/ge.y)),ze=0;var nt=G.left*be+G.right*fe,Qe=(G.top+G.bottom)/2,Ct=(Q+_)*be+(ue-_)*fe,St=(se+he)/2,Ot=0,jt=0;if(ee||j){var ur=(J?ge.x:ge.y)/2;Be&&(j||Ae)&&(lt+=ze);var ar=J?m(Q,ue):m(se,he);J?ee?(Ct=Q+ar*lt,Ot=-ar*ur):(Ct=ue-ar*lt,Ot=ar*ur):ee?(St=se+ar*lt,jt=-ar*ur):(St=he-ar*lt,jt=ar*ur)}return{textX:nt,textY:Qe,targetX:Ct,targetY:St,anchorX:Ot,anchorY:jt,scale:ce,rotate:Me}}function B(Q,ue,se,he,G,$,J,Z,re){var ne=Math.max(0,Math.abs(ue-Q)-2*_),j=Math.max(0,Math.abs(he-se)-2*_),ee=$-_,ie=J?ee-Math.sqrt(ee*ee-(ee-J)*(ee-J)):ee,fe=re?ee*2:Z?ee-J:2*ie,be=re?ee*2:Z?2*ie:ee-J,Ae,Be,Ie,Ze,at;return G.y/G.x>=j/(ne-fe)?Ze=j/G.y:G.y/G.x<=(j-be)/ne?Ze=ne/G.x:!re&&Z?(Ae=G.x*G.x+G.y*G.y/4,Be=-2*G.x*(ne-ee)-G.y*(j/2-ee),Ie=(ne-ee)*(ne-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):re?(Ae=(G.x*G.x+G.y*G.y)/4,Be=-G.x*(ne/2-ee)-G.y*(j/2-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):(Ae=G.x*G.x/4+G.y*G.y,Be=-G.x*(ne/2-ee)-2*G.y*(j-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j-ee)*(j-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)),Ze=Math.min(1,Ze),Z?at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(j-G.y*Ze)/2)*(ee-(j-G.y*Ze)/2)))-J):at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(ne-G.x*Ze)/2)*(ee-(ne-G.x*Ze)/2)))-J),{scale:Ze,pad:at}}function O(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=G.width,j=G.height,ee=Math.abs(ue-Q),ie=Math.abs(he-se),fe;J?fe=ie>2*_?_:0:fe=ee>2*_?_:0;var be=1;Z&&(be=J?Math.min(1,ie/j):Math.min(1,ee/ne));var Ae=L(re),Be=z(G,Ae),Ie=(J?Be.x:Be.y)/2,Ze=(G.left+G.right)/2,at=(G.top+G.bottom)/2,it=(Q+ue)/2,et=(se+he)/2,lt=0,Me=0,ge=J?m(ue,Q):m(se,he);return J?(it=ue-ge*fe,lt=ge*Ie):(et=he+ge*fe,Me=-ge*Ie),{textX:Ze,textY:at,targetX:it,targetY:et,anchorX:lt,anchorY:Me,scale:be,rotate:Ae}}function I(Q,ue,se,he,G){var $=ue[0].trace,J=$.texttemplate,Z;return J?Z=U(Q,ue,se,he,G):$.textinfo?Z=W(ue,se,he,G):Z=c.getValue($.text,se),c.coerceString(p,Z)}function N(Q,ue){var se=c.getValue(Q.textposition,ue);return c.coerceEnumerated(T,se)}function U(Q,ue,se,he,G){var $=ue[0].trace,J=A.castOption($,se,"texttemplate");if(!J)return"";var Z=$.type==="histogram",re=$.type==="waterfall",ne=$.type==="funnel",j=$.orientation==="h",ee,ie,fe,be;j?(ee="y",ie=G,fe="x",be=he):(ee="x",ie=he,fe="y",be=G);function Ae(lt){return o(ie,ie.c2l(lt),!0).text}function Be(lt){return o(be,be.c2l(lt),!0).text}var Ie=ue[se],Ze={};Ze.label=Ie.p,Ze.labelLabel=Ze[ee+"Label"]=Ae(Ie.p);var at=A.castOption($,Ie.i,"text");(at===0||at)&&(Ze.text=at),Ze.value=Ie.s,Ze.valueLabel=Ze[fe+"Label"]=Be(Ie.s);var it={};l(it,$,Ie.i),(Z||it.x===void 0)&&(it.x=j?Ze.value:Ze.label),(Z||it.y===void 0)&&(it.y=j?Ze.label:Ze.value),(Z||it.xLabel===void 0)&&(it.xLabel=j?Ze.valueLabel:Ze.labelLabel),(Z||it.yLabel===void 0)&&(it.yLabel=j?Ze.labelLabel:Ze.valueLabel),re&&(Ze.delta=+Ie.rawS||Ie.s,Ze.deltaLabel=Be(Ze.delta),Ze.final=Ie.v,Ze.finalLabel=Be(Ze.final),Ze.initial=Ze.final-Ze.delta,Ze.initialLabel=Be(Ze.initial)),ne&&(Ze.value=Ie.s,Ze.valueLabel=Be(Ze.value),Ze.percentInitial=Ie.begR,Ze.percentInitialLabel=A.formatPercent(Ie.begR),Ze.percentPrevious=Ie.difR,Ze.percentPreviousLabel=A.formatPercent(Ie.difR),Ze.percentTotal=Ie.sumR,Ze.percenTotalLabel=A.formatPercent(Ie.sumR));var et=A.castOption($,Ie.i,"customdata");return et&&(Ze.customdata=et),A.texttemplateString(J,Ze,Q._d3locale,it,Ze,$._meta||{})}function W(Q,ue,se,he){var G=Q[0].trace,$=G.orientation==="h",J=G.type==="waterfall",Z=G.type==="funnel";function re(et){var lt=$?he:se;return o(lt,et,!0).text}function ne(et){var lt=$?se:he;return o(lt,+et,!0).text}var j=G.textinfo,ee=Q[ue],ie=j.split("+"),fe=[],be,Ae=function(et){return ie.indexOf(et)!==-1};if(Ae("label")&&fe.push(re(Q[ue].p)),Ae("text")&&(be=A.castOption(G,ee.i,"text"),(be===0||be)&&fe.push(be)),J){var Be=+ee.rawS||ee.s,Ie=ee.v,Ze=Ie-Be;Ae("initial")&&fe.push(ne(Ze)),Ae("delta")&&fe.push(ne(Be)),Ae("final")&&fe.push(ne(Ie))}if(Z){Ae("value")&&fe.push(ne(ee.s));var at=0;Ae("percent initial")&&at++,Ae("percent previous")&&at++,Ae("percent total")&&at++;var it=at>1;Ae("percent initial")&&(be=A.formatPercent(ee.begR),it&&(be+=" of initial"),fe.push(be)),Ae("percent previous")&&(be=A.formatPercent(ee.difR),it&&(be+=" of previous"),fe.push(be)),Ae("percent total")&&(be=A.formatPercent(ee.sumR),it&&(be+=" of total"),fe.push(be))}return fe.join("<br>")}H.exports={plot:y,toMoveInsideBar:F}}}),c1=Ye({"src/traces/bar/hover.js"(X,H){"use strict";var g=Lc(),x=Hn(),A=Fn(),M=ta().fillText,e=j2().getLineWidth,t=Co().hoverLabelText,r=ks().BADNUM;function o(n,s,c,h,v){var p=a(n,s,c,h,v);if(p){var T=p.cd,l=T[0].trace,_=T[p.index];return p.color=i(l,_),x.getComponentMethod("errorbars","hoverInfo")(_,l,p),[p]}}function a(n,s,c,h,v){var p=n.cd,T=p[0].trace,l=p[0].t,_=h==="closest",w=T.type==="waterfall",S=n.maxHoverDistance,E=n.maxSpikeDistance,m,b,d,u,y,f,P;T.orientation==="h"?(m=c,b=s,d="y",u="x",y=he,f=Q):(m=s,b=c,d="x",u="y",f=he,y=Q);var L=T[d+"period"],z=_||L;function F(be){return O(be,-1)}function B(be){return O(be,1)}function O(be,Ae){var Be=be.w;return be[d]+Ae*Be/2}function I(be){return be[d+"End"]-be[d+"Start"]}var N=_?F:L?function(be){return be.p-I(be)/2}:function(be){return Math.min(F(be),be.p-l.bardelta/2)},U=_?B:L?function(be){return be.p+I(be)/2}:function(be){return Math.max(B(be),be.p+l.bardelta/2)};function W(be,Ae,Be){return v.finiteRange&&(Be=0),g.inbox(be-m,Ae-m,Be+Math.min(1,Math.abs(Ae-be)/P)-1)}function Q(be){return W(N(be),U(be),S)}function ue(be){return W(F(be),B(be),E)}function se(be){var Ae=be[u];if(w){var Be=Math.abs(be.rawS)||0;b>0?Ae+=Be:b<0&&(Ae-=Be)}return Ae}function he(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,S+(Ie-Ae)/(Ie-Be)-1)}function G(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,E+(Ie-Ae)/(Ie-Be)-1)}var $=n[d+"a"],J=n[u+"a"];P=Math.abs($.r2c($.range[1])-$.r2c($.range[0]));function Z(be){return(y(be)+f(be))/2}var re=g.getDistanceFunction(h,y,f,Z);if(g.getClosest(p,re,n),n.index!==!1&&p[n.index].p!==r){z||(N=function(be){return Math.min(F(be),be.p-l.bargroupwidth/2)},U=function(be){return Math.max(B(be),be.p+l.bargroupwidth/2)});var ne=n.index,j=p[ne],ee=T.base?j.b+j.s:j.s;n[u+"0"]=n[u+"1"]=J.c2p(j[u],!0),n[u+"LabelVal"]=ee;var ie=l.extents[l.extents.round(j.p)];n[d+"0"]=$.c2p(_?N(j):ie[0],!0),n[d+"1"]=$.c2p(_?U(j):ie[1],!0);var fe=j.orig_p!==void 0;return n[d+"LabelVal"]=fe?j.orig_p:j.p,n.labelLabel=t($,n[d+"LabelVal"],T[d+"hoverformat"]),n.valueLabel=t(J,n[u+"LabelVal"],T[u+"hoverformat"]),n.baseLabel=t(J,j.b,T[u+"hoverformat"]),n.spikeDistance=(G(j)+ue(j))/2,n[d+"Spike"]=$.c2p(j.p,!0),M(j,T,n),n.hovertemplate=T.hovertemplate,n}}function i(n,s){var c=s.mcc||n.marker.color,h=s.mlcc||n.marker.line.color,v=e(n,s);if(A.opacity(c))return c;if(A.opacity(h)&&v)return h}H.exports={hoverPoints:o,hoverOnBars:a,getTraceColor:i}}}),GB=Ye({"src/traces/bar/event_data.js"(X,H){"use strict";H.exports=function(x,A,M){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),M.orientation==="h"?(x.label=x.y,x.value=x.x):(x.label=x.x,x.value=x.y),x}}}),f1=Ye({"src/traces/bar/select.js"(X,H){"use strict";H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=e[0].trace,a=o.type==="funnel",i=o.orientation==="h",n=[],s;if(M===!1)for(s=0;s<e.length;s++)e[s].selected=0;else for(s=0;s<e.length;s++){var c=e[s],h="ct"in c?c.ct:g(c,t,r,i,a);M.contains(h,!1,s,A)?(n.push({pointNumber:s,x:t.c2d(c.x),y:r.c2d(c.y)}),c.selected=1):c.selected=0}return n};function g(x,A,M,e,t){var r=A.c2p(e?x.s0:x.p0,!0),o=A.c2p(e?x.s1:x.p1,!0),a=M.c2p(e?x.p0:x.s0,!0),i=M.c2p(e?x.p1:x.s1,!0);return t?[(r+o)/2,(a+i)/2]:e?[o,(a+i)/2]:[(r+o)/2,i]}}}),WB=Ye({"src/traces/bar/index.js"(X,H){"use strict";H.exports={attributes:Sv(),layoutAttributes:N2(),supplyDefaults:gd().supplyDefaults,crossTraceDefaults:gd().crossTraceDefaults,supplyLayoutDefaults:YS(),calc:HB(),crossTraceCalc:$g().crossTraceCalc,colorbar:cp(),arraysToCalcdata:z_(),plot:e0().plot,style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:c1().hoverPoints,eventData:GB(),selectPoints:f1(),moduleType:"trace",name:"bar",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}}}),ZB=Ye({"lib/bar.js"(X,H){"use strict";H.exports=WB()}}),F_=Ye({"src/traces/box/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Sv(),M=Gf(),e=Cc().axisHoverFormat,t=xs().hovertemplateAttrs,r=Oo().extendFlat,o=x.marker,a=o.line;H.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:x.xperiod,yperiod:x.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:x.xperiodalignment,yperiodalignment:x.yperiodalignment,xhoverformat:e("x"),yhoverformat:e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:r({},o.symbol,{arrayOk:!1,editType:"plot"}),opacity:r({},o.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:r({},o.angle,{arrayOk:!1,editType:"calc"}),size:r({},o.size,{arrayOk:!1,editType:"calc"}),color:r({},o.color,{arrayOk:!1,editType:"style"}),line:{color:r({},a.color,{arrayOk:!1,dflt:M.defaultLine,editType:"style"}),width:r({},a.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:g(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:A.offsetgroup,alignmentgroup:A.alignmentgroup,selected:{marker:x.selected.marker,editType:"style"},unselected:{marker:x.unselected.marker,editType:"style"},text:r({},x.text,{}),hovertext:r({},x.hovertext,{}),hovertemplate:t({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:x.zorder}}}),O_=Ye({"src/traces/box/layout_attributes.js"(X,H){"use strict";H.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}}}),B_=Ye({"src/traces/box/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=Fn(),M=Qd(),e=Jg(),t=r1(),r=F_();function o(s,c,h,v){function p(u,y){return g.coerce(s,c,r,u,y)}if(a(s,c,p,v),c.visible!==!1){M(s,c,v,p),p("xhoverformat"),p("yhoverformat");var T=c._hasPreCompStats;T&&(p("lowerfence"),p("upperfence")),p("line.color",(s.marker||{}).color||h),p("line.width"),p("fillcolor",A.addOpacity(c.line.color,.5));var l=!1;if(T){var _=p("mean"),w=p("sd");_&&_.length&&(l=!0,w&&w.length&&(l="sd"))}p("whiskerwidth");var S=p("sizemode"),E;S==="quartiles"&&(E=p("boxmean",l)),p("showwhiskers",S==="quartiles"),(S==="sd"||E==="sd")&&p("sdmultiple"),p("width"),p("quartilemethod");var m=!1;if(T){var b=p("notchspan");b&&b.length&&(m=!0)}else g.validate(s.notchwidth,r.notchwidth)&&(m=!0);var d=p("notched",m);d&&p("notchwidth"),i(s,c,p,{prefix:"box"}),p("zorder")}}function a(s,c,h,v){function p(W){var Q=0;return W&&W.length&&(Q+=1,g.isArrayOrTypedArray(W[0])&&W[0].length&&(Q+=1)),Q}function T(W){return g.validate(s[W],r[W])}var l=h("y"),_=h("x"),w;if(c.type==="box"){var S=h("q1"),E=h("median"),m=h("q3");c._hasPreCompStats=S&&S.length&&E&&E.length&&m&&m.length,w=Math.min(g.minRowLength(S),g.minRowLength(E),g.minRowLength(m))}var b=p(l),d=p(_),u=b&&g.minRowLength(l),y=d&&g.minRowLength(_),f=v.calendar,P={autotypenumbers:v.autotypenumbers},L,z;if(c._hasPreCompStats)switch(String(d)+String(b)){case"00":var F=T("x0")||T("dx"),B=T("y0")||T("dy");B&&!F?L="h":L="v",z=w;break;case"10":L="v",z=Math.min(w,y);break;case"20":L="h",z=Math.min(w,_.length);break;case"01":L="h",z=Math.min(w,u);break;case"02":L="v",z=Math.min(w,l.length);break;case"12":L="v",z=Math.min(w,y,l.length);break;case"21":L="h",z=Math.min(w,_.length,u);break;case"11":z=0;break;case"22":var O=!1,I;for(I=0;I<_.length;I++)if(t(_[I],f,P)==="category"){O=!0;break}if(O)L="v",z=Math.min(w,y,l.length);else{for(I=0;I<l.length;I++)if(t(l[I],f,P)==="category"){O=!0;break}O?(L="h",z=Math.min(w,_.length,u)):(L="v",z=Math.min(w,y,l.length))}break}else b>0?(L="v",d>0?z=Math.min(y,u):z=Math.min(u)):d>0?(L="h",z=Math.min(y)):z=0;if(!z){c.visible=!1;return}c._length=z;var N=h("orientation",L);c._hasPreCompStats?N==="v"&&d===0?(h("x0",0),h("dx",1)):N==="h"&&b===0&&(h("y0",0),h("dy",1)):N==="v"&&d===0?h("x0"):N==="h"&&b===0&&h("y0");var U=x.getComponentMethod("calendars","handleTraceDefaults");U(s,c,["x","y"],v)}function i(s,c,h,v){var p=v.prefix,T=g.coerce2(s,c,r,"marker.outliercolor"),l=h("marker.line.outliercolor"),_="outliers";c._hasPreCompStats?_="all":(T||l)&&(_="suspectedoutliers");var w=h(p+"points",_);w?(h("jitter",w==="all"?.3:0),h("pointpos",w==="all"?-1.5:0),h("marker.symbol"),h("marker.opacity"),h("marker.size"),h("marker.angle"),h("marker.color",c.line.color),h("marker.line.color"),h("marker.line.width"),w==="suspectedoutliers"&&(h("marker.line.outliercolor",c.marker.color),h("marker.line.outlierwidth")),h("selected.marker.color"),h("unselected.marker.color"),h("selected.marker.size"),h("unselected.marker.size"),h("text"),h("hovertext")):delete c.marker;var S=h("hoveron");(S==="all"||S.indexOf("points")!==-1)&&h("hovertemplate"),g.coerceSelectionMarkerOpacity(c,h)}function n(s,c){var h,v;function p(w){return g.coerce(v._input,v,r,w)}for(var T=0;T<s.length;T++){v=s[T];var l=v.type;if(l==="box"||l==="violin"){h=v._input;var _=c[l+"mode"];_==="group"&&e(h,v,c,p,_)}}}H.exports={supplyDefaults:o,crossTraceDefaults:n,handleSampleDefaults:a,handlePointsDefaults:i}}}),V2=Ye({"src/traces/box/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=O_();function M(t,r,o,a,i){for(var n=i+"Layout",s=!1,c=0;c<o.length;c++){var h=o[c];if(g.traceIs(h,n)){s=!0;break}}s&&(a(i+"mode"),a(i+"gap"),a(i+"groupgap"))}function e(t,r,o){function a(i,n){return x.coerce(t,r,A,i,n)}M(t,r,o,a,"box")}H.exports={supplyLayoutDefaults:e,_supply:M}}}),KS=Ye({"src/traces/box/calc.js"(X,H){"use strict";var g=jo(),x=Co(),A=tv(),M=ta(),e=ks().BADNUM,t=M._;H.exports=function(S,E){var m=S._fullLayout,b=x.getFromId(S,E.xaxis||"x"),d=x.getFromId(S,E.yaxis||"y"),u=[],y=E.type==="violin"?"_numViolins":"_numBoxes",f,P,L,z,F,B,O;E.orientation==="h"?(L=b,z="x",F=d,B="y",O=!!E.yperiodalignment):(L=d,z="y",F=b,B="x",O=!!E.xperiodalignment);var I=r(E,B,F,m[y]),N=I[0],U=I[1],W=M.distinctVals(N,F),Q=W.vals,ue=W.minDiff/2,se,he,G,$,J,Z,re=(E.boxpoints||E.points)==="all"?M.identity:function(ar){return ar.v<se.lf||ar.v>se.uf};if(E._hasPreCompStats){var ne=E[z],j=function(ar){return L.d2c((E[ar]||[])[f])},ee=1/0,ie=-1/0;for(f=0;f<E._length;f++){var fe=N[f];if(g(fe)){if(se={},se.pos=se[B]=fe,O&&U&&(se.orig_p=U[f]),se.q1=j("q1"),se.med=j("median"),se.q3=j("q3"),he=[],ne&&M.isArrayOrTypedArray(ne[f]))for(P=0;P<ne[f].length;P++)Z=L.d2c(ne[f][P]),Z!==e&&(J={v:Z,i:[f,P]},n(J,E,[f,P]),he.push(J));if(se.pts=he.sort(c),G=se[z]=he.map(h),$=G.length,se.med!==e&&se.q1!==e&&se.q3!==e&&se.med>=se.q1&&se.q3>=se.med){var be=j("lowerfence");se.lf=be!==e&&be<=se.q1?be:v(se,G,$);var Ae=j("upperfence");se.uf=Ae!==e&&Ae>=se.q3?Ae:p(se,G,$);var Be=j("mean");se.mean=Be!==e?Be:$?M.mean(G,$):(se.q1+se.q3)/2;var Ie=j("sd");se.sd=Be!==e&&Ie>=0?Ie:$?M.stdev(G,$,se.mean):se.q3-se.q1,se.lo=T(se),se.uo=l(se);var Ze=j("notchspan");Ze=Ze!==e&&Ze>0?Ze:_(se,$),se.ln=se.med-Ze,se.un=se.med+Ze;var at=se.lf,it=se.uf;E.boxpoints&&G.length&&(at=Math.min(at,G[0]),it=Math.max(it,G[$-1])),E.notched&&(at=Math.min(at,se.ln),it=Math.max(it,se.un)),se.min=at,se.max=it}else{M.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+se.q1,"median = "+se.med,"q3 = "+se.q3].join(`
+`));var et;se.med!==e?et=se.med:se.q1!==e?se.q3!==e?et=(se.q1+se.q3)/2:et=se.q1:se.q3!==e?et=se.q3:et=0,se.med=et,se.q1=se.q3=et,se.lf=se.uf=et,se.mean=se.sd=et,se.ln=se.un=et,se.min=se.max=et}ee=Math.min(ee,se.min),ie=Math.max(ie,se.max),se.pts2=he.filter(re),u.push(se)}}E._extremes[L._id]=x.findExtremes(L,[ee,ie],{padded:!0})}else{var lt=L.makeCalcdata(E,z),Me=o(Q,ue),ge=Q.length,ce=a(ge);for(f=0;f<E._length;f++)if(Z=lt[f],!!g(Z)){var ze=M.findBin(N[f],Me);ze>=0&&ze<ge&&(J={v:Z,i:f},n(J,E,f),ce[ze].push(J))}var tt=1/0,nt=-1/0,Qe=E.quartilemethod,Ct=Qe==="exclusive",St=Qe==="inclusive";for(f=0;f<ge;f++)if(ce[f].length>0){if(se={},se.pos=se[B]=Q[f],he=se.pts=ce[f].sort(c),G=se[z]=he.map(h),$=G.length,se.min=G[0],se.max=G[$-1],se.mean=M.mean(G,$),se.sd=M.stdev(G,$,se.mean)*E.sdmultiple,se.med=M.interp(G,.5),$%2&&(Ct||St)){var Ot,jt;Ct?(Ot=G.slice(0,$/2),jt=G.slice($/2+1)):St&&(Ot=G.slice(0,$/2+1),jt=G.slice($/2)),se.q1=M.interp(Ot,.5),se.q3=M.interp(jt,.5)}else se.q1=M.interp(G,.25),se.q3=M.interp(G,.75);se.lf=v(se,G,$),se.uf=p(se,G,$),se.lo=T(se),se.uo=l(se);var ur=_(se,$);se.ln=se.med-ur,se.un=se.med+ur,tt=Math.min(tt,se.ln),nt=Math.max(nt,se.un),se.pts2=he.filter(re),u.push(se)}E.notched&&M.isTypedArray(lt)&&(lt=Array.from(lt)),E._extremes[L._id]=x.findExtremes(L,E.notched?lt.concat([tt,nt]):lt,{padded:!0})}return s(u,E),u.length>0?(u[0].t={num:m[y],dPos:ue,posLetter:B,valLetter:z,labels:{med:t(S,"median:"),min:t(S,"min:"),q1:t(S,"q1:"),q3:t(S,"q3:"),max:t(S,"max:"),mean:E.boxmean==="sd"||E.sizemode==="sd"?t(S,"mean \xB1 \u03C3:").replace("\u03C3",E.sdmultiple===1?"\u03C3":E.sdmultiple+"\u03C3"):t(S,"mean:"),lf:t(S,"lower fence:"),uf:t(S,"upper fence:")}},m[y]++,u):[{t:{empty:!0}}]};function r(w,S,E,m){var b=S in w,d=S+"0"in w,u="d"+S in w;if(b||d&&u){var y=E.makeCalcdata(w,S),f=A(w,E,S,y).vals;return[f,y]}var P;d?P=w[S+"0"]:"name"in w&&(E.type==="category"||g(w.name)&&["linear","log"].indexOf(E.type)!==-1||M.isDateTime(w.name)&&E.type==="date")?P=w.name:P=m;for(var L=E.type==="multicategory"?E.r2c_just_indices(P):E.d2c(P,0,w[S+"calendar"]),z=w._length,F=new Array(z),B=0;B<z;B++)F[B]=L;return[F]}function o(w,S){for(var E=w.length,m=new Array(E+1),b=0;b<E;b++)m[b]=w[b]-S;return m[E]=w[E-1]+S,m}function a(w){for(var S=new Array(w),E=0;E<w;E++)S[E]=[];return S}var i={text:"tx",hovertext:"htx"};function n(w,S,E){for(var m in i)M.isArrayOrTypedArray(S[m])&&(Array.isArray(E)?M.isArrayOrTypedArray(S[m][E[0]])&&(w[i[m]]=S[m][E[0]][E[1]]):w[i[m]]=S[m][E])}function s(w,S){if(M.isArrayOrTypedArray(S.selectedpoints))for(var E=0;E<w.length;E++){for(var m=w[E].pts||[],b={},d=0;d<m.length;d++)b[m[d].i]=d;M.tagSelected(m,S,b)}}function c(w,S){return w.v-S.v}function h(w){return w.v}function v(w,S,E){return E===0?w.q1:Math.min(w.q1,S[Math.min(M.findBin(2.5*w.q1-1.5*w.q3,S,!0)+1,E-1)])}function p(w,S,E){return E===0?w.q3:Math.max(w.q3,S[Math.max(M.findBin(2.5*w.q3-1.5*w.q1,S),0)])}function T(w){return 4*w.q1-3*w.q3}function l(w){return 4*w.q3-3*w.q1}function _(w,S){return S===0?0:1.57*(w.q3-w.q1)/Math.sqrt(S)}}}),q2=Ye({"src/traces/box/cross_trace_calc.js"(X,H){"use strict";var g=Co(),x=ta(),A=Yg().getAxisGroup,M=["v","h"];function e(r,o){for(var a=r.calcdata,i=o.xaxis,n=o.yaxis,s=0;s<M.length;s++){for(var c=M[s],h=c==="h"?n:i,v=[],p=0;p<a.length;p++){var T=a[p],l=T[0].t,_=T[0].trace;_.visible===!0&&(_.type==="box"||_.type==="candlestick")&&!l.empty&&(_.orientation||"v")===c&&_.xaxis===i._id&&_.yaxis===n._id&&v.push(p)}t("box",r,v,h)}}function t(r,o,a,i){var n=o.calcdata,s=o._fullLayout,c=i._id,h=c.charAt(0),v,p,T,l=[],_=0;for(v=0;v<a.length;v++)for(T=n[a[v]],p=0;p<T.length;p++)l.push(i.c2l(T[p].pos,!0)),_+=(T[p].pts2||[]).length;if(l.length){var w=x.distinctVals(l);(i.type==="category"||i.type==="multicategory")&&(w.minDiff=1);var S=w.minDiff/2;g.minDtick(i,w.minDiff,w.vals[0],!0);var E=r==="violin"?"_numViolins":"_numBoxes",m=s[E],b=s[r+"mode"]==="group"&&m>1,d=1-s[r+"gap"],u=1-s[r+"groupgap"];for(v=0;v<a.length;v++){T=n[a[v]];var y=T[0].trace,f=T[0].t,P=y.width,L=y.side,z,F,B,O;if(P)z=F=O=P/2,B=0;else if(z=S,b){var I=A(s,i._id)+y.orientation,N=s._alignmentOpts[I]||{},U=N[y.alignmentgroup]||{},W=Object.keys(U.offsetGroups||{}).length,Q=W||m,ue=W?y._offsetIndex:f.num;F=z*d*u/Q,B=2*z*(-.5+(ue+.5)/Q)*d,O=z*d/Q}else F=z*d*u,B=0,O=z;f.dPos=z,f.bPos=B,f.bdPos=F,f.wHover=O;var se,he,G=B+F,$,J,Z,re,ne,j,ee=!!P,ie=(y.boxpoints||y.points)&&_>0;if(L==="positive"?(se=z*(P?1:.5),$=G,he=$=B):L==="negative"?(se=$=B,he=z*(P?1:.5),J=G):(se=he=z,$=J=G),ie){var fe=y.pointpos,be=y.jitter,Ae=y.marker.size/2,Be=0;fe+be>=0&&(Be=G*(fe+be),Be>se?(ee=!0,ne=Ae,Z=Be):Be>$&&(ne=Ae,Z=se)),Be<=se&&(Z=se);var Ie=0;fe-be<=0&&(Ie=-G*(fe-be),Ie>he?(ee=!0,j=Ae,re=Ie):Ie>J&&(j=Ae,re=he)),Ie<=he&&(re=he)}else Z=se,re=he;var Ze=new Array(T.length);for(p=0;p<T.length;p++)Ze[p]=T[p].pos;y._extremes[c]=g.findExtremes(i,Ze,{padded:ee,vpadminus:re,vpadplus:Z,vpadLinearized:!0,ppadminus:{x:j,y:ne}[h],ppadplus:{x:ne,y:j}[h]})}}}H.exports={crossTraceCalc:e,setPositionOffset:t}}}),H2=Ye({"src/traces/box/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=5,e=.01;function t(i,n,s,c){var h=i._context.staticPlot,v=n.xaxis,p=n.yaxis;x.makeTraceGroups(c,s,"trace boxes").each(function(T){var l=g.select(this),_=T[0],w=_.t,S=_.trace;if(w.wdPos=w.bdPos*S.whiskerwidth,S.visible!==!0||w.empty){l.remove();return}var E,m;S.orientation==="h"?(E=p,m=v):(E=v,m=p),r(l,{pos:E,val:m},S,w,h),o(l,{x:v,y:p},S,w),a(l,{pos:E,val:m},S,w)})}function r(i,n,s,c,h){var v=s.orientation==="h",p=n.val,T=n.pos,l=!!T.rangebreaks,_=c.bPos,w=c.wdPos||0,S=c.bPosPxOffset||0,E=s.whiskerwidth||0,m=s.showwhiskers!==!1,b=s.notched||!1,d=b?1-2*s.notchwidth:1,u,y;Array.isArray(c.bdPos)?(u=c.bdPos[0],y=c.bdPos[1]):(u=c.bdPos,y=c.bdPos);var f=i.selectAll("path.box").data(s.type!=="violin"||s.box.visible?x.identity:[]);f.enter().append("path").style("vector-effect",h?"none":"non-scaling-stroke").attr("class","box"),f.exit().remove(),f.each(function(P){if(P.empty)return g.select(this).attr("d","M0,0Z");var L=T.c2l(P.pos+_,!0),z=T.l2p(L-u)+S,F=T.l2p(L+y)+S,B=l?(z+F)/2:T.l2p(L)+S,O=s.whiskerwidth,I=l?z*O+(1-O)*B:T.l2p(L-w)+S,N=l?F*O+(1-O)*B:T.l2p(L+w)+S,U=T.l2p(L-u*d)+S,W=T.l2p(L+y*d)+S,Q=s.sizemode==="sd",ue=p.c2p(Q?P.mean-P.sd:P.q1,!0),se=Q?p.c2p(P.mean+P.sd,!0):p.c2p(P.q3,!0),he=x.constrain(Q?p.c2p(P.mean,!0):p.c2p(P.med,!0),Math.min(ue,se)+1,Math.max(ue,se)-1),G=P.lf===void 0||s.boxpoints===!1||Q,$=p.c2p(G?P.min:P.lf,!0),J=p.c2p(G?P.max:P.uf,!0),Z=p.c2p(P.ln,!0),re=p.c2p(P.un,!0);v?g.select(this).attr("d","M"+he+","+U+"V"+W+"M"+ue+","+z+"V"+F+(b?"H"+Z+"L"+he+","+W+"L"+re+","+F:"")+"H"+se+"V"+z+(b?"H"+re+"L"+he+","+U+"L"+Z+","+z:"")+"Z"+(m?"M"+ue+","+B+"H"+$+"M"+se+","+B+"H"+J+(E===0?"":"M"+$+","+I+"V"+N+"M"+J+","+I+"V"+N):"")):g.select(this).attr("d","M"+U+","+he+"H"+W+"M"+z+","+ue+"H"+F+(b?"V"+Z+"L"+W+","+he+"L"+F+","+re:"")+"V"+se+"H"+z+(b?"V"+re+"L"+U+","+he+"L"+z+","+Z:"")+"Z"+(m?"M"+B+","+ue+"V"+$+"M"+B+","+se+"V"+J+(E===0?"":"M"+I+","+$+"H"+N+"M"+I+","+J+"H"+N):""))})}function o(i,n,s,c){var h=n.x,v=n.y,p=c.bdPos,T=c.bPos,l=s.boxpoints||s.points;x.seedPseudoRandom();var _=function(E){return E.forEach(function(m){m.t=c,m.trace=s}),E},w=i.selectAll("g.points").data(l?_:[]);w.enter().append("g").attr("class","points"),w.exit().remove();var S=w.selectAll("path").data(function(E){var m,b=E.pts2,d=Math.max((E.max-E.min)/10,E.q3-E.q1),u=d*1e-9,y=d*e,f=[],P=0,L;if(s.jitter){if(d===0)for(P=1,f=new Array(b.length),m=0;m<b.length;m++)f[m]=1;else for(m=0;m<b.length;m++){var z=Math.max(0,m-M),F=b[z].v,B=Math.min(b.length-1,m+M),O=b[B].v;l!=="all"&&(b[m].v<E.lf?O=Math.min(O,E.lf):F=Math.max(F,E.uf));var I=Math.sqrt(y*(B-z)/(O-F+u))||0;I=x.constrain(Math.abs(I),0,1),f.push(I),P=Math.max(I,P)}L=s.jitter*2/(P||1)}for(m=0;m<b.length;m++){var N=b[m],U=N.v,W=s.jitter?L*f[m]*(x.pseudoRandom()-.5):0,Q=E.pos+T+p*(s.pointpos+W);s.orientation==="h"?(N.y=Q,N.x=U):(N.x=Q,N.y=U),l==="suspectedoutliers"&&U<E.uo&&U>E.lo&&(N.so=!0)}return b});S.enter().append("path").classed("point",!0),S.exit().remove(),S.call(A.translatePoints,h,v)}function a(i,n,s,c){var h=n.val,v=n.pos,p=!!v.rangebreaks,T=c.bPos,l=c.bPosPxOffset||0,_=s.boxmean||(s.meanline||{}).visible,w,S;Array.isArray(c.bdPos)?(w=c.bdPos[0],S=c.bdPos[1]):(w=c.bdPos,S=c.bdPos);var E=i.selectAll("path.mean").data(s.type==="box"&&s.boxmean||s.type==="violin"&&s.box.visible&&s.meanline.visible?x.identity:[]);E.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),E.exit().remove(),E.each(function(m){var b=v.c2l(m.pos+T,!0),d=v.l2p(b-w)+l,u=v.l2p(b+S)+l,y=p?(d+u)/2:v.l2p(b)+l,f=h.c2p(m.mean,!0),P=h.c2p(m.mean-m.sd,!0),L=h.c2p(m.mean+m.sd,!0);s.orientation==="h"?g.select(this).attr("d","M"+f+","+d+"V"+u+(_==="sd"?"m0,0L"+P+","+y+"L"+f+","+d+"L"+L+","+y+"Z":"")):g.select(this).attr("d","M"+d+","+f+"H"+u+(_==="sd"?"m0,0L"+y+","+P+"L"+d+","+f+"L"+y+","+L+"Z":""))})}H.exports={plot:t,plotBoxAndWhiskers:r,plotPoints:o,plotBoxMean:a}}}),G2=Ye({"src/traces/box/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo();function M(t,r,o){var a=o||g.select(t).selectAll("g.trace.boxes");a.style("opacity",function(i){return i[0].trace.opacity}),a.each(function(i){var n=g.select(this),s=i[0].trace,c=s.line.width;function h(T,l,_,w){T.style("stroke-width",l+"px").call(x.stroke,_).call(x.fill,w)}var v=n.selectAll("path.box");if(s.type==="candlestick")v.each(function(T){if(!T.empty){var l=g.select(this),_=s[T.dir];h(l,_.line.width,_.line.color,_.fillcolor),l.style("opacity",s.selectedpoints&&!T.selected?.3:1)}});else{h(v,c,s.line.color,s.fillcolor),n.selectAll("path.mean").style({"stroke-width":c,"stroke-dasharray":2*c+"px,"+c+"px"}).call(x.stroke,s.line.color);var p=n.selectAll("path.point");A.pointStyle(p,s,t)}})}function e(t,r,o){var a=r[0].trace,i=o.selectAll("path.point");a.selectedpoints?A.selectedPointStyle(i,a):A.pointStyle(i,a,t)}H.exports={style:M,styleOnSelect:e}}}),JS=Ye({"src/traces/box/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=x.fillText;function t(a,i,n,s){var c=a.cd,h=c[0].trace,v=h.hoveron,p=[],T;return v.indexOf("boxes")!==-1&&(p=p.concat(r(a,i,n,s))),v.indexOf("points")!==-1&&(T=o(a,i,n)),s==="closest"?T?[T]:p:(T&&p.push(T),p)}function r(a,i,n,s){var c=a.cd,h=a.xa,v=a.ya,p=c[0].trace,T=c[0].t,l=p.type==="violin",_,w,S,E,m,b,d,u,y,f,P,L=T.bdPos,z,F,B=T.wHover,O=function(Ie){return S.c2l(Ie.pos)+T.bPos-S.c2l(b)};l&&p.side!=="both"?(p.side==="positive"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze,Ze+B,f)},z=L,F=0),p.side==="negative"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze,f)},z=0,F=L)):(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze+B,f)},z=F=L);var I;l?I=function(Ie){return A.inbox(Ie.span[0]-m,Ie.span[1]-m,f)}:I=function(Ie){return A.inbox(Ie.min-m,Ie.max-m,f)},p.orientation==="h"?(m=i,b=n,d=I,u=y,_="y",S=v,w="x",E=h):(m=n,b=i,d=y,u=I,_="x",S=h,w="y",E=v);var N=Math.min(1,L/Math.abs(S.r2c(S.range[1])-S.r2c(S.range[0])));f=a.maxHoverDistance-N,P=a.maxSpikeDistance-N;function U(Ie){return(d(Ie)+u(Ie))/2}var W=A.getDistanceFunction(s,d,u,U);if(A.getClosest(c,W,a),a.index===!1)return[];var Q=c[a.index],ue=p.line.color,se=(p.marker||{}).color;M.opacity(ue)&&p.line.width?a.color=ue:M.opacity(se)&&p.boxpoints?a.color=se:a.color=p.fillcolor,a[_+"0"]=S.c2p(Q.pos+T.bPos-F,!0),a[_+"1"]=S.c2p(Q.pos+T.bPos+z,!0),a[_+"LabelVal"]=Q.orig_p!==void 0?Q.orig_p:Q.pos;var he=_+"Spike";a.spikeDistance=U(Q)*P/f,a[he]=S.c2p(Q.pos,!0);var G=p.boxmean||p.sizemode==="sd"||(p.meanline||{}).visible,$=p.boxpoints||p.points,J=$&&G?["max","uf","q3","med","mean","q1","lf","min"]:$&&!G?["max","uf","q3","med","q1","lf","min"]:!$&&G?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],Z=E.range[1]<E.range[0];p.orientation===(Z?"v":"h")&&J.reverse();for(var re=a.spikeDistance,ne=a[he],j=[],ee=0;ee<J.length;ee++){var ie=J[ee];if(ie in Q){var fe=Q[ie],be=E.c2p(fe,!0),Ae=x.extendFlat({},a);Ae.attr=ie,Ae[w+"0"]=Ae[w+"1"]=be,Ae[w+"LabelVal"]=fe,Ae[w+"Label"]=(T.labels?T.labels[ie]+" ":"")+g.hoverLabelText(E,fe,p[w+"hoverformat"]),Ae.hoverOnBox=!0,ie==="mean"&&"sd"in Q&&(p.boxmean==="sd"||p.sizemode==="sd")&&(Ae[w+"err"]=Q.sd),Ae.hovertemplate=!1,j.push(Ae)}}a.name="",a.spikeDistance=void 0,a[he]=void 0;for(var Be=0;Be<j.length;Be++)j[Be].attr!=="med"?(j[Be].name="",j[Be].spikeDistance=void 0,j[Be][he]=void 0):(j[Be].spikeDistance=re,j[Be][he]=ne);return j}function o(a,i,n){for(var s=a.cd,c=a.xa,h=a.ya,v=s[0].trace,p=c.c2p(i),T=h.c2p(n),l,_=function(I){var N=Math.max(3,I.mrc||0);return Math.max(Math.abs(c.c2p(I.x)-p)-N,1-3/N)},w=function(I){var N=Math.max(3,I.mrc||0);return Math.max(Math.abs(h.c2p(I.y)-T)-N,1-3/N)},S=A.quadrature(_,w),E=!1,m,b,d=0;d<s.length;d++){m=s[d];for(var u=0;u<(m.pts||[]).length;u++){b=m.pts[u];var y=S(b);y<=a.distance&&(a.distance=y,E=[d,u])}}if(!E)return!1;m=s[E[0]],b=m.pts[E[1]];var f=c.c2p(b.x,!0),P=h.c2p(b.y,!0),L=b.mrc||1;l=x.extendFlat({},a,{index:b.i,color:(v.marker||{}).color,name:v.name,x0:f-L,x1:f+L,y0:P-L,y1:P+L,spikeDistance:a.distance,hovertemplate:v.hovertemplate});var z=m.orig_p,F=z!==void 0?z:m.pos,B;v.orientation==="h"?(B=h,l.xLabelVal=b.x,l.yLabelVal=F):(B=c,l.xLabelVal=F,l.yLabelVal=b.y);var O=B._id.charAt(0);return l[O+"Spike"]=B.c2p(m.pos,!0),e(b,v,l),l}H.exports={hoverPoints:t,hoverOnBoxes:r,hoverOnPoints:o}}}),XB=Ye({"src/traces/box/event_data.js"(X,H){"use strict";H.exports=function(x,A){return A.hoverOnBox&&(x.hoverOnBox=A.hoverOnBox),"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),$S=Ye({"src/traces/box/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a;if(A===!1)for(o=0;o<M.length;o++)for(a=0;a<(M[o].pts||[]).length;a++)M[o].pts[a].selected=0;else for(o=0;o<M.length;o++)for(a=0;a<(M[o].pts||[]).length;a++){var i=M[o].pts[a],n=e.c2p(i.x),s=t.c2p(i.y);A.contains([n,s],null,i.i,x)?(r.push({pointNumber:i.i,x:e.c2d(i.x),y:t.c2d(i.y)}),i.selected=1):i.selected=0}return r}}}),YB=Ye({"src/traces/box/index.js"(X,H){"use strict";H.exports={attributes:F_(),layoutAttributes:O_(),supplyDefaults:B_().supplyDefaults,crossTraceDefaults:B_().crossTraceDefaults,supplyLayoutDefaults:V2().supplyLayoutDefaults,calc:KS(),crossTraceCalc:q2().crossTraceCalc,plot:H2().plot,style:G2().style,styleOnSelect:G2().styleOnSelect,hoverPoints:JS().hoverPoints,eventData:XB(),selectPoints:$S(),moduleType:"trace",name:"box",basePlotModule:Pf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}}}),KB=Ye({"lib/box.js"(X,H){"use strict";H.exports=YB()}}),h1=Ye({"src/traces/heatmap/attributes.js"(X,H){"use strict";var g=Pc(),x=Pl(),A=Au(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=tu(),o=Oo().extendFlat;H.exports=o({z:{valType:"data_array",editType:"calc"},x:o({},g.x,{impliedEdits:{xtype:"array"}}),x0:o({},g.x0,{impliedEdits:{xtype:"scaled"}}),dx:o({},g.dx,{impliedEdits:{xtype:"scaled"}}),y:o({},g.y,{impliedEdits:{ytype:"array"}}),y0:o({},g.y0,{impliedEdits:{ytype:"scaled"}}),dy:o({},g.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:o({},g.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:o({},g.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:o({},g.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:o({},g.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:o({},g.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:o({},g.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:e(),texttemplate:t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:A({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:o({},x.showlegend,{dflt:!1}),zorder:g.zorder},r("",{cLetter:"z",autoColorDflt:!1}))}}),W2=Ye({"src/traces/heatmap/xyz_defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn();H.exports=function(r,o,a,i,n,s){var c=a("z");n=n||"x",s=s||"y";var h,v;if(c===void 0||!c.length)return 0;if(x.isArray1D(c)){h=a(n),v=a(s);var p=x.minRowLength(h),T=x.minRowLength(v);if(p===0||T===0)return 0;o._length=Math.min(p,T,c.length)}else{if(h=M(n,a),v=M(s,a),!e(c))return 0;a("transpose"),o._length=null}var l=A.getComponentMethod("calendars","handleTraceDefaults");return l(r,o,[n,s],i),!0};function M(t,r){var o=r(t),a=o?r(t+"type","array"):"scaled";return a==="scaled"&&(r(t+"0"),r("d"+t)),o}function e(t){for(var r=!0,o=!1,a=!1,i,n=0;n<t.length;n++){if(i=t[n],!x.isArrayOrTypedArray(i)){r=!1;break}i.length>0&&(o=!0);for(var s=0;s<i.length;s++)if(g(i[s])){a=!0;break}}return r&&o&&a}}}),N_=Ye({"src/traces/heatmap/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){A("texttemplate");var e=g.extendFlat({},M.font,{color:"auto",size:"auto"});g.coerceFont(A,"textfont",e)}}}),QS=Ye({"src/traces/heatmap/style_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e=M("zsmooth");e===!1&&(M("xgap"),M("ygap")),M("zhoverformat")}}}),JB=Ye({"src/traces/heatmap/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=N_(),M=Qd(),e=QS(),t=sh(),r=h1();H.exports=function(a,i,n,s){function c(v,p){return g.coerce(a,i,r,v,p)}var h=x(a,i,c,s);if(!h){i.visible=!1;return}M(a,i,s,c),c("xhoverformat"),c("yhoverformat"),c("text"),c("hovertext"),c("hovertemplate"),A(c,s),e(a,i,c,s),c("hoverongaps"),c("connectgaps",g.isArray1D(i.z)&&i.zsmooth!==!1),t(a,i,s,c,{prefix:"",cLetter:"z"}),c("zorder")}}}),eM=Ye({"src/traces/histogram/bin_functions.js"(X,H){"use strict";var g=jo();H.exports={count:function(x,A,M){return M[x]++,1},sum:function(x,A,M,e){var t=e[A];return g(t)?(t=Number(t),M[x]+=t,t):0},avg:function(x,A,M,e,t){var r=e[A];return g(r)&&(r=Number(r),M[x]+=r,t[x]++),0},min:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]>t){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0},max:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]<t){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0}}}}),tM=Ye({"src/traces/histogram/norm_functions.js"(X,H){"use strict";H.exports={percent:function(g,x){for(var A=g.length,M=100/x,e=0;e<A;e++)g[e]*=M},probability:function(g,x){for(var A=g.length,M=0;M<A;M++)g[M]/=x},density:function(g,x,A,M){var e=g.length;M=M||1;for(var t=0;t<e;t++)g[t]*=A[t]*M},"probability density":function(g,x,A,M){var e=g.length;M&&(x/=M);for(var t=0;t<e;t++)g[t]*=A[t]/x}}}}),rM=Ye({"src/traces/histogram/average.js"(X,H){"use strict";H.exports=function(x,A){for(var M=x.length,e=0,t=0;t<M;t++)A[t]?(x[t]/=A[t],e+=x[t]):x[t]=null;return e}}}),aM=Ye({"src/traces/histogram/bin_label_vals.js"(X,H){"use strict";var g=ks(),x=g.ONEAVGYEAR,A=g.ONEAVGMONTH,M=g.ONEDAY,e=g.ONEHOUR,t=g.ONEMIN,r=g.ONESEC,o=Co().tickIncrement;H.exports=function(h,v,p,T,l){var _=-1.1*v,w=-.1*v,S=h-w,E=p[0],m=p[1],b=Math.min(a(E+w,E+S,T,l),a(m+w,m+S,T,l)),d=Math.min(a(E+_,E+w,T,l),a(m+_,m+w,T,l)),u,y;if(b>d&&d<Math.abs(m-E)/4e3?(u=b,y=!1):(u=Math.min(b,d),y=!0),T.type==="date"&&u>M){var f=u===x?1:6,P=u===x?"M12":"M1";return function(L,z){var F=T.c2d(L,x,l),B=F.indexOf("-",f);B>0&&(F=F.substr(0,B));var O=T.d2c(F,0,l);if(O<L){var I=o(O,P,!1,l);(O+I)/2<L+h&&(O=I)}return z&&y?o(O,P,!0,l):O}}return function(L,z){var F=u*Math.round(L/u);return F+u/10<L&&F+u*.9<L+h&&(F+=u),z&&y&&(F-=u),F}};function a(c,h,v,p){if(c*h<=0)return 1/0;for(var T=Math.abs(h-c),l=v.type==="date",_=i(T,l),w=0;w<10;w++){var S=i(_*80,l);if(_===S)break;if(n(S,c,h,l,v,p))_=S;else break}return _}function i(c,h){return h&&c>r?c>M?c>x*1.1?x:c>A*1.1?A:M:c>e?e:c>t?t:r:Math.pow(10,Math.floor(Math.log(c)/Math.LN10))}function n(c,h,v,p,T,l){if(p&&c>M){var _=s(h,T,l),w=s(v,T,l),S=c===x?0:1;return _[S]!==w[S]}return Math.floor(v/c)-Math.floor(h/c)>.1}function s(c,h,v){var p=h.c2d(c,x,v).split("-");return p[0]===""&&(p.unshift(),p[0]="-"+p[0]),p}}}),iM=Ye({"src/traces/histogram/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn(),M=Co(),e=z_(),t=eM(),r=tM(),o=rM(),a=aM();function i(v,p){var T=[],l=[],_=p.orientation==="h",w=M.getFromId(v,_?p.yaxis:p.xaxis),S=_?"y":"x",E={x:"y",y:"x"}[S],m=p[S+"calendar"],b=p.cumulative,d,u=n(v,p,w,S),y=u[0],f=u[1],P=typeof y.size=="string",L=[],z=P?L:y,F=[],B=[],O=[],I=0,N=p.histnorm,U=p.histfunc,W=N.indexOf("density")!==-1,Q,ue,se;b.enabled&&W&&(N=N.replace(/ ?density$/,""),W=!1);var he=U==="max"||U==="min",G=he?null:0,$=t.count,J=r[N],Z=!1,re=function(ge){return w.r2c(ge,0,m)},ne;for(x.isArrayOrTypedArray(p[E])&&U!=="count"&&(ne=p[E],Z=U==="avg",$=t[U]),d=re(y.start),ue=re(y.end)+(d-M.tickIncrement(d,y.size,!1,m))/1e6;d<ue&&T.length<1e6&&(Q=M.tickIncrement(d,y.size,!1,m),T.push((d+Q)/2),l.push(G),O.push([]),L.push(d),W&&F.push(1/(Q-d)),Z&&B.push(0),!(Q<=d));)d=Q;L.push(d),!P&&w.type==="date"&&(z={start:re(z.start),end:re(z.end),size:z.size}),v._fullLayout._roundFnOpts||(v._fullLayout._roundFnOpts={});var j=p["_"+S+"bingroup"],ee={leftGap:1/0,rightGap:1/0};j&&(v._fullLayout._roundFnOpts[j]||(v._fullLayout._roundFnOpts[j]=ee),ee=v._fullLayout._roundFnOpts[j]);var ie=l.length,fe=!0,be=ee.leftGap,Ae=ee.rightGap,Be={};for(d=0;d<f.length;d++){var Ie=f[d];se=x.findBin(Ie,z),se>=0&&se<ie&&(I+=$(se,d,l,ne,B),fe&&O[se].length&&Ie!==f[O[se][0]]&&(fe=!1),O[se].push(d),Be[d]=se,be=Math.min(be,Ie-L[se]),Ae=Math.min(Ae,L[se+1]-Ie))}ee.leftGap=be,ee.rightGap=Ae;var Ze;fe||(Ze=function(ge,ce){return function(){var ze=v._fullLayout._roundFnOpts[j];return a(ze.leftGap,ze.rightGap,L,w,m)(ge,ce)}}),Z&&(I=o(l,B)),J&&J(l,I,F),b.enabled&&h(l,b.direction,b.currentbin);var at=Math.min(T.length,l.length),it=[],et=0,lt=at-1;for(d=0;d<at;d++)if(l[d]){et=d;break}for(d=at-1;d>=et;d--)if(l[d]){lt=d;break}for(d=et;d<=lt;d++)if(g(T[d])&&g(l[d])){var Me={p:T[d],s:l[d],b:0};b.enabled||(Me.pts=O[d],fe?Me.ph0=Me.ph1=O[d].length?f[O[d][0]]:T[d]:(p._computePh=!0,Me.ph0=Ze(L[d]),Me.ph1=Ze(L[d+1],!0))),it.push(Me)}return it.length===1&&(it[0].width1=M.tickIncrement(it[0].p,y.size,!1,m)-it[0].p),e(it,p),x.isArrayOrTypedArray(p.selectedpoints)&&x.tagSelected(it,p,Be),it}function n(v,p,T,l,_){var w=l+"bins",S=v._fullLayout,E=p["_"+l+"bingroup"],m=S._histogramBinOpts[E],b=S.barmode==="overlay",d,u,y,f,P,L,z,F=function(Ie){return T.r2c(Ie,0,f)},B=function(Ie){return T.c2r(Ie,0,f)},O=T.type==="date"?function(Ie){return Ie||Ie===0?x.cleanDate(Ie,null,f):null}:function(Ie){return g(Ie)?Number(Ie):null};function I(Ie,Ze,at){Ze[Ie+"Found"]?(Ze[Ie]=O(Ze[Ie]),Ze[Ie]===null&&(Ze[Ie]=at[Ie])):(L[Ie]=Ze[Ie]=at[Ie],x.nestedProperty(u[0],w+"."+Ie).set(at[Ie]))}if(p["_"+l+"autoBinFinished"])delete p["_"+l+"autoBinFinished"];else{u=m.traces;var N=[],U=!0,W=!1,Q=!1;for(d=0;d<u.length;d++)if(y=u[d],y.visible){var ue=m.dirs[d];P=y["_"+ue+"pos0"]=T.makeCalcdata(y,ue),N=x.concat(N,P),delete y["_"+l+"autoBinFinished"],p.visible===!0&&(U?U=!1:(delete y._autoBin,y["_"+l+"autoBinFinished"]=1),A.traceIs(y,"2dMap")&&(W=!0),y.type==="histogram2dcontour"&&(Q=!0))}f=u[0][l+"calendar"];var se=M.autoBin(N,T,m.nbins,W,f,m.sizeFound&&m.size),he=u[0]._autoBin={};if(L=he[m.dirs[0]]={},Q&&(m.size||(se.start=B(M.tickIncrement(F(se.start),se.size,!0,f))),m.end===void 0&&(se.end=B(M.tickIncrement(F(se.end),se.size,!1,f)))),b&&!A.traceIs(p,"2dMap")&&se._dataSpan===0&&T.type!=="category"&&T.type!=="multicategory"&&p.bingroup===""&&typeof p.xbins>"u"){if(_)return[se,P,!0];se=s(v,p,T,l,w)}z=y.cumulative||{},z.enabled&&z.currentbin!=="include"&&(z.direction==="decreasing"?se.start=B(M.tickIncrement(F(se.start),se.size,!0,f)):se.end=B(M.tickIncrement(F(se.end),se.size,!1,f))),m.size=se.size,m.sizeFound||(L.size=se.size,x.nestedProperty(u[0],w+".size").set(se.size)),I("start",m,se),I("end",m,se)}P=p["_"+l+"pos0"],delete p["_"+l+"pos0"];var G=p._input[w]||{},$=x.extendFlat({},m),J=m.start,Z=T.r2l(G.start),re=Z!==void 0;if((m.startFound||re)&&Z!==T.r2l(J)){var ne=re?Z:x.aggNums(Math.min,null,P),j={type:T.type==="category"||T.type==="multicategory"?"linear":T.type,r2l:T.r2l,dtick:m.size,tick0:J,calendar:f,range:[ne,M.tickIncrement(ne,m.size,!1,f)].map(T.l2r)},ee=M.tickFirst(j);ee>T.r2l(ne)&&(ee=M.tickIncrement(ee,m.size,!0,f)),$.start=T.l2r(ee),re||x.nestedProperty(p,w+".start").set($.start)}var ie=m.end,fe=T.r2l(G.end),be=fe!==void 0;if((m.endFound||be)&&fe!==T.r2l(ie)){var Ae=be?fe:x.aggNums(Math.max,null,P);$.end=T.l2r(Ae),be||x.nestedProperty(p,w+".start").set($.end)}var Be="autobin"+l;return p._input[Be]===!1&&(p._input[w]=x.extendFlat({},p[w]||{}),delete p._input[Be],delete p[Be]),[$,P]}function s(v,p,T,l,_){var w=v._fullLayout,S=c(v,p),E=!1,m=1/0,b=[p],d,u,y;for(d=0;d<S.length;d++)if(u=S[d],u===p)E=!0;else if(!E)y=w._histogramBinOpts[u["_"+l+"bingroup"]],m=Math.min(m,y.size||u[_].size);else{var f=n(v,u,T,l,!0),P=f[0],L=f[2];u["_"+l+"autoBinFinished"]=1,u["_"+l+"pos0"]=f[1],L?b.push(u):m=Math.min(m,P.size)}var z=new Array(b.length);for(d=0;d<b.length;d++)for(var F=b[d]["_"+l+"pos0"],B=0;B<F.length;B++)if(F[B]!==void 0){z[d]=F[B];break}for(isFinite(m)||(m=x.distinctVals(z).minDiff),d=0;d<b.length;d++){u=b[d];var O=u[l+"calendar"],I={start:T.c2r(z[d]-m/2,0,O),end:T.c2r(z[d]+m/2,0,O),size:m};u._input[_]=u[_]=I,y=w._histogramBinOpts[u["_"+l+"bingroup"]],y&&x.extendFlat(y,I)}return p[_]}function c(v,p){for(var T=p.xaxis,l=p.yaxis,_=p.orientation,w=[],S=v._fullData,E=0;E<S.length;E++){var m=S[E];m.type==="histogram"&&m.visible===!0&&m.orientation===_&&m.xaxis===T&&m.yaxis===l&&w.push(m)}return w}function h(v,p,T){var l,_,w;function S(m){w=v[m],v[m]/=2}function E(m){_=v[m],v[m]=w+_/2,w+=_}if(T==="half")if(p==="increasing")for(S(0),l=1;l<v.length;l++)E(l);else for(S(v.length-1),l=v.length-2;l>=0;l--)E(l);else if(p==="increasing"){for(l=1;l<v.length;l++)v[l]+=v[l-1];T==="exclude"&&(v.unshift(0),v.pop())}else{for(l=v.length-2;l>=0;l--)v[l]+=v[l+1];T==="exclude"&&(v.push(0),v.shift())}}H.exports={calc:i,calcAllAutoBins:n}}}),$B=Ye({"src/traces/histogram2d/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=eM(),M=tM(),e=rM(),t=aM(),r=iM().calcAllAutoBins;H.exports=function(s,c){var h=x.getFromId(s,c.xaxis),v=x.getFromId(s,c.yaxis),p=c.xcalendar,T=c.ycalendar,l=function(Fe){return h.r2c(Fe,0,p)},_=function(Fe){return v.r2c(Fe,0,T)},w=function(Fe){return h.c2r(Fe,0,p)},S=function(Fe){return v.c2r(Fe,0,T)},E,m,b,d,u=r(s,c,h,"x"),y=u[0],f=u[1],P=r(s,c,v,"y"),L=P[0],z=P[1],F=c._length;f.length>F&&f.splice(F,f.length-F),z.length>F&&z.splice(F,z.length-F);var B=[],O=[],I=[],N=typeof y.size=="string",U=typeof L.size=="string",W=[],Q=[],ue=N?W:y,se=U?Q:L,he=0,G=[],$=[],J=c.histnorm,Z=c.histfunc,re=J.indexOf("density")!==-1,ne=Z==="max"||Z==="min",j=ne?null:0,ee=A.count,ie=M[J],fe=!1,be=[],Ae=[],Be="z"in c?c.z:"marker"in c&&Array.isArray(c.marker.color)?c.marker.color:"";Be&&Z!=="count"&&(fe=Z==="avg",ee=A[Z]);var Ie=y.size,Ze=l(y.start),at=l(y.end)+(Ze-x.tickIncrement(Ze,Ie,!1,p))/1e6;for(E=Ze;E<at;E=x.tickIncrement(E,Ie,!1,p))O.push(j),W.push(E),fe&&I.push(0);W.push(E);var it=O.length,et=(E-Ze)/it,lt=w(Ze+et/2),Me=L.size,ge=_(L.start),ce=_(L.end)+(ge-x.tickIncrement(ge,Me,!1,T))/1e6;for(E=ge;E<ce;E=x.tickIncrement(E,Me,!1,T)){B.push(O.slice()),Q.push(E);var ze=new Array(it);for(m=0;m<it;m++)ze[m]=[];$.push(ze),fe&&G.push(I.slice())}Q.push(E);var tt=B.length,nt=(E-ge)/tt,Qe=S(ge+nt/2);re&&(be=o(O.length,ue,et,N),Ae=o(B.length,se,nt,U)),!N&&h.type==="date"&&(ue=a(l,ue)),!U&&v.type==="date"&&(se=a(_,se));var Ct=!0,St=!0,Ot=new Array(it),jt=new Array(tt),ur=1/0,ar=1/0,Cr=1/0,vr=1/0;for(E=0;E<F;E++){var _r=f[E],yt=z[E];b=g.findBin(_r,ue),d=g.findBin(yt,se),b>=0&&b<it&&d>=0&&d<tt&&(he+=ee(b,E,B[d],Be,G[d]),$[d][b].push(E),Ct&&(Ot[b]===void 0?Ot[b]=_r:Ot[b]!==_r&&(Ct=!1)),St&&(jt[d]===void 0?jt[d]=yt:jt[d]!==yt&&(St=!1)),ur=Math.min(ur,_r-W[b]),ar=Math.min(ar,W[b+1]-_r),Cr=Math.min(Cr,yt-Q[d]),vr=Math.min(vr,Q[d+1]-yt))}if(fe)for(d=0;d<tt;d++)he+=e(B[d],G[d]);if(ie)for(d=0;d<tt;d++)ie(B[d],he,be,Ae[d]);return{x:f,xRanges:i(W,Ct&&Ot,ur,ar,h,p),x0:lt,dx:et,y:z,yRanges:i(Q,St&&jt,Cr,vr,v,T),y0:Qe,dy:nt,z:B,pts:$}};function o(n,s,c,h){var v=new Array(n),p;if(h)for(p=0;p<n;p++)v[p]=1/(s[p+1]-s[p]);else{var T=1/c;for(p=0;p<n;p++)v[p]=T}return v}function a(n,s){return{start:n(s.start),end:n(s.end),size:s.size}}function i(n,s,c,h,v,p){var T,l=n.length-1,_=new Array(l),w=t(c,h,n,v,p);for(T=0;T<l;T++){var S=(s||[])[T];_[T]=S===void 0?[w(n[T]),w(n[T+1],!0)]:[S,S]}return _}}}),Z2=Ye({"src/traces/heatmap/convert_column_xyz.js"(X,H){"use strict";var g=ta(),x=ks().BADNUM,A=tv();H.exports=function(e,t,r,o,a,i){var n=e._length,s=t.makeCalcdata(e,o),c=r.makeCalcdata(e,a);s=A(e,t,o,s).vals,c=A(e,r,a,c).vals;var h=e.text,v=h!==void 0&&g.isArray1D(h),p=e.hovertext,T=p!==void 0&&g.isArray1D(p),l,_,w=g.distinctVals(s),S=w.vals,E=g.distinctVals(c),m=E.vals,b=[],d,u,y=m.length,f=S.length;for(l=0;l<i.length;l++)b[l]=g.init2dArray(y,f);v&&(d=g.init2dArray(y,f)),T&&(u=g.init2dArray(y,f));var P=g.init2dArray(y,f);for(l=0;l<n;l++)if(s[l]!==x&&c[l]!==x){var L=g.findBin(s[l]+w.minDiff/2,S),z=g.findBin(c[l]+E.minDiff/2,m);for(_=0;_<i.length;_++){var F=i[_],B=e[F],O=b[_];O[z][L]=B[l],P[z][L]=l}v&&(d[z][L]=h[l]),T&&(u[z][L]=p[l])}for(e["_"+o]=S,e["_"+a]=m,_=0;_<i.length;_++)e["_"+i[_]]=b[_];v&&(e._text=d),T&&(e._hovertext=u),t&&t.type==="category"&&(e["_"+o+"CategoryMap"]=S.map(function(I){return t._categories[I]})),r&&r.type==="category"&&(e["_"+a+"CategoryMap"]=m.map(function(I){return r._categories[I]})),e._after2before=P}}}),X2=Ye({"src/traces/heatmap/clean_2d_array.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM;H.exports=function(e,t,r,o){var a,i,n,s,c,h;function v(S){if(g(S))return+S}if(t&&t.transpose){for(a=0,c=0;c<e.length;c++)a=Math.max(a,e[c].length);if(a===0)return!1;n=function(S){return S.length},s=function(S,E,m){return(S[m]||[])[E]}}else a=e.length,n=function(S,E){return S[E].length},s=function(S,E,m){return(S[E]||[])[m]};var p=function(S,E,m){return E===A||m===A?A:s(S,E,m)};function T(S){if(t&&t.type!=="carpet"&&t.type!=="contourcarpet"&&S&&S.type==="category"&&t["_"+S._id.charAt(0)].length){var E=S._id.charAt(0),m={},b=t["_"+E+"CategoryMap"]||t[E];for(c=0;c<b.length;c++)m[b[c]]=c;return function(d){var u=m[S._categories[d]];return u+1?u:A}}else return x.identity}var l=T(r),_=T(o);o&&o.type==="category"&&(a=o._categories.length);var w=new Array(a);for(c=0;c<a;c++)for(r&&r.type==="category"?i=r._categories.length:i=n(e,c),w[c]=new Array(i),h=0;h<i;h++)w[c][h]=v(p(e,_(c),l(h)));return w}}}),Y2=Ye({"src/traces/heatmap/interp2d.js"(X,H){"use strict";var g=ta(),x=.01,A=[[-1,0],[1,0],[0,-1],[0,1]];function M(t){return .5-.25*Math.min(1,t*.5)}H.exports=function(r,o){var a=1,i;for(e(r,o),i=0;i<o.length&&!(o[i][2]<4);i++);for(o=o.slice(i),i=0;i<100&&a>x;i++)a=e(r,o,M(a));return a>x&&g.log("interp2d didn't converge quickly",a),r};function e(t,r,o){var a=0,i,n,s,c,h,v,p,T,l,_,w,S,E;for(c=0;c<r.length;c++){for(i=r[c],n=i[0],s=i[1],w=t[n][s],_=0,l=0,h=0;h<4;h++)v=A[h],p=t[n+v[0]],p&&(T=p[s+v[1]],T!==void 0&&(_===0?S=E=T:(S=Math.min(S,T),E=Math.max(E,T)),l++,_+=T));if(l===0)throw"iterateInterp2d order is wrong: no defined neighbors";t[n][s]=_/l,w===void 0?l<4&&(a=1):(t[n][s]=(1+o)*t[n][s]-o*w,E>S&&(a=Math.max(a,Math.abs(t[n][s]-w)/(E-S))))}return a}}}),K2=Ye({"src/traces/heatmap/find_empties.js"(X,H){"use strict";var g=ta().maxRowLength;H.exports=function(A){var M=[],e={},t=[],r=A[0],o=[],a=[0,0,0],i=g(A),n,s,c,h,v,p,T,l;for(s=0;s<A.length;s++)for(n=o,o=r,r=A[s+1]||[],c=0;c<i;c++)o[c]===void 0&&(p=(o[c-1]!==void 0?1:0)+(o[c+1]!==void 0?1:0)+(n[c]!==void 0?1:0)+(r[c]!==void 0?1:0),p?(s===0&&p++,c===0&&p++,s===A.length-1&&p++,c===o.length-1&&p++,p<4&&(e[[s,c]]=[s,c,p]),M.push([s,c,p])):t.push([s,c]));for(;t.length;){for(T={},l=!1,v=t.length-1;v>=0;v--)h=t[v],s=h[0],c=h[1],p=((e[[s-1,c]]||a)[2]+(e[[s+1,c]]||a)[2]+(e[[s,c-1]]||a)[2]+(e[[s,c+1]]||a)[2])/20,p&&(T[h]=[s,c,p],t.splice(v,1),l=!0);if(!l)throw"findEmpties iterated with no new neighbors";for(h in T)e[h]=T[h],M.push(T[h])}return M.sort(function(_,w){return w[2]-_[2]})}}}),nM=Ye({"src/traces/heatmap/make_bound_array.js"(X,H){"use strict";var g=Hn(),x=ta().isArrayOrTypedArray;H.exports=function(M,e,t,r,o,a){var i=[],n=g.traceIs(M,"contour"),s=g.traceIs(M,"histogram"),c,h,v,p=x(e)&&e.length>1;if(p&&!s&&a.type!=="category"){var T=e.length;if(T<=o){if(n)i=Array.from(e).slice(0,o);else if(o===1)a.type==="log"?i=[.5*e[0],2*e[0]]:i=[e[0]-.5,e[0]+.5];else if(a.type==="log"){for(i=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],v=1;v<T;v++)i.push(Math.sqrt(e[v-1]*e[v]));i.push(Math.pow(e[T-1],1.5)/Math.pow(e[T-2],.5))}else{for(i=[1.5*e[0]-.5*e[1]],v=1;v<T;v++)i.push((e[v-1]+e[v])*.5);i.push(1.5*e[T-1]-.5*e[T-2])}if(T<o){var l=i[i.length-1],_;if(a.type==="log")for(_=l/i[i.length-2],v=T;v<o;v++)l*=_,i.push(l);else for(_=l-i[i.length-2],v=T;v<o;v++)l+=_,i.push(l)}}else return n?e.slice(0,o):e.slice(0,o+1)}else{var w=M[a._id.charAt(0)+"calendar"];if(s)c=a.r2c(t,0,w);else if(x(e)&&e.length===1)c=e[0];else if(t===void 0)c=0;else{var S=a.type==="log"?a.d2c:a.r2c;c=S(t,0,w)}for(h=r||1,v=n?0:-.5;v<o;v++)i.push(c+h*v)}return i}}}),J2=Ye({"src/traces/heatmap/calc.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Co(),M=tv(),e=$B(),t=jp(),r=Z2(),o=X2(),a=Y2(),i=K2(),n=nM(),s=ks().BADNUM;H.exports=function(p,T){var l=A.getFromId(p,T.xaxis||"x"),_=A.getFromId(p,T.yaxis||"y"),w=g.traceIs(T,"contour"),S=g.traceIs(T,"histogram"),E=w?"best":T.zsmooth,m,b,d,u,y,f,P,L,z,F,B;if(l._minDtick=0,_._minDtick=0,S)B=e(p,T),u=B.orig_x,m=B.x,b=B.x0,d=B.dx,L=B.orig_y,y=B.y,f=B.y0,P=B.dy,z=B.z;else{var O=T.z;x.isArray1D(O)?(r(T,l,_,"x","y",["z"]),m=T._x,y=T._y,O=T._z):(u=T.x?l.makeCalcdata(T,"x"):[],L=T.y?_.makeCalcdata(T,"y"):[],m=M(T,l,"x",u).vals,y=M(T,_,"y",L).vals,T._x=m,T._y=y),b=T.x0,d=T.dx,f=T.y0,P=T.dy,z=o(O,T,l,_)}(l.rangebreaks||_.rangebreaks)&&(z=h(m,y,z),S||(m=c(m),y=c(y),T._x=m,T._y=y)),!S&&(w||T.connectgaps)&&(T._emptypoints=i(z),a(z,T._emptypoints));function I($){E=T._input.zsmooth=T.zsmooth=!1,x.warn('cannot use zsmooth: "fast": '+$)}function N($){if($.length>1){var J=($[$.length-1]-$[0])/($.length-1),Z=Math.abs(J/100);for(F=0;F<$.length-1;F++)if(Math.abs($[F+1]-$[F]-J)>Z)return!1}return!0}T._islinear=!1,l.type==="log"||_.type==="log"?E==="fast"&&I("log axis found"):N(m)?N(y)?T._islinear=!0:E==="fast"&&I("y scale is not linear"):E==="fast"&&I("x scale is not linear");var U=x.maxRowLength(z),W=T.xtype==="scaled"?"":m,Q=n(T,W,b,d,U,l),ue=T.ytype==="scaled"?"":y,se=n(T,ue,f,P,z.length,_);T._extremes[l._id]=A.findExtremes(l,Q),T._extremes[_._id]=A.findExtremes(_,se);var he={x:Q,y:se,z,text:T._text||T.text,hovertext:T._hovertext||T.hovertext};if(T.xperiodalignment&&u&&(he.orig_x=u),T.yperiodalignment&&L&&(he.orig_y=L),W&&W.length===Q.length-1&&(he.xCenter=W),ue&&ue.length===se.length-1&&(he.yCenter=ue),S&&(he.xRanges=B.xRanges,he.yRanges=B.yRanges,he.pts=B.pts),w||t(p,T,{vals:z,cLetter:"z"}),w&&T.contours&&T.contours.coloring==="heatmap"){var G={type:T.type==="contour"?"heatmap":"histogram2d",xcalendar:T.xcalendar,ycalendar:T.ycalendar};he.xfill=n(G,W,b,d,U,l),he.yfill=n(G,ue,f,P,z.length,_)}return[he]};function c(v){for(var p=[],T=v.length,l=0;l<T;l++){var _=v[l];_!==s&&p.push(_)}return p}function h(v,p,T){for(var l=[],_=-1,w=0;w<T.length;w++)if(p[w]!==s){_++,l[_]=[];for(var S=0;S<T[w].length;S++)v[S]!==s&&l[_].push(T[w][S])}return l}}}),$2=Ye({"src/constants/pixelated_image.js"(X){"use strict";X.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]],X.STYLE=X.CSS_DECLARATIONS.map(function(H){return H.join(": ")+"; "}).join("")}}),oM=Ye({"src/lib/supports_pixelated_image.js"(X,H){"use strict";var g=$2(),x=Bo(),A=ta(),M=null;function e(){if(M!==null)return M;M=!1;var t=A.isSafari()||A.isIOS();if(window.navigator.userAgent&&!t){var r=Array.from(g.CSS_DECLARATIONS).reverse(),o=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof o=="function")M=r.some(function(s){return o.apply(null,s)});else{var a=x.tester.append("image").attr("style",g.STYLE),i=window.getComputedStyle(a.node()),n=i.imageRendering;M=r.some(function(s){var c=s[1];return n===c||n===c.toLowerCase()}),a.remove()}}return M}H.exports=e}}),Q2=Ye({"src/traces/heatmap/plot.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=Bo(),e=Co(),t=ta(),r=jl(),o=L2(),a=Fn(),i=Su().extractOpts,n=Su().makeColorScaleFuncFromTrace,s=vd(),c=oh(),h=c.LINE_SPACING,v=oM(),p=$2().STYLE,T="heatmap-label";function l(m){return m.selectAll("g."+T)}function _(m){l(m).remove()}H.exports=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;t.makeTraceGroups(u,d,"hm").each(function(P){var L=g.select(this),z=P[0],F=z.trace,B=F.xgap||0,O=F.ygap||0,I=z.z,N=z.x,U=z.y,W=z.xCenter,Q=z.yCenter,ue=A.traceIs(F,"contour"),se=ue?"best":F.zsmooth,he=I.length,G=t.maxRowLength(I),$=!1,J=!1,Z,re,ne,j,ee,ie,fe,be;for(ie=0;Z===void 0&&ie<N.length-1;)Z=y.c2p(N[ie]),ie++;for(ie=N.length-1;re===void 0&&ie>0;)re=y.c2p(N[ie]),ie--;for(re<Z&&(ne=re,re=Z,Z=ne,$=!0),ie=0;j===void 0&&ie<U.length-1;)j=f.c2p(U[ie]),ie++;for(ie=U.length-1;ee===void 0&&ie>0;)ee=f.c2p(U[ie]),ie--;ee<j&&(ne=j,j=ee,ee=ne,J=!0),ue&&(W=N,Q=U,N=z.xfill,U=z.yfill);var Ae="default";if(se?Ae=se==="best"?"smooth":"fast":F._islinear&&B===0&&O===0&&v()&&(Ae="fast"),Ae!=="fast"){var Be=se==="best"?0:.5;Z=Math.max(-Be*y._length,Z),re=Math.min((1+Be)*y._length,re),j=Math.max(-Be*f._length,j),ee=Math.min((1+Be)*f._length,ee)}var Ie=Math.round(re-Z),Ze=Math.round(ee-j),at=Z>=y._length||re<=0||j>=f._length||ee<=0;if(at){var it=L.selectAll("image").data([]);it.exit().remove(),_(L);return}var et,lt;Ae==="fast"?(et=G,lt=he):(et=Ie,lt=Ze);var Me=document.createElement("canvas");Me.width=et,Me.height=lt;var ge=Me.getContext("2d",{willReadFrequently:!0}),ce=n(F,{noNumericCheck:!0,returnArray:!0}),ze,tt;Ae==="fast"?(ze=$?function(Sa){return G-1-Sa}:t.identity,tt=J?function(Sa){return he-1-Sa}:t.identity):(ze=function(Sa){return t.constrain(Math.round(y.c2p(N[Sa])-Z),0,Ie)},tt=function(Sa){return t.constrain(Math.round(f.c2p(U[Sa])-j),0,Ze)});var nt=tt(0),Qe=[nt,nt],Ct=$?0:1,St=J?0:1,Ot=0,jt=0,ur=0,ar=0,Cr,vr,_r,yt,Fe;function Ke(Sa,Ti){if(Sa!==void 0){var ai=ce(Sa);return ai[0]=Math.round(ai[0]),ai[1]=Math.round(ai[1]),ai[2]=Math.round(ai[2]),Ot+=Ti,jt+=ai[0]*Ti,ur+=ai[1]*Ti,ar+=ai[2]*Ti,ai}return[0,0,0,0]}function Ne(Sa,Ti,ai,an){var sn=Sa[ai.bin0];if(sn===void 0)return Ke(void 0,1);var Mn=Sa[ai.bin1],On=Ti[ai.bin0],$n=Ti[ai.bin1],Cn=Mn-sn||0,Lo=On-sn||0,Xi;return Mn===void 0?$n===void 0?Xi=0:On===void 0?Xi=2*($n-sn):Xi=(2*$n-On-sn)*2/3:$n===void 0?On===void 0?Xi=0:Xi=(2*sn-Mn-On)*2/3:On===void 0?Xi=(2*$n-Mn-sn)*2/3:Xi=$n+sn-Mn-On,Ke(sn+ai.frac*Cn+an.frac*(Lo+ai.frac*Xi))}if(Ae!=="default"){var Ee=0,Ve;try{Ve=new Uint8Array(et*lt*4)}catch{Ve=new Array(et*lt*4)}if(Ae==="smooth"){var ke=W||N,Te=Q||U,Le=new Array(ke.length),rt=new Array(Te.length),dt=new Array(Ie),xt=W?S:w,It=Q?S:w,Bt,Gt,Kt;for(ie=0;ie<ke.length;ie++)Le[ie]=Math.round(y.c2p(ke[ie])-Z);for(ie=0;ie<Te.length;ie++)rt[ie]=Math.round(f.c2p(Te[ie])-j);for(ie=0;ie<Ie;ie++)dt[ie]=xt(ie,Le);for(fe=0;fe<Ze;fe++)for(Bt=It(fe,rt),Gt=I[Bt.bin0],Kt=I[Bt.bin1],ie=0;ie<Ie;ie++,Ee+=4)Fe=Ne(Gt,Kt,dt[ie],Bt),E(Ve,Ee,Fe)}else for(fe=0;fe<he;fe++)for(yt=I[fe],Qe=tt(fe),ie=0;ie<G;ie++)Fe=Ke(yt[ie],1),Ee=(Qe*G+ze(ie))*4,E(Ve,Ee,Fe);var sr=ge.createImageData(et,lt);try{sr.data.set(Ve)}catch{var sa=sr.data,Aa=sa.length;for(fe=0;fe<Aa;fe++)sa[fe]=Ve[fe]}ge.putImageData(sr,0,0)}else{var La=Math.floor(B/2),ka=Math.floor(O/2);for(fe=0;fe<he;fe++)if(yt=I[fe],Qe.reverse(),Qe[St]=tt(fe+1),!(Qe[0]===Qe[1]||Qe[0]===void 0||Qe[1]===void 0))for(vr=ze(0),Cr=[vr,vr],ie=0;ie<G;ie++)Cr.reverse(),Cr[Ct]=ze(ie+1),!(Cr[0]===Cr[1]||Cr[0]===void 0||Cr[1]===void 0)&&(_r=yt[ie],Fe=Ke(_r,(Cr[1]-Cr[0])*(Qe[1]-Qe[0])),ge.fillStyle="rgba("+Fe.join(",")+")",ge.fillRect(Cr[0]+La,Qe[0]+ka,Cr[1]-Cr[0]-B,Qe[1]-Qe[0]-O))}jt=Math.round(jt/Ot),ur=Math.round(ur/Ot),ar=Math.round(ar/Ot);var Ga=x("rgb("+jt+","+ur+","+ar+")");m._hmpixcount=(m._hmpixcount||0)+Ot,m._hmlumcount=(m._hmlumcount||0)+Ot*Ga.getLuminance();var Ma=L.selectAll("image").data(P);Ma.enter().append("svg:image").attr({xmlns:s.svg,preserveAspectRatio:"none"}),Ma.attr({height:Ze,width:Ie,x:Z,y:j,"xlink:href":Me.toDataURL("image/png")}),Ae==="fast"&&!se&&Ma.attr("style",p),_(L);var Ua=F.texttemplate;if(Ua){var ni=i(F),Wt={type:"linear",range:[ni.min,ni.max],_separators:y._separators,_numFormat:y._numFormat},zt=F.type==="histogram2dcontour",Vt=F.type==="contour",Ut=Vt?1:0,xr=Vt?he-1:he,Zr=Vt?1:0,pa=Vt?G-1:G,Xr=[];for(ie=Ut;ie<xr;ie++){var Ea;if(Vt)Ea=z.y[ie];else if(zt){if(ie===0||ie===he-1)continue;Ea=z.y[ie]}else if(z.yCenter)Ea=z.yCenter[ie];else{if(ie+1===he&&z.y[ie+1]===void 0)continue;Ea=(z.y[ie]+z.y[ie+1])/2}var Fa=Math.round(f.c2p(Ea));if(!(0>Fa||Fa>f._length))for(fe=Zr;fe<pa;fe++){var qa;if(Vt)qa=z.x[fe];else if(zt){if(fe===0||fe===G-1)continue;qa=z.x[fe]}else if(z.xCenter)qa=z.xCenter[fe];else{if(fe+1===G&&z.x[fe+1]===void 0)continue;qa=(z.x[fe]+z.x[fe+1])/2}var ya=Math.round(y.c2p(qa));if(!(0>ya||ya>y._length)){var $a=o({x:qa,y:Ea},F,m._fullLayout);$a.x=qa,$a.y=Ea;var mt=z.z[ie][fe];mt===void 0?($a.z="",$a.zLabel=""):($a.z=mt,$a.zLabel=e.tickText(Wt,mt,"hover").text);var gt=z.text&&z.text[ie]&&z.text[ie][fe];(gt===void 0||gt===!1)&&(gt=""),$a.text=gt;var Er=t.texttemplateString(Ua,$a,m._fullLayout._d3locale,$a,F._meta||{});if(Er){var kr=Er.split("<br>"),br=kr.length,Tr=0;for(be=0;be<br;be++)Tr=Math.max(Tr,kr[be].length);Xr.push({l:br,c:Tr,t:Er,x:ya,y:Fa,z:mt})}}}}var Mr=F.textfont,Fr=Mr.size,Lr=m._fullLayout.font.size;if(!Fr||Fr==="auto"){var Jr=1/0,oa=1/0,ca=0,kt=0;for(be=0;be<Xr.length;be++){var ir=Xr[be];if(ca=Math.max(ca,ir.l),kt=Math.max(kt,ir.c),be<Xr.length-1){var mr=Xr[be+1],$r=Math.abs(mr.x-ir.x),ma=Math.abs(mr.y-ir.y);$r&&(Jr=Math.min(Jr,$r)),ma&&(oa=Math.min(oa,ma))}}!isFinite(Jr)||!isFinite(oa)?Fr=Lr:(Jr-=B,oa-=O,Jr/=kt,oa/=ca,Jr/=h/2,oa/=h,Fr=Math.min(Math.floor(Jr),Math.floor(oa),Lr))}if(Fr<=0||!isFinite(Fr))return;var Ba=function(Sa){return Sa.x},Ca=function(Sa){return Sa.y-Fr*(Sa.l*h/2-1)},da=l(L).data(Xr);da.enter().append("g").classed(T,1).append("text").attr("text-anchor","middle").each(function(Sa){var Ti=g.select(this),ai=Mr.color;(!ai||ai==="auto")&&(ai=a.contrast(Sa.z===void 0?m._fullLayout.plot_bgcolor:"rgba("+ce(Sa.z).join()+")")),Ti.attr("data-notex",1).call(r.positionText,Ba(Sa),Ca(Sa)).call(M.font,{family:Mr.family,size:Fr,color:ai,weight:Mr.weight,style:Mr.style,variant:Mr.variant,textcase:Mr.textcase,lineposition:Mr.lineposition,shadow:Mr.shadow}).text(Sa.t).call(r.convertToTspans,m)})}})};function w(m,b){var d=b.length-2,u=t.constrain(t.findBin(m,b),0,d),y=b[u],f=b[u+1],P=t.constrain(u+(m-y)/(f-y)-.5,0,d),L=Math.round(P),z=Math.abs(P-L);return!P||P===d||!z?{bin0:L,bin1:L,frac:0}:{bin0:L,frac:z,bin1:Math.round(L+z/(P-L))}}function S(m,b){var d=b.length-1,u=t.constrain(t.findBin(m,b),0,d),y=b[u],f=b[u+1],P=(m-y)/(f-y)||0;return P<=0?{bin0:u,bin1:u,frac:0}:P<.5?{bin0:u,bin1:u+1,frac:P}:{bin0:u+1,bin1:u,frac:1-P}}function E(m,b,d){m[b]=d[0],m[b+1]=d[1],m[b+2]=d[2],m[b+3]=Math.round(d[3]*255)}}}),ag=Ye({"src/traces/heatmap/colorbar.js"(X,H){"use strict";H.exports={min:"zmin",max:"zmax"}}}),e3=Ye({"src/traces/heatmap/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".hm image").style("opacity",function(M){return M.trace.opacity})}}}),t3=Ye({"src/traces/heatmap/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=Co(),e=Su().extractOpts;H.exports=function(r,o,a,i,n){n||(n={});var s=n.isContour,c=r.cd[0],h=c.trace,v=r.xa,p=r.ya,T=c.x,l=c.y,_=c.z,w=c.xCenter,S=c.yCenter,E=c.zmask,m=h.zhoverformat,b=T,d=l,u,y,f,P;if(r.index!==!1){try{f=Math.round(r.index[1]),P=Math.round(r.index[0])}catch{x.error("Error hovering on heatmap, pointNumber must be [row,col], found:",r.index);return}if(f<0||f>=_[0].length||P<0||P>_.length)return}else{if(g.inbox(o-T[0],o-T[T.length-1],0)>0||g.inbox(a-l[0],a-l[l.length-1],0)>0)return;if(s){var L;for(b=[2*T[0]-T[1]],L=1;L<T.length;L++)b.push((T[L]+T[L-1])/2);for(b.push([2*T[T.length-1]-T[T.length-2]]),d=[2*l[0]-l[1]],L=1;L<l.length;L++)d.push((l[L]+l[L-1])/2);d.push([2*l[l.length-1]-l[l.length-2]])}f=Math.max(0,Math.min(b.length-2,x.findBin(o,b))),P=Math.max(0,Math.min(d.length-2,x.findBin(a,d)))}var z=v.c2p(T[f]),F=v.c2p(T[f+1]),B=p.c2p(l[P]),O=p.c2p(l[P+1]),I,N;s?(I=c.orig_x||T,N=c.orig_y||l,F=z,u=I[f],O=B,y=N[P]):(I=c.orig_x||w||T,N=c.orig_y||S||l,u=w?I[f]:(I[f]+I[f+1])/2,y=S?N[P]:(N[P]+N[P+1])/2,v&&v.type==="category"&&(u=T[f]),p&&p.type==="category"&&(y=l[P]),h.zsmooth&&(z=F=v.c2p(u),B=O=p.c2p(y)));var U=_[P][f];if(E&&!E[P][f]&&(U=void 0),!(U===void 0&&!h.hoverongaps)){var W;A(c.hovertext)&&A(c.hovertext[P])?W=c.hovertext[P][f]:A(c.text)&&A(c.text[P])&&(W=c.text[P][f]);var Q=e(h),ue={type:"linear",range:[Q.min,Q.max],hoverformat:m,_separators:v._separators,_numFormat:v._numFormat},se=M.tickText(ue,U,"hover").text;return[x.extendFlat(r,{index:h._after2before?h._after2before[P][f]:[P,f],distance:r.maxHoverDistance,spikeDistance:r.maxSpikeDistance,x0:z,x1:F,y0:B,y1:O,xLabelVal:u,yLabelVal:y,zLabelVal:U,zLabel:se,text:W})]}}}}),QB=Ye({"src/traces/heatmap/index.js"(X,H){"use strict";H.exports={attributes:h1(),supplyDefaults:JB(),calc:J2(),plot:Q2(),colorbar:ag(),style:e3(),hoverPoints:t3(),moduleType:"trace",name:"heatmap",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}}}),e7=Ye({"lib/heatmap.js"(X,H){"use strict";H.exports=QB()}}),sM=Ye({"src/traces/histogram/bin_attributes.js"(X,H){"use strict";H.exports=function(x,A){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}}}),t7=Ye({"src/traces/histogram/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["binNumber"]}}}),r3=Ye({"src/traces/histogram/attributes.js"(X,H){"use strict";var g=Sv(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=xs().texttemplateAttrs,e=Au(),t=sM(),r=t7(),o=Oo().extendFlat;H.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:x("x"),yhoverformat:x("y"),text:o({},g.text,{}),hovertext:o({},g.hovertext,{}),orientation:g.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:t("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:t("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:A({},{keys:r.eventDataKeys}),texttemplate:M({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:o({},g.textposition,{arrayOk:!1}),textfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:g.insidetextanchor,textangle:g.textangle,cliponaxis:g.cliponaxis,constraintext:g.constraintext,marker:g.marker,offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:g.selected,unselected:g.unselected,zorder:g.zorder}}}),r7=Ye({"src/traces/histogram/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Fn(),M=gd().handleText,e=U2(),t=r3();H.exports=function(o,a,i,n){function s(d,u){return x.coerce(o,a,t,d,u)}var c=s("x"),h=s("y"),v=s("cumulative.enabled");v&&(s("cumulative.direction"),s("cumulative.currentbin")),s("text");var p=s("textposition");M(o,a,n,s,p,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s("hovertext"),s("hovertemplate"),s("xhoverformat"),s("yhoverformat");var T=s("orientation",h&&!c?"h":"v"),l=T==="v"?"x":"y",_=T==="v"?"y":"x",w=c&&h?Math.min(x.minRowLength(c)&&x.minRowLength(h)):x.minRowLength(a[l]||[]);if(!w){a.visible=!1;return}a._length=w;var S=g.getComponentMethod("calendars","handleTraceDefaults");S(o,a,["x","y"],n);var E=a[_];E&&s("histfunc"),s("histnorm"),s("autobin"+l),e(o,a,s,i,n),x.coerceSelectionMarkerOpacity(a,s);var m=(a.marker.line||{}).color,b=g.getComponentMethod("errorbars","supplyDefaults");b(o,a,m||A.defaultLine,{axis:"y"}),b(o,a,m||A.defaultLine,{axis:"x",inherit:"y"}),s("zorder")}}}),a3=Ye({"src/traces/histogram/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Xc(),A=Hn().traceIs,M=Jg(),e=gd().validateCornerradius,t=g.nestedProperty,r=Yg().getAxisGroup,o=[{aStr:{x:"xbins.start",y:"ybins.start"},name:"start"},{aStr:{x:"xbins.end",y:"ybins.end"},name:"end"},{aStr:{x:"xbins.size",y:"ybins.size"},name:"size"},{aStr:{x:"nbinsx",y:"nbinsy"},name:"nbins"}],a=["x","y"];H.exports=function(n,s){var c=s._histogramBinOpts={},h=[],v={},p=[],T,l,_,w,S,E,m;function b(se,he){return g.coerce(T._input,T,T._module.attributes,se,he)}function d(se){return se.orientation==="v"?"x":"y"}function u(se,he){var G=x.getFromTrace({_fullLayout:s},se,he);return G.type}function y(se,he,G){var $=se.uid+"__"+G;he||(he=$);var J=u(se,G),Z=se[G+"calendar"]||"",re=c[he],ne=!0;re&&(J===re.axType&&Z===re.calendar?(ne=!1,re.traces.push(se),re.dirs.push(G)):(he=$,J!==re.axType&&g.warn(["Attempted to group the bins of trace",se.index,"set on a","type:"+J,"axis","with bins on","type:"+re.axType,"axis."].join(" ")),Z!==re.calendar&&g.warn(["Attempted to group the bins of trace",se.index,"set with a",Z,"calendar","with bins",re.calendar?"on a "+re.calendar+" calendar":"w/o a set calendar"].join(" ")))),ne&&(c[he]={traces:[se],dirs:[G],axType:J,calendar:se[G+"calendar"]||""}),se["_"+G+"bingroup"]=he}for(S=0;S<n.length;S++)if(T=n[S],A(T,"histogram")){if(h.push(T),delete T._xautoBinFinished,delete T._yautoBinFinished,T.type==="histogram"){var f=b("marker.cornerradius",s.barcornerradius);T.marker&&(T.marker.cornerradius=e(f))}A(T,"2dMap")||M(T._input,T,s,b,s.barmode)}var P=s._alignmentOpts||{};for(S=0;S<h.length;S++){if(T=h[S],_="",!A(T,"2dMap")){if(w=d(T),s.barmode==="group"&&T.alignmentgroup){var L=T[w+"axis"],z=r(s,L)+T.orientation;(P[z]||{})[T.alignmentgroup]&&(_=z)}!_&&s.barmode!=="overlay"&&(_=r(s,T.xaxis)+r(s,T.yaxis)+d(T))}_?(v[_]||(v[_]=[]),v[_].push(T)):p.push(T)}for(_ in v){if(l=v[_],l.length===1){p.push(l[0]);continue}var F=!1;for(l.length&&(T=l[0],F=b("bingroup")),_=F||_,S=0;S<l.length;S++){T=l[S];var B=T._input.bingroup;B&&B!==_&&g.warn(["Trace",T.index,"must match","within bingroup",_+".","Ignoring its bingroup:",B,"setting."].join(" ")),T.bingroup=_,y(T,_,d(T))}}for(S=0;S<p.length;S++){T=p[S];var O=b("bingroup");if(A(T,"2dMap"))for(m=0;m<2;m++){w=a[m];var I=b(w+"bingroup",O?O+"__"+w:null);y(T,I,w)}else y(T,O,d(T))}for(_ in c){var N=c[_];for(l=N.traces,E=0;E<o.length;E++){var U=o[E],W=U.name,Q,ue;if(!(W==="nbins"&&N.sizeFound)){for(S=0;S<l.length;S++){if(T=l[S],w=N.dirs[S],Q=U.aStr[w],t(T._input,Q).get()!==void 0){N[W]=b(Q),N[W+"Found"]=!0;break}ue=(T._autoBin||{})[w]||{},ue[W]&&t(T,Q).set(ue[W])}if(W==="start"||W==="end")for(;S<l.length;S++)T=l[S],T["_"+w+"bingroup"]&&(ue=(T._autoBin||{})[w]||{},b(Q,ue[W]));W==="nbins"&&!N.sizeFound&&!N.nbinsFound&&(T=l[0],N[W]=b(Q))}}}}}}),a7=Ye({"src/traces/histogram/hover.js"(X,H){"use strict";var g=c1().hoverPoints,x=Co().hoverLabelText;H.exports=function(M,e,t,r,o){var a=g(M,e,t,r,o);if(a){M=a[0];var i=M.cd[M.index],n=M.cd[0].trace;if(!n.cumulative.enabled){var s=n.orientation==="h"?"y":"x";M[s+"Label"]=x(M[s+"a"],[i.ph0,i.ph1],n[s+"hoverformat"])}return a}}}}),lM=Ye({"src/traces/histogram/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"zLabelVal"in A&&(x.z=A.zLabelVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),!(M.cumulative||{}).enabled){var r=Array.isArray(t)?e[0].pts[t[0]][t[1]]:e[t].pts;x.pointNumbers=r,x.binNumber=x.pointNumber,delete x.pointNumber,delete x.pointIndex;var o;if(M._indexToPoints){o=[];for(var a=0;a<r.length;a++)o=o.concat(M._indexToPoints[r[a]])}else o=r;x.pointIndices=o}return x}}}),i7=Ye({"src/traces/histogram/index.js"(X,H){"use strict";H.exports={attributes:r3(),layoutAttributes:N2(),supplyDefaults:r7(),crossTraceDefaults:a3(),supplyLayoutDefaults:YS(),calc:iM().calc,crossTraceCalc:$g().crossTraceCalc,plot:e0().plot,layerName:"barlayer",style:Nd().style,styleOnSelect:Nd().styleOnSelect,colorbar:cp(),hoverPoints:a7(),selectPoints:f1(),eventData:lM(),moduleType:"trace",name:"histogram",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}}}),n7=Ye({"lib/histogram.js"(X,H){"use strict";H.exports=i7()}}),i3=Ye({"src/traces/histogram2d/attributes.js"(X,H){"use strict";var g=r3(),x=sM(),A=h1(),M=Pl(),e=Cc().axisHoverFormat,t=xs().hovertemplateAttrs,r=xs().texttemplateAttrs,o=tu(),a=Oo().extendFlat;H.exports=a({x:g.x,y:g.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:x("x"),nbinsy:g.nbinsy,ybins:x("y"),autobinx:g.autobinx,autobiny:g.autobiny,bingroup:a({},g.bingroup,{}),xbingroup:a({},g.bingroup,{}),ybingroup:a({},g.bingroup,{}),xgap:A.xgap,ygap:A.ygap,zsmooth:A.zsmooth,xhoverformat:e("x"),yhoverformat:e("y"),zhoverformat:e("z",1),hovertemplate:t({},{keys:"z"}),texttemplate:r({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:A.textfont,showlegend:a({},M.showlegend,{dflt:!1})},o("",{cLetter:"z",autoColorDflt:!1}))}}),uM=Ye({"src/traces/histogram2d/sample_defaults.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports=function(M,e,t,r){var o=t("x"),a=t("y"),i=x.minRowLength(o),n=x.minRowLength(a);if(!i||!n){e.visible=!1;return}e._length=Math.min(i,n);var s=g.getComponentMethod("calendars","handleTraceDefaults");s(M,e,["x","y"],r);var c=t("z")||t("marker.color");c&&t("histfunc"),t("histnorm"),t("autobinx"),t("autobiny")}}}),o7=Ye({"src/traces/histogram2d/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=QS(),M=sh(),e=N_(),t=i3();H.exports=function(o,a,i,n){function s(c,h){return g.coerce(o,a,t,c,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,n),M(o,a,n,s,{prefix:"",cLetter:"z"}),s("hovertemplate"),e(s,n),s("xhoverformat"),s("yhoverformat"))}}}),s7=Ye({"src/traces/histogram2d/hover.js"(X,H){"use strict";var g=t3(),x=Co().hoverLabelText;H.exports=function(M,e,t,r,o){var a=g(M,e,t,r,o);if(a){M=a[0];var i=M.index,n=i[0],s=i[1],c=M.cd[0],h=c.trace,v=c.xRanges[s],p=c.yRanges[n];return M.xLabel=x(M.xa,[v[0],v[1]],h.xhoverformat),M.yLabel=x(M.ya,[p[0],p[1]],h.yhoverformat),a}}}}),l7=Ye({"src/traces/histogram2d/index.js"(X,H){"use strict";H.exports={attributes:i3(),supplyDefaults:o7(),crossTraceDefaults:a3(),calc:J2(),plot:Q2(),layerName:"heatmaplayer",colorbar:ag(),style:e3(),hoverPoints:s7(),eventData:lM(),moduleType:"trace",name:"histogram2d",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}}}),u7=Ye({"lib/histogram2d.js"(X,H){"use strict";H.exports=l7()}}),n3=Ye({"src/constants/filter_ops.js"(X,H){"use strict";H.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}}}),U_=Ye({"src/traces/contour/attributes.js"(X,H){"use strict";var g=h1(),x=Pc(),A=Cc(),M=A.axisHoverFormat,e=A.descriptionOnlyNumbers,t=tu(),r=Uh().dash,o=Au(),a=Oo().extendFlat,i=n3(),n=i.COMPARISON_OPS2,s=i.INTERVAL_OPS,c=x.line;H.exports=a({z:g.z,x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,text:g.text,hovertext:g.hovertext,transpose:g.transpose,xtype:g.xtype,ytype:g.ytype,xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:a({},g.texttemplate,{}),textfont:a({},g.textfont,{}),hoverongaps:g.hoverongaps,connectgaps:a({},g.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:o({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:e("contour label")},operation:{valType:"enumerated",values:[].concat(n).concat(s),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:a({},c.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:r,smoothing:a({},c.smoothing,{}),editType:"plot"},zorder:x.zorder},t("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))}}),cM=Ye({"src/traces/histogram2dcontour/attributes.js"(X,H){"use strict";var g=i3(),x=U_(),A=tu(),M=Cc().axisHoverFormat,e=Oo().extendFlat;H.exports=e({x:g.x,y:g.y,z:g.z,marker:g.marker,histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:g.xbins,nbinsy:g.nbinsy,ybins:g.ybins,autobinx:g.autobinx,autobiny:g.autobiny,bingroup:g.bingroup,xbingroup:g.xbingroup,ybingroup:g.ybingroup,autocontour:x.autocontour,ncontours:x.ncontours,contours:x.contours,line:{color:x.line.color,width:e({},x.line.width,{dflt:.5}),dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:x.texttemplate,textfont:x.textfont},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),o3=Ye({"src/traces/contour/contours_defaults.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t=e("contours.start"),r=e("contours.end"),o=t===!1||r===!1,a=M("contours.size"),i;o?i=A.autocontour=!0:i=M("autocontour",!1),(i||!a)&&M("ncontours")}}}),fM=Ye({"src/traces/contour/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e,t){t||(t={});var r=A("contours.showlabels");if(r){var o=M.font;g.coerceFont(A,"contours.labelfont",o,{overrideDflt:{color:e}}),A("contours.labelformat")}t.hasHover!==!1&&A("zhoverformat")}}}),s3=Ye({"src/traces/contour/style_defaults.js"(X,H){"use strict";var g=sh(),x=fM();H.exports=function(M,e,t,r,o){var a=t("contours.coloring"),i,n="";a==="fill"&&(i=t("contours.showlines")),i!==!1&&(a!=="lines"&&(n=t("line.color","#000")),t("line.width",.5),t("line.dash")),a!=="none"&&(M.showlegend!==!0&&(e.showlegend=!1),e._dfltShowLegend=!1,g(M,e,r,t,{prefix:"",cLetter:"z"})),t("line.smoothing"),x(t,r,n,o)}}}),c7=Ye({"src/traces/histogram2dcontour/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=o3(),M=s3(),e=N_(),t=cM();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,t,h,v)}function c(h){return g.coerce2(o,a,t,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,c),M(o,a,s,n),s("xhoverformat"),s("yhoverformat"),s("hovertemplate"),a.contours&&a.contours.coloring==="heatmap"&&e(s,n))}}}),hM=Ye({"src/traces/contour/set_contours.js"(X,H){"use strict";var g=Co(),x=ta();H.exports=function(e,t){var r=e.contours;if(e.autocontour){var o=e.zmin,a=e.zmax;(e.zauto||o===void 0)&&(o=x.aggNums(Math.min,null,t)),(e.zauto||a===void 0)&&(a=x.aggNums(Math.max,null,t));var i=A(o,a,e.ncontours);r.size=i.dtick,r.start=g.tickFirst(i),i.range.reverse(),r.end=g.tickFirst(i),r.start===o&&(r.start+=r.size),r.end===a&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),x.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if(r.type!=="constraint"){var n=r.start,s=r.end,c=e._input.contours;if(n>s&&(r.start=c.start=s,s=r.end=c.end=n,n=r.start),!(r.size>0)){var h;n===s?h=1:h=A(n,s,e.ncontours).dtick,c.size=r.size=h}}};function A(M,e,t){var r={type:"linear",range:[M,e]};return g.autoTicks(r,(e-M)/(t||15)),r}}}),j_=Ye({"src/traces/contour/end_plus.js"(X,H){"use strict";H.exports=function(x){return x.end+x.size/1e6}}}),pM=Ye({"src/traces/contour/calc.js"(X,H){"use strict";var g=Su(),x=J2(),A=hM(),M=j_();H.exports=function(t,r){var o=x(t,r),a=o[0].z;A(r,a);var i=r.contours,n=g.extractOpts(r),s;if(i.coloring==="heatmap"&&n.auto&&r.autocontour===!1){var c=i.start,h=M(i),v=i.size||1,p=Math.floor((h-c)/v)+1;isFinite(v)||(v=1,p=1);var T=c-v/2,l=T+p*v;s=[T,l]}else s=a;return g.calc(t,r,{vals:s,cLetter:"z"}),o}}}),V_=Ye({"src/traces/contour/constants.js"(X,H){"use strict";H.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}}}),dM=Ye({"src/traces/contour/make_crossings.js"(X,H){"use strict";var g=V_();H.exports=function(M){var e=M[0].z,t=e.length,r=e[0].length,o=t===2||r===2,a,i,n,s,c,h,v,p,T;for(i=0;i<t-1;i++)for(s=[],i===0&&(s=s.concat(g.BOTTOMSTART)),i===t-2&&(s=s.concat(g.TOPSTART)),a=0;a<r-1;a++)for(n=s.slice(),a===0&&(n=n.concat(g.LEFTSTART)),a===r-2&&(n=n.concat(g.RIGHTSTART)),c=a+","+i,h=[[e[i][a],e[i][a+1]],[e[i+1][a],e[i+1][a+1]]],T=0;T<M.length;T++)p=M[T],v=x(p.level,h),v&&(p.crossings[c]=v,n.indexOf(v)!==-1&&(p.starts.push([a,i]),o&&n.indexOf(v,n.indexOf(v)+1)!==-1&&p.starts.push([a,i])))};function x(A,M){var e=(M[0][0]>A?0:1)+(M[0][1]>A?0:2)+(M[1][1]>A?0:4)+(M[1][0]>A?0:8);if(e===5||e===10){var t=(M[0][0]+M[0][1]+M[1][0]+M[1][1])/4;return A>t?e===5?713:1114:e===5?104:208}return e===15?0:e}}}),vM=Ye({"src/traces/contour/find_all_paths.js"(X,H){"use strict";var g=ta(),x=V_();H.exports=function(a,i,n){var s,c,h,v,p;for(i=i||.01,n=n||.01,h=0;h<a.length;h++){for(v=a[h],p=0;p<v.starts.length;p++)c=v.starts[p],e(v,c,"edge",i,n);for(s=0;Object.keys(v.crossings).length&&s<1e4;)s++,c=Object.keys(v.crossings)[0].split(",").map(Number),e(v,c,void 0,i,n);s===1e4&&g.log("Infinite loop in contour?")}};function A(o,a,i,n){return Math.abs(o[0]-a[0])<i&&Math.abs(o[1]-a[1])<n}function M(o,a){var i=o[2]-a[2],n=o[3]-a[3];return Math.sqrt(i*i+n*n)}function e(o,a,i,n,s){var c=a.join(","),h=o.crossings[c],v=t(h,i,a),p=[r(o,a,[-v[0],-v[1]])],T=o.z.length,l=o.z[0].length,_=a.slice(),w=v.slice(),S;for(S=0;S<1e4;S++){if(h>20?(h=x.CHOOSESADDLE[h][(v[0]||v[1])<0?0:1],o.crossings[c]=x.SADDLEREMAINDER[h]):delete o.crossings[c],v=x.NEWDELTA[h],!v){g.log("Found bad marching index:",h,a,o.level);break}p.push(r(o,a,v)),a[0]+=v[0],a[1]+=v[1],c=a.join(","),A(p[p.length-1],p[p.length-2],n,s)&&p.pop();var E=v[0]&&(a[0]<0||a[0]>l-2)||v[1]&&(a[1]<0||a[1]>T-2),m=a[0]===_[0]&&a[1]===_[1]&&v[0]===w[0]&&v[1]===w[1];if(m||i&&E)break;h=o.crossings[c]}S===1e4&&g.log("Infinite loop in contour?");var b=A(p[0],p[p.length-1],n,s),d=0,u=.2*o.smoothing,y=[],f=0,P,L,z,F,B,O,I,N,U,W,Q;for(S=1;S<p.length;S++)I=M(p[S],p[S-1]),d+=I,y.push(I);var ue=d/y.length*u;function se($){return p[$%p.length]}for(S=p.length-2;S>=f;S--)if(P=y[S],P<ue){for(z=0,L=S-1;L>=f&&P+y[L]<ue;L--)P+=y[L];if(b&&S===p.length-2)for(z=0;z<L&&P+y[z]<ue;z++)P+=y[z];B=S-L+z+1,O=Math.floor((S+L+z+2)/2),!b&&S===p.length-2?F=p[p.length-1]:!b&&L===-1?F=p[0]:B%2?F=se(O):F=[(se(O)[0]+se(O+1)[0])/2,(se(O)[1]+se(O+1)[1])/2],p.splice(L+1,S-L+1,F),S=L+1,z&&(f=z),b&&(S===p.length-2?p[z]=p[p.length-1]:S===0&&(p[p.length-1]=p[0]))}for(p.splice(0,f),S=0;S<p.length;S++)p[S].length=2;if(!(p.length<2))if(b)p.pop(),o.paths.push(p);else{i||g.log("Unclosed interior contour?",o.level,_.join(","),p.join("L"));var he=!1;for(N=0;N<o.edgepaths.length;N++)if(W=o.edgepaths[N],!he&&A(W[0],p[p.length-1],n,s)){p.pop(),he=!0;var G=!1;for(U=0;U<o.edgepaths.length;U++)if(Q=o.edgepaths[U],A(Q[Q.length-1],p[0],n,s)){G=!0,p.shift(),o.edgepaths.splice(N,1),U===N?o.paths.push(p.concat(Q)):(U>N&&U--,o.edgepaths[U]=Q.concat(p,W));break}G||(o.edgepaths[N]=p.concat(W))}for(N=0;N<o.edgepaths.length&&!he;N++)W=o.edgepaths[N],A(W[W.length-1],p[0],n,s)&&(p.shift(),o.edgepaths[N]=W.concat(p),he=!0);he||o.edgepaths.push(p)}}function t(o,a,i){var n=0,s=0;return o>20&&a?o===208||o===1114?n=i[0]===0?1:-1:s=i[1]===0?1:-1:x.BOTTOMSTART.indexOf(o)!==-1?s=1:x.LEFTSTART.indexOf(o)!==-1?n=1:x.TOPSTART.indexOf(o)!==-1?s=-1:n=-1,[n,s]}function r(o,a,i){var n=a[0]+Math.max(i[0],0),s=a[1]+Math.max(i[1],0),c=o.z[s][n],h=o.xaxis,v=o.yaxis;if(i[1]){var p=(o.level-c)/(o.z[s][n+1]-c),T=(p!==1?(1-p)*h.c2l(o.x[n]):0)+(p!==0?p*h.c2l(o.x[n+1]):0);return[h.c2p(h.l2c(T),!0),v.c2p(o.y[s],!0),n+p,s]}else{var l=(o.level-c)/(o.z[s+1][n]-c),_=(l!==1?(1-l)*v.c2l(o.y[s]):0)+(l!==0?l*v.c2l(o.y[s+1]):0);return[h.c2p(o.x[n],!0),v.c2p(v.l2c(_),!0),n,s+l]}}}}),f7=Ye({"src/traces/contour/constraint_mapping.js"(X,H){"use strict";var g=n3(),x=jo();H.exports={"[]":M("[]"),"][":M("]["),">":e(">"),"<":e("<"),"=":e("=")};function A(t,r){var o=Array.isArray(r),a;function i(n){return x(n)?+n:null}return g.COMPARISON_OPS2.indexOf(t)!==-1?a=i(o?r[0]:r):g.INTERVAL_OPS.indexOf(t)!==-1?a=o?[i(r[0]),i(r[1])]:[i(r),i(r)]:g.SET_OPS.indexOf(t)!==-1&&(a=o?r.map(i):[i(r)]),a}function M(t){return function(r){r=A(t,r);var o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);return{start:o,end:a,size:a-o}}}function e(t){return function(r){return r=A(t,r),{start:r,end:1/0,size:1/0}}}}}),mM=Ye({"src/traces/contour/empty_pathinfo.js"(X,H){"use strict";var g=ta(),x=f7(),A=j_();H.exports=function(e,t,r){for(var o=e.type==="constraint"?x[e._operation](e.value):e,a=o.size,i=[],n=A(o),s=r.trace._carpetTrace,c=s?{xaxis:s.aaxis,yaxis:s.baxis,x:r.a,y:r.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:r.x,y:r.y},h=o.start;h<n;h+=a)if(i.push(g.extendFlat({level:h,crossings:{},starts:[],edgepaths:[],paths:[],z:r.z,smoothing:r.trace.line.smoothing},c)),i.length>1e3){g.warn("Too many contours, clipping at 1000",e);break}return i}}}),gM=Ye({"src/traces/contour/convert_to_constraints.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e,t,r,o=function(n){return n.reverse()},a=function(n){return n};switch(M){case"=":case"<":return A;case">":for(A.length!==1&&g.warn("Contour data invalid for the specified inequality operation."),t=A[0],e=0;e<t.edgepaths.length;e++)t.edgepaths[e]=o(t.edgepaths[e]);for(e=0;e<t.paths.length;e++)t.paths[e]=o(t.paths[e]);for(e=0;e<t.starts.length;e++)t.starts[e]=o(t.starts[e]);return A;case"][":var i=o;o=a,a=i;case"[]":for(A.length!==2&&g.warn("Contour data invalid for the specified inequality range operation."),t=x(A[0]),r=x(A[1]),e=0;e<t.edgepaths.length;e++)t.edgepaths[e]=o(t.edgepaths[e]);for(e=0;e<t.paths.length;e++)t.paths[e]=o(t.paths[e]);for(e=0;e<t.starts.length;e++)t.starts[e]=o(t.starts[e]);for(;r.edgepaths.length;)t.edgepaths.push(a(r.edgepaths.shift()));for(;r.paths.length;)t.paths.push(a(r.paths.shift()));for(;r.starts.length;)t.starts.push(a(r.starts.shift()));return[t]}};function x(A){return g.extendFlat({},A,{edgepaths:g.extendDeep([],A.edgepaths),paths:g.extendDeep([],A.paths),starts:g.extendDeep([],A.starts)})}}}),yM=Ye({"src/traces/contour/close_boundaries.js"(X,H){"use strict";H.exports=function(g,x){var A=g[0],M=A.z,e;switch(x.type){case"levels":var t=Math.min(M[0][0],M[0][1]);for(e=0;e<g.length;e++){var r=g[e];r.prefixBoundary=!r.edgepaths.length&&(t>r.level||r.starts.length&&t===r.level)}break;case"constraint":if(A.prefixBoundary=!1,A.edgepaths.length)return;var o=A.x.length,a=A.y.length,i=-1/0,n=1/0;for(e=0;e<a;e++)n=Math.min(n,M[e][0]),n=Math.min(n,M[e][o-1]),i=Math.max(i,M[e][0]),i=Math.max(i,M[e][o-1]);for(e=1;e<o-1;e++)n=Math.min(n,M[0][e]),n=Math.min(n,M[a-1][e]),i=Math.max(i,M[0][e]),i=Math.max(i,M[a-1][e]);var s=x.value,c,h;switch(x._operation){case">":s>i&&(A.prefixBoundary=!0);break;case"<":(s<n||A.starts.length&&s===n)&&(A.prefixBoundary=!0);break;case"[]":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),(h<n||c>i||A.starts.length&&h===n)&&(A.prefixBoundary=!0);break;case"][":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),c<n&&h>i&&(A.prefixBoundary=!0);break}break}}}}),l3=Ye({"src/traces/contour/plot.js"(X){"use strict";var H=_n(),g=ta(),x=Bo(),A=Su(),M=jl(),e=Co(),t=wv(),r=Q2(),o=dM(),a=vM(),i=mM(),n=gM(),s=yM(),c=V_(),h=c.LABELOPTIMIZER;X.plot=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;g.makeTraceGroups(u,d,"contour").each(function(P){var L=H.select(this),z=P[0],F=z.trace,B=z.x,O=z.y,I=F.contours,N=i(I,b,z),U=g.ensureSingle(L,"g","heatmapcoloring"),W=[];I.coloring==="heatmap"&&(W=[P]),r(m,b,W,U),o(N),a(N);var Q=y.c2p(B[0],!0),ue=y.c2p(B[B.length-1],!0),se=f.c2p(O[0],!0),he=f.c2p(O[O.length-1],!0),G=[[Q,he],[ue,he],[ue,se],[Q,se]],$=N;I.type==="constraint"&&($=n(N,I._operation)),v(L,G,I),p(L,$,G,I),l(L,N,m,z,I),w(L,b,m,z,G)})};function v(E,m,b){var d=g.ensureSingle(E,"g","contourbg"),u=d.selectAll("path").data(b.coloring==="fill"?[0]:[]);u.enter().append("path"),u.exit().remove(),u.attr("d","M"+m.join("L")+"Z").style("stroke","none")}function p(E,m,b,d){var u=d.coloring==="fill"||d.type==="constraint"&&d._operation!=="=",y="M"+b.join("L")+"Z";u&&s(m,d);var f=g.ensureSingle(E,"g","contourfill"),P=f.selectAll("path").data(u?m:[]);P.enter().append("path"),P.exit().remove(),P.each(function(L){var z=(L.prefixBoundary?y:"")+T(L,b);z?H.select(this).attr("d",z).style("stroke","none"):H.select(this).remove()})}function T(E,m){var b="",d=0,u=E.edgepaths.map(function(Q,ue){return ue}),y=!0,f,P,L,z,F,B;function O(Q){return Math.abs(Q[1]-m[0][1])<.01}function I(Q){return Math.abs(Q[1]-m[2][1])<.01}function N(Q){return Math.abs(Q[0]-m[0][0])<.01}function U(Q){return Math.abs(Q[0]-m[2][0])<.01}for(;u.length;){for(B=x.smoothopen(E.edgepaths[d],E.smoothing),b+=y?B:B.replace(/^M/,"L"),u.splice(u.indexOf(d),1),f=E.edgepaths[d][E.edgepaths[d].length-1],z=-1,L=0;L<4;L++){if(!f){g.log("Missing end?",d,E);break}for(O(f)&&!U(f)?P=m[1]:N(f)?P=m[0]:I(f)?P=m[3]:U(f)&&(P=m[2]),F=0;F<E.edgepaths.length;F++){var W=E.edgepaths[F][0];Math.abs(f[0]-P[0])<.01?Math.abs(f[0]-W[0])<.01&&(W[1]-f[1])*(P[1]-W[1])>=0&&(P=W,z=F):Math.abs(f[1]-P[1])<.01?Math.abs(f[1]-W[1])<.01&&(W[0]-f[0])*(P[0]-W[0])>=0&&(P=W,z=F):g.log("endpt to newendpt is not vert. or horz.",f,P,W)}if(f=P,z>=0)break;b+="L"+P}if(z===E.edgepaths.length){g.log("unclosed perimeter path");break}d=z,y=u.indexOf(d)===-1,y&&(d=u[0],b+="Z")}for(d=0;d<E.paths.length;d++)b+=x.smoothclosed(E.paths[d],E.smoothing);return b}function l(E,m,b,d,u){var y=b._context.staticPlot,f=g.ensureSingle(E,"g","contourlines"),P=u.showlines!==!1,L=u.showlabels,z=P&&L,F=X.createLines(f,P||L,m,y),B=X.createLineClip(f,z,b,d.trace.uid),O=E.selectAll("g.contourlabels").data(L?[0]:[]);if(O.exit().remove(),O.enter().append("g").classed("contourlabels",!0),L){var I=[],N=[];g.clearLocationCache();var U=X.labelFormatter(b,d),W=x.tester.append("text").attr("data-notex",1).call(x.font,u.labelfont),Q=m[0].xaxis,ue=m[0].yaxis,se=Q._length,he=ue._length,G=Q.range,$=ue.range,J=g.aggNums(Math.min,null,d.x),Z=g.aggNums(Math.max,null,d.x),re=g.aggNums(Math.min,null,d.y),ne=g.aggNums(Math.max,null,d.y),j=Math.max(Q.c2p(J,!0),0),ee=Math.min(Q.c2p(Z,!0),se),ie=Math.max(ue.c2p(ne,!0),0),fe=Math.min(ue.c2p(re,!0),he),be={};G[0]<G[1]?(be.left=j,be.right=ee):(be.left=ee,be.right=j),$[0]<$[1]?(be.top=ie,be.bottom=fe):(be.top=fe,be.bottom=ie),be.middle=(be.top+be.bottom)/2,be.center=(be.left+be.right)/2,I.push([[be.left,be.top],[be.right,be.top],[be.right,be.bottom],[be.left,be.bottom]]);var Ae=Math.sqrt(se*se+he*he),Be=c.LABELDISTANCE*Ae/Math.max(1,m.length/c.LABELINCREASE);F.each(function(Ie){var Ze=X.calcTextOpts(Ie.level,U,W,b);H.select(this).selectAll("path").each(function(){var at=this,it=g.getVisibleSegment(at,be,Ze.height/2);if(it&&!(it.len<(Ze.width+Ze.height)*c.LABELMIN))for(var et=Math.min(Math.ceil(it.len/Be),c.LABELMAX),lt=0;lt<et;lt++){var Me=X.findBestTextLocation(at,it,Ze,N,be);if(!Me)break;X.addLabelData(Me,Ze,N,I)}})}),W.remove(),X.drawLabels(O,N,b,B,z?I:null)}L&&!P&&F.remove()}X.createLines=function(E,m,b,d){var u=b[0].smoothing,y=E.selectAll("g.contourlevel").data(m?b:[]);if(y.exit().remove(),y.enter().append("g").classed("contourlevel",!0),m){var f=y.selectAll("path.openline").data(function(L){return L.pedgepaths||L.edgepaths});f.exit().remove(),f.enter().append("path").classed("openline",!0),f.attr("d",function(L){return x.smoothopen(L,u)}).style("stroke-miterlimit",1).style("vector-effect",d?"none":"non-scaling-stroke");var P=y.selectAll("path.closedline").data(function(L){return L.ppaths||L.paths});P.exit().remove(),P.enter().append("path").classed("closedline",!0),P.attr("d",function(L){return x.smoothclosed(L,u)}).style("stroke-miterlimit",1).style("vector-effect",d?"none":"non-scaling-stroke")}return y},X.createLineClip=function(E,m,b,d){var u=b._fullLayout._clips,y=m?"clipline"+d:null,f=u.selectAll("#"+y).data(m?[0]:[]);return f.exit().remove(),f.enter().append("clipPath").classed("contourlineclip",!0).attr("id",y),x.setClipUrl(E,y,b),f},X.labelFormatter=function(E,m){var b=E._fullLayout,d=m.trace,u=d.contours,y={type:"linear",_id:"ycontour",showexponent:"all",exponentformat:"B"};if(u.labelformat)y.tickformat=u.labelformat,t(y,b);else{var f=A.extractOpts(d);if(f&&f.colorbar&&f.colorbar._axis)y=f.colorbar._axis;else{if(u.type==="constraint"){var P=u.value;g.isArrayOrTypedArray(P)?y.range=[P[0],P[P.length-1]]:y.range=[P,P]}else y.range=[u.start,u.end],y.nticks=(u.end-u.start)/u.size;y.range[0]===y.range[1]&&(y.range[1]+=y.range[0]||1),y.nticks||(y.nticks=1e3),t(y,b),e.prepTicks(y),y._tmin=null,y._tmax=null}}return function(L){return e.tickText(y,L).text}},X.calcTextOpts=function(E,m,b,d){var u=m(E);b.text(u).call(M.convertToTspans,d);var y=b.node(),f=x.bBox(y,!0);return{text:u,width:f.width,height:f.height,fontSize:+y.style["font-size"].replace("px",""),level:E,dy:(f.top+f.bottom)/2}},X.findBestTextLocation=function(E,m,b,d,u){var y=b.width,f,P,L,z,F;m.isClosed?(P=m.len/h.INITIALSEARCHPOINTS,f=m.min+P/2,L=m.max):(P=(m.len-y)/(h.INITIALSEARCHPOINTS+1),f=m.min+P+y/2,L=m.max-(P+y)/2);for(var B=1/0,O=0;O<h.ITERATIONS;O++){for(var I=f;I<L;I+=P){var N=g.getTextLocation(E,m.total,I,y),U=_(N,b,d,u);U<B&&(B=U,F=N,z=I)}if(B>h.MAXCOST*2)break;O&&(P/=2),f=z-P/2,L=f+P*1.5}if(B<=h.MAXCOST)return F};function _(E,m,b,d){var u=m.width/2,y=m.height/2,f=E.x,P=E.y,L=E.theta,z=Math.cos(L)*u,F=Math.sin(L)*u,B=(f>d.center?d.right-f:f-d.left)/(z+Math.abs(Math.sin(L)*y)),O=(P>d.middle?d.bottom-P:P-d.top)/(Math.abs(F)+Math.cos(L)*y);if(B<1||O<1)return 1/0;var I=h.EDGECOST*(1/(B-1)+1/(O-1));I+=h.ANGLECOST*L*L;for(var N=f-z,U=P-F,W=f+z,Q=P+F,ue=0;ue<b.length;ue++){var se=b[ue],he=Math.cos(se.theta)*se.width/2,G=Math.sin(se.theta)*se.width/2,$=g.segmentDistance(N,U,W,Q,se.x-he,se.y-G,se.x+he,se.y+G)*2/(m.height+se.height),J=se.level===m.level,Z=J?h.SAMELEVELDISTANCE:1;if($<=Z)return 1/0;var re=h.NEIGHBORCOST*(J?h.SAMELEVELFACTOR:1);I+=re/($-Z)}return I}X.addLabelData=function(E,m,b,d){var u=m.fontSize,y=m.width+u/3,f=Math.max(0,m.height-u/3),P=E.x,L=E.y,z=E.theta,F=Math.sin(z),B=Math.cos(z),O=function(N,U){return[P+N*B-U*F,L+N*F+U*B]},I=[O(-y/2,-f/2),O(-y/2,f/2),O(y/2,f/2),O(y/2,-f/2)];b.push({text:m.text,x:P,y:L,dy:m.dy,theta:z,level:m.level,width:y,height:f}),d.push(I)},X.drawLabels=function(E,m,b,d,u){var y=E.selectAll("text").data(m,function(z){return z.text+","+z.x+","+z.y+","+z.theta});if(y.exit().remove(),y.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each(function(z){var F=z.x+Math.sin(z.theta)*z.dy,B=z.y-Math.cos(z.theta)*z.dy;H.select(this).text(z.text).attr({x:F,y:B,transform:"rotate("+180*z.theta/Math.PI+" "+F+" "+B+")"}).call(M.convertToTspans,b)}),u){for(var f="",P=0;P<u.length;P++)f+="M"+u[P].join("L")+"Z";var L=g.ensureSingle(d,"path","");L.attr("d",f)}};function w(E,m,b,d,u){var y=d.trace,f=b._fullLayout._clips,P="clip"+y.uid,L=f.selectAll("#"+P).data(y.connectgaps?[]:[0]);if(L.enter().append("clipPath").classed("contourclip",!0).attr("id",P),L.exit().remove(),y.connectgaps===!1){var z={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:m.xaxis,yaxis:m.yaxis,x:d.x,y:d.y,z:S(d),smoothing:0};o([z]),a([z]),s([z],{type:"levels"});var F=g.ensureSingle(L,"path","");F.attr("d",(z.prefixBoundary?"M"+u.join("L")+"Z":"")+T(z,u))}else P=null;x.setClipUrl(E,P,b)}function S(E){var m=E.trace._emptypoints,b=[],d=E.z.length,u=E.z[0].length,y,f=[],P;for(y=0;y<u;y++)f.push(1);for(y=0;y<d;y++)b.push(f.slice());for(y=0;y<m.length;y++)P=m[y],b[P[0]][P[1]]=0;return E.zmask=b,b}}}),_M=Ye({"src/traces/contour/make_color_map.js"(X,H){"use strict";var g=_n(),x=Su(),A=j_();H.exports=function(e){var t=e.contours,r=t.start,o=A(t),a=t.size||1,i=Math.floor((o-r)/a)+1,n=t.coloring==="lines"?0:1,s=x.extractOpts(e);isFinite(a)||(a=1,i=1);var c=s.reversescale?x.flipScale(s.colorscale):s.colorscale,h=c.length,v=new Array(h),p=new Array(h),T,l,_=s.min,w=s.max;if(t.coloring==="heatmap"){for(l=0;l<h;l++)T=c[l],v[l]=T[0]*(w-_)+_,p[l]=T[1];var S=g.extent([_,w,t.start,t.start+a*(i-1)]),E=S[_<w?0:1],m=S[_<w?1:0];E!==_&&(v.splice(0,0,E),p.splice(0,0,p[0])),m!==w&&(v.push(m),p.push(p[p.length-1]))}else{var b=e._input&&typeof e._input.zmin=="number"&&typeof e._input.zmax=="number";for(b&&(r<=_||o>=w)&&(r<=_&&(r=_),o>=w&&(o=w),i=Math.floor((o-r)/a)+1,n=0),l=0;l<h;l++)T=c[l],v[l]=(T[0]*(i+n-1)-n/2)*a+r,p[l]=T[1];(b||e.autocontour)&&(v[0]>_&&(v.unshift(_),p.unshift(p[0])),v[v.length-1]<w&&(v.push(w),p.push(p[p.length-1])))}return x.makeColorScaleFunc({domain:v,range:p},{noNumericCheck:!0})}}}),u3=Ye({"src/traces/contour/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=e3(),M=_M();H.exports=function(t){var r=g.select(t).selectAll("g.contour");r.style("opacity",function(o){return o[0].trace.opacity}),r.each(function(o){var a=g.select(this),i=o[0].trace,n=i.contours,s=i.line,c=n.size||1,h=n.start,v=n.type==="constraint",p=!v&&n.coloring==="lines",T=!v&&n.coloring==="fill",l=p||T?M(i):null;a.selectAll("g.contourlevel").each(function(S){g.select(this).selectAll("path").call(x.lineGroupStyle,s.width,p?l(S.level):s.color,s.dash)});var _=n.labelfont;if(a.selectAll("g.contourlabels text").each(function(S){x.font(g.select(this),{weight:_.weight,style:_.style,variant:_.variant,textcase:_.textcase,lineposition:_.lineposition,shadow:_.shadow,family:_.family,size:_.size,color:_.color||(p?l(S.level):s.color)})}),v)a.selectAll("g.contourfill path").style("fill",i.fillcolor);else if(T){var w;a.selectAll("g.contourfill path").style("fill",function(S){return w===void 0&&(w=S.level),l(S.level+.5*c)}),w===void 0&&(w=h),a.selectAll("g.contourbg path").style("fill",l(w-.5*c))}}),A(t)}}}),c3=Ye({"src/traces/contour/colorbar.js"(X,H){"use strict";var g=Su(),x=_M(),A=j_();function M(e,t,r){var o=t.contours,a=t.line,i=o.size||1,n=o.coloring,s=x(t,{isColorbar:!0});if(n==="heatmap"){var c=g.extractOpts(t);r._fillgradient=c.reversescale?g.flipScale(c.colorscale):c.colorscale,r._zrange=[c.min,c.max]}else n==="fill"&&(r._fillcolor=s);r._line={color:n==="lines"?s:a.color,width:o.showlines!==!1?a.width:0,dash:a.dash},r._levels={start:o.start,end:A(o),size:i}}H.exports={min:"zmin",max:"zmax",calc:M}}}),xM=Ye({"src/traces/contour/hover.js"(X,H){"use strict";var g=Fn(),x=t3();H.exports=function(M,e,t,r,o){o||(o={}),o.isContour=!0;var a=x(M,e,t,r,o);return a&&a.forEach(function(i){var n=i.trace;n.contours.type==="constraint"&&(n.fillcolor&&g.opacity(n.fillcolor)?i.color=g.addOpacity(n.fillcolor,1):n.contours.showlines&&g.opacity(n.line.color)&&(i.color=g.addOpacity(n.line.color,1)))}),a}}}),h7=Ye({"src/traces/histogram2dcontour/index.js"(X,H){"use strict";H.exports={attributes:cM(),supplyDefaults:c7(),crossTraceDefaults:a3(),calc:pM(),plot:l3().plot,layerName:"contourlayer",style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}}}),p7=Ye({"lib/histogram2dcontour.js"(X,H){"use strict";H.exports=h7()}}),bM=Ye({"src/traces/contour/constraint_defaults.js"(X,H){"use strict";var g=jo(),x=fM(),A=Fn(),M=A.addOpacity,e=A.opacity,t=n3(),r=ta().isArrayOrTypedArray,o=t.CONSTRAINT_REDUCTION,a=t.COMPARISON_OPS2;H.exports=function(s,c,h,v,p,T){var l=c.contours,_,w,S,E=h("contours.operation");if(l._operation=o[E],i(h,l),E==="="?_=l.showlines=!0:(_=h("contours.showlines"),S=h("fillcolor",M((s.line||{}).color||p,.5))),_){var m=S&&e(S)?M(c.fillcolor,1):p;w=h("line.color",m),h("line.width",2),h("line.dash")}h("line.smoothing"),x(h,v,w,T)};function i(n,s){var c;a.indexOf(s.operation)===-1?(n("contours.value",[0,1]),r(s.value)?s.value.length>2?s.value=s.value.slice(2):s.length===0?s.value=[0,1]:s.length<2?(c=parseFloat(s.value[0]),s.value=[c,c+1]):s.value=[parseFloat(s.value[0]),parseFloat(s.value[1])]:g(s.value)&&(c=parseFloat(s.value),s.value=[c,c+1])):(n("contours.value",0),g(s.value)||(r(s.value)?s.value=parseFloat(s.value[0]):s.value=0))}}}),d7=Ye({"src/traces/contour/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Qd(),M=bM(),e=o3(),t=s3(),r=N_(),o=U_();H.exports=function(i,n,s,c){function h(l,_){return g.coerce(i,n,o,l,_)}function v(l){return g.coerce2(i,n,o,l)}var p=x(i,n,h,c);if(!p){n.visible=!1;return}A(i,n,c,h),h("xhoverformat"),h("yhoverformat"),h("text"),h("hovertext"),h("hoverongaps"),h("hovertemplate");var T=h("contours.type")==="constraint";h("connectgaps",g.isArray1D(n.z)),T?M(i,n,h,c,s):(e(i,n,h,v),t(i,n,h,c)),n.contours&&n.contours.coloring==="heatmap"&&r(h,c),h("zorder")}}}),v7=Ye({"src/traces/contour/index.js"(X,H){"use strict";H.exports={attributes:U_(),supplyDefaults:d7(),calc:pM(),plot:l3().plot,style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"contour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}}}),m7=Ye({"lib/contour.js"(X,H){"use strict";H.exports=v7()}}),wM=Ye({"src/traces/scatterternary/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=M.marker,i=M.line,n=a.line;H.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:o({},M.hovertext,{}),line:{color:i.color,width:i.width,dash:r,backoff:i.backoff,shape:o({},i.shape,{values:["linear","spline"]}),smoothing:i.smoothing,editType:"calc"},connectgaps:M.connectgaps,cliponaxis:M.cliponaxis,fill:o({},M.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:A(),marker:o({symbol:a.symbol,opacity:a.opacity,angle:a.angle,angleref:a.angleref,standoff:a.standoff,maxdisplayed:a.maxdisplayed,size:a.size,sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,line:o({width:n.width,editType:"calc"},t("marker.line")),gradient:a.gradient,editType:"calc"},t("marker")),textfont:M.textfont,textposition:M.textposition,selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:M.hoveron,hovertemplate:g()}}}),g7=Ye({"src/traces/scatterternary/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=wM();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}var p=v("a"),T=v("b"),l=v("c"),_;if(p?(_=p.length,T?(_=Math.min(_,T.length),l&&(_=Math.min(_,l.length))):l?_=Math.min(_,l.length):_=0):T&&l&&(_=Math.min(T.length,l.length)),!_){s.visible=!1;return}s._length=_,v("sum"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate");var w=_<x.PTS_LINESONLY?"lines+markers":"lines";v("mode",w),A.hasMarkers(s)&&M(n,s,c,h,v,{gradient:!0}),A.hasLines(s)&&(e(n,s,c,h,v,{backoff:!0}),t(n,s,v),v("connectgaps")),A.hasText(s)&&(v("texttemplate"),r(n,s,h,v));var S=[];(A.hasMarkers(s)||A.hasText(s))&&(v("cliponaxis"),v("marker.maxdisplayed"),S.push("points")),v("fill"),s.fill!=="none"&&(o(n,s,c,v),A.hasLines(s)||t(n,s,v)),(s.fill==="tonext"||s.fill==="toself")&&S.push("fills"),v("hoveron",S.join("+")||"points"),g.coerceSelectionMarkerOpacity(s,v)}}}),y7=Ye({"src/traces/scatterternary/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot;return t.aLabel=g.tickText(r.aaxis,A.a,!0).text,t.bLabel=g.tickText(r.baxis,A.b,!0).text,t.cLabel=g.tickText(r.caxis,A.c,!0).text,t}}}),_7=Ye({"src/traces/scatterternary/calc.js"(X,H){"use strict";var g=jo(),x=Fd(),A=Av(),M=Od(),e=Bd().calcMarkerSize,t=["a","b","c"],r={a:["b","c"],b:["a","c"],c:["a","b"]};H.exports=function(a,i){var n=a._fullLayout[i.subplot],s=n.sum,c=i.sum||s,h={a:i.a,b:i.b,c:i.c},v=i.ids,p,T,l,_,w,S;for(p=0;p<t.length;p++)if(l=t[p],!h[l]){for(w=h[r[l][0]],S=h[r[l][1]],_=new Array(w.length),T=0;T<w.length;T++)_[T]=c-w[T]-S[T];h[l]=_}var E=i._length,m=new Array(E),b,d,u,y,f,P;for(p=0;p<E;p++)b=h.a[p],d=h.b[p],u=h.c[p],g(b)&&g(d)&&g(u)?(b=+b,d=+d,u=+u,y=s/(b+d+u),y!==1&&(b*=y,d*=y,u*=y),P=b,f=u-d,m[p]={x:f,y:P,a:b,b:d,c:u},v&&(m[p].id=v[p])):m[p]={x:!1,y:!1};return e(i,E),x(a,i),A(m,i),M(m,i),m}}}),x7=Ye({"src/traces/scatterternary/plot.js"(X,H){"use strict";var g=o1();H.exports=function(A,M,e){var t=M.plotContainer;t.select(".scatterlayer").selectAll("*").remove();for(var r=M.xaxis,o=M.yaxis,a={xaxis:r,yaxis:o,plot:t,layerClipId:M._hasClipOnAxisFalse?M.clipIdRelative:null},i=M.layers.frontplot.select("g.scatterlayer"),n=0;n<e.length;n++){var s=e[n];s.length&&(s[0].trace._xA=r,s[0].trace._yA=o)}g(A,a,e,i)}}}),b7=Ye({"src/traces/scatterternary/hover.js"(X,H){"use strict";var g=l1();H.exports=function(A,M,e,t){var r=g(A,M,e,t);if(!r||r[0].index===!1)return;var o=r[0];if(o.index===void 0){var a=1-o.y0/A.ya._length,i=A.xa._length,n=i*a/2,s=i-n;return o.x0=Math.max(Math.min(o.x0,s),n),o.x1=Math.max(Math.min(o.x1,s),n),r}var c=o.cd[o.index],h=o.trace,v=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[h.subplot]={_subplot:v};var T=h._module.formatLabels(c,h,p);o.aLabel=T.aLabel,o.bLabel=T.bLabel,o.cLabel=T.cLabel;var l=c.hi||h.hoverinfo,_=[];function w(E,m){_.push(E._hovertitle+": "+m)}if(!h.hovertemplate){var S=l.split("+");S.indexOf("all")!==-1&&(S=["a","b","c"]),S.indexOf("a")!==-1&&w(v.aaxis,o.aLabel),S.indexOf("b")!==-1&&w(v.baxis,o.bLabel),S.indexOf("c")!==-1&&w(v.caxis,o.cLabel)}return o.extraText=_.join("<br>"),o.hovertemplate=h.hovertemplate,r}}}),w7=Ye({"src/traces/scatterternary/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),e[t]){var r=e[t];x.a=r.a,x.b=r.b,x.c=r.c}else x.a=A.a,x.b=A.b,x.c=A.c;return x}}}),T7=Ye({"src/plots/ternary/ternary.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strTranslate,t=M._,r=Fn(),o=Bo(),a=wv(),i=Oo().extendFlat,n=Gu(),s=Co(),c=bp(),h=Lc(),v=Jd(),p=v.freeMode,T=v.rectMode,l=Xg(),_=ff().prepSelect,w=ff().selectOnClick,S=ff().clearOutline,E=ff().clearSelectionsCache,m=wh();function b(I,N){this.id=I.id,this.graphDiv=I.graphDiv,this.init(N),this.makeFramework(N),this.updateFx(N),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}H.exports=b;var d=b.prototype;d.init=function(I){this.container=I._ternarylayer,this.defs=I._defs,this.layoutId=I._uid,this.traceHash={},this.layers={}},d.plot=function(I,N){var U=this,W=N[U.id],Q=N._size;U._hasClipOnAxisFalse=!1;for(var ue=0;ue<I.length;ue++){var se=I[ue][0].trace;if(se.cliponaxis===!1){U._hasClipOnAxisFalse=!0;break}}U.updateLayers(W),U.adjustLayout(W,Q),n.generalUpdatePerTraceModule(U.graphDiv,U,I,W),U.layers.plotbg.select("path").call(r.fill,W.bgcolor)},d.makeFramework=function(I){var N=this,U=N.graphDiv,W=I[N.id],Q=N.clipId="clip"+N.layoutId+N.id,ue=N.clipIdRelative="clip-relative"+N.layoutId+N.id;N.clipDef=M.ensureSingleById(I._clips,"clipPath",Q,function(se){se.append("path").attr("d","M0,0Z")}),N.clipDefRelative=M.ensureSingleById(I._clips,"clipPath",ue,function(se){se.append("path").attr("d","M0,0Z")}),N.plotContainer=M.ensureSingle(N.container,"g",N.id),N.updateLayers(W),o.setClipUrl(N.layers.backplot,Q,U),o.setClipUrl(N.layers.grids,Q,U)},d.updateFx=function(I){I._ternarylayer.selectAll("g.toplevel").style("cursor",I.dragmode==="pan"?"move":"crosshair")},d.updateLayers=function(I){var N=this,U=N.layers,W=["draglayer","plotbg","backplot","grids"];I.aaxis.layer==="below traces"&&W.push("aaxis","aline"),I.baxis.layer==="below traces"&&W.push("baxis","bline"),I.caxis.layer==="below traces"&&W.push("caxis","cline"),W.push("frontplot"),I.aaxis.layer==="above traces"&&W.push("aaxis","aline"),I.baxis.layer==="above traces"&&W.push("baxis","bline"),I.caxis.layer==="above traces"&&W.push("caxis","cline");var Q=N.plotContainer.selectAll("g.toplevel").data(W,String),ue=["agrid","bgrid","cgrid"];Q.enter().append("g").attr("class",function(se){return"toplevel "+se}).each(function(se){var he=g.select(this);U[se]=he,se==="frontplot"?he.append("g").classed("scatterlayer",!0):se==="backplot"?he.append("g").classed("maplayer",!0):se==="plotbg"?he.append("path").attr("d","M0,0Z"):se==="aline"||se==="bline"||se==="cline"?he.append("path"):se==="grids"&&ue.forEach(function(G){U[G]=he.append("g").classed("grid "+G,!0)})}),Q.order()};var u=Math.sqrt(4/3);d.adjustLayout=function(I,N){var U=this,W=I.domain,Q=(W.x[0]+W.x[1])/2,ue=(W.y[0]+W.y[1])/2,se=W.x[1]-W.x[0],he=W.y[1]-W.y[0],G=se*N.w,$=he*N.h,J=I.sum,Z=I.aaxis.min,re=I.baxis.min,ne=I.caxis.min,j,ee,ie,fe,be,Ae;G>u*$?(fe=$,ie=fe*u):(ie=G,fe=ie/u),be=se*ie/G,Ae=he*fe/$,j=N.l+N.w*Q-ie/2,ee=N.t+N.h*(1-ue)-fe/2,U.x0=j,U.y0=ee,U.w=ie,U.h=fe,U.sum=J,U.xaxis={type:"linear",range:[Z+2*ne-J,J-Z-2*re],domain:[Q-be/2,Q+be/2],_id:"x"},a(U.xaxis,U.graphDiv._fullLayout),U.xaxis.setScale(),U.xaxis.isPtWithinRange=function(ze){return ze.a>=U.aaxis.range[0]&&ze.a<=U.aaxis.range[1]&&ze.b>=U.baxis.range[1]&&ze.b<=U.baxis.range[0]&&ze.c>=U.caxis.range[1]&&ze.c<=U.caxis.range[0]},U.yaxis={type:"linear",range:[Z,J-re-ne],domain:[ue-Ae/2,ue+Ae/2],_id:"y"},a(U.yaxis,U.graphDiv._fullLayout),U.yaxis.setScale(),U.yaxis.isPtWithinRange=function(){return!0};var Be=U.yaxis.domain[0],Ie=U.aaxis=i({},I.aaxis,{range:[Z,J-re-ne],side:"left",tickangle:(+I.aaxis.tickangle||0)-30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(Ie,U.graphDiv._fullLayout),Ie.setScale();var Ze=U.baxis=i({},I.baxis,{range:[J-Z-ne,re],side:"bottom",domain:U.xaxis.domain,anchor:"free",position:0,_id:"x",_length:ie});a(Ze,U.graphDiv._fullLayout),Ze.setScale();var at=U.caxis=i({},I.caxis,{range:[J-Z-re,ne],side:"right",tickangle:(+I.caxis.tickangle||0)+30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(at,U.graphDiv._fullLayout),at.setScale();var it="M"+j+","+(ee+fe)+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDef.select("path").attr("d",it),U.layers.plotbg.select("path").attr("d",it);var et="M0,"+fe+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDefRelative.select("path").attr("d",et);var lt=e(j,ee);U.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",lt),U.clipDefRelative.select("path").attr("transform",null);var Me=e(j-Ze._offset,ee+fe);U.layers.baxis.attr("transform",Me),U.layers.bgrid.attr("transform",Me);var ge=e(j+ie/2,ee)+"rotate(30)"+e(0,-Ie._offset);U.layers.aaxis.attr("transform",ge),U.layers.agrid.attr("transform",ge);var ce=e(j+ie/2,ee)+"rotate(-30)"+e(0,-at._offset);U.layers.caxis.attr("transform",ce),U.layers.cgrid.attr("transform",ce),U.drawAxes(!0),U.layers.aline.select("path").attr("d",Ie.showline?"M"+j+","+(ee+fe)+"l"+ie/2+",-"+fe:"M0,0").call(r.stroke,Ie.linecolor||"#000").style("stroke-width",(Ie.linewidth||0)+"px"),U.layers.bline.select("path").attr("d",Ze.showline?"M"+j+","+(ee+fe)+"h"+ie:"M0,0").call(r.stroke,Ze.linecolor||"#000").style("stroke-width",(Ze.linewidth||0)+"px"),U.layers.cline.select("path").attr("d",at.showline?"M"+(j+ie/2)+","+ee+"l"+ie/2+","+fe:"M0,0").call(r.stroke,at.linecolor||"#000").style("stroke-width",(at.linewidth||0)+"px"),U.graphDiv._context.staticPlot||U.initInteractions(),o.setClipUrl(U.layers.frontplot,U._hasClipOnAxisFalse?null:U.clipId,U.graphDiv)},d.drawAxes=function(I){var N=this,U=N.graphDiv,W=N.id.substr(7)+"title",Q=N.layers,ue=N.aaxis,se=N.baxis,he=N.caxis;if(N.drawAx(ue),N.drawAx(se),N.drawAx(he),I){var G=Math.max(ue.showticklabels?ue.tickfont.size/2:0,(he.showticklabels?he.tickfont.size*.75:0)+(he.ticks==="outside"?he.ticklen*.87:0)),$=(se.showticklabels?se.tickfont.size:0)+(se.ticks==="outside"?se.ticklen:0)+3;Q["a-title"]=l.draw(U,"a"+W,{propContainer:ue,propName:N.id+".aaxis.title",placeholder:t(U,"Click to enter Component A title"),attributes:{x:N.x0+N.w/2,y:N.y0-ue.title.font.size/3-G,"text-anchor":"middle"}}),Q["b-title"]=l.draw(U,"b"+W,{propContainer:se,propName:N.id+".baxis.title",placeholder:t(U,"Click to enter Component B title"),attributes:{x:N.x0-$,y:N.y0+N.h+se.title.font.size*.83+$,"text-anchor":"middle"}}),Q["c-title"]=l.draw(U,"c"+W,{propContainer:he,propName:N.id+".caxis.title",placeholder:t(U,"Click to enter Component C title"),attributes:{x:N.x0+N.w+$,y:N.y0+N.h+he.title.font.size*.83+$,"text-anchor":"middle"}})}},d.drawAx=function(I){var N=this,U=N.graphDiv,W=I._name,Q=W.charAt(0),ue=I._id,se=N.layers[W],he=30,G=Q+"tickLayout",$=y(I);N[G]!==$&&(se.selectAll("."+ue+"tick").remove(),N[G]=$),I.setScale();var J=s.calcTicks(I),Z=s.clipEnds(I,J),re=s.makeTransTickFn(I),ne=s.getTickSigns(I)[2],j=M.deg2rad(he),ee=ne*(I.linewidth||1)/2,ie=ne*I.ticklen,fe=N.w,be=N.h,Ae=Q==="b"?"M0,"+ee+"l"+Math.sin(j)*ie+","+Math.cos(j)*ie:"M"+ee+",0l"+Math.cos(j)*ie+","+-Math.sin(j)*ie,Be={a:"M0,0l"+be+",-"+fe/2,b:"M0,0l-"+fe/2+",-"+be,c:"M0,0l-"+be+","+fe/2}[Q];s.drawTicks(U,I,{vals:I.ticks==="inside"?Z:J,layer:se,path:Ae,transFn:re,crisp:!1}),s.drawGrid(U,I,{vals:Z,layer:N.layers[Q+"grid"],path:Be,transFn:re,crisp:!1}),s.drawLabels(U,I,{vals:J,layer:se,transFn:re,labelFns:s.makeLabelFns(I,0,he)})};function y(I){return I.ticks+String(I.ticklen)+String(I.showticklabels)}var f=m.MINZOOM/2+.87,P="m-0.87,.5h"+f+"v3h-"+(f+5.2)+"l"+(f/2+2.6)+",-"+(f*.87+4.5)+"l2.6,1.5l-"+f/2+","+f*.87+"Z",L="m0.87,.5h-"+f+"v3h"+(f+5.2)+"l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-2.6,1.5l"+f/2+","+f*.87+"Z",z="m0,1l"+f/2+","+f*.87+"l2.6,-1.5l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-"+(f/2+2.6)+","+(f*.87+4.5)+"l2.6,1.5l"+f/2+",-"+f*.87+"Z",F="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",B=!0;d.clearOutline=function(){E(this.dragOptions),S(this.dragOptions.gd)},d.initInteractions=function(){var I=this,N=I.layers.plotbg.select("path").node(),U=I.graphDiv,W=U._fullLayout._zoomlayer,Q,ue;this.dragOptions={element:N,gd:U,plotinfo:{id:I.id,domain:U._fullLayout[I.id].domain,xaxis:I.xaxis,yaxis:I.yaxis},subplot:I.id,prepFn:function(Me,ge,ce){I.dragOptions.xaxes=[I.xaxis],I.dragOptions.yaxes=[I.yaxis],Q=U._fullLayout._invScaleX,ue=U._fullLayout._invScaleY;var ze=I.dragOptions.dragmode=U._fullLayout.dragmode;p(ze)?I.dragOptions.minDrag=1:I.dragOptions.minDrag=void 0,ze==="zoom"?(I.dragOptions.moveFn=Ze,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=at,be(Me,ge,ce)):ze==="pan"?(I.dragOptions.moveFn=et,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=lt,it(),I.clearOutline(U)):(T(ze)||p(ze))&&_(Me,ge,ce,I.dragOptions,ze)}};var se,he,G,$,J,Z,re,ne,j,ee;function ie(Me){var ge={};return ge[I.id+".aaxis.min"]=Me.a,ge[I.id+".baxis.min"]=Me.b,ge[I.id+".caxis.min"]=Me.c,ge}function fe(Me,ge){var ce=U._fullLayout.clickmode;O(U),Me===2&&(U.emit("plotly_doubleclick",null),A.call("_guiRelayout",U,ie({a:0,b:0,c:0}))),ce.indexOf("select")>-1&&Me===1&&w(ge,U,[I.xaxis],[I.yaxis],I.id,I.dragOptions),ce.indexOf("event")>-1&&h.click(U,ge,I.id)}function be(Me,ge,ce){var ze=N.getBoundingClientRect();se=ge-ze.left,he=ce-ze.top,U._fullLayout._calcInverseTransform(U);var tt=U._fullLayout._invTransform,nt=M.apply3DTransform(tt)(se,he);se=nt[0],he=nt[1],G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G,$=I.aaxis.range[1]-G.a,Z=x(I.graphDiv._fullLayout[I.id].bgcolor).getLuminance(),re="M0,"+I.h+"L"+I.w/2+", 0L"+I.w+","+I.h+"Z",ne=!1,j=W.append("path").attr("class","zoombox").attr("transform",e(I.x0,I.y0)).style({fill:Z>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",re),ee=W.append("path").attr("class","zoombox-corners").attr("transform",e(I.x0,I.y0)).style({fill:r.background,stroke:r.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),I.clearOutline(U)}function Ae(Me,ge){return 1-ge/I.h}function Be(Me,ge){return 1-(Me+(I.h-ge)/Math.sqrt(3))/I.w}function Ie(Me,ge){return(Me-(I.h-ge)/Math.sqrt(3))/I.w}function Ze(Me,ge){var ce=se+Me*Q,ze=he+ge*ue,tt=Math.max(0,Math.min(1,Ae(se,he),Ae(ce,ze))),nt=Math.max(0,Math.min(1,Be(se,he),Be(ce,ze))),Qe=Math.max(0,Math.min(1,Ie(se,he),Ie(ce,ze))),Ct=(tt/2+Qe)*I.w,St=(1-tt/2-nt)*I.w,Ot=(Ct+St)/2,jt=St-Ct,ur=(1-tt)*I.h,ar=ur-jt/u;jt<m.MINZOOM?(J=G,j.attr("d",re),ee.attr("d","M0,0Z")):(J={a:G.a+tt*$,b:G.b+nt*$,c:G.c+Qe*$},j.attr("d",re+"M"+Ct+","+ur+"H"+St+"L"+Ot+","+ar+"L"+Ct+","+ur+"Z"),ee.attr("d","M"+se+","+he+F+"M"+Ct+","+ur+P+"M"+St+","+ur+L+"M"+Ot+","+ar+z)),ne||(j.transition().style("fill",Z>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),ee.transition().style("opacity",1).duration(200),ne=!0),U.emit("plotly_relayouting",ie(J))}function at(){O(U),J!==G&&(A.call("_guiRelayout",U,ie(J)),B&&U.data&&U._context.showTips&&(M.notifier(t(U,"Double-click to zoom back out"),"long"),B=!1))}function it(){G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G}function et(Me,ge){var ce=Me/I.xaxis._m,ze=ge/I.yaxis._m;J={a:G.a-ze,b:G.b+(ce+ze)/2,c:G.c-(ce-ze)/2};var tt=[J.a,J.b,J.c].sort(M.sorterAsc),nt={a:tt.indexOf(J.a),b:tt.indexOf(J.b),c:tt.indexOf(J.c)};tt[0]<0&&(tt[1]+tt[0]/2<0?(tt[2]+=tt[0]+tt[1],tt[0]=tt[1]=0):(tt[2]+=tt[0]/2,tt[1]+=tt[0]/2,tt[0]=0),J={a:tt[nt.a],b:tt[nt.b],c:tt[nt.c]},ge=(G.a-J.a)*I.yaxis._m,Me=(G.c-J.c-G.b+J.b)*I.xaxis._m);var Qe=e(I.x0+Me,I.y0+ge);I.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",Qe);var Ct=e(-Me,-ge);I.clipDefRelative.select("path").attr("transform",Ct),I.aaxis.range=[J.a,I.sum-J.b-J.c],I.baxis.range=[I.sum-J.a-J.c,J.b],I.caxis.range=[I.sum-J.a-J.b,J.c],I.drawAxes(!1),I._hasClipOnAxisFalse&&I.plotContainer.select(".scatterlayer").selectAll(".trace").call(o.hideOutsideRangePoints,I),U.emit("plotly_relayouting",ie(J))}function lt(){A.call("_guiRelayout",U,ie(J))}N.onmousemove=function(Me){h.hover(U,Me,I.id),U._fullLayout._lasthover=N,U._fullLayout._hoversubplot=I.id},N.onmouseout=function(Me){U._dragging||c.unhover(U,Me)},c.init(this.dragOptions)};function O(I){g.select(I).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}}}),TM=Ye({"src/plots/ternary/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Vh(),M=Ou().overrideAll,e=Oo().extendFlat,t={title:{text:A.title.text,font:A.title.font},color:A.color,tickmode:A.minor.tickmode,nticks:e({},A.nticks,{dflt:6,min:1}),tick0:A.tick0,dtick:A.dtick,tickvals:A.tickvals,ticktext:A.ticktext,ticks:A.ticks,ticklen:A.ticklen,tickwidth:A.tickwidth,tickcolor:A.tickcolor,ticklabelstep:A.ticklabelstep,showticklabels:A.showticklabels,labelalias:A.labelalias,showtickprefix:A.showtickprefix,tickprefix:A.tickprefix,showticksuffix:A.showticksuffix,ticksuffix:A.ticksuffix,showexponent:A.showexponent,exponentformat:A.exponentformat,minexponent:A.minexponent,separatethousands:A.separatethousands,tickfont:A.tickfont,tickangle:A.tickangle,tickformat:A.tickformat,tickformatstops:A.tickformatstops,hoverformat:A.hoverformat,showline:e({},A.showline,{dflt:!0}),linecolor:A.linecolor,linewidth:A.linewidth,showgrid:e({},A.showgrid,{dflt:!0}),gridcolor:A.gridcolor,gridwidth:A.gridwidth,griddash:A.griddash,layer:A.layer,min:{valType:"number",dflt:0,min:0}},r=H.exports=M({domain:x({name:"ternary"}),bgcolor:{valType:"color",dflt:g.background},sum:{valType:"number",dflt:1,min:0},aaxis:t,baxis:t,caxis:t},"plot","from-root");r.uirevision={valType:"any",editType:"none"},r.aaxis.uirevision=r.baxis.uirevision=r.caxis.uirevision={valType:"any",editType:"none"}}}),ig=Ye({"src/plots/subplot_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Wu().defaults;H.exports=function(e,t,r,o){var a=o.type,i=o.attributes,n=o.handleDefaults,s=o.partition||"x",c=t._subplots[a],h=c.length,v=h&&c[0].replace(/\d+$/,""),p,T;function l(E,m){return g.coerce(p,T,i,E,m)}for(var _=0;_<h;_++){var w=c[_];e[w]?p=e[w]:p=e[w]={},T=x.newContainer(t,w,v),o.noUirevision||l("uirevision",t.uirevision);var S={};S[s]=[_/h,(_+1)/h],A(T,t,l,S),o.id=w,n(p,T,l,o)}}}}),A7=Ye({"src/plots/ternary/layout_defaults.js"(X,H){"use strict";var g=Fn(),x=cl(),A=ta(),M=ig(),e=$m(),t=Qm(),r=e1(),o=Zg(),a=I_(),i=TM(),n=["aaxis","baxis","caxis"];H.exports=function(v,p,T){M(v,p,T,{type:"ternary",attributes:i,handleDefaults:s,font:p.font,paper_bgcolor:p.paper_bgcolor})};function s(h,v,p,T){var l=p("bgcolor"),_=p("sum");T.bgColor=g.combine(l,T.paper_bgcolor);for(var w,S,E,m=0;m<n.length;m++)w=n[m],S=h[w]||{},E=x.newContainer(v,w),E._name=w,c(S,E,T,v);var b=v.aaxis,d=v.baxis,u=v.caxis;b.min+d.min+u.min>=_&&(b.min=0,d.min=0,u.min=0,h.aaxis&&delete h.aaxis.min,h.baxis&&delete h.baxis.min,h.caxis&&delete h.caxis.min)}function c(h,v,p,T){var l=i[v._name];function _(y,f){return A.coerce(h,v,l,y,f)}_("uirevision",T.uirevision),v.type="linear";var w=_("color"),S=w!==l.color.dflt?w:p.font.color,E=v._name,m=E.charAt(0).toUpperCase(),b="Component "+m,d=_("title.text",b);v._hovertitle=d===b?d:m,A.coerceFont(_,"title.font",p.font,{overrideDflt:{size:A.bigFont(p.font.size),color:S}}),_("min"),o(h,v,_,"linear"),t(h,v,_,"linear"),e(h,v,_,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),r(h,v,_,{outerTicks:!0});var u=_("showticklabels");u&&(A.coerceFont(_,"tickfont",p.font,{overrideDflt:{color:S}}),_("tickangle"),_("tickformat")),a(h,v,_,{dfltColor:w,bgColor:p.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:l}),_("hoverformat"),_("layer")}}}),S7=Ye({"src/plots/ternary/index.js"(X){"use strict";var H=T7(),g=jh().getSubplotCalcData,x=ta().counterRegex,A="ternary";X.name=A;var M=X.attr="subplot";X.idRoot=A,X.idRegex=X.attrRegex=x(A);var e=X.attributes={};e[M]={valType:"subplotid",dflt:"ternary",editType:"calc"},X.layoutAttributes=TM(),X.supplyLayoutDefaults=A7(),X.plot=function(r){for(var o=r._fullLayout,a=r.calcdata,i=o._subplots[A],n=0;n<i.length;n++){var s=i[n],c=g(a,A,s),h=o[s]._subplot;h||(h=new H({id:s,graphDiv:r,container:o._ternarylayer.node()},o),o[s]._subplot=h),h.plot(c,o,r._promises)}},X.clean=function(t,r,o,a){for(var i=a._subplots[A]||[],n=0;n<i.length;n++){var s=i[n],c=a[s]._subplot;!r[s]&&c&&(c.plotContainer.remove(),c.clipDef.remove(),c.clipDefRelative.remove(),c.layers["a-title"].remove(),c.layers["b-title"].remove(),c.layers["c-title"].remove())}},X.updateFx=function(t){var r=t._fullLayout;r._ternarylayer.selectAll("g.toplevel").style("cursor",r.dragmode==="pan"?"move":"crosshair")}}}),M7=Ye({"src/traces/scatterternary/index.js"(X,H){"use strict";H.exports={attributes:wM(),supplyDefaults:g7(),colorbar:cp(),formatLabels:y7(),calc:_7(),plot:x7(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:b7(),selectPoints:u1(),eventData:w7(),moduleType:"trace",name:"scatterternary",basePlotModule:S7(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}}}),E7=Ye({"lib/scatterternary.js"(X,H){"use strict";H.exports=M7()}}),AM=Ye({"src/traces/violin/attributes.js"(X,H){"use strict";var g=F_(),x=Oo().extendFlat,A=Cc().axisHoverFormat;H.exports={y:g.y,x:g.x,x0:g.x0,y0:g.y0,xhoverformat:A("x"),yhoverformat:A("y"),name:x({},g.name,{}),orientation:x({},g.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:g.fillcolor,points:x({},g.boxpoints,{}),jitter:x({},g.jitter,{}),pointpos:x({},g.pointpos,{}),width:x({},g.width,{}),marker:g.marker,text:g.text,hovertext:g.hovertext,hovertemplate:g.hovertemplate,quartilemethod:g.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:g.selected,unselected:g.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:g.zorder}}}),SM=Ye({"src/traces/violin/layout_attributes.js"(X,H){"use strict";var g=O_(),x=ta().extendFlat;H.exports={violinmode:x({},g.boxmode,{}),violingap:x({},g.boxgap,{}),violingroupgap:x({},g.boxgroupgap,{})}}}),k7=Ye({"src/traces/violin/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=B_(),M=AM();H.exports=function(t,r,o,a){function i(u,y){return g.coerce(t,r,M,u,y)}function n(u,y){return g.coerce2(t,r,M,u,y)}if(A.handleSampleDefaults(t,r,i,a),r.visible!==!1){i("bandwidth"),i("side");var s=i("width");s||(i("scalegroup",r.name),i("scalemode"));var c=i("span"),h;Array.isArray(c)&&(h="manual"),i("spanmode",h);var v=i("line.color",(t.marker||{}).color||o),p=i("line.width"),T=i("fillcolor",x.addOpacity(r.line.color,.5));A.handlePointsDefaults(t,r,i,{prefix:""});var l=n("box.width"),_=n("box.fillcolor",T),w=n("box.line.color",v),S=n("box.line.width",p),E=i("box.visible",!!(l||_||w||S));E||(r.box={visible:!1});var m=n("meanline.color",v),b=n("meanline.width",p),d=i("meanline.visible",!!(m||b));d||(r.meanline={visible:!1}),i("quartilemethod"),i("zorder")}}}}),C7=Ye({"src/traces/violin/layout_defaults.js"(X,H){"use strict";var g=ta(),x=SM(),A=V2();H.exports=function(e,t,r){function o(a,i){return g.coerce(e,t,x,a,i)}A._supply(e,t,r,o,"violin")}}}),f3=Ye({"src/traces/violin/helpers.js"(X){"use strict";var H=ta(),g={gaussian:function(x){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*x*x)}};X.makeKDE=function(x,A,M){var e=M.length,t=g.gaussian,r=x.bandwidth,o=1/(e*r);return function(a){for(var i=0,n=0;n<e;n++)i+=t((a-M[n])/r);return o*i}},X.getPositionOnKdePath=function(x,A,M){var e,t;A.orientation==="h"?(e="y",t="x"):(e="x",t="y");var r=H.findPointOnPath(x.path,M,t,{pathLength:x.pathLength}),o=x.posCenterPx,a=r[e],i=A.side==="both"?2*o-a:o;return[a,i]},X.getKdeValue=function(x,A,M){var e=x.pts.map(X.extractVal),t=X.makeKDE(x,A,e);return t(M)/x.posDensityScale},X.extractVal=function(x){return x.v}}}),L7=Ye({"src/traces/violin/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=KS(),M=f3(),e=ks().BADNUM;H.exports=function(i,n){var s=A(i,n);if(s[0].t.empty)return s;for(var c=i._fullLayout,h=x.getFromId(i,n[n.orientation==="h"?"xaxis":"yaxis"]),v=1/0,p=-1/0,T=0,l=0,_=0;_<s.length;_++){var w=s[_],S=w.pts.map(M.extractVal),E=w.bandwidth=r(n,w,S),m=w.span=o(n,w,h,E);if(w.min===w.max&&E===0)m=w.span=[w.min,w.max],w.density=[{v:1,t:m[0]}],w.bandwidth=E,T=Math.max(T,1);else{var b=m[1]-m[0],d=Math.ceil(b/(E/3)),u=b/d;if(!isFinite(u)||!isFinite(d))return g.error("Something went wrong with computing the violin span"),s[0].t.empty=!0,s;var y=M.makeKDE(w,n,S);w.density=new Array(d);for(var f=0,P=m[0];P<m[1]+u/2;f++,P+=u){var L=y(P);w.density[f]={v:L,t:P},T=Math.max(T,L)}}l=Math.max(l,S.length),v=Math.min(v,m[0]),p=Math.max(p,m[1])}var z=x.findExtremes(h,[v,p],{padded:!0});if(n._extremes[h._id]=z,n.width)s[0].t.maxKDE=T;else{var F=c._violinScaleGroupStats,B=n.scalegroup,O=F[B];O?(O.maxKDE=Math.max(O.maxKDE,T),O.maxCount=Math.max(O.maxCount,l)):F[B]={maxKDE:T,maxCount:l}}return s[0].t.labels.kde=g._(i,"kde:"),s};function t(a,i,n){var s=Math.min(i,n/1.349);return 1.059*s*Math.pow(a,-.2)}function r(a,i,n){var s=i.max-i.min;if(!s)return a.bandwidth?a.bandwidth:0;if(a.bandwidth)return Math.max(a.bandwidth,s/1e4);var c=n.length,h=g.stdev(n,c-1,i.mean);return Math.max(t(c,h,i.q3-i.q1),s/100)}function o(a,i,n,s){var c=a.spanmode,h=a.span||[],v=[i.min,i.max],p=[i.min-2*s,i.max+2*s],T;function l(w){var S=h[w],E=n.type==="multicategory"?n.r2c(S):n.d2c(S,0,a[i.valLetter+"calendar"]);return E===e?p[w]:E}c==="soft"?T=p:c==="hard"?T=v:T=[l(0),l(1)];var _={type:"linear",range:T};return x.setConvert(_),_.cleanRange(),T}}}),P7=Ye({"src/traces/violin/cross_trace_calc.js"(X,H){"use strict";var g=q2().setPositionOffset,x=["v","h"];H.exports=function(M,e){for(var t=M.calcdata,r=e.xaxis,o=e.yaxis,a=0;a<x.length;a++){for(var i=x[a],n=i==="h"?o:r,s=[],c=0;c<t.length;c++){var h=t[c],v=h[0].t,p=h[0].trace;p.visible===!0&&p.type==="violin"&&!v.empty&&p.orientation===i&&p.xaxis===r._id&&p.yaxis===o._id&&s.push(c)}g("violin",M,s,n)}}}}),I7=Ye({"src/traces/violin/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=H2(),e=DS(),t=f3();H.exports=function(o,a,i,n){var s=o._context.staticPlot,c=o._fullLayout,h=a.xaxis,v=a.yaxis;function p(T,l){var _=e(T,{xaxis:h,yaxis:v,trace:l,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return A.smoothopen(_[0],1)}x.makeTraceGroups(n,i,"trace violins").each(function(T){var l=g.select(this),_=T[0],w=_.t,S=_.trace;if(S.visible!==!0||w.empty){l.remove();return}var E=w.bPos,m=w.bdPos,b=a[w.valLetter+"axis"],d=a[w.posLetter+"axis"],u=S.side==="both",y=u||S.side==="positive",f=u||S.side==="negative",P=l.selectAll("path.violin").data(x.identity);P.enter().append("path").style("vector-effect",s?"none":"non-scaling-stroke").attr("class","violin"),P.exit().remove(),P.each(function(U){var W=g.select(this),Q=U.density,ue=Q.length,se=d.c2l(U.pos+E,!0),he=d.l2p(se),G;if(S.width)G=w.maxKDE/m;else{var $=c._violinScaleGroupStats[S.scalegroup];G=S.scalemode==="count"?$.maxKDE/m*($.maxCount/U.pts.length):$.maxKDE/m}var J,Z,re,ne,j,ee,ie;if(y){for(ee=new Array(ue),ne=0;ne<ue;ne++)ie=ee[ne]={},ie[w.posLetter]=se+Q[ne].v/G,ie[w.valLetter]=b.c2l(Q[ne].t,!0);J=p(ee,S)}if(f){for(ee=new Array(ue),j=0,ne=ue-1;j<ue;j++,ne--)ie=ee[j]={},ie[w.posLetter]=se-Q[ne].v/G,ie[w.valLetter]=b.c2l(Q[ne].t,!0);Z=p(ee,S)}if(u)re=J+"L"+Z.substr(1)+"Z";else{var fe=[he,b.c2p(Q[0].t)],be=[he,b.c2p(Q[ue-1].t)];S.orientation==="h"&&(fe.reverse(),be.reverse()),y?re="M"+fe+"L"+J.substr(1)+"L"+be:re="M"+be+"L"+Z.substr(1)+"L"+fe}W.attr("d",re),U.posCenterPx=he,U.posDensityScale=G*m,U.path=W.node(),U.pathLength=U.path.getTotalLength()/(u?2:1)});var L=S.box,z=L.width,F=(L.line||{}).width,B,O;u?(B=m*z,O=0):y?(B=[0,m*z/2],O=F*{x:1,y:-1}[w.posLetter]):(B=[m*z/2,0],O=F*{x:-1,y:1}[w.posLetter]),M.plotBoxAndWhiskers(l,{pos:d,val:b},S,{bPos:E,bdPos:B,bPosPxOffset:O}),M.plotBoxMean(l,{pos:d,val:b},S,{bPos:E,bdPos:B,bPosPxOffset:O});var I;!S.box.visible&&S.meanline.visible&&(I=x.identity);var N=l.selectAll("path.meanline").data(I||[]);N.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect",s?"none":"non-scaling-stroke"),N.exit().remove(),N.each(function(U){var W=b.c2p(U.mean,!0),Q=t.getPositionOnKdePath(U,S,W);g.select(this).attr("d",S.orientation==="h"?"M"+W+","+Q[0]+"V"+Q[1]:"M"+Q[0]+","+W+"H"+Q[1])}),M.plotPoints(l,{x:h,y:v},S,w)})}}}),R7=Ye({"src/traces/violin/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ed().stylePoints;H.exports=function(e){var t=g.select(e).selectAll("g.trace.violins");t.style("opacity",function(r){return r[0].trace.opacity}),t.each(function(r){var o=r[0].trace,a=g.select(this),i=o.box||{},n=i.line||{},s=o.meanline||{},c=s.width;a.selectAll("path.violin").style("stroke-width",o.line.width+"px").call(x.stroke,o.line.color).call(x.fill,o.fillcolor),a.selectAll("path.box").style("stroke-width",n.width+"px").call(x.stroke,n.color).call(x.fill,i.fillcolor);var h={"stroke-width":c+"px","stroke-dasharray":2*c+"px,"+c+"px"};a.selectAll("path.mean").style(h).call(x.stroke,s.color),a.selectAll("path.meanline").style(h).call(x.stroke,s.color),A(a,o,e)})}}}),D7=Ye({"src/traces/violin/hover.js"(X,H){"use strict";var g=Fn(),x=ta(),A=Co(),M=JS(),e=f3();H.exports=function(r,o,a,i,n){n||(n={});var s=n.hoverLayer,c=r.cd,h=c[0].trace,v=h.hoveron,p=v.indexOf("violins")!==-1,T=v.indexOf("kde")!==-1,l=[],_,w;if(p||T){var S=M.hoverOnBoxes(r,o,a,i);if(T&&S.length>0){var E=r.xa,m=r.ya,b,d,u,y,f;h.orientation==="h"?(f=o,b="y",u=m,d="x",y=E):(f=a,b="x",u=E,d="y",y=m);var P=c[r.index];if(f>=P.span[0]&&f<=P.span[1]){var L=x.extendFlat({},r),z=y.c2p(f,!0),F=e.getKdeValue(P,h,f),B=e.getPositionOnKdePath(P,h,z),O=u._offset,I=u._length;L[b+"0"]=B[0],L[b+"1"]=B[1],L[d+"0"]=L[d+"1"]=z,L[d+"Label"]=d+": "+A.hoverLabelText(y,f,h[d+"hoverformat"])+", "+c[0].t.labels.kde+" "+F.toFixed(3);for(var N=0,U=0;U<S.length;U++)if(S[U].attr==="med"){N=U;break}L.spikeDistance=S[N].spikeDistance;var W=b+"Spike";L[W]=S[N][W],S[N].spikeDistance=void 0,S[N][W]=void 0,L.hovertemplate=!1,l.push(L),w={},w[b+"1"]=x.constrain(O+B[0],O,O+I),w[b+"2"]=x.constrain(O+B[1],O,O+I),w[d+"1"]=w[d+"2"]=y._offset+z}}p&&(l=l.concat(S))}v.indexOf("points")!==-1&&(_=M.hoverOnPoints(r,o,a));var Q=s.selectAll(".violinline-"+h.uid).data(w?[0]:[]);return Q.enter().append("line").classed("violinline-"+h.uid,!0).attr("stroke-width",1.5),Q.exit().remove(),Q.attr(w).call(g.stroke,r.color),i==="closest"?_?[_]:l:(_&&l.push(_),l)}}}),z7=Ye({"src/traces/violin/index.js"(X,H){"use strict";H.exports={attributes:AM(),layoutAttributes:SM(),supplyDefaults:k7(),crossTraceDefaults:B_().crossTraceDefaults,supplyLayoutDefaults:C7(),calc:L7(),crossTraceCalc:P7(),plot:I7(),style:R7(),styleOnSelect:ed().styleOnSelect,hoverPoints:D7(),selectPoints:$S(),moduleType:"trace",name:"violin",basePlotModule:Pf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}}}),F7=Ye({"lib/violin.js"(X,H){"use strict";H.exports=z7()}}),O7=Ye({"src/traces/funnel/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}}}),MM=Ye({"src/traces/funnel/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=O7(),o=Oo().extendFlat,a=Fn();H.exports={x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.hoverinfo,{flags:["name","x","y","text","percent initial","percent previous","percent total"]}),textinfo:{valType:"flaglist",flags:["label","text","percent initial","percent previous","percent total","value"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),text:g.text,textposition:g.textposition,insidetextanchor:o({},g.insidetextanchor,{dflt:"middle"}),textangle:o({},g.textangle,{dflt:0}),textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:o({},g.orientation,{}),offset:o({},g.offset,{arrayOk:!1}),width:o({},g.width,{arrayOk:!1}),marker:i(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{dflt:0,editType:"plot"}),dash:x.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder};function i(){var n=o({},g.marker);return delete n.pattern,delete n.cornerradius,n}}}),EM=Ye({"src/traces/funnel/layout_attributes.js"(X,H){"use strict";H.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),kM=Ye({"src/traces/funnel/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=MM(),r=Fn();function o(n,s,c,h){function v(E,m){return g.coerce(n,s,t,E,m)}var p=M(n,s,h,v);if(!p){s.visible=!1;return}e(n,s,h,v),v("xhoverformat"),v("yhoverformat"),v("orientation",s.y&&!s.x?"v":"h"),v("offset"),v("width");var T=v("text");v("hovertext"),v("hovertemplate");var l=v("textposition");A(n,s,h,v,l,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s.textposition!=="none"&&!s.texttemplate&&v("textinfo",g.isArrayOrTypedArray(T)?"text+value":"value");var _=v("marker.color",c);v("marker.line.color",r.defaultLine),v("marker.line.width");var w=v("connector.visible");if(w){v("connector.fillcolor",a(_));var S=v("connector.line.width");S&&(v("connector.line.color"),v("connector.line.dash"))}v("zorder")}function a(n){var s=g.isArrayOrTypedArray(n)?"#000":n;return r.addOpacity(s,.5*r.opacity(s))}function i(n,s){var c,h;function v(T){return g.coerce(h._input,h,t,T)}for(var p=0;p<n.length;p++)h=n[p],h.type==="funnel"&&(c=h._input,x(c,h,s,v,s.funnelmode))}H.exports={supplyDefaults:o,crossTraceDefaults:i}}}),B7=Ye({"src/traces/funnel/layout_defaults.js"(X,H){"use strict";var g=ta(),x=EM();H.exports=function(A,M,e){var t=!1;function r(i,n){return g.coerce(A,M,x,i,n)}for(var o=0;o<e.length;o++){var a=e[o];if(a.visible&&a.type==="funnel"){t=!0;break}}t&&(r("funnelmode"),r("funnelgap",.2),r("funnelgroupgap"))}}}),N7=Ye({"src/traces/funnel/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.hovertext,A,"htx");var t=M.marker;if(t){g.mergeArray(t.opacity,A,"mo"),g.mergeArray(t.color,A,"mc");var r=t.line;r&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"))}}}}),U7=Ye({"src/traces/funnel/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=N7(),M=Od(),e=ks().BADNUM;H.exports=function(o,a){var i=g.getFromId(o,a.xaxis||"x"),n=g.getFromId(o,a.yaxis||"y"),s,c,h,v,p,T,l,_;a.orientation==="h"?(s=i.makeCalcdata(a,"x"),h=n.makeCalcdata(a,"y"),v=x(a,n,"y",h),p=!!a.yperiodalignment,T="y"):(s=n.makeCalcdata(a,"y"),h=i.makeCalcdata(a,"x"),v=x(a,i,"x",h),p=!!a.xperiodalignment,T="x"),c=v.vals;var w=Math.min(c.length,s.length),S=new Array(w);for(a._base=[],l=0;l<w;l++){s[l]<0&&(s[l]=e);var E=!1;s[l]!==e&&l+1<w&&s[l+1]!==e&&(E=!0),_=S[l]={p:c[l],s:s[l],cNext:E},a._base[l]=-.5*_.s,p&&(S[l].orig_p=h[l],S[l][T+"End"]=v.ends[l],S[l][T+"Start"]=v.starts[l]),a.ids&&(_.id=String(a.ids[l])),l===0&&(S[0].vTotal=0),S[0].vTotal+=t(_.s),_.begR=t(_.s)/t(S[0].s)}var m;for(l=0;l<w;l++)_=S[l],_.s!==e&&(_.sumR=_.s/S[0].vTotal,_.difR=m!==void 0?_.s/m:1,m=_.s);return A(S,a),M(S,a),S};function t(r){return r===e?0:r}}}),j7=Ye({"src/traces/funnel/cross_trace_calc.js"(X,H){"use strict";var g=$g().setGroupPositions;H.exports=function(A,M){var e=A._fullLayout,t=A._fullData,r=A.calcdata,o=M.xaxis,a=M.yaxis,i=[],n=[],s=[],c,h;for(h=0;h<t.length;h++){var v=t[h],p=v.orientation==="h";v.visible===!0&&v.xaxis===o._id&&v.yaxis===a._id&&v.type==="funnel"&&(c=r[h],p?s.push(c):n.push(c),i.push(c))}var T={mode:e.funnelmode,norm:e.funnelnorm,gap:e.funnelgap,groupgap:e.funnelgroupgap};for(g(A,o,a,n,T),g(A,a,o,s,T),h=0;h<i.length;h++){c=i[h];for(var l=0;l<c.length;l++)l+1<c.length&&(c[l].nextP0=c[l+1].p0,c[l].nextS0=c[l+1].s0,c[l].nextP1=c[l+1].p1,c[l].nextS1=c[l+1].s1)}}}}),V7=Ye({"src/traces/funnel/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=ks().BADNUM,e=e0(),t=wp().clearMinTextSize;H.exports=function(n,s,c,h){var v=n._fullLayout;t("funnel",v),r(n,s,c,h),o(n,s,c,h),e.plot(n,s,c,h,{mode:v.funnelmode,norm:v.funnelmode,gap:v.funnelgap,groupgap:v.funnelgroupgap})};function r(i,n,s,c){var h=n.xaxis,v=n.yaxis;x.makeTraceGroups(c,s,"trace bars").each(function(p){var T=g.select(this),l=p[0].trace,_=x.ensureSingle(T,"g","regions");if(!l.connector||!l.connector.visible){_.remove();return}var w=l.orientation==="h",S=_.selectAll("g.region").data(x.identity);S.enter().append("g").classed("region",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=a(m,h,v,w),u=d[0],y=d[1],f="";u[0]!==M&&y[0]!==M&&u[1]!==M&&y[1]!==M&&u[2]!==M&&y[2]!==M&&u[3]!==M&&y[3]!==M&&(w?f+="M"+u[0]+","+y[1]+"L"+u[2]+","+y[2]+"H"+u[3]+"L"+u[1]+","+y[1]+"Z":f+="M"+u[1]+","+y[1]+"L"+u[2]+","+y[3]+"V"+y[2]+"L"+u[1]+","+y[0]+"Z"),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,n.layerClipId,i)}})})}function o(i,n,s,c){var h=n.xaxis,v=n.yaxis;x.makeTraceGroups(c,s,"trace bars").each(function(p){var T=g.select(this),l=p[0].trace,_=x.ensureSingle(T,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){_.remove();return}var w=l.orientation==="h",S=_.selectAll("g.line").data(x.identity);S.enter().append("g").classed("line",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=a(m,h,v,w),u=d[0],y=d[1],f="";u[3]!==void 0&&y[3]!==void 0&&(w?(f+="M"+u[0]+","+y[1]+"L"+u[2]+","+y[2],f+="M"+u[1]+","+y[1]+"L"+u[3]+","+y[2]):(f+="M"+u[1]+","+y[1]+"L"+u[2]+","+y[3],f+="M"+u[1]+","+y[0]+"L"+u[2]+","+y[2])),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,n.layerClipId,i)}})})}function a(i,n,s,c){var h=[],v=[],p=c?n:s,T=c?s:n;return h[0]=p.c2p(i.s0,!0),v[0]=T.c2p(i.p0,!0),h[1]=p.c2p(i.s1,!0),v[1]=T.c2p(i.p1,!0),h[2]=p.c2p(i.nextS0,!0),v[2]=T.c2p(i.nextP0,!0),h[3]=p.c2p(i.nextS1,!0),v[3]=T.c2p(i.nextP1,!0),c?[h,v]:[v,h]}}}),q7=Ye({"src/traces/funnel/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=Xm().DESELECTDIM,e=Nd(),t=wp().resizeText,r=e.styleTextPoints;function o(a,i,n){var s=n||g.select(a).selectAll('g[class^="funnellayer"]').selectAll("g.trace");t(a,s,"funnel"),s.style("opacity",function(c){return c[0].trace.opacity}),s.each(function(c){var h=g.select(this),v=c[0].trace;h.selectAll(".point > path").each(function(p){if(!p.isBlank){var T=v.marker;g.select(this).call(A.fill,p.mc||T.color).call(A.stroke,p.mlc||T.line.color).call(x.dashLine,T.line.dash,p.mlw||T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".regions").each(function(){g.select(this).selectAll("path").style("stroke-width",0).call(A.fill,v.connector.fillcolor)}),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),H7=Ye({"src/traces/funnel/hover.js"(X,H){"use strict";var g=Fn().opacity,x=c1().hoverOnBars,A=ta().formatPercent;H.exports=function(t,r,o,a,i){var n=x(t,r,o,a,i);if(n){var s=n.cd,c=s[0].trace,h=c.orientation==="h",v=n.index,p=s[v],T=h?"x":"y";n[T+"LabelVal"]=p.s,n.percentInitial=p.begR,n.percentInitialLabel=A(p.begR,1),n.percentPrevious=p.difR,n.percentPreviousLabel=A(p.difR,1),n.percentTotal=p.sumR,n.percentTotalLabel=A(p.sumR,1);var l=p.hi||c.hoverinfo,_=[];if(l&&l!=="none"&&l!=="skip"){var w=l==="all",S=l.split("+"),E=function(m){return w||S.indexOf(m)!==-1};E("percent initial")&&_.push(n.percentInitialLabel+" of initial"),E("percent previous")&&_.push(n.percentPreviousLabel+" of previous"),E("percent total")&&_.push(n.percentTotalLabel+" of total")}return n.extraText=_.join("<br>"),n.color=M(c,p),[n]}};function M(e,t){var r=e.marker,o=t.mc||r.color,a=t.mlc||r.line.color,i=t.mlw||r.line.width;if(g(o))return o;if(g(a)&&i)return a}}}),G7=Ye({"src/traces/funnel/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"percentInitial"in A&&(x.percentInitial=A.percentInitial),"percentPrevious"in A&&(x.percentPrevious=A.percentPrevious),"percentTotal"in A&&(x.percentTotal=A.percentTotal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),W7=Ye({"src/traces/funnel/index.js"(X,H){"use strict";H.exports={attributes:MM(),layoutAttributes:EM(),supplyDefaults:kM().supplyDefaults,crossTraceDefaults:kM().crossTraceDefaults,supplyLayoutDefaults:B7(),calc:U7(),crossTraceCalc:j7(),plot:V7(),style:q7().style,hoverPoints:H7(),eventData:G7(),selectPoints:f1(),moduleType:"trace",name:"funnel",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),Z7=Ye({"lib/funnel.js"(X,H){"use strict";H.exports=W7()}}),X7=Ye({"src/traces/waterfall/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["initial","delta","final"]}}}),CM=Ye({"src/traces/waterfall/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=X7(),o=Oo().extendFlat,a=Fn();function i(n){return{marker:{color:o({},g.marker.color,{arrayOk:!1,editType:"style"}),line:{color:o({},g.marker.line.color,{arrayOk:!1,editType:"style"}),width:o({},g.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}H.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label"])}),text:g.text,textposition:g.textposition,insidetextanchor:g.insidetextanchor,textangle:g.textangle,textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:g.orientation,offset:g.offset,width:g.width,increasing:i("increasing"),decreasing:i("decreasing"),totals:i("intermediate sums and total"),connector:{line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{editType:"plot"}),dash:x.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder}}}),LM=Ye({"src/traces/waterfall/layout_attributes.js"(X,H){"use strict";H.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}}}),p1=Ye({"src/constants/delta.js"(X,H){"use strict";H.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}}}),PM=Ye({"src/traces/waterfall/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=CM(),r=Fn(),o=p1(),a=o.INCREASING.COLOR,i=o.DECREASING.COLOR,n="#4499FF";function s(v,p,T){v(p+".marker.color",T),v(p+".marker.line.color",r.defaultLine),v(p+".marker.line.width")}function c(v,p,T,l){function _(b,d){return g.coerce(v,p,t,b,d)}var w=M(v,p,l,_);if(!w){p.visible=!1;return}e(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("measure"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");A(v,p,l,_,S,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),p.textposition!=="none"&&(_("texttemplate"),p.texttemplate||_("textinfo")),s(_,"increasing",a),s(_,"decreasing",i),s(_,"totals",n);var E=_("connector.visible");if(E){_("connector.mode");var m=_("connector.line.width");m&&(_("connector.line.color"),_("connector.line.dash"))}_("zorder")}function h(v,p){var T,l;function _(S){return g.coerce(l._input,l,t,S)}if(p.waterfallmode==="group")for(var w=0;w<v.length;w++)l=v[w],T=l._input,x(T,l,p,_,p.waterfallmode)}H.exports={supplyDefaults:c,crossTraceDefaults:h}}}),Y7=Ye({"src/traces/waterfall/layout_defaults.js"(X,H){"use strict";var g=ta(),x=LM();H.exports=function(A,M,e){var t=!1;function r(i,n){return g.coerce(A,M,x,i,n)}for(var o=0;o<e.length;o++){var a=e[o];if(a.visible&&a.type==="waterfall"){t=!0;break}}t&&(r("waterfallmode"),r("waterfallgap",.2),r("waterfallgroupgap"))}}}),K7=Ye({"src/traces/waterfall/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=ta().mergeArray,M=Od(),e=ks().BADNUM;function t(o){return o==="a"||o==="absolute"}function r(o){return o==="t"||o==="total"}H.exports=function(a,i){var n=g.getFromId(a,i.xaxis||"x"),s=g.getFromId(a,i.yaxis||"y"),c,h,v,p,T,l;i.orientation==="h"?(c=n.makeCalcdata(i,"x"),v=s.makeCalcdata(i,"y"),p=x(i,s,"y",v),T=!!i.yperiodalignment,l="y"):(c=s.makeCalcdata(i,"y"),v=n.makeCalcdata(i,"x"),p=x(i,n,"x",v),T=!!i.xperiodalignment,l="x"),h=p.vals;for(var _=Math.min(h.length,c.length),w=new Array(_),S=0,E,m=!1,b=0;b<_;b++){var d=c[b]||0,u=!1;(c[b]!==e||r(i.measure[b])||t(i.measure[b]))&&b+1<_&&(c[b+1]!==e||r(i.measure[b+1])||t(i.measure[b+1]))&&(u=!0);var y=w[b]={i:b,p:h[b],s:d,rawS:d,cNext:u};t(i.measure[b])?(S=y.s,y.isSum=!0,y.dir="totals",y.s=S):r(i.measure[b])?(y.isSum=!0,y.dir="totals",y.s=S):(y.isSum=!1,y.dir=y.rawS<0?"decreasing":"increasing",E=y.s,y.s=S+E,S+=E),y.dir==="totals"&&(m=!0),T&&(w[b].orig_p=v[b],w[b][l+"End"]=p.ends[b],w[b][l+"Start"]=p.starts[b]),i.ids&&(y.id=String(i.ids[b])),y.v=(i.base||0)+S}return w.length&&(w[0].hasTotals=m),A(i.text,w,"tx"),A(i.hovertext,w,"htx"),M(w,i),w}}}),J7=Ye({"src/traces/waterfall/cross_trace_calc.js"(X,H){"use strict";var g=$g().setGroupPositions;H.exports=function(A,M){var e=A._fullLayout,t=A._fullData,r=A.calcdata,o=M.xaxis,a=M.yaxis,i=[],n=[],s=[],c,h;for(h=0;h<t.length;h++){var v=t[h];v.visible===!0&&v.xaxis===o._id&&v.yaxis===a._id&&v.type==="waterfall"&&(c=r[h],v.orientation==="h"?s.push(c):n.push(c),i.push(c))}var p={mode:e.waterfallmode,norm:e.waterfallnorm,gap:e.waterfallgap,groupgap:e.waterfallgroupgap};for(g(A,o,a,n,p),g(A,a,o,s,p),h=0;h<i.length;h++){c=i[h];for(var T=0;T<c.length;T++){var l=c[T];l.isSum===!1&&(l.s0+=T===0?0:c[T-1].s),T+1<c.length&&(c[T].nextP0=c[T+1].p0,c[T].nextS0=c[T+1].s0)}}}}}),$7=Ye({"src/traces/waterfall/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=ks().BADNUM,e=e0(),t=wp().clearMinTextSize;H.exports=function(i,n,s,c){var h=i._fullLayout;t("waterfall",h),e.plot(i,n,s,c,{mode:h.waterfallmode,norm:h.waterfallmode,gap:h.waterfallgap,groupgap:h.waterfallgroupgap}),r(i,n,s,c)};function r(a,i,n,s){var c=i.xaxis,h=i.yaxis;x.makeTraceGroups(s,n,"trace bars").each(function(v){var p=g.select(this),T=v[0].trace,l=x.ensureSingle(p,"g","lines");if(!T.connector||!T.connector.visible){l.remove();return}var _=T.orientation==="h",w=T.connector.mode,S=l.selectAll("g.line").data(x.identity);S.enter().append("g").classed("line",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=o(m,c,h,_),u=d[0],y=d[1],f="";u[0]!==M&&y[0]!==M&&u[1]!==M&&y[1]!==M&&(w==="spanning"&&!m.isSum&&b>0&&(_?f+="M"+u[0]+","+y[1]+"V"+y[0]:f+="M"+u[1]+","+y[0]+"H"+u[0]),w!=="between"&&(m.isSum||b<E-1)&&(_?f+="M"+u[1]+","+y[0]+"V"+y[1]:f+="M"+u[0]+","+y[1]+"H"+u[1]),u[2]!==M&&y[2]!==M&&(_?f+="M"+u[1]+","+y[1]+"V"+y[2]:f+="M"+u[1]+","+y[1]+"H"+u[2])),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,i.layerClipId,a)}})})}function o(a,i,n,s){var c=[],h=[],v=s?i:n,p=s?n:i;return c[0]=v.c2p(a.s0,!0),h[0]=p.c2p(a.p0,!0),c[1]=v.c2p(a.s1,!0),h[1]=p.c2p(a.p1,!0),c[2]=v.c2p(a.nextS0,!0),h[2]=p.c2p(a.nextP0,!0),s?[c,h]:[h,c]}}}),Q7=Ye({"src/traces/waterfall/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=Xm().DESELECTDIM,e=Nd(),t=wp().resizeText,r=e.styleTextPoints;function o(a,i,n){var s=n||g.select(a).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");t(a,s,"waterfall"),s.style("opacity",function(c){return c[0].trace.opacity}),s.each(function(c){var h=g.select(this),v=c[0].trace;h.selectAll(".point > path").each(function(p){if(!p.isBlank){var T=v[p.dir].marker;g.select(this).call(A.fill,T.color).call(A.stroke,T.line.color).call(x.dashLine,T.line.dash,T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),e4=Ye({"src/traces/waterfall/hover.js"(X,H){"use strict";var g=Co().hoverLabelText,x=Fn().opacity,A=c1().hoverOnBars,M=p1(),e={increasing:M.INCREASING.SYMBOL,decreasing:M.DECREASING.SYMBOL};H.exports=function(o,a,i,n,s){var c=A(o,a,i,n,s);if(!c)return;var h=c.cd,v=h[0].trace,p=v.orientation==="h",T=p?"x":"y",l=p?o.xa:o.ya;function _(P){return g(l,P,v[T+"hoverformat"])}var w=c.index,S=h[w],E=S.isSum?S.b+S.s:S.rawS;c.initial=S.b+S.s-E,c.delta=E,c.final=c.initial+c.delta;var m=_(Math.abs(c.delta));c.deltaLabel=E<0?"("+m+")":m,c.finalLabel=_(c.final),c.initialLabel=_(c.initial);var b=S.hi||v.hoverinfo,d=[];if(b&&b!=="none"&&b!=="skip"){var u=b==="all",y=b.split("+"),f=function(P){return u||y.indexOf(P)!==-1};S.isSum||(f("final")&&(p?!f("x"):!f("y"))&&d.push(c.finalLabel),f("delta")&&(E<0?d.push(c.deltaLabel+" "+e.decreasing):d.push(c.deltaLabel+" "+e.increasing)),f("initial")&&d.push("Initial: "+c.initialLabel))}return d.length&&(c.extraText=d.join("<br>")),c.color=t(v,S),[c]};function t(r,o){var a=r[o.dir].marker,i=a.color,n=a.line.color,s=a.line.width;if(x(i))return i;if(x(n)&&s)return n}}}),t4=Ye({"src/traces/waterfall/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"initial"in A&&(x.initial=A.initial),"delta"in A&&(x.delta=A.delta),"final"in A&&(x.final=A.final),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),r4=Ye({"src/traces/waterfall/index.js"(X,H){"use strict";H.exports={attributes:CM(),layoutAttributes:LM(),supplyDefaults:PM().supplyDefaults,crossTraceDefaults:PM().crossTraceDefaults,supplyLayoutDefaults:Y7(),calc:K7(),crossTraceCalc:J7(),plot:$7(),style:Q7().style,hoverPoints:e4(),eventData:t4(),selectPoints:f1(),moduleType:"trace",name:"waterfall",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),a4=Ye({"lib/waterfall.js"(X,H){"use strict";H.exports=r4()}}),d1=Ye({"src/traces/image/constants.js"(X,H){"use strict";H.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(g){return g.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(g){var x=g.slice(0,3);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(g){var x=g.slice(0,4);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%",""]}}}}}),IM=Ye({"src/traces/image/attributes.js"(X,H){"use strict";var g=Pl(),x=Pc().zorder,A=xs().hovertemplateAttrs,M=Oo().extendFlat,e=d1().colormodel,t=["rgb","rgba","rgba256","hsl","hsla"],r=[],o=[];for(i=0;i<t.length;i++)a=e[t[i]],r.push("For the `"+t[i]+"` colormodel, it is ["+(a.zminDflt||a.min).join(", ")+"]."),o.push("For the `"+t[i]+"` colormodel, it is ["+(a.zmaxDflt||a.max).join(", ")+"].");var a,i;H.exports=M({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:t,editType:"calc"},zsmooth:{valType:"enumerated",values:["fast",!1],dflt:!1,editType:"plot"},zmin:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},zmax:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dx:{valType:"number",dflt:1,editType:"calc"},dy:{valType:"number",dflt:1,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"data_array",editType:"plot"},hoverinfo:M({},g.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:A({},{keys:["z","color","colormodel"]}),zorder:x})}}),i4=Ye({"src/traces/image/defaults.js"(X,H){"use strict";var g=ta(),x=IM(),A=d1(),M=Xv().IMAGE_URL_PREFIX;H.exports=function(t,r){function o(n,s){return g.coerce(t,r,x,n,s)}o("source"),r.source&&!r.source.match(M)&&delete r.source,r._hasSource=!!r.source;var a=o("z");if(r._hasZ=!(a===void 0||!a.length||!a[0]||!a[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}o("x0"),o("y0"),o("dx"),o("dy");var i;r._hasZ?(o("colormodel","rgb"),i=A.colormodel[r.colormodel],o("zmin",i.zminDflt||i.min),o("zmax",i.zmaxDflt||i.max)):r._hasSource&&(r.colormodel="rgba256",i=A.colormodel[r.colormodel],r.zmin=i.zminDflt,r.zmax=i.zmaxDflt),o("zsmooth"),o("text"),o("hovertext"),o("hovertemplate"),r._length=null,o("zorder")}}}),Yv=Ye({"node_modules/inherits/inherits_browser.js"(X,H){typeof Object.create=="function"?H.exports=function(x,A){A&&(x.super_=A,x.prototype=Object.create(A.prototype,{constructor:{value:x,enumerable:!1,writable:!0,configurable:!0}}))}:H.exports=function(x,A){if(A){x.super_=A;var M=function(){};M.prototype=A.prototype,x.prototype=new M,x.prototype.constructor=x}}}}),RM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/stream-browser.js"(X,H){H.exports=Wg().EventEmitter}}),n4=Ye({"node_modules/base64-js/index.js"(X){"use strict";X.byteLength=r,X.toByteArray=a,X.fromByteArray=s;var H=[],g=[],x=typeof Uint8Array<"u"?Uint8Array:Array,A="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(M=0,e=A.length;M<e;++M)H[M]=A[M],g[A.charCodeAt(M)]=M;var M,e;g[45]=62,g[95]=63;function t(c){var h=c.length;if(h%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var v=c.indexOf("=");v===-1&&(v=h);var p=v===h?0:4-v%4;return[v,p]}function r(c){var h=t(c),v=h[0],p=h[1];return(v+p)*3/4-p}function o(c,h,v){return(h+v)*3/4-v}function a(c){var h,v=t(c),p=v[0],T=v[1],l=new x(o(c,p,T)),_=0,w=T>0?p-4:p,S;for(S=0;S<w;S+=4)h=g[c.charCodeAt(S)]<<18|g[c.charCodeAt(S+1)]<<12|g[c.charCodeAt(S+2)]<<6|g[c.charCodeAt(S+3)],l[_++]=h>>16&255,l[_++]=h>>8&255,l[_++]=h&255;return T===2&&(h=g[c.charCodeAt(S)]<<2|g[c.charCodeAt(S+1)]>>4,l[_++]=h&255),T===1&&(h=g[c.charCodeAt(S)]<<10|g[c.charCodeAt(S+1)]<<4|g[c.charCodeAt(S+2)]>>2,l[_++]=h>>8&255,l[_++]=h&255),l}function i(c){return H[c>>18&63]+H[c>>12&63]+H[c>>6&63]+H[c&63]}function n(c,h,v){for(var p,T=[],l=h;l<v;l+=3)p=(c[l]<<16&16711680)+(c[l+1]<<8&65280)+(c[l+2]&255),T.push(i(p));return T.join("")}function s(c){for(var h,v=c.length,p=v%3,T=[],l=16383,_=0,w=v-p;_<w;_+=l)T.push(n(c,_,_+l>w?w:_+l));return p===1?(h=c[v-1],T.push(H[h>>2]+H[h<<4&63]+"==")):p===2&&(h=(c[v-2]<<8)+c[v-1],T.push(H[h>>10]+H[h>>4&63]+H[h<<2&63]+"=")),T.join("")}}}),o4=Ye({"node_modules/ieee754/index.js"(X){X.read=function(H,g,x,A,M){var e,t,r=M*8-A-1,o=(1<<r)-1,a=o>>1,i=-7,n=x?M-1:0,s=x?-1:1,c=H[g+n];for(n+=s,e=c&(1<<-i)-1,c>>=-i,i+=r;i>0;e=e*256+H[g+n],n+=s,i-=8);for(t=e&(1<<-i)-1,e>>=-i,i+=A;i>0;t=t*256+H[g+n],n+=s,i-=8);if(e===0)e=1-a;else{if(e===o)return t?NaN:(c?-1:1)*(1/0);t=t+Math.pow(2,A),e=e-a}return(c?-1:1)*t*Math.pow(2,e-A)},X.write=function(H,g,x,A,M,e){var t,r,o,a=e*8-M-1,i=(1<<a)-1,n=i>>1,s=M===23?Math.pow(2,-24)-Math.pow(2,-77):0,c=A?0:e-1,h=A?1:-1,v=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(r=isNaN(g)?1:0,t=i):(t=Math.floor(Math.log(g)/Math.LN2),g*(o=Math.pow(2,-t))<1&&(t--,o*=2),t+n>=1?g+=s/o:g+=s*Math.pow(2,1-n),g*o>=2&&(t++,o/=2),t+n>=i?(r=0,t=i):t+n>=1?(r=(g*o-1)*Math.pow(2,M),t=t+n):(r=g*Math.pow(2,n-1)*Math.pow(2,M),t=0));M>=8;H[x+c]=r&255,c+=h,r/=256,M-=8);for(t=t<<M|r,a+=M;a>0;H[x+c]=t&255,c+=h,t/=256,a-=8);H[x+c-h]|=v*128}}}),t0=Ye({"node_modules/buffer/index.js"(X){"use strict";var H=n4(),g=o4(),x=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;X.Buffer=t,X.SlowBuffer=T,X.INSPECT_MAX_BYTES=50;var A=2147483647;X.kMaxLength=A,t.TYPED_ARRAY_SUPPORT=M(),!t.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function M(){try{let Me=new Uint8Array(1),ge={foo:function(){return 42}};return Object.setPrototypeOf(ge,Uint8Array.prototype),Object.setPrototypeOf(Me,ge),Me.foo()===42}catch{return!1}}Object.defineProperty(t.prototype,"parent",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.buffer}}),Object.defineProperty(t.prototype,"offset",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.byteOffset}});function e(Me){if(Me>A)throw new RangeError('The value "'+Me+'" is invalid for option "size"');let ge=new Uint8Array(Me);return Object.setPrototypeOf(ge,t.prototype),ge}function t(Me,ge,ce){if(typeof Me=="number"){if(typeof ge=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return i(Me)}return r(Me,ge,ce)}t.poolSize=8192;function r(Me,ge,ce){if(typeof Me=="string")return n(Me,ge);if(ArrayBuffer.isView(Me))return c(Me);if(Me==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me);if(Ze(Me,ArrayBuffer)||Me&&Ze(Me.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Ze(Me,SharedArrayBuffer)||Me&&Ze(Me.buffer,SharedArrayBuffer)))return h(Me,ge,ce);if(typeof Me=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let ze=Me.valueOf&&Me.valueOf();if(ze!=null&&ze!==Me)return t.from(ze,ge,ce);let tt=v(Me);if(tt)return tt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Me[Symbol.toPrimitive]=="function")return t.from(Me[Symbol.toPrimitive]("string"),ge,ce);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me)}t.from=function(Me,ge,ce){return r(Me,ge,ce)},Object.setPrototypeOf(t.prototype,Uint8Array.prototype),Object.setPrototypeOf(t,Uint8Array);function o(Me){if(typeof Me!="number")throw new TypeError('"size" argument must be of type number');if(Me<0)throw new RangeError('The value "'+Me+'" is invalid for option "size"')}function a(Me,ge,ce){return o(Me),Me<=0?e(Me):ge!==void 0?typeof ce=="string"?e(Me).fill(ge,ce):e(Me).fill(ge):e(Me)}t.alloc=function(Me,ge,ce){return a(Me,ge,ce)};function i(Me){return o(Me),e(Me<0?0:p(Me)|0)}t.allocUnsafe=function(Me){return i(Me)},t.allocUnsafeSlow=function(Me){return i(Me)};function n(Me,ge){if((typeof ge!="string"||ge==="")&&(ge="utf8"),!t.isEncoding(ge))throw new TypeError("Unknown encoding: "+ge);let ce=l(Me,ge)|0,ze=e(ce),tt=ze.write(Me,ge);return tt!==ce&&(ze=ze.slice(0,tt)),ze}function s(Me){let ge=Me.length<0?0:p(Me.length)|0,ce=e(ge);for(let ze=0;ze<ge;ze+=1)ce[ze]=Me[ze]&255;return ce}function c(Me){if(Ze(Me,Uint8Array)){let ge=new Uint8Array(Me);return h(ge.buffer,ge.byteOffset,ge.byteLength)}return s(Me)}function h(Me,ge,ce){if(ge<0||Me.byteLength<ge)throw new RangeError('"offset" is outside of buffer bounds');if(Me.byteLength<ge+(ce||0))throw new RangeError('"length" is outside of buffer bounds');let ze;return ge===void 0&&ce===void 0?ze=new Uint8Array(Me):ce===void 0?ze=new Uint8Array(Me,ge):ze=new Uint8Array(Me,ge,ce),Object.setPrototypeOf(ze,t.prototype),ze}function v(Me){if(t.isBuffer(Me)){let ge=p(Me.length)|0,ce=e(ge);return ce.length===0||Me.copy(ce,0,0,ge),ce}if(Me.length!==void 0)return typeof Me.length!="number"||at(Me.length)?e(0):s(Me);if(Me.type==="Buffer"&&Array.isArray(Me.data))return s(Me.data)}function p(Me){if(Me>=A)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+A.toString(16)+" bytes");return Me|0}function T(Me){return+Me!=Me&&(Me=0),t.alloc(+Me)}t.isBuffer=function(ge){return ge!=null&&ge._isBuffer===!0&&ge!==t.prototype},t.compare=function(ge,ce){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),Ze(ce,Uint8Array)&&(ce=t.from(ce,ce.offset,ce.byteLength)),!t.isBuffer(ge)||!t.isBuffer(ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(ge===ce)return 0;let ze=ge.length,tt=ce.length;for(let nt=0,Qe=Math.min(ze,tt);nt<Qe;++nt)if(ge[nt]!==ce[nt]){ze=ge[nt],tt=ce[nt];break}return ze<tt?-1:tt<ze?1:0},t.isEncoding=function(ge){switch(String(ge).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},t.concat=function(ge,ce){if(!Array.isArray(ge))throw new TypeError('"list" argument must be an Array of Buffers');if(ge.length===0)return t.alloc(0);let ze;if(ce===void 0)for(ce=0,ze=0;ze<ge.length;++ze)ce+=ge[ze].length;let tt=t.allocUnsafe(ce),nt=0;for(ze=0;ze<ge.length;++ze){let Qe=ge[ze];if(Ze(Qe,Uint8Array))nt+Qe.length>tt.length?(t.isBuffer(Qe)||(Qe=t.from(Qe)),Qe.copy(tt,nt)):Uint8Array.prototype.set.call(tt,Qe,nt);else if(t.isBuffer(Qe))Qe.copy(tt,nt);else throw new TypeError('"list" argument must be an Array of Buffers');nt+=Qe.length}return tt};function l(Me,ge){if(t.isBuffer(Me))return Me.length;if(ArrayBuffer.isView(Me)||Ze(Me,ArrayBuffer))return Me.byteLength;if(typeof Me!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Me);let ce=Me.length,ze=arguments.length>2&&arguments[2]===!0;if(!ze&&ce===0)return 0;let tt=!1;for(;;)switch(ge){case"ascii":case"latin1":case"binary":return ce;case"utf8":case"utf-8":return fe(Me).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ce*2;case"hex":return ce>>>1;case"base64":return Be(Me).length;default:if(tt)return ze?-1:fe(Me).length;ge=(""+ge).toLowerCase(),tt=!0}}t.byteLength=l;function _(Me,ge,ce){let ze=!1;if((ge===void 0||ge<0)&&(ge=0),ge>this.length||((ce===void 0||ce>this.length)&&(ce=this.length),ce<=0)||(ce>>>=0,ge>>>=0,ce<=ge))return"";for(Me||(Me="utf8");;)switch(Me){case"hex":return O(this,ge,ce);case"utf8":case"utf-8":return P(this,ge,ce);case"ascii":return F(this,ge,ce);case"latin1":case"binary":return B(this,ge,ce);case"base64":return f(this,ge,ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,ge,ce);default:if(ze)throw new TypeError("Unknown encoding: "+Me);Me=(Me+"").toLowerCase(),ze=!0}}t.prototype._isBuffer=!0;function w(Me,ge,ce){let ze=Me[ge];Me[ge]=Me[ce],Me[ce]=ze}t.prototype.swap16=function(){let ge=this.length;if(ge%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let ce=0;ce<ge;ce+=2)w(this,ce,ce+1);return this},t.prototype.swap32=function(){let ge=this.length;if(ge%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let ce=0;ce<ge;ce+=4)w(this,ce,ce+3),w(this,ce+1,ce+2);return this},t.prototype.swap64=function(){let ge=this.length;if(ge%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let ce=0;ce<ge;ce+=8)w(this,ce,ce+7),w(this,ce+1,ce+6),w(this,ce+2,ce+5),w(this,ce+3,ce+4);return this},t.prototype.toString=function(){let ge=this.length;return ge===0?"":arguments.length===0?P(this,0,ge):_.apply(this,arguments)},t.prototype.toLocaleString=t.prototype.toString,t.prototype.equals=function(ge){if(!t.isBuffer(ge))throw new TypeError("Argument must be a Buffer");return this===ge?!0:t.compare(this,ge)===0},t.prototype.inspect=function(){let ge="",ce=X.INSPECT_MAX_BYTES;return ge=this.toString("hex",0,ce).replace(/(.{2})/g,"$1 ").trim(),this.length>ce&&(ge+=" ... "),"<Buffer "+ge+">"},x&&(t.prototype[x]=t.prototype.inspect),t.prototype.compare=function(ge,ce,ze,tt,nt){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),!t.isBuffer(ge))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof ge);if(ce===void 0&&(ce=0),ze===void 0&&(ze=ge?ge.length:0),tt===void 0&&(tt=0),nt===void 0&&(nt=this.length),ce<0||ze>ge.length||tt<0||nt>this.length)throw new RangeError("out of range index");if(tt>=nt&&ce>=ze)return 0;if(tt>=nt)return-1;if(ce>=ze)return 1;if(ce>>>=0,ze>>>=0,tt>>>=0,nt>>>=0,this===ge)return 0;let Qe=nt-tt,Ct=ze-ce,St=Math.min(Qe,Ct),Ot=this.slice(tt,nt),jt=ge.slice(ce,ze);for(let ur=0;ur<St;++ur)if(Ot[ur]!==jt[ur]){Qe=Ot[ur],Ct=jt[ur];break}return Qe<Ct?-1:Ct<Qe?1:0};function S(Me,ge,ce,ze,tt){if(Me.length===0)return-1;if(typeof ce=="string"?(ze=ce,ce=0):ce>2147483647?ce=2147483647:ce<-2147483648&&(ce=-2147483648),ce=+ce,at(ce)&&(ce=tt?0:Me.length-1),ce<0&&(ce=Me.length+ce),ce>=Me.length){if(tt)return-1;ce=Me.length-1}else if(ce<0)if(tt)ce=0;else return-1;if(typeof ge=="string"&&(ge=t.from(ge,ze)),t.isBuffer(ge))return ge.length===0?-1:E(Me,ge,ce,ze,tt);if(typeof ge=="number")return ge=ge&255,typeof Uint8Array.prototype.indexOf=="function"?tt?Uint8Array.prototype.indexOf.call(Me,ge,ce):Uint8Array.prototype.lastIndexOf.call(Me,ge,ce):E(Me,[ge],ce,ze,tt);throw new TypeError("val must be string, number or Buffer")}function E(Me,ge,ce,ze,tt){let nt=1,Qe=Me.length,Ct=ge.length;if(ze!==void 0&&(ze=String(ze).toLowerCase(),ze==="ucs2"||ze==="ucs-2"||ze==="utf16le"||ze==="utf-16le")){if(Me.length<2||ge.length<2)return-1;nt=2,Qe/=2,Ct/=2,ce/=2}function St(jt,ur){return nt===1?jt[ur]:jt.readUInt16BE(ur*nt)}let Ot;if(tt){let jt=-1;for(Ot=ce;Ot<Qe;Ot++)if(St(Me,Ot)===St(ge,jt===-1?0:Ot-jt)){if(jt===-1&&(jt=Ot),Ot-jt+1===Ct)return jt*nt}else jt!==-1&&(Ot-=Ot-jt),jt=-1}else for(ce+Ct>Qe&&(ce=Qe-Ct),Ot=ce;Ot>=0;Ot--){let jt=!0;for(let ur=0;ur<Ct;ur++)if(St(Me,Ot+ur)!==St(ge,ur)){jt=!1;break}if(jt)return Ot}return-1}t.prototype.includes=function(ge,ce,ze){return this.indexOf(ge,ce,ze)!==-1},t.prototype.indexOf=function(ge,ce,ze){return S(this,ge,ce,ze,!0)},t.prototype.lastIndexOf=function(ge,ce,ze){return S(this,ge,ce,ze,!1)};function m(Me,ge,ce,ze){ce=Number(ce)||0;let tt=Me.length-ce;ze?(ze=Number(ze),ze>tt&&(ze=tt)):ze=tt;let nt=ge.length;ze>nt/2&&(ze=nt/2);let Qe;for(Qe=0;Qe<ze;++Qe){let Ct=parseInt(ge.substr(Qe*2,2),16);if(at(Ct))return Qe;Me[ce+Qe]=Ct}return Qe}function b(Me,ge,ce,ze){return Ie(fe(ge,Me.length-ce),Me,ce,ze)}function d(Me,ge,ce,ze){return Ie(be(ge),Me,ce,ze)}function u(Me,ge,ce,ze){return Ie(Be(ge),Me,ce,ze)}function y(Me,ge,ce,ze){return Ie(Ae(ge,Me.length-ce),Me,ce,ze)}t.prototype.write=function(ge,ce,ze,tt){if(ce===void 0)tt="utf8",ze=this.length,ce=0;else if(ze===void 0&&typeof ce=="string")tt=ce,ze=this.length,ce=0;else if(isFinite(ce))ce=ce>>>0,isFinite(ze)?(ze=ze>>>0,tt===void 0&&(tt="utf8")):(tt=ze,ze=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let nt=this.length-ce;if((ze===void 0||ze>nt)&&(ze=nt),ge.length>0&&(ze<0||ce<0)||ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");tt||(tt="utf8");let Qe=!1;for(;;)switch(tt){case"hex":return m(this,ge,ce,ze);case"utf8":case"utf-8":return b(this,ge,ce,ze);case"ascii":case"latin1":case"binary":return d(this,ge,ce,ze);case"base64":return u(this,ge,ce,ze);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,ge,ce,ze);default:if(Qe)throw new TypeError("Unknown encoding: "+tt);tt=(""+tt).toLowerCase(),Qe=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(Me,ge,ce){return ge===0&&ce===Me.length?H.fromByteArray(Me):H.fromByteArray(Me.slice(ge,ce))}function P(Me,ge,ce){ce=Math.min(Me.length,ce);let ze=[],tt=ge;for(;tt<ce;){let nt=Me[tt],Qe=null,Ct=nt>239?4:nt>223?3:nt>191?2:1;if(tt+Ct<=ce){let St,Ot,jt,ur;switch(Ct){case 1:nt<128&&(Qe=nt);break;case 2:St=Me[tt+1],(St&192)===128&&(ur=(nt&31)<<6|St&63,ur>127&&(Qe=ur));break;case 3:St=Me[tt+1],Ot=Me[tt+2],(St&192)===128&&(Ot&192)===128&&(ur=(nt&15)<<12|(St&63)<<6|Ot&63,ur>2047&&(ur<55296||ur>57343)&&(Qe=ur));break;case 4:St=Me[tt+1],Ot=Me[tt+2],jt=Me[tt+3],(St&192)===128&&(Ot&192)===128&&(jt&192)===128&&(ur=(nt&15)<<18|(St&63)<<12|(Ot&63)<<6|jt&63,ur>65535&&ur<1114112&&(Qe=ur))}}Qe===null?(Qe=65533,Ct=1):Qe>65535&&(Qe-=65536,ze.push(Qe>>>10&1023|55296),Qe=56320|Qe&1023),ze.push(Qe),tt+=Ct}return z(ze)}var L=4096;function z(Me){let ge=Me.length;if(ge<=L)return String.fromCharCode.apply(String,Me);let ce="",ze=0;for(;ze<ge;)ce+=String.fromCharCode.apply(String,Me.slice(ze,ze+=L));return ce}function F(Me,ge,ce){let ze="";ce=Math.min(Me.length,ce);for(let tt=ge;tt<ce;++tt)ze+=String.fromCharCode(Me[tt]&127);return ze}function B(Me,ge,ce){let ze="";ce=Math.min(Me.length,ce);for(let tt=ge;tt<ce;++tt)ze+=String.fromCharCode(Me[tt]);return ze}function O(Me,ge,ce){let ze=Me.length;(!ge||ge<0)&&(ge=0),(!ce||ce<0||ce>ze)&&(ce=ze);let tt="";for(let nt=ge;nt<ce;++nt)tt+=it[Me[nt]];return tt}function I(Me,ge,ce){let ze=Me.slice(ge,ce),tt="";for(let nt=0;nt<ze.length-1;nt+=2)tt+=String.fromCharCode(ze[nt]+ze[nt+1]*256);return tt}t.prototype.slice=function(ge,ce){let ze=this.length;ge=~~ge,ce=ce===void 0?ze:~~ce,ge<0?(ge+=ze,ge<0&&(ge=0)):ge>ze&&(ge=ze),ce<0?(ce+=ze,ce<0&&(ce=0)):ce>ze&&(ce=ze),ce<ge&&(ce=ge);let tt=this.subarray(ge,ce);return Object.setPrototypeOf(tt,t.prototype),tt};function N(Me,ge,ce){if(Me%1!==0||Me<0)throw new RangeError("offset is not uint");if(Me+ge>ce)throw new RangeError("Trying to access beyond buffer length")}t.prototype.readUintLE=t.prototype.readUIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe<ce&&(nt*=256);)tt+=this[ge+Qe]*nt;return tt},t.prototype.readUintBE=t.prototype.readUIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge+--ce],nt=1;for(;ce>0&&(nt*=256);)tt+=this[ge+--ce]*nt;return tt},t.prototype.readUint8=t.prototype.readUInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]},t.prototype.readUint16LE=t.prototype.readUInt16LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]|this[ge+1]<<8},t.prototype.readUint16BE=t.prototype.readUInt16BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]<<8|this[ge+1]},t.prototype.readUint32LE=t.prototype.readUInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),(this[ge]|this[ge+1]<<8|this[ge+2]<<16)+this[ge+3]*16777216},t.prototype.readUint32BE=t.prototype.readUInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]*16777216+(this[ge+1]<<16|this[ge+2]<<8|this[ge+3])},t.prototype.readBigUInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24,nt=this[++ge]+this[++ge]*2**8+this[++ge]*2**16+ze*2**24;return BigInt(tt)+(BigInt(nt)<<BigInt(32))}),t.prototype.readBigUInt64BE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce*2**24+this[++ge]*2**16+this[++ge]*2**8+this[++ge],nt=this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze;return(BigInt(tt)<<BigInt(32))+BigInt(nt)}),t.prototype.readIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe<ce&&(nt*=256);)tt+=this[ge+Qe]*nt;return nt*=128,tt>=nt&&(tt-=Math.pow(2,8*ce)),tt},t.prototype.readIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=ce,nt=1,Qe=this[ge+--tt];for(;tt>0&&(nt*=256);)Qe+=this[ge+--tt]*nt;return nt*=128,Qe>=nt&&(Qe-=Math.pow(2,8*ce)),Qe},t.prototype.readInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]&128?(255-this[ge]+1)*-1:this[ge]},t.prototype.readInt16LE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge]|this[ge+1]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt16BE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge+1]|this[ge]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]|this[ge+1]<<8|this[ge+2]<<16|this[ge+3]<<24},t.prototype.readInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]<<24|this[ge+1]<<16|this[ge+2]<<8|this[ge+3]},t.prototype.readBigInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=this[ge+4]+this[ge+5]*2**8+this[ge+6]*2**16+(ze<<24);return(BigInt(tt)<<BigInt(32))+BigInt(ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24)}),t.prototype.readBigInt64BE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=(ce<<24)+this[++ge]*2**16+this[++ge]*2**8+this[++ge];return(BigInt(tt)<<BigInt(32))+BigInt(this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze)}),t.prototype.readFloatLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!0,23,4)},t.prototype.readFloatBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!1,23,4)},t.prototype.readDoubleLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!0,52,8)},t.prototype.readDoubleBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!1,52,8)};function U(Me,ge,ce,ze,tt,nt){if(!t.isBuffer(Me))throw new TypeError('"buffer" argument must be a Buffer instance');if(ge>tt||ge<nt)throw new RangeError('"value" argument is out of bounds');if(ce+ze>Me.length)throw new RangeError("Index out of range")}t.prototype.writeUintLE=t.prototype.writeUIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=1,Qe=0;for(this[ce]=ge&255;++Qe<ze&&(nt*=256);)this[ce+Qe]=ge/nt&255;return ce+ze},t.prototype.writeUintBE=t.prototype.writeUIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=ze-1,Qe=1;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)this[ce+nt]=ge/Qe&255;return ce+ze},t.prototype.writeUint8=t.prototype.writeUInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,255,0),this[ce]=ge&255,ce+1},t.prototype.writeUint16LE=t.prototype.writeUInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeUint16BE=t.prototype.writeUInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeUint32LE=t.prototype.writeUInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce+3]=ge>>>24,this[ce+2]=ge>>>16,this[ce+1]=ge>>>8,this[ce]=ge&255,ce+4},t.prototype.writeUint32BE=t.prototype.writeUInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4};function W(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,ce}function Q(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce+7]=nt,nt=nt>>8,Me[ce+6]=nt,nt=nt>>8,Me[ce+5]=nt,nt=nt>>8,Me[ce+4]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce+3]=Qe,Qe=Qe>>8,Me[ce+2]=Qe,Qe=Qe>>8,Me[ce+1]=Qe,Qe=Qe>>8,Me[ce]=Qe,ce+8}t.prototype.writeBigUInt64LE=et(function(ge,ce=0){return W(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeBigUInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=0,Qe=1,Ct=0;for(this[ce]=ge&255;++nt<ze&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt-1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=ze-1,Qe=1,Ct=0;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt+1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,127,-128),ge<0&&(ge=255+ge+1),this[ce]=ge&255,ce+1},t.prototype.writeInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),this[ce]=ge&255,this[ce+1]=ge>>>8,this[ce+2]=ge>>>16,this[ce+3]=ge>>>24,ce+4},t.prototype.writeInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),ge<0&&(ge=4294967295+ge+1),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4},t.prototype.writeBigInt64LE=et(function(ge,ce=0){return W(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),t.prototype.writeBigInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ue(Me,ge,ce,ze,tt,nt){if(ce+ze>Me.length)throw new RangeError("Index out of range");if(ce<0)throw new RangeError("Index out of range")}function se(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,4,34028234663852886e22,-34028234663852886e22),g.write(Me,ge,ce,ze,23,4),ce+4}t.prototype.writeFloatLE=function(ge,ce,ze){return se(this,ge,ce,!0,ze)},t.prototype.writeFloatBE=function(ge,ce,ze){return se(this,ge,ce,!1,ze)};function he(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,8,17976931348623157e292,-17976931348623157e292),g.write(Me,ge,ce,ze,52,8),ce+8}t.prototype.writeDoubleLE=function(ge,ce,ze){return he(this,ge,ce,!0,ze)},t.prototype.writeDoubleBE=function(ge,ce,ze){return he(this,ge,ce,!1,ze)},t.prototype.copy=function(ge,ce,ze,tt){if(!t.isBuffer(ge))throw new TypeError("argument should be a Buffer");if(ze||(ze=0),!tt&&tt!==0&&(tt=this.length),ce>=ge.length&&(ce=ge.length),ce||(ce=0),tt>0&&tt<ze&&(tt=ze),tt===ze||ge.length===0||this.length===0)return 0;if(ce<0)throw new RangeError("targetStart out of bounds");if(ze<0||ze>=this.length)throw new RangeError("Index out of range");if(tt<0)throw new RangeError("sourceEnd out of bounds");tt>this.length&&(tt=this.length),ge.length-ce<tt-ze&&(tt=ge.length-ce+ze);let nt=tt-ze;return this===ge&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(ce,ze,tt):Uint8Array.prototype.set.call(ge,this.subarray(ze,tt),ce),nt},t.prototype.fill=function(ge,ce,ze,tt){if(typeof ge=="string"){if(typeof ce=="string"?(tt=ce,ce=0,ze=this.length):typeof ze=="string"&&(tt=ze,ze=this.length),tt!==void 0&&typeof tt!="string")throw new TypeError("encoding must be a string");if(typeof tt=="string"&&!t.isEncoding(tt))throw new TypeError("Unknown encoding: "+tt);if(ge.length===1){let Qe=ge.charCodeAt(0);(tt==="utf8"&&Qe<128||tt==="latin1")&&(ge=Qe)}}else typeof ge=="number"?ge=ge&255:typeof ge=="boolean"&&(ge=Number(ge));if(ce<0||this.length<ce||this.length<ze)throw new RangeError("Out of range index");if(ze<=ce)return this;ce=ce>>>0,ze=ze===void 0?this.length:ze>>>0,ge||(ge=0);let nt;if(typeof ge=="number")for(nt=ce;nt<ze;++nt)this[nt]=ge;else{let Qe=t.isBuffer(ge)?ge:t.from(ge,tt),Ct=Qe.length;if(Ct===0)throw new TypeError('The value "'+ge+'" is invalid for argument "value"');for(nt=0;nt<ze-ce;++nt)this[nt+ce]=Qe[nt%Ct]}return this};var G={};function $(Me,ge,ce){G[Me]=class extends ce{constructor(){super(),Object.defineProperty(this,"message",{value:ge.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${Me}]`,this.stack,delete this.name}get code(){return Me}set code(tt){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:tt,writable:!0})}toString(){return`${this.name} [${Me}]: ${this.message}`}}}$("ERR_BUFFER_OUT_OF_BOUNDS",function(Me){return Me?`${Me} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),$("ERR_INVALID_ARG_TYPE",function(Me,ge){return`The "${Me}" argument must be of type number. Received type ${typeof ge}`},TypeError),$("ERR_OUT_OF_RANGE",function(Me,ge,ce){let ze=`The value of "${Me}" is out of range.`,tt=ce;return Number.isInteger(ce)&&Math.abs(ce)>2**32?tt=J(String(ce)):typeof ce=="bigint"&&(tt=String(ce),(ce>BigInt(2)**BigInt(32)||ce<-(BigInt(2)**BigInt(32)))&&(tt=J(tt)),tt+="n"),ze+=` It must be ${ge}. Received ${tt}`,ze},RangeError);function J(Me){let ge="",ce=Me.length,ze=Me[0]==="-"?1:0;for(;ce>=ze+4;ce-=3)ge=`_${Me.slice(ce-3,ce)}${ge}`;return`${Me.slice(0,ce)}${ge}`}function Z(Me,ge,ce){ne(ge,"offset"),(Me[ge]===void 0||Me[ge+ce]===void 0)&&j(ge,Me.length-(ce+1))}function re(Me,ge,ce,ze,tt,nt){if(Me>ce||Me<ge){let Qe=typeof ge=="bigint"?"n":"",Ct;throw nt>3?ge===0||ge===BigInt(0)?Ct=`>= 0${Qe} and < 2${Qe} ** ${(nt+1)*8}${Qe}`:Ct=`>= -(2${Qe} ** ${(nt+1)*8-1}${Qe}) and < 2 ** ${(nt+1)*8-1}${Qe}`:Ct=`>= ${ge}${Qe} and <= ${ce}${Qe}`,new G.ERR_OUT_OF_RANGE("value",Ct,Me)}Z(ze,tt,nt)}function ne(Me,ge){if(typeof Me!="number")throw new G.ERR_INVALID_ARG_TYPE(ge,"number",Me)}function j(Me,ge,ce){throw Math.floor(Me)!==Me?(ne(Me,ce),new G.ERR_OUT_OF_RANGE(ce||"offset","an integer",Me)):ge<0?new G.ERR_BUFFER_OUT_OF_BOUNDS:new G.ERR_OUT_OF_RANGE(ce||"offset",`>= ${ce?1:0} and <= ${ge}`,Me)}var ee=/[^+/0-9A-Za-z-_]/g;function ie(Me){if(Me=Me.split("=")[0],Me=Me.trim().replace(ee,""),Me.length<2)return"";for(;Me.length%4!==0;)Me=Me+"=";return Me}function fe(Me,ge){ge=ge||1/0;let ce,ze=Me.length,tt=null,nt=[];for(let Qe=0;Qe<ze;++Qe){if(ce=Me.charCodeAt(Qe),ce>55295&&ce<57344){if(!tt){if(ce>56319){(ge-=3)>-1&&nt.push(239,191,189);continue}else if(Qe+1===ze){(ge-=3)>-1&&nt.push(239,191,189);continue}tt=ce;continue}if(ce<56320){(ge-=3)>-1&&nt.push(239,191,189),tt=ce;continue}ce=(tt-55296<<10|ce-56320)+65536}else tt&&(ge-=3)>-1&&nt.push(239,191,189);if(tt=null,ce<128){if((ge-=1)<0)break;nt.push(ce)}else if(ce<2048){if((ge-=2)<0)break;nt.push(ce>>6|192,ce&63|128)}else if(ce<65536){if((ge-=3)<0)break;nt.push(ce>>12|224,ce>>6&63|128,ce&63|128)}else if(ce<1114112){if((ge-=4)<0)break;nt.push(ce>>18|240,ce>>12&63|128,ce>>6&63|128,ce&63|128)}else throw new Error("Invalid code point")}return nt}function be(Me){let ge=[];for(let ce=0;ce<Me.length;++ce)ge.push(Me.charCodeAt(ce)&255);return ge}function Ae(Me,ge){let ce,ze,tt,nt=[];for(let Qe=0;Qe<Me.length&&!((ge-=2)<0);++Qe)ce=Me.charCodeAt(Qe),ze=ce>>8,tt=ce%256,nt.push(tt),nt.push(ze);return nt}function Be(Me){return H.toByteArray(ie(Me))}function Ie(Me,ge,ce,ze){let tt;for(tt=0;tt<ze&&!(tt+ce>=ge.length||tt>=Me.length);++tt)ge[tt+ce]=Me[tt];return tt}function Ze(Me,ge){return Me instanceof ge||Me!=null&&Me.constructor!=null&&Me.constructor.name!=null&&Me.constructor.name===ge.name}function at(Me){return Me!==Me}var it=function(){let Me="0123456789abcdef",ge=new Array(256);for(let ce=0;ce<16;++ce){let ze=ce*16;for(let tt=0;tt<16;++tt)ge[ze+tt]=Me[ce]+Me[tt]}return ge}();function et(Me){return typeof BigInt>"u"?lt:Me}function lt(){throw new Error("BigInt not supported")}}}),h3=Ye({"node_modules/has-symbols/shams.js"(X,H){"use strict";H.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var x={},A=Symbol("test"),M=Object(A);if(typeof A=="string"||Object.prototype.toString.call(A)!=="[object Symbol]"||Object.prototype.toString.call(M)!=="[object Symbol]")return!1;var e=42;x[A]=e;for(A in x)return!1;if(typeof Object.keys=="function"&&Object.keys(x).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(x).length!==0)return!1;var t=Object.getOwnPropertySymbols(x);if(t.length!==1||t[0]!==A||!Object.prototype.propertyIsEnumerable.call(x,A))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var r=Object.getOwnPropertyDescriptor(x,A);if(r.value!==e||r.enumerable!==!0)return!1}return!0}}}),q_=Ye({"node_modules/has-tostringtag/shams.js"(X,H){"use strict";var g=h3();H.exports=function(){return g()&&!!Symbol.toStringTag}}}),s4=Ye({"node_modules/es-errors/index.js"(X,H){"use strict";H.exports=Error}}),l4=Ye({"node_modules/es-errors/eval.js"(X,H){"use strict";H.exports=EvalError}}),u4=Ye({"node_modules/es-errors/range.js"(X,H){"use strict";H.exports=RangeError}}),c4=Ye({"node_modules/es-errors/ref.js"(X,H){"use strict";H.exports=ReferenceError}}),DM=Ye({"node_modules/es-errors/syntax.js"(X,H){"use strict";H.exports=SyntaxError}}),H_=Ye({"node_modules/es-errors/type.js"(X,H){"use strict";H.exports=TypeError}}),f4=Ye({"node_modules/es-errors/uri.js"(X,H){"use strict";H.exports=URIError}}),h4=Ye({"node_modules/has-symbols/index.js"(X,H){"use strict";var g=typeof Symbol<"u"&&Symbol,x=h3();H.exports=function(){return typeof g!="function"||typeof Symbol!="function"||typeof g("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:x()}}}),p4=Ye({"node_modules/has-proto/index.js"(X,H){"use strict";var g={foo:{}},x=Object;H.exports=function(){return{__proto__:g}.foo===g.foo&&!({__proto__:null}instanceof x)}}}),d4=Ye({"node_modules/function-bind/implementation.js"(X,H){"use strict";var g="Function.prototype.bind called on incompatible ",x=Object.prototype.toString,A=Math.max,M="[object Function]",e=function(a,i){for(var n=[],s=0;s<a.length;s+=1)n[s]=a[s];for(var c=0;c<i.length;c+=1)n[c+a.length]=i[c];return n},t=function(a,i){for(var n=[],s=i||0,c=0;s<a.length;s+=1,c+=1)n[c]=a[s];return n},r=function(o,a){for(var i="",n=0;n<o.length;n+=1)i+=o[n],n+1<o.length&&(i+=a);return i};H.exports=function(a){var i=this;if(typeof i!="function"||x.apply(i)!==M)throw new TypeError(g+i);for(var n=t(arguments,1),s,c=function(){if(this instanceof s){var l=i.apply(this,e(n,arguments));return Object(l)===l?l:this}return i.apply(a,e(n,arguments))},h=A(0,i.length-n.length),v=[],p=0;p<h;p++)v[p]="$"+p;if(s=Function("binder","return function ("+r(v,",")+"){ return binder.apply(this,arguments); }")(c),i.prototype){var T=function(){};T.prototype=i.prototype,s.prototype=new T,T.prototype=null}return s}}}),p3=Ye({"node_modules/function-bind/index.js"(X,H){"use strict";var g=d4();H.exports=Function.prototype.bind||g}}),v4=Ye({"node_modules/hasown/index.js"(X,H){"use strict";var g=Function.prototype.call,x=Object.prototype.hasOwnProperty,A=p3();H.exports=A.call(g,x)}}),v1=Ye({"node_modules/get-intrinsic/index.js"(X,H){"use strict";var g,x=s4(),A=l4(),M=u4(),e=c4(),t=DM(),r=H_(),o=f4(),a=Function,i=function(O){try{return a('"use strict"; return ('+O+").constructor;")()}catch{}},n=Object.getOwnPropertyDescriptor;if(n)try{n({},"")}catch{n=null}var s=function(){throw new r},c=n?function(){try{return arguments.callee,s}catch{try{return n(arguments,"callee").get}catch{return s}}}():s,h=h4()(),v=p4()(),p=Object.getPrototypeOf||(v?function(O){return O.__proto__}:null),T={},l=typeof Uint8Array>"u"||!p?g:p(Uint8Array),_={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?g:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?g:ArrayBuffer,"%ArrayIteratorPrototype%":h&&p?p([][Symbol.iterator]()):g,"%AsyncFromSyncIteratorPrototype%":g,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?g:Atomics,"%BigInt%":typeof BigInt>"u"?g:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?g:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?g:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?g:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":x,"%eval%":eval,"%EvalError%":A,"%Float32Array%":typeof Float32Array>"u"?g:Float32Array,"%Float64Array%":typeof Float64Array>"u"?g:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?g:FinalizationRegistry,"%Function%":a,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?g:Int8Array,"%Int16Array%":typeof Int16Array>"u"?g:Int16Array,"%Int32Array%":typeof Int32Array>"u"?g:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":h&&p?p(p([][Symbol.iterator]())):g,"%JSON%":typeof JSON=="object"?JSON:g,"%Map%":typeof Map>"u"?g:Map,"%MapIteratorPrototype%":typeof Map>"u"||!h||!p?g:p(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?g:Promise,"%Proxy%":typeof Proxy>"u"?g:Proxy,"%RangeError%":M,"%ReferenceError%":e,"%Reflect%":typeof Reflect>"u"?g:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?g:Set,"%SetIteratorPrototype%":typeof Set>"u"||!h||!p?g:p(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?g:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":h&&p?p(""[Symbol.iterator]()):g,"%Symbol%":h?Symbol:g,"%SyntaxError%":t,"%ThrowTypeError%":c,"%TypedArray%":l,"%TypeError%":r,"%Uint8Array%":typeof Uint8Array>"u"?g:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?g:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?g:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?g:Uint32Array,"%URIError%":o,"%WeakMap%":typeof WeakMap>"u"?g:WeakMap,"%WeakRef%":typeof WeakRef>"u"?g:WeakRef,"%WeakSet%":typeof WeakSet>"u"?g:WeakSet};if(p)try{null.error}catch(O){w=p(p(O)),_["%Error.prototype%"]=w}var w,S=function O(I){var N;if(I==="%AsyncFunction%")N=i("async function () {}");else if(I==="%GeneratorFunction%")N=i("function* () {}");else if(I==="%AsyncGeneratorFunction%")N=i("async function* () {}");else if(I==="%AsyncGenerator%"){var U=O("%AsyncGeneratorFunction%");U&&(N=U.prototype)}else if(I==="%AsyncIteratorPrototype%"){var W=O("%AsyncGenerator%");W&&p&&(N=p(W.prototype))}return _[I]=N,N},E={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},m=p3(),b=v4(),d=m.call(Function.call,Array.prototype.concat),u=m.call(Function.apply,Array.prototype.splice),y=m.call(Function.call,String.prototype.replace),f=m.call(Function.call,String.prototype.slice),P=m.call(Function.call,RegExp.prototype.exec),L=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,z=/\\(\\)?/g,F=function(I){var N=f(I,0,1),U=f(I,-1);if(N==="%"&&U!=="%")throw new t("invalid intrinsic syntax, expected closing `%`");if(U==="%"&&N!=="%")throw new t("invalid intrinsic syntax, expected opening `%`");var W=[];return y(I,L,function(Q,ue,se,he){W[W.length]=se?y(he,z,"$1"):ue||Q}),W},B=function(I,N){var U=I,W;if(b(E,U)&&(W=E[U],U="%"+W[0]+"%"),b(_,U)){var Q=_[U];if(Q===T&&(Q=S(U)),typeof Q>"u"&&!N)throw new r("intrinsic "+I+" exists, but is not available. Please file an issue!");return{alias:W,name:U,value:Q}}throw new t("intrinsic "+I+" does not exist!")};H.exports=function(I,N){if(typeof I!="string"||I.length===0)throw new r("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof N!="boolean")throw new r('"allowMissing" argument must be a boolean');if(P(/^%?[^%]*%?$/,I)===null)throw new t("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var U=F(I),W=U.length>0?U[0]:"",Q=B("%"+W+"%",N),ue=Q.name,se=Q.value,he=!1,G=Q.alias;G&&(W=G[0],u(U,d([0,1],G)));for(var $=1,J=!0;$<U.length;$+=1){var Z=U[$],re=f(Z,0,1),ne=f(Z,-1);if((re==='"'||re==="'"||re==="`"||ne==='"'||ne==="'"||ne==="`")&&re!==ne)throw new t("property names with quotes must have matching quotes");if((Z==="constructor"||!J)&&(he=!0),W+="."+Z,ue="%"+W+"%",b(_,ue))se=_[ue];else if(se!=null){if(!(Z in se)){if(!N)throw new r("base intrinsic for "+I+" exists, but the property is not available.");return}if(n&&$+1>=U.length){var j=n(se,Z);J=!!j,J&&"get"in j&&!("originalValue"in j.get)?se=j.get:se=se[Z]}else J=b(se,Z),se=se[Z];J&&!he&&(_[ue]=se)}}return se}}}),d3=Ye({"node_modules/es-define-property/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.defineProperty%",!0)||!1;if(x)try{x({},"a",{value:1})}catch{x=!1}H.exports=x}}),G_=Ye({"node_modules/gopd/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.getOwnPropertyDescriptor%",!0);if(x)try{x([],"length")}catch{x=null}H.exports=x}}),m4=Ye({"node_modules/define-data-property/index.js"(X,H){"use strict";var g=d3(),x=DM(),A=H_(),M=G_();H.exports=function(t,r,o){if(!t||typeof t!="object"&&typeof t!="function")throw new A("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new A("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new A("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new A("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new A("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new A("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,n=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,c=!!M&&M(t,r);if(g)g(t,r,{configurable:n===null&&c?c.configurable:!n,enumerable:a===null&&c?c.enumerable:!a,value:o,writable:i===null&&c?c.writable:!i});else if(s||!a&&!i&&!n)t[r]=o;else throw new x("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}}}),zM=Ye({"node_modules/has-property-descriptors/index.js"(X,H){"use strict";var g=d3(),x=function(){return!!g};x.hasArrayLengthDefineBug=function(){if(!g)return null;try{return g([],"length",{value:1}).length!==1}catch{return!0}},H.exports=x}}),g4=Ye({"node_modules/set-function-length/index.js"(X,H){"use strict";var g=v1(),x=m4(),A=zM()(),M=G_(),e=H_(),t=g("%Math.floor%");H.exports=function(o,a){if(typeof o!="function")throw new e("`fn` is not a function");if(typeof a!="number"||a<0||a>4294967295||t(a)!==a)throw new e("`length` must be a positive 32-bit integer");var i=arguments.length>2&&!!arguments[2],n=!0,s=!0;if("length"in o&&M){var c=M(o,"length");c&&!c.configurable&&(n=!1),c&&!c.writable&&(s=!1)}return(n||s||!i)&&(A?x(o,"length",a,!0,!0):x(o,"length",a)),o}}}),W_=Ye({"node_modules/call-bind/index.js"(X,H){"use strict";var g=p3(),x=v1(),A=g4(),M=H_(),e=x("%Function.prototype.apply%"),t=x("%Function.prototype.call%"),r=x("%Reflect.apply%",!0)||g.call(t,e),o=d3(),a=x("%Math.max%");H.exports=function(s){if(typeof s!="function")throw new M("a function is required");var c=r(g,t,arguments);return A(c,1+a(0,s.length-(arguments.length-1)),!0)};var i=function(){return r(g,e,arguments)};o?o(H.exports,"apply",{value:i}):H.exports.apply=i}}),m1=Ye({"node_modules/call-bind/callBound.js"(X,H){"use strict";var g=v1(),x=W_(),A=x(g("String.prototype.indexOf"));H.exports=function(e,t){var r=g(e,!!t);return typeof r=="function"&&A(e,".prototype.")>-1?x(r):r}}}),y4=Ye({"node_modules/is-arguments/index.js"(X,H){"use strict";var g=q_()(),x=m1(),A=x("Object.prototype.toString"),M=function(o){return g&&o&&typeof o=="object"&&Symbol.toStringTag in o?!1:A(o)==="[object Arguments]"},e=function(o){return M(o)?!0:o!==null&&typeof o=="object"&&typeof o.length=="number"&&o.length>=0&&A(o)!=="[object Array]"&&A(o.callee)==="[object Function]"},t=function(){return M(arguments)}();M.isLegacyArguments=e,H.exports=t?M:e}}),_4=Ye({"node_modules/is-generator-function/index.js"(X,H){"use strict";var g=Object.prototype.toString,x=Function.prototype.toString,A=/^\s*(?:function)?\*/,M=q_()(),e=Object.getPrototypeOf,t=function(){if(!M)return!1;try{return Function("return function*() {}")()}catch{}},r;H.exports=function(a){if(typeof a!="function")return!1;if(A.test(x.call(a)))return!0;if(!M){var i=g.call(a);return i==="[object GeneratorFunction]"}if(!e)return!1;if(typeof r>"u"){var n=t();r=n?e(n):!1}return e(a)===r}}}),x4=Ye({"node_modules/is-callable/index.js"(X,H){"use strict";var g=Function.prototype.toString,x=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,A,M;if(typeof x=="function"&&typeof Object.defineProperty=="function")try{A=Object.defineProperty({},"length",{get:function(){throw M}}),M={},x(function(){throw 42},null,A)}catch(_){_!==M&&(x=null)}else x=null;var e=/^\s*class\b/,t=function(w){try{var S=g.call(w);return e.test(S)}catch{return!1}},r=function(w){try{return t(w)?!1:(g.call(w),!0)}catch{return!1}},o=Object.prototype.toString,a="[object Object]",i="[object Function]",n="[object GeneratorFunction]",s="[object HTMLAllCollection]",c="[object HTML document.all class]",h="[object HTMLCollection]",v=typeof Symbol=="function"&&!!Symbol.toStringTag,p=!(0 in[,]),T=function(){return!1};typeof document=="object"&&(l=document.all,o.call(l)===o.call(document.all)&&(T=function(w){if((p||!w)&&(typeof w>"u"||typeof w=="object"))try{var S=o.call(w);return(S===s||S===c||S===h||S===a)&&w("")==null}catch{}return!1}));var l;H.exports=x?function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;try{x(w,null,A)}catch(S){if(S!==M)return!1}return!t(w)&&r(w)}:function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;if(v)return r(w);if(t(w))return!1;var S=o.call(w);return S!==i&&S!==n&&!/^\[object HTML/.test(S)?!1:r(w)}}}),FM=Ye({"node_modules/for-each/index.js"(X,H){"use strict";var g=x4(),x=Object.prototype.toString,A=Object.prototype.hasOwnProperty,M=function(a,i,n){for(var s=0,c=a.length;s<c;s++)A.call(a,s)&&(n==null?i(a[s],s,a):i.call(n,a[s],s,a))},e=function(a,i,n){for(var s=0,c=a.length;s<c;s++)n==null?i(a.charAt(s),s,a):i.call(n,a.charAt(s),s,a)},t=function(a,i,n){for(var s in a)A.call(a,s)&&(n==null?i(a[s],s,a):i.call(n,a[s],s,a))},r=function(a,i,n){if(!g(i))throw new TypeError("iterator must be a function");var s;arguments.length>=3&&(s=n),x.call(a)==="[object Array]"?M(a,i,s):typeof a=="string"?e(a,i,s):t(a,i,s)};H.exports=r}}),OM=Ye({"node_modules/available-typed-arrays/index.js"(X,H){"use strict";var g=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],x=typeof globalThis>"u"?window:globalThis;H.exports=function(){for(var M=[],e=0;e<g.length;e++)typeof x[g[e]]=="function"&&(M[M.length]=g[e]);return M}}}),b4=Ye({"node_modules/which-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=W_(),M=m1(),e=G_(),t=M("Object.prototype.toString"),r=q_()(),o=typeof globalThis>"u"?window:globalThis,a=x(),i=M("String.prototype.slice"),n=Object.getPrototypeOf,s=M("Array.prototype.indexOf",!0)||function(T,l){for(var _=0;_<T.length;_+=1)if(T[_]===l)return _;return-1},c={__proto__:null};r&&e&&n?g(a,function(p){var T=new o[p];if(Symbol.toStringTag in T){var l=n(T),_=e(l,Symbol.toStringTag);if(!_){var w=n(l);_=e(w,Symbol.toStringTag)}c["$"+p]=A(_.get)}}):g(a,function(p){var T=new o[p],l=T.slice||T.set;l&&(c["$"+p]=A(l))});var h=function(T){var l=!1;return g(c,function(_,w){if(!l)try{"$"+_(T)===w&&(l=i(w,1))}catch{}}),l},v=function(T){var l=!1;return g(c,function(_,w){if(!l)try{_(T),l=i(w,1)}catch{}}),l};H.exports=function(T){if(!T||typeof T!="object")return!1;if(!r){var l=i(t(T),8,-1);return s(a,l)>-1?l:l!=="Object"?!1:v(T)}return e?h(T):null}}}),w4=Ye({"node_modules/is-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=m1(),M=A("Object.prototype.toString"),e=q_()(),t=G_(),r=typeof globalThis>"u"?window:globalThis,o=x(),a=A("Array.prototype.indexOf",!0)||function(v,p){for(var T=0;T<v.length;T+=1)if(v[T]===p)return T;return-1},i=A("String.prototype.slice"),n={},s=Object.getPrototypeOf;e&&t&&s&&g(o,function(h){var v=new r[h];if(Symbol.toStringTag in v){var p=s(v),T=t(p,Symbol.toStringTag);if(!T){var l=s(p);T=t(l,Symbol.toStringTag)}n[h]=T.get}});var c=function(v){var p=!1;return g(n,function(T,l){if(!p)try{p=T.call(v)===l}catch{}}),p};H.exports=function(v){if(!v||typeof v!="object")return!1;if(!e||!(Symbol.toStringTag in v)){var p=i(M(v),8,-1);return a(o,p)>-1}return t?c(v):!1}}}),BM=Ye({"node_modules/util/support/types.js"(X){"use strict";var H=y4(),g=_4(),x=b4(),A=w4();function M(Ae){return Ae.call.bind(Ae)}var e=typeof BigInt<"u",t=typeof Symbol<"u",r=M(Object.prototype.toString),o=M(Number.prototype.valueOf),a=M(String.prototype.valueOf),i=M(Boolean.prototype.valueOf);e&&(n=M(BigInt.prototype.valueOf));var n;t&&(s=M(Symbol.prototype.valueOf));var s;function c(Ae,Be){if(typeof Ae!="object")return!1;try{return Be(Ae),!0}catch{return!1}}X.isArgumentsObject=H,X.isGeneratorFunction=g,X.isTypedArray=A;function h(Ae){return typeof Promise<"u"&&Ae instanceof Promise||Ae!==null&&typeof Ae=="object"&&typeof Ae.then=="function"&&typeof Ae.catch=="function"}X.isPromise=h;function v(Ae){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Ae):A(Ae)||W(Ae)}X.isArrayBufferView=v;function p(Ae){return x(Ae)==="Uint8Array"}X.isUint8Array=p;function T(Ae){return x(Ae)==="Uint8ClampedArray"}X.isUint8ClampedArray=T;function l(Ae){return x(Ae)==="Uint16Array"}X.isUint16Array=l;function _(Ae){return x(Ae)==="Uint32Array"}X.isUint32Array=_;function w(Ae){return x(Ae)==="Int8Array"}X.isInt8Array=w;function S(Ae){return x(Ae)==="Int16Array"}X.isInt16Array=S;function E(Ae){return x(Ae)==="Int32Array"}X.isInt32Array=E;function m(Ae){return x(Ae)==="Float32Array"}X.isFloat32Array=m;function b(Ae){return x(Ae)==="Float64Array"}X.isFloat64Array=b;function d(Ae){return x(Ae)==="BigInt64Array"}X.isBigInt64Array=d;function u(Ae){return x(Ae)==="BigUint64Array"}X.isBigUint64Array=u;function y(Ae){return r(Ae)==="[object Map]"}y.working=typeof Map<"u"&&y(new Map);function f(Ae){return typeof Map>"u"?!1:y.working?y(Ae):Ae instanceof Map}X.isMap=f;function P(Ae){return r(Ae)==="[object Set]"}P.working=typeof Set<"u"&&P(new Set);function L(Ae){return typeof Set>"u"?!1:P.working?P(Ae):Ae instanceof Set}X.isSet=L;function z(Ae){return r(Ae)==="[object WeakMap]"}z.working=typeof WeakMap<"u"&&z(new WeakMap);function F(Ae){return typeof WeakMap>"u"?!1:z.working?z(Ae):Ae instanceof WeakMap}X.isWeakMap=F;function B(Ae){return r(Ae)==="[object WeakSet]"}B.working=typeof WeakSet<"u"&&B(new WeakSet);function O(Ae){return B(Ae)}X.isWeakSet=O;function I(Ae){return r(Ae)==="[object ArrayBuffer]"}I.working=typeof ArrayBuffer<"u"&&I(new ArrayBuffer);function N(Ae){return typeof ArrayBuffer>"u"?!1:I.working?I(Ae):Ae instanceof ArrayBuffer}X.isArrayBuffer=N;function U(Ae){return r(Ae)==="[object DataView]"}U.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&U(new DataView(new ArrayBuffer(1),0,1));function W(Ae){return typeof DataView>"u"?!1:U.working?U(Ae):Ae instanceof DataView}X.isDataView=W;var Q=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function ue(Ae){return r(Ae)==="[object SharedArrayBuffer]"}function se(Ae){return typeof Q>"u"?!1:(typeof ue.working>"u"&&(ue.working=ue(new Q)),ue.working?ue(Ae):Ae instanceof Q)}X.isSharedArrayBuffer=se;function he(Ae){return r(Ae)==="[object AsyncFunction]"}X.isAsyncFunction=he;function G(Ae){return r(Ae)==="[object Map Iterator]"}X.isMapIterator=G;function $(Ae){return r(Ae)==="[object Set Iterator]"}X.isSetIterator=$;function J(Ae){return r(Ae)==="[object Generator]"}X.isGeneratorObject=J;function Z(Ae){return r(Ae)==="[object WebAssembly.Module]"}X.isWebAssemblyCompiledModule=Z;function re(Ae){return c(Ae,o)}X.isNumberObject=re;function ne(Ae){return c(Ae,a)}X.isStringObject=ne;function j(Ae){return c(Ae,i)}X.isBooleanObject=j;function ee(Ae){return e&&c(Ae,n)}X.isBigIntObject=ee;function ie(Ae){return t&&c(Ae,s)}X.isSymbolObject=ie;function fe(Ae){return re(Ae)||ne(Ae)||j(Ae)||ee(Ae)||ie(Ae)}X.isBoxedPrimitive=fe;function be(Ae){return typeof Uint8Array<"u"&&(N(Ae)||se(Ae))}X.isAnyArrayBuffer=be,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Ae){Object.defineProperty(X,Ae,{enumerable:!1,value:function(){throw new Error(Ae+" is not supported in userland")}})})}}),NM=Ye({"node_modules/util/support/isBufferBrowser.js"(X,H){H.exports=function(x){return x&&typeof x=="object"&&typeof x.copy=="function"&&typeof x.fill=="function"&&typeof x.readUInt8=="function"}}}),UM=Ye({"(disabled):node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se<Q.length;se++)ue[Q[se]]=Object.getOwnPropertyDescriptor(W,Q[se]);return ue},g=/%[sdj%]/g;X.format=function(U){if(!w(U)){for(var W=[],Q=0;Q<arguments.length;Q++)W.push(e(arguments[Q]));return W.join(" ")}for(var Q=1,ue=arguments,se=ue.length,he=String(U).replace(g,function($){if($==="%%")return"%";if(Q>=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q<se;G=ue[++Q])T(G)||!b(G)?he+=" "+G:he+=" "+e(G);return he},X.deprecate=function(U,W){if(typeof process<"u"&&process.noDeprecation===!0)return U;if(typeof process>"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(`
+`)>-1&&(he?$=$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`).slice(2):$=`
+`+$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(`
+`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+`
+ `)+" "+U.join(`,
+ `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$<arguments.length;$++)G.push(arguments[$]);G.push(function(J,Z){J?se(J):ue(Z)});try{W.apply(this,G)}catch(J){se(J)}return he}return Object.setPrototypeOf(Q,Object.getPrototypeOf(W)),O&&Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(Q,H(W))},X.promisify.custom=O;function I(U,W){if(!U){var Q=new Error("Promise was rejected with a falsy value");Q.reason=U,U=Q}return W(U)}function N(U){if(typeof U!="function")throw new TypeError('The "original" argument must be of type Function');function W(){for(var Q=[],ue=0;ue<arguments.length;ue++)Q.push(arguments[ue]);var se=Q.pop();if(typeof se!="function")throw new TypeError("The last argument must be of type Function");var he=this,G=function(){return se.apply(he,arguments)};U.apply(this,Q).then(function($){process.nextTick(G.bind(null,null,$))},function($){process.nextTick(I.bind(null,$,G))})}return Object.setPrototypeOf(W,Object.getPrototypeOf(U)),Object.defineProperties(W,H(U)),W}X.callbackify=N}}),T4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(X,H){"use strict";function g(c,h){var v=Object.keys(c);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(c);h&&(p=p.filter(function(T){return Object.getOwnPropertyDescriptor(c,T).enumerable})),v.push.apply(v,p)}return v}function x(c){for(var h=1;h<arguments.length;h++){var v=arguments[h]!=null?arguments[h]:{};h%2?g(Object(v),!0).forEach(function(p){A(c,p,v[p])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(v)):g(Object(v)).forEach(function(p){Object.defineProperty(c,p,Object.getOwnPropertyDescriptor(v,p))})}return c}function A(c,h,v){return h in c?Object.defineProperty(c,h,{value:v,enumerable:!0,configurable:!0,writable:!0}):c[h]=v,c}function M(c,h){if(!(c instanceof h))throw new TypeError("Cannot call a class as a function")}function e(c,h){for(var v=0;v<h.length;v++){var p=h[v];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(c,p.key,p)}}function t(c,h,v){return h&&e(c.prototype,h),v&&e(c,v),c}var r=t0(),o=r.Buffer,a=UM(),i=a.inspect,n=i&&i.custom||"inspect";function s(c,h,v){o.prototype.copy.call(c,h,v)}H.exports=function(){function c(){M(this,c),this.head=null,this.tail=null,this.length=0}return t(c,[{key:"push",value:function(v){var p={data:v,next:null};this.length>0?this.tail.next=p:this.head=p,this.tail=p,++this.length}},{key:"unshift",value:function(v){var p={data:v,next:this.head};this.length===0&&(this.tail=p),this.head=p,++this.length}},{key:"shift",value:function(){if(this.length!==0){var v=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,v}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(v){if(this.length===0)return"";for(var p=this.head,T=""+p.data;p=p.next;)T+=v+p.data;return T}},{key:"concat",value:function(v){if(this.length===0)return o.alloc(0);for(var p=o.allocUnsafe(v>>>0),T=this.head,l=0;T;)s(T.data,p,l),l+=T.data.length,T=T.next;return p}},{key:"consume",value:function(v,p){var T;return v<this.head.data.length?(T=this.head.data.slice(0,v),this.head.data=this.head.data.slice(v)):v===this.head.data.length?T=this.shift():T=p?this._getString(v):this._getBuffer(v),T}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(v){var p=this.head,T=1,l=p.data;for(v-=l.length;p=p.next;){var _=p.data,w=v>_.length?_.length:v;if(w===_.length?l+=_:l+=_.slice(0,v),v-=w,v===0){w===_.length?(++T,p.next?this.head=p.next:this.head=this.tail=null):(this.head=p,p.data=_.slice(w));break}++T}return this.length-=T,l}},{key:"_getBuffer",value:function(v){var p=o.allocUnsafe(v),T=this.head,l=1;for(T.data.copy(p),v-=T.data.length;T=T.next;){var _=T.data,w=v>_.length?_.length:v;if(_.copy(p,p.length-v,0,w),v-=w,v===0){w===_.length?(++l,T.next?this.head=T.next:this.head=this.tail=null):(this.head=T,T.data=_.slice(w));break}++l}return this.length-=l,p}},{key:n,value:function(v,p){return i(this,x({},p,{depth:0,customInspect:!1}))}}]),c}()}}),jM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/destroy.js"(X,H){"use strict";function g(r,o){var a=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(e,this,r)):process.nextTick(e,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(s){!o&&s?a._writableState?a._writableState.errorEmitted?process.nextTick(A,a):(a._writableState.errorEmitted=!0,process.nextTick(x,a,s)):process.nextTick(x,a,s):o?(process.nextTick(A,a),o(s)):process.nextTick(A,a)}),this)}function x(r,o){e(r,o),A(r)}function A(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function M(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function e(r,o){r.emit("error",o)}function t(r,o){var a=r._readableState,i=r._writableState;a&&a.autoDestroy||i&&i.autoDestroy?r.destroy(o):r.emit("error",o)}H.exports={destroy:g,undestroy:M,errorOrDestroy:t}}}),r0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/errors-browser.js"(X,H){"use strict";function g(o,a){o.prototype=Object.create(a.prototype),o.prototype.constructor=o,o.__proto__=a}var x={};function A(o,a,i){i||(i=Error);function n(c,h,v){return typeof a=="string"?a:a(c,h,v)}var s=function(c){g(h,c);function h(v,p,T){return c.call(this,n(v,p,T))||this}return h}(i);s.prototype.name=i.name,s.prototype.code=o,x[o]=s}function M(o,a){if(Array.isArray(o)){var i=o.length;return o=o.map(function(n){return String(n)}),i>2?"one of ".concat(a," ").concat(o.slice(0,i-1).join(", "),", or ")+o[i-1]:i===2?"one of ".concat(a," ").concat(o[0]," or ").concat(o[1]):"of ".concat(a," ").concat(o[0])}else return"of ".concat(a," ").concat(String(o))}function e(o,a,i){return o.substr(!i||i<0?0:+i,a.length)===a}function t(o,a,i){return(i===void 0||i>o.length)&&(i=o.length),o.substring(i-a.length,i)===a}function r(o,a,i){return typeof i!="number"&&(i=0),i+a.length>o.length?!1:o.indexOf(a,i)!==-1}A("ERR_INVALID_OPT_VALUE",function(o,a){return'The value "'+a+'" is invalid for option "'+o+'"'},TypeError),A("ERR_INVALID_ARG_TYPE",function(o,a,i){var n;typeof a=="string"&&e(a,"not ")?(n="must not be",a=a.replace(/^not /,"")):n="must be";var s;if(t(o," argument"))s="The ".concat(o," ").concat(n," ").concat(M(a,"type"));else{var c=r(o,".")?"property":"argument";s='The "'.concat(o,'" ').concat(c," ").concat(n," ").concat(M(a,"type"))}return s+=". Received type ".concat(typeof i),s},TypeError),A("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),A("ERR_METHOD_NOT_IMPLEMENTED",function(o){return"The "+o+" method is not implemented"}),A("ERR_STREAM_PREMATURE_CLOSE","Premature close"),A("ERR_STREAM_DESTROYED",function(o){return"Cannot call "+o+" after a stream was destroyed"}),A("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),A("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),A("ERR_STREAM_WRITE_AFTER_END","write after end"),A("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),A("ERR_UNKNOWN_ENCODING",function(o){return"Unknown encoding: "+o},TypeError),A("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),H.exports.codes=x}}),VM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/state.js"(X,H){"use strict";var g=r0().codes.ERR_INVALID_OPT_VALUE;function x(M,e,t){return M.highWaterMark!=null?M.highWaterMark:e?M[t]:null}function A(M,e,t,r){var o=x(e,r,t);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var a=r?t:"highWaterMark";throw new g(a,o)}return Math.floor(o)}return M.objectMode?16:16*1024}H.exports={getHighWaterMark:A}}}),A4=Ye({"node_modules/util-deprecate/browser.js"(X,H){H.exports=g;function g(A,M){if(x("noDeprecation"))return A;var e=!1;function t(){if(!e){if(x("throwDeprecation"))throw new Error(M);x("traceDeprecation")?console.trace(M):console.warn(M),e=!0}return A.apply(this,arguments)}return t}function x(A){try{if(!window.localStorage)return!1}catch{return!1}var M=window.localStorage[A];return M==null?!1:String(M).toLowerCase()==="true"}}}),qM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_writable.js"(X,H){"use strict";H.exports=d;function g(G){var $=this;this.next=null,this.entry=null,this.finish=function(){he($,G)}}var x;d.WritableState=m;var A={deprecate:A4()},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(G){return e.from(G)}function o(G){return e.isBuffer(G)||G instanceof t}var a=jM(),i=VM(),n=i.getHighWaterMark,s=r0().codes,c=s.ERR_INVALID_ARG_TYPE,h=s.ERR_METHOD_NOT_IMPLEMENTED,v=s.ERR_MULTIPLE_CALLBACK,p=s.ERR_STREAM_CANNOT_PIPE,T=s.ERR_STREAM_DESTROYED,l=s.ERR_STREAM_NULL_VALUES,_=s.ERR_STREAM_WRITE_AFTER_END,w=s.ERR_UNKNOWN_ENCODING,S=a.errorOrDestroy;Yv()(d,M);function E(){}function m(G,$,J){x=x||a0(),G=G||{},typeof J!="boolean"&&(J=$ instanceof x),this.objectMode=!!G.objectMode,J&&(this.objectMode=this.objectMode||!!G.writableObjectMode),this.highWaterMark=n(this,G,"writableHighWaterMark",J),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Z=G.decodeStrings===!1;this.decodeStrings=!Z,this.defaultEncoding=G.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(re){B($,re)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=G.emitClose!==!1,this.autoDestroy=!!G.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new g(this)}m.prototype.getBuffer=function(){for(var $=this.bufferedRequest,J=[];$;)J.push($),$=$.next;return J},function(){try{Object.defineProperty(m.prototype,"buffer",{get:A.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var b;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(b=Function.prototype[Symbol.hasInstance],Object.defineProperty(d,Symbol.hasInstance,{value:function($){return b.call(this,$)?!0:this!==d?!1:$&&$._writableState instanceof m}})):b=function($){return $ instanceof this};function d(G){x=x||a0();var $=this instanceof x;if(!$&&!b.call(d,this))return new d(G);this._writableState=new m(G,this,$),this.writable=!0,G&&(typeof G.write=="function"&&(this._write=G.write),typeof G.writev=="function"&&(this._writev=G.writev),typeof G.destroy=="function"&&(this._destroy=G.destroy),typeof G.final=="function"&&(this._final=G.final)),M.call(this)}d.prototype.pipe=function(){S(this,new p)};function u(G,$){var J=new _;S(G,J),process.nextTick($,J)}function y(G,$,J,Z){var re;return J===null?re=new l:typeof J!="string"&&!$.objectMode&&(re=new c("chunk",["string","Buffer"],J)),re?(S(G,re),process.nextTick(Z,re),!1):!0}d.prototype.write=function(G,$,J){var Z=this._writableState,re=!1,ne=!Z.objectMode&&o(G);return ne&&!e.isBuffer(G)&&(G=r(G)),typeof $=="function"&&(J=$,$=null),ne?$="buffer":$||($=Z.defaultEncoding),typeof J!="function"&&(J=E),Z.ending?u(this,J):(ne||y(this,Z,G,J))&&(Z.pendingcb++,re=P(this,Z,ne,G,$,J)),re},d.prototype.cork=function(){this._writableState.corked++},d.prototype.uncork=function(){var G=this._writableState;G.corked&&(G.corked--,!G.writing&&!G.corked&&!G.bufferProcessing&&G.bufferedRequest&&N(this,G))},d.prototype.setDefaultEncoding=function($){if(typeof $=="string"&&($=$.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf(($+"").toLowerCase())>-1))throw new w($);return this._writableState.defaultEncoding=$,this},Object.defineProperty(d.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function f(G,$,J){return!G.objectMode&&G.decodeStrings!==!1&&typeof $=="string"&&($=e.from($,J)),$}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function P(G,$,J,Z,re,ne){if(!J){var j=f($,Z,re);Z!==j&&(J=!0,re="buffer",Z=j)}var ee=$.objectMode?1:Z.length;$.length+=ee;var ie=$.length<$.highWaterMark;if(ie||($.needDrain=!0),$.writing||$.corked){var fe=$.lastBufferedRequest;$.lastBufferedRequest={chunk:Z,encoding:re,isBuf:J,callback:ne,next:null},fe?fe.next=$.lastBufferedRequest:$.bufferedRequest=$.lastBufferedRequest,$.bufferedRequestCount+=1}else L(G,$,!1,ee,Z,re,ne);return ie}function L(G,$,J,Z,re,ne,j){$.writelen=Z,$.writecb=j,$.writing=!0,$.sync=!0,$.destroyed?$.onwrite(new T("write")):J?G._writev(re,$.onwrite):G._write(re,ne,$.onwrite),$.sync=!1}function z(G,$,J,Z,re){--$.pendingcb,J?(process.nextTick(re,Z),process.nextTick(ue,G,$),G._writableState.errorEmitted=!0,S(G,Z)):(re(Z),G._writableState.errorEmitted=!0,S(G,Z),ue(G,$))}function F(G){G.writing=!1,G.writecb=null,G.length-=G.writelen,G.writelen=0}function B(G,$){var J=G._writableState,Z=J.sync,re=J.writecb;if(typeof re!="function")throw new v;if(F(J),$)z(G,J,Z,$,re);else{var ne=U(J)||G.destroyed;!ne&&!J.corked&&!J.bufferProcessing&&J.bufferedRequest&&N(G,J),Z?process.nextTick(O,G,J,ne,re):O(G,J,ne,re)}}function O(G,$,J,Z){J||I(G,$),$.pendingcb--,Z(),ue(G,$)}function I(G,$){$.length===0&&$.needDrain&&($.needDrain=!1,G.emit("drain"))}function N(G,$){$.bufferProcessing=!0;var J=$.bufferedRequest;if(G._writev&&J&&J.next){var Z=$.bufferedRequestCount,re=new Array(Z),ne=$.corkedRequestsFree;ne.entry=J;for(var j=0,ee=!0;J;)re[j]=J,J.isBuf||(ee=!1),J=J.next,j+=1;re.allBuffers=ee,L(G,$,!0,$.length,re,"",ne.finish),$.pendingcb++,$.lastBufferedRequest=null,ne.next?($.corkedRequestsFree=ne.next,ne.next=null):$.corkedRequestsFree=new g($),$.bufferedRequestCount=0}else{for(;J;){var ie=J.chunk,fe=J.encoding,be=J.callback,Ae=$.objectMode?1:ie.length;if(L(G,$,!1,Ae,ie,fe,be),J=J.next,$.bufferedRequestCount--,$.writing)break}J===null&&($.lastBufferedRequest=null)}$.bufferedRequest=J,$.bufferProcessing=!1}d.prototype._write=function(G,$,J){J(new h("_write()"))},d.prototype._writev=null,d.prototype.end=function(G,$,J){var Z=this._writableState;return typeof G=="function"?(J=G,G=null,$=null):typeof $=="function"&&(J=$,$=null),G!=null&&this.write(G,$),Z.corked&&(Z.corked=1,this.uncork()),Z.ending||se(this,Z,J),this},Object.defineProperty(d.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function U(G){return G.ending&&G.length===0&&G.bufferedRequest===null&&!G.finished&&!G.writing}function W(G,$){G._final(function(J){$.pendingcb--,J&&S(G,J),$.prefinished=!0,G.emit("prefinish"),ue(G,$)})}function Q(G,$){!$.prefinished&&!$.finalCalled&&(typeof G._final=="function"&&!$.destroyed?($.pendingcb++,$.finalCalled=!0,process.nextTick(W,G,$)):($.prefinished=!0,G.emit("prefinish")))}function ue(G,$){var J=U($);if(J&&(Q(G,$),$.pendingcb===0&&($.finished=!0,G.emit("finish"),$.autoDestroy))){var Z=G._readableState;(!Z||Z.autoDestroy&&Z.endEmitted)&&G.destroy()}return J}function se(G,$,J){$.ending=!0,ue(G,$),J&&($.finished?process.nextTick(J):G.once("finish",J)),$.ended=!0,G.writable=!1}function he(G,$,J){var Z=G.entry;for(G.entry=null;Z;){var re=Z.callback;$.pendingcb--,re(J),Z=Z.next}$.corkedRequestsFree.next=G}Object.defineProperty(d.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function($){this._writableState&&(this._writableState.destroyed=$)}}),d.prototype.destroy=a.destroy,d.prototype._undestroy=a.undestroy,d.prototype._destroy=function(G,$){$(G)}}}),a0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_duplex.js"(X,H){"use strict";var g=Object.keys||function(i){var n=[];for(var s in i)n.push(s);return n};H.exports=r;var x=GM(),A=qM();for(Yv()(r,x),M=g(A.prototype),t=0;t<M.length;t++)e=M[t],r.prototype[e]||(r.prototype[e]=A.prototype[e]);var M,e,t;function r(i){if(!(this instanceof r))return new r(i);x.call(this,i),A.call(this,i),this.allowHalfOpen=!0,i&&(i.readable===!1&&(this.readable=!1),i.writable===!1&&(this.writable=!1),i.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",o)))}Object.defineProperty(r.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(r.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(r.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function o(){this._writableState.ended||process.nextTick(a,this)}function a(i){i.end()}Object.defineProperty(r.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(n){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=n,this._writableState.destroyed=n)}})}}),S4=Ye({"node_modules/safe-buffer/index.js"(X,H){var g=t0(),x=g.Buffer;function A(e,t){for(var r in e)t[r]=e[r]}x.from&&x.alloc&&x.allocUnsafe&&x.allocUnsafeSlow?H.exports=g:(A(g,X),X.Buffer=M);function M(e,t,r){return x(e,t,r)}M.prototype=Object.create(x.prototype),A(x,M),M.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return x(e,t,r)},M.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var o=x(e);return t!==void 0?typeof r=="string"?o.fill(t,r):o.fill(t):o.fill(0),o},M.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return x(e)},M.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return g.SlowBuffer(e)}}}),HM=Ye({"node_modules/stream-browserify/node_modules/string_decoder/lib/string_decoder.js"(X){"use strict";var H=S4().Buffer,g=H.isEncoding||function(T){switch(T=""+T,T&&T.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function x(T){if(!T)return"utf8";for(var l;;)switch(T){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return T;default:if(l)return;T=(""+T).toLowerCase(),l=!0}}function A(T){var l=x(T);if(typeof l!="string"&&(H.isEncoding===g||!g(T)))throw new Error("Unknown encoding: "+T);return l||T}X.StringDecoder=M;function M(T){this.encoding=A(T);var l;switch(this.encoding){case"utf16le":this.text=n,this.end=s,l=4;break;case"utf8":this.fillLast=o,l=4;break;case"base64":this.text=c,this.end=h,l=3;break;default:this.write=v,this.end=p;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=H.allocUnsafe(l)}M.prototype.write=function(T){if(T.length===0)return"";var l,_;if(this.lastNeed){if(l=this.fillLast(T),l===void 0)return"";_=this.lastNeed,this.lastNeed=0}else _=0;return _<T.length?l?l+this.text(T,_):this.text(T,_):l||""},M.prototype.end=i,M.prototype.text=a,M.prototype.fillLast=function(T){if(this.lastNeed<=T.length)return T.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,this.lastTotal-this.lastNeed,0,T.length),this.lastNeed-=T.length};function e(T){return T<=127?0:T>>5===6?2:T>>4===14?3:T>>3===30?4:T>>6===2?-1:-2}function t(T,l,_){var w=l.length-1;if(w<_)return 0;var S=e(l[w]);return S>=0?(S>0&&(T.lastNeed=S-1),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(T.lastNeed=S-2),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(S===2?S=0:T.lastNeed=S-3),S):0))}function r(T,l,_){if((l[0]&192)!==128)return T.lastNeed=0,"\uFFFD";if(T.lastNeed>1&&l.length>1){if((l[1]&192)!==128)return T.lastNeed=1,"\uFFFD";if(T.lastNeed>2&&l.length>2&&(l[2]&192)!==128)return T.lastNeed=2,"\uFFFD"}}function o(T){var l=this.lastTotal-this.lastNeed,_=r(this,T,l);if(_!==void 0)return _;if(this.lastNeed<=T.length)return T.copy(this.lastChar,l,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,l,0,T.length),this.lastNeed-=T.length}function a(T,l){var _=t(this,T,l);if(!this.lastNeed)return T.toString("utf8",l);this.lastTotal=_;var w=T.length-(_-this.lastNeed);return T.copy(this.lastChar,0,w),T.toString("utf8",l,w)}function i(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+"\uFFFD":l}function n(T,l){if((T.length-l)%2===0){var _=T.toString("utf16le",l);if(_){var w=_.charCodeAt(_.length-1);if(w>=55296&&w<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1],_.slice(0,-1)}return _}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=T[T.length-1],T.toString("utf16le",l,T.length-1)}function s(T){var l=T&&T.length?this.write(T):"";if(this.lastNeed){var _=this.lastTotal-this.lastNeed;return l+this.lastChar.toString("utf16le",0,_)}return l}function c(T,l){var _=(T.length-l)%3;return _===0?T.toString("base64",l):(this.lastNeed=3-_,this.lastTotal=3,_===1?this.lastChar[0]=T[T.length-1]:(this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1]),T.toString("base64",l,T.length-_))}function h(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+this.lastChar.toString("base64",0,3-this.lastNeed):l}function v(T){return T.toString(this.encoding)}function p(T){return T&&T.length?this.write(T):""}}}),v3=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(X,H){"use strict";var g=r0().codes.ERR_STREAM_PREMATURE_CLOSE;function x(t){var r=!1;return function(){if(!r){r=!0;for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];t.apply(this,a)}}}function A(){}function M(t){return t.setHeader&&typeof t.abort=="function"}function e(t,r,o){if(typeof r=="function")return e(t,null,r);r||(r={}),o=x(o||A);var a=r.readable||r.readable!==!1&&t.readable,i=r.writable||r.writable!==!1&&t.writable,n=function(){t.writable||c()},s=t._writableState&&t._writableState.finished,c=function(){i=!1,s=!0,a||o.call(t)},h=t._readableState&&t._readableState.endEmitted,v=function(){a=!1,h=!0,i||o.call(t)},p=function(w){o.call(t,w)},T=function(){var w;if(a&&!h)return(!t._readableState||!t._readableState.ended)&&(w=new g),o.call(t,w);if(i&&!s)return(!t._writableState||!t._writableState.ended)&&(w=new g),o.call(t,w)},l=function(){t.req.on("finish",c)};return M(t)?(t.on("complete",c),t.on("abort",T),t.req?l():t.on("request",l)):i&&!t._writableState&&(t.on("end",n),t.on("close",n)),t.on("end",v),t.on("finish",c),r.error!==!1&&t.on("error",p),t.on("close",T),function(){t.removeListener("complete",c),t.removeListener("abort",T),t.removeListener("request",l),t.req&&t.req.removeListener("finish",c),t.removeListener("end",n),t.removeListener("close",n),t.removeListener("finish",c),t.removeListener("end",v),t.removeListener("error",p),t.removeListener("close",T)}}H.exports=e}}),M4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(X,H){"use strict";var g;function x(l,_,w){return _ in l?Object.defineProperty(l,_,{value:w,enumerable:!0,configurable:!0,writable:!0}):l[_]=w,l}var A=v3(),M=Symbol("lastResolve"),e=Symbol("lastReject"),t=Symbol("error"),r=Symbol("ended"),o=Symbol("lastPromise"),a=Symbol("handlePromise"),i=Symbol("stream");function n(l,_){return{value:l,done:_}}function s(l){var _=l[M];if(_!==null){var w=l[i].read();w!==null&&(l[o]=null,l[M]=null,l[e]=null,_(n(w,!1)))}}function c(l){process.nextTick(s,l)}function h(l,_){return function(w,S){l.then(function(){if(_[r]){w(n(void 0,!0));return}_[a](w,S)},S)}}var v=Object.getPrototypeOf(function(){}),p=Object.setPrototypeOf((g={get stream(){return this[i]},next:function(){var _=this,w=this[t];if(w!==null)return Promise.reject(w);if(this[r])return Promise.resolve(n(void 0,!0));if(this[i].destroyed)return new Promise(function(b,d){process.nextTick(function(){_[t]?d(_[t]):b(n(void 0,!0))})});var S=this[o],E;if(S)E=new Promise(h(S,this));else{var m=this[i].read();if(m!==null)return Promise.resolve(n(m,!1));E=new Promise(this[a])}return this[o]=E,E}},x(g,Symbol.asyncIterator,function(){return this}),x(g,"return",function(){var _=this;return new Promise(function(w,S){_[i].destroy(null,function(E){if(E){S(E);return}w(n(void 0,!0))})})}),g),v),T=function(_){var w,S=Object.create(p,(w={},x(w,i,{value:_,writable:!0}),x(w,M,{value:null,writable:!0}),x(w,e,{value:null,writable:!0}),x(w,t,{value:null,writable:!0}),x(w,r,{value:_._readableState.endEmitted,writable:!0}),x(w,a,{value:function(m,b){var d=S[i].read();d?(S[o]=null,S[M]=null,S[e]=null,m(n(d,!1))):(S[M]=m,S[e]=b)},writable:!0}),w));return S[o]=null,A(_,function(E){if(E&&E.code!=="ERR_STREAM_PREMATURE_CLOSE"){var m=S[e];m!==null&&(S[o]=null,S[M]=null,S[e]=null,m(E)),S[t]=E;return}var b=S[M];b!==null&&(S[o]=null,S[M]=null,S[e]=null,b(n(void 0,!0))),S[r]=!0}),_.on("readable",c.bind(null,S)),S};H.exports=T}}),E4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/from-browser.js"(X,H){H.exports=function(){throw new Error("Readable.from is not available in the browser")}}}),GM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_readable.js"(X,H){"use strict";H.exports=y;var g;y.ReadableState=u;var x=Wg().EventEmitter,A=function(ee,ie){return ee.listeners(ie).length},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(j){return e.from(j)}function o(j){return e.isBuffer(j)||j instanceof t}var a=UM(),i;a&&a.debuglog?i=a.debuglog("stream"):i=function(){};var n=T4(),s=jM(),c=VM(),h=c.getHighWaterMark,v=r0().codes,p=v.ERR_INVALID_ARG_TYPE,T=v.ERR_STREAM_PUSH_AFTER_EOF,l=v.ERR_METHOD_NOT_IMPLEMENTED,_=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,w,S,E;Yv()(y,M);var m=s.errorOrDestroy,b=["error","close","destroy","pause","resume"];function d(j,ee,ie){if(typeof j.prependListener=="function")return j.prependListener(ee,ie);!j._events||!j._events[ee]?j.on(ee,ie):Array.isArray(j._events[ee])?j._events[ee].unshift(ie):j._events[ee]=[ie,j._events[ee]]}function u(j,ee,ie){g=g||a0(),j=j||{},typeof ie!="boolean"&&(ie=ee instanceof g),this.objectMode=!!j.objectMode,ie&&(this.objectMode=this.objectMode||!!j.readableObjectMode),this.highWaterMark=h(this,j,"readableHighWaterMark",ie),this.buffer=new n,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=j.emitClose!==!1,this.autoDestroy=!!j.autoDestroy,this.destroyed=!1,this.defaultEncoding=j.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,j.encoding&&(w||(w=HM().StringDecoder),this.decoder=new w(j.encoding),this.encoding=j.encoding)}function y(j){if(g=g||a0(),!(this instanceof y))return new y(j);var ee=this instanceof g;this._readableState=new u(j,this,ee),this.readable=!0,j&&(typeof j.read=="function"&&(this._read=j.read),typeof j.destroy=="function"&&(this._destroy=j.destroy)),M.call(this)}Object.defineProperty(y.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(ee){this._readableState&&(this._readableState.destroyed=ee)}}),y.prototype.destroy=s.destroy,y.prototype._undestroy=s.undestroy,y.prototype._destroy=function(j,ee){ee(j)},y.prototype.push=function(j,ee){var ie=this._readableState,fe;return ie.objectMode?fe=!0:typeof j=="string"&&(ee=ee||ie.defaultEncoding,ee!==ie.encoding&&(j=e.from(j,ee),ee=""),fe=!0),f(this,j,ee,!1,fe)},y.prototype.unshift=function(j){return f(this,j,null,!0,!1)};function f(j,ee,ie,fe,be){i("readableAddChunk",ee);var Ae=j._readableState;if(ee===null)Ae.reading=!1,O(j,Ae);else{var Be;if(be||(Be=L(Ae,ee)),Be)m(j,Be);else if(Ae.objectMode||ee&&ee.length>0)if(typeof ee!="string"&&!Ae.objectMode&&Object.getPrototypeOf(ee)!==e.prototype&&(ee=r(ee)),fe)Ae.endEmitted?m(j,new _):P(j,Ae,ee,!0);else if(Ae.ended)m(j,new T);else{if(Ae.destroyed)return!1;Ae.reading=!1,Ae.decoder&&!ie?(ee=Ae.decoder.write(ee),Ae.objectMode||ee.length!==0?P(j,Ae,ee,!1):U(j,Ae)):P(j,Ae,ee,!1)}else fe||(Ae.reading=!1,U(j,Ae))}return!Ae.ended&&(Ae.length<Ae.highWaterMark||Ae.length===0)}function P(j,ee,ie,fe){ee.flowing&&ee.length===0&&!ee.sync?(ee.awaitDrain=0,j.emit("data",ie)):(ee.length+=ee.objectMode?1:ie.length,fe?ee.buffer.unshift(ie):ee.buffer.push(ie),ee.needReadable&&I(j)),U(j,ee)}function L(j,ee){var ie;return!o(ee)&&typeof ee!="string"&&ee!==void 0&&!j.objectMode&&(ie=new p("chunk",["string","Buffer","Uint8Array"],ee)),ie}y.prototype.isPaused=function(){return this._readableState.flowing===!1},y.prototype.setEncoding=function(j){w||(w=HM().StringDecoder);var ee=new w(j);this._readableState.decoder=ee,this._readableState.encoding=this._readableState.decoder.encoding;for(var ie=this._readableState.buffer.head,fe="";ie!==null;)fe+=ee.write(ie.data),ie=ie.next;return this._readableState.buffer.clear(),fe!==""&&this._readableState.buffer.push(fe),this._readableState.length=fe.length,this};var z=1073741824;function F(j){return j>=z?j=z:(j--,j|=j>>>1,j|=j>>>2,j|=j>>>4,j|=j>>>8,j|=j>>>16,j++),j}function B(j,ee){return j<=0||ee.length===0&&ee.ended?0:ee.objectMode?1:j!==j?ee.flowing&&ee.length?ee.buffer.head.data.length:ee.length:(j>ee.highWaterMark&&(ee.highWaterMark=F(j)),j<=ee.length?j:ee.ended?ee.length:(ee.needReadable=!0,0))}y.prototype.read=function(j){i("read",j),j=parseInt(j,10);var ee=this._readableState,ie=j;if(j!==0&&(ee.emittedReadable=!1),j===0&&ee.needReadable&&((ee.highWaterMark!==0?ee.length>=ee.highWaterMark:ee.length>0)||ee.ended))return i("read: emitReadable",ee.length,ee.ended),ee.length===0&&ee.ended?Z(this):I(this),null;if(j=B(j,ee),j===0&&ee.ended)return ee.length===0&&Z(this),null;var fe=ee.needReadable;i("need readable",fe),(ee.length===0||ee.length-j<ee.highWaterMark)&&(fe=!0,i("length less than watermark",fe)),ee.ended||ee.reading?(fe=!1,i("reading or ended",fe)):fe&&(i("do read"),ee.reading=!0,ee.sync=!0,ee.length===0&&(ee.needReadable=!0),this._read(ee.highWaterMark),ee.sync=!1,ee.reading||(j=B(ie,ee)));var be;return j>0?be=J(j,ee):be=null,be===null?(ee.needReadable=ee.length<=ee.highWaterMark,j=0):(ee.length-=j,ee.awaitDrain=0),ee.length===0&&(ee.ended||(ee.needReadable=!0),ie!==j&&ee.ended&&Z(this)),be!==null&&this.emit("data",be),be};function O(j,ee){if(i("onEofChunk"),!ee.ended){if(ee.decoder){var ie=ee.decoder.end();ie&&ie.length&&(ee.buffer.push(ie),ee.length+=ee.objectMode?1:ie.length)}ee.ended=!0,ee.sync?I(j):(ee.needReadable=!1,ee.emittedReadable||(ee.emittedReadable=!0,N(j)))}}function I(j){var ee=j._readableState;i("emitReadable",ee.needReadable,ee.emittedReadable),ee.needReadable=!1,ee.emittedReadable||(i("emitReadable",ee.flowing),ee.emittedReadable=!0,process.nextTick(N,j))}function N(j){var ee=j._readableState;i("emitReadable_",ee.destroyed,ee.length,ee.ended),!ee.destroyed&&(ee.length||ee.ended)&&(j.emit("readable"),ee.emittedReadable=!1),ee.needReadable=!ee.flowing&&!ee.ended&&ee.length<=ee.highWaterMark,$(j)}function U(j,ee){ee.readingMore||(ee.readingMore=!0,process.nextTick(W,j,ee))}function W(j,ee){for(;!ee.reading&&!ee.ended&&(ee.length<ee.highWaterMark||ee.flowing&&ee.length===0);){var ie=ee.length;if(i("maybeReadMore read 0"),j.read(0),ie===ee.length)break}ee.readingMore=!1}y.prototype._read=function(j){m(this,new l("_read()"))},y.prototype.pipe=function(j,ee){var ie=this,fe=this._readableState;switch(fe.pipesCount){case 0:fe.pipes=j;break;case 1:fe.pipes=[fe.pipes,j];break;default:fe.pipes.push(j);break}fe.pipesCount+=1,i("pipe count=%d opts=%j",fe.pipesCount,ee);var be=(!ee||ee.end!==!1)&&j!==process.stdout&&j!==process.stderr,Ae=be?Ie:ce;fe.endEmitted?process.nextTick(Ae):ie.once("end",Ae),j.on("unpipe",Be);function Be(ze,tt){i("onunpipe"),ze===ie&&tt&&tt.hasUnpiped===!1&&(tt.hasUnpiped=!0,it())}function Ie(){i("onend"),j.end()}var Ze=Q(ie);j.on("drain",Ze);var at=!1;function it(){i("cleanup"),j.removeListener("close",Me),j.removeListener("finish",ge),j.removeListener("drain",Ze),j.removeListener("error",lt),j.removeListener("unpipe",Be),ie.removeListener("end",Ie),ie.removeListener("end",ce),ie.removeListener("data",et),at=!0,fe.awaitDrain&&(!j._writableState||j._writableState.needDrain)&&Ze()}ie.on("data",et);function et(ze){i("ondata");var tt=j.write(ze);i("dest.write",tt),tt===!1&&((fe.pipesCount===1&&fe.pipes===j||fe.pipesCount>1&&ne(fe.pipes,j)!==-1)&&!at&&(i("false write response, pause",fe.awaitDrain),fe.awaitDrain++),ie.pause())}function lt(ze){i("onerror",ze),ce(),j.removeListener("error",lt),A(j,"error")===0&&m(j,ze)}d(j,"error",lt);function Me(){j.removeListener("finish",ge),ce()}j.once("close",Me);function ge(){i("onfinish"),j.removeListener("close",Me),ce()}j.once("finish",ge);function ce(){i("unpipe"),ie.unpipe(j)}return j.emit("pipe",ie),fe.flowing||(i("pipe resume"),ie.resume()),j};function Q(j){return function(){var ie=j._readableState;i("pipeOnDrain",ie.awaitDrain),ie.awaitDrain&&ie.awaitDrain--,ie.awaitDrain===0&&A(j,"data")&&(ie.flowing=!0,$(j))}}y.prototype.unpipe=function(j){var ee=this._readableState,ie={hasUnpiped:!1};if(ee.pipesCount===0)return this;if(ee.pipesCount===1)return j&&j!==ee.pipes?this:(j||(j=ee.pipes),ee.pipes=null,ee.pipesCount=0,ee.flowing=!1,j&&j.emit("unpipe",this,ie),this);if(!j){var fe=ee.pipes,be=ee.pipesCount;ee.pipes=null,ee.pipesCount=0,ee.flowing=!1;for(var Ae=0;Ae<be;Ae++)fe[Ae].emit("unpipe",this,{hasUnpiped:!1});return this}var Be=ne(ee.pipes,j);return Be===-1?this:(ee.pipes.splice(Be,1),ee.pipesCount-=1,ee.pipesCount===1&&(ee.pipes=ee.pipes[0]),j.emit("unpipe",this,ie),this)},y.prototype.on=function(j,ee){var ie=M.prototype.on.call(this,j,ee),fe=this._readableState;return j==="data"?(fe.readableListening=this.listenerCount("readable")>0,fe.flowing!==!1&&this.resume()):j==="readable"&&!fe.endEmitted&&!fe.readableListening&&(fe.readableListening=fe.needReadable=!0,fe.flowing=!1,fe.emittedReadable=!1,i("on readable",fe.length,fe.reading),fe.length?I(this):fe.reading||process.nextTick(se,this)),ie},y.prototype.addListener=y.prototype.on,y.prototype.removeListener=function(j,ee){var ie=M.prototype.removeListener.call(this,j,ee);return j==="readable"&&process.nextTick(ue,this),ie},y.prototype.removeAllListeners=function(j){var ee=M.prototype.removeAllListeners.apply(this,arguments);return(j==="readable"||j===void 0)&&process.nextTick(ue,this),ee};function ue(j){var ee=j._readableState;ee.readableListening=j.listenerCount("readable")>0,ee.resumeScheduled&&!ee.paused?ee.flowing=!0:j.listenerCount("data")>0&&j.resume()}function se(j){i("readable nexttick read 0"),j.read(0)}y.prototype.resume=function(){var j=this._readableState;return j.flowing||(i("resume"),j.flowing=!j.readableListening,he(this,j)),j.paused=!1,this};function he(j,ee){ee.resumeScheduled||(ee.resumeScheduled=!0,process.nextTick(G,j,ee))}function G(j,ee){i("resume",ee.reading),ee.reading||j.read(0),ee.resumeScheduled=!1,j.emit("resume"),$(j),ee.flowing&&!ee.reading&&j.read(0)}y.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function $(j){var ee=j._readableState;for(i("flow",ee.flowing);ee.flowing&&j.read()!==null;);}y.prototype.wrap=function(j){var ee=this,ie=this._readableState,fe=!1;j.on("end",function(){if(i("wrapped end"),ie.decoder&&!ie.ended){var Be=ie.decoder.end();Be&&Be.length&&ee.push(Be)}ee.push(null)}),j.on("data",function(Be){if(i("wrapped data"),ie.decoder&&(Be=ie.decoder.write(Be)),!(ie.objectMode&&Be==null)&&!(!ie.objectMode&&(!Be||!Be.length))){var Ie=ee.push(Be);Ie||(fe=!0,j.pause())}});for(var be in j)this[be]===void 0&&typeof j[be]=="function"&&(this[be]=function(Ie){return function(){return j[Ie].apply(j,arguments)}}(be));for(var Ae=0;Ae<b.length;Ae++)j.on(b[Ae],this.emit.bind(this,b[Ae]));return this._read=function(Be){i("wrapped _read",Be),fe&&(fe=!1,j.resume())},this},typeof Symbol=="function"&&(y.prototype[Symbol.asyncIterator]=function(){return S===void 0&&(S=M4()),S(this)}),Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(y.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(y.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(ee){this._readableState&&(this._readableState.flowing=ee)}}),y._fromList=J,Object.defineProperty(y.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function J(j,ee){if(ee.length===0)return null;var ie;return ee.objectMode?ie=ee.buffer.shift():!j||j>=ee.length?(ee.decoder?ie=ee.buffer.join(""):ee.buffer.length===1?ie=ee.buffer.first():ie=ee.buffer.concat(ee.length),ee.buffer.clear()):ie=ee.buffer.consume(j,ee.decoder),ie}function Z(j){var ee=j._readableState;i("endReadable",ee.endEmitted),ee.endEmitted||(ee.ended=!0,process.nextTick(re,ee,j))}function re(j,ee){if(i("endReadableNT",j.endEmitted,j.length),!j.endEmitted&&j.length===0&&(j.endEmitted=!0,ee.readable=!1,ee.emit("end"),j.autoDestroy)){var ie=ee._writableState;(!ie||ie.autoDestroy&&ie.finished)&&ee.destroy()}}typeof Symbol=="function"&&(y.from=function(j,ee){return E===void 0&&(E=E4()),E(y,j,ee)});function ne(j,ee){for(var ie=0,fe=j.length;ie<fe;ie++)if(j[ie]===ee)return ie;return-1}}}),WM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_transform.js"(X,H){"use strict";H.exports=o;var g=r0().codes,x=g.ERR_METHOD_NOT_IMPLEMENTED,A=g.ERR_MULTIPLE_CALLBACK,M=g.ERR_TRANSFORM_ALREADY_TRANSFORMING,e=g.ERR_TRANSFORM_WITH_LENGTH_0,t=a0();Yv()(o,t);function r(n,s){var c=this._transformState;c.transforming=!1;var h=c.writecb;if(h===null)return this.emit("error",new A);c.writechunk=null,c.writecb=null,s!=null&&this.push(s),h(n);var v=this._readableState;v.reading=!1,(v.needReadable||v.length<v.highWaterMark)&&this._read(v.highWaterMark)}function o(n){if(!(this instanceof o))return new o(n);t.call(this,n),this._transformState={afterTransform:r.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,n&&(typeof n.transform=="function"&&(this._transform=n.transform),typeof n.flush=="function"&&(this._flush=n.flush)),this.on("prefinish",a)}function a(){var n=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(s,c){i(n,s,c)}):i(this,null,null)}o.prototype.push=function(n,s){return this._transformState.needTransform=!1,t.prototype.push.call(this,n,s)},o.prototype._transform=function(n,s,c){c(new x("_transform()"))},o.prototype._write=function(n,s,c){var h=this._transformState;if(h.writecb=c,h.writechunk=n,h.writeencoding=s,!h.transforming){var v=this._readableState;(h.needTransform||v.needReadable||v.length<v.highWaterMark)&&this._read(v.highWaterMark)}},o.prototype._read=function(n){var s=this._transformState;s.writechunk!==null&&!s.transforming?(s.transforming=!0,this._transform(s.writechunk,s.writeencoding,s.afterTransform)):s.needTransform=!0},o.prototype._destroy=function(n,s){t.prototype._destroy.call(this,n,function(c){s(c)})};function i(n,s,c){if(s)return n.emit("error",s);if(c!=null&&n.push(c),n._writableState.length)throw new e;if(n._transformState.transforming)throw new M;return n.push(null)}}}),k4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_passthrough.js"(X,H){"use strict";H.exports=x;var g=WM();Yv()(x,g);function x(A){if(!(this instanceof x))return new x(A);g.call(this,A)}x.prototype._transform=function(A,M,e){e(null,A)}}}),C4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/pipeline.js"(X,H){"use strict";var g;function x(c){var h=!1;return function(){h||(h=!0,c.apply(void 0,arguments))}}var A=r0().codes,M=A.ERR_MISSING_ARGS,e=A.ERR_STREAM_DESTROYED;function t(c){if(c)throw c}function r(c){return c.setHeader&&typeof c.abort=="function"}function o(c,h,v,p){p=x(p);var T=!1;c.on("close",function(){T=!0}),g===void 0&&(g=v3()),g(c,{readable:h,writable:v},function(_){if(_)return p(_);T=!0,p()});var l=!1;return function(_){if(!T&&!l){if(l=!0,r(c))return c.abort();if(typeof c.destroy=="function")return c.destroy();p(_||new e("pipe"))}}}function a(c){c()}function i(c,h){return c.pipe(h)}function n(c){return!c.length||typeof c[c.length-1]!="function"?t:c.pop()}function s(){for(var c=arguments.length,h=new Array(c),v=0;v<c;v++)h[v]=arguments[v];var p=n(h);if(Array.isArray(h[0])&&(h=h[0]),h.length<2)throw new M("streams");var T,l=h.map(function(_,w){var S=w<h.length-1,E=w>0;return o(_,S,E,function(m){T||(T=m),m&&l.forEach(a),!S&&(l.forEach(a),p(T))})});return h.reduce(i)}H.exports=s}}),L4=Ye({"node_modules/stream-browserify/index.js"(X,H){H.exports=A;var g=Wg().EventEmitter,x=Yv();x(A,g),A.Readable=GM(),A.Writable=qM(),A.Duplex=a0(),A.Transform=WM(),A.PassThrough=k4(),A.finished=v3(),A.pipeline=C4(),A.Stream=A;function A(){g.call(this)}A.prototype.pipe=function(M,e){var t=this;function r(h){M.writable&&M.write(h)===!1&&t.pause&&t.pause()}t.on("data",r);function o(){t.readable&&t.resume&&t.resume()}M.on("drain",o),!M._isStdio&&(!e||e.end!==!1)&&(t.on("end",i),t.on("close",n));var a=!1;function i(){a||(a=!0,M.end())}function n(){a||(a=!0,typeof M.destroy=="function"&&M.destroy())}function s(h){if(c(),g.listenerCount(this,"error")===0)throw h}t.on("error",s),M.on("error",s);function c(){t.removeListener("data",r),M.removeListener("drain",o),t.removeListener("end",i),t.removeListener("close",n),t.removeListener("error",s),M.removeListener("error",s),t.removeListener("end",c),t.removeListener("close",c),M.removeListener("close",c)}return t.on("end",c),t.on("close",c),M.on("close",c),M.emit("pipe",t),M}}}),g1=Ye({"node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se<Q.length;se++)ue[Q[se]]=Object.getOwnPropertyDescriptor(W,Q[se]);return ue},g=/%[sdj%]/g;X.format=function(U){if(!w(U)){for(var W=[],Q=0;Q<arguments.length;Q++)W.push(e(arguments[Q]));return W.join(" ")}for(var Q=1,ue=arguments,se=ue.length,he=String(U).replace(g,function($){if($==="%%")return"%";if(Q>=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q<se;G=ue[++Q])T(G)||!b(G)?he+=" "+G:he+=" "+e(G);return he},X.deprecate=function(U,W){if(typeof process<"u"&&process.noDeprecation===!0)return U;if(typeof process>"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(`
+`)>-1&&(he?$=$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`).slice(2):$=`
+`+$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(`
+`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+`
+ `)+" "+U.join(`,
+ `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$<arguments.length;$++)G.push(arguments[$]);G.push(function(J,Z){J?se(J):ue(Z)});try{W.apply(this,G)}catch(J){se(J)}return he}return Object.setPrototypeOf(Q,Object.getPrototypeOf(W)),O&&Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(Q,H(W))},X.promisify.custom=O;function I(U,W){if(!U){var Q=new Error("Promise was rejected with a falsy value");Q.reason=U,U=Q}return W(U)}function N(U){if(typeof U!="function")throw new TypeError('The "original" argument must be of type Function');function W(){for(var Q=[],ue=0;ue<arguments.length;ue++)Q.push(arguments[ue]);var se=Q.pop();if(typeof se!="function")throw new TypeError("The last argument must be of type Function");var he=this,G=function(){return se.apply(he,arguments)};U.apply(this,Q).then(function($){process.nextTick(G.bind(null,null,$))},function($){process.nextTick(I.bind(null,$,G))})}return Object.setPrototypeOf(W,Object.getPrototypeOf(U)),Object.defineProperties(W,H(U)),W}X.callbackify=N}}),ZM=Ye({"node_modules/assert/build/internal/errors.js"(X,H){"use strict";function g(E){"@babel/helpers - typeof";return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},g(E)}function x(E,m){for(var b=0;b<m.length;b++){var d=m[b];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(E,M(d.key),d)}}function A(E,m,b){return m&&x(E.prototype,m),b&&x(E,b),Object.defineProperty(E,"prototype",{writable:!1}),E}function M(E){var m=e(E,"string");return g(m)==="symbol"?m:String(m)}function e(E,m){if(g(E)!=="object"||E===null)return E;var b=E[Symbol.toPrimitive];if(b!==void 0){var d=b.call(E,m||"default");if(g(d)!=="object")return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return(m==="string"?String:Number)(E)}function t(E,m){if(!(E instanceof m))throw new TypeError("Cannot call a class as a function")}function r(E,m){if(typeof m!="function"&&m!==null)throw new TypeError("Super expression must either be null or a function");E.prototype=Object.create(m&&m.prototype,{constructor:{value:E,writable:!0,configurable:!0}}),Object.defineProperty(E,"prototype",{writable:!1}),m&&o(E,m)}function o(E,m){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(d,u){return d.__proto__=u,d},o(E,m)}function a(E){var m=s();return function(){var d=c(E),u;if(m){var y=c(this).constructor;u=Reflect.construct(d,arguments,y)}else u=d.apply(this,arguments);return i(this,u)}}function i(E,m){if(m&&(g(m)==="object"||typeof m=="function"))return m;if(m!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return n(E)}function n(E){if(E===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return E}function s(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function c(E){return c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(b){return b.__proto__||Object.getPrototypeOf(b)},c(E)}var h={},v,p;function T(E,m,b){b||(b=Error);function d(y,f,P){return typeof m=="string"?m:m(y,f,P)}var u=function(y){r(P,y);var f=a(P);function P(L,z,F){var B;return t(this,P),B=f.call(this,d(L,z,F)),B.code=E,B}return A(P)}(b);h[E]=u}function l(E,m){if(Array.isArray(E)){var b=E.length;return E=E.map(function(d){return String(d)}),b>2?"one of ".concat(m," ").concat(E.slice(0,b-1).join(", "),", or ")+E[b-1]:b===2?"one of ".concat(m," ").concat(E[0]," or ").concat(E[1]):"of ".concat(m," ").concat(E[0])}else return"of ".concat(m," ").concat(String(E))}function _(E,m,b){return E.substr(!b||b<0?0:+b,m.length)===m}function w(E,m,b){return(b===void 0||b>E.length)&&(b=E.length),E.substring(b-m.length,b)===m}function S(E,m,b){return typeof b!="number"&&(b=0),b+m.length>E.length?!1:E.indexOf(m,b)!==-1}T("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),T("ERR_INVALID_ARG_TYPE",function(E,m,b){v===void 0&&(v=X_()),v(typeof E=="string","'name' must be a string");var d;typeof m=="string"&&_(m,"not ")?(d="must not be",m=m.replace(/^not /,"")):d="must be";var u;if(w(E," argument"))u="The ".concat(E," ").concat(d," ").concat(l(m,"type"));else{var y=S(E,".")?"property":"argument";u='The "'.concat(E,'" ').concat(y," ").concat(d," ").concat(l(m,"type"))}return u+=". Received type ".concat(g(b)),u},TypeError),T("ERR_INVALID_ARG_VALUE",function(E,m){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";p===void 0&&(p=g1());var d=p.inspect(m);return d.length>128&&(d="".concat(d.slice(0,128),"...")),"The argument '".concat(E,"' ").concat(b,". Received ").concat(d)},TypeError,RangeError),T("ERR_INVALID_RETURN_VALUE",function(E,m,b){var d;return b&&b.constructor&&b.constructor.name?d="instance of ".concat(b.constructor.name):d="type ".concat(g(b)),"Expected ".concat(E,' to be returned from the "').concat(m,'"')+" function but got ".concat(d,".")},TypeError),T("ERR_MISSING_ARGS",function(){for(var E=arguments.length,m=new Array(E),b=0;b<E;b++)m[b]=arguments[b];v===void 0&&(v=X_()),v(m.length>0,"At least one arg needs to be specified");var d="The ",u=m.length;switch(m=m.map(function(y){return'"'.concat(y,'"')}),u){case 1:d+="".concat(m[0]," argument");break;case 2:d+="".concat(m[0]," and ").concat(m[1]," arguments");break;default:d+=m.slice(0,u-1).join(", "),d+=", and ".concat(m[u-1]," arguments");break}return"".concat(d," must be specified")},TypeError),H.exports.codes=h}}),P4=Ye({"node_modules/assert/build/internal/assert/assertion_error.js"(X,H){"use strict";function g(N,U){var W=Object.keys(N);if(Object.getOwnPropertySymbols){var Q=Object.getOwnPropertySymbols(N);U&&(Q=Q.filter(function(ue){return Object.getOwnPropertyDescriptor(N,ue).enumerable})),W.push.apply(W,Q)}return W}function x(N){for(var U=1;U<arguments.length;U++){var W=arguments[U]!=null?arguments[U]:{};U%2?g(Object(W),!0).forEach(function(Q){A(N,Q,W[Q])}):Object.getOwnPropertyDescriptors?Object.defineProperties(N,Object.getOwnPropertyDescriptors(W)):g(Object(W)).forEach(function(Q){Object.defineProperty(N,Q,Object.getOwnPropertyDescriptor(W,Q))})}return N}function A(N,U,W){return U=r(U),U in N?Object.defineProperty(N,U,{value:W,enumerable:!0,configurable:!0,writable:!0}):N[U]=W,N}function M(N,U){if(!(N instanceof U))throw new TypeError("Cannot call a class as a function")}function e(N,U){for(var W=0;W<U.length;W++){var Q=U[W];Q.enumerable=Q.enumerable||!1,Q.configurable=!0,"value"in Q&&(Q.writable=!0),Object.defineProperty(N,r(Q.key),Q)}}function t(N,U,W){return U&&e(N.prototype,U),W&&e(N,W),Object.defineProperty(N,"prototype",{writable:!1}),N}function r(N){var U=o(N,"string");return _(U)==="symbol"?U:String(U)}function o(N,U){if(_(N)!=="object"||N===null)return N;var W=N[Symbol.toPrimitive];if(W!==void 0){var Q=W.call(N,U||"default");if(_(Q)!=="object")return Q;throw new TypeError("@@toPrimitive must return a primitive value.")}return(U==="string"?String:Number)(N)}function a(N,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");N.prototype=Object.create(U&&U.prototype,{constructor:{value:N,writable:!0,configurable:!0}}),Object.defineProperty(N,"prototype",{writable:!1}),U&&T(N,U)}function i(N){var U=v();return function(){var Q=l(N),ue;if(U){var se=l(this).constructor;ue=Reflect.construct(Q,arguments,se)}else ue=Q.apply(this,arguments);return n(this,ue)}}function n(N,U){if(U&&(_(U)==="object"||typeof U=="function"))return U;if(U!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return s(N)}function s(N){if(N===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return N}function c(N){var U=typeof Map=="function"?new Map:void 0;return c=function(Q){if(Q===null||!p(Q))return Q;if(typeof Q!="function")throw new TypeError("Super expression must either be null or a function");if(typeof U<"u"){if(U.has(Q))return U.get(Q);U.set(Q,ue)}function ue(){return h(Q,arguments,l(this).constructor)}return ue.prototype=Object.create(Q.prototype,{constructor:{value:ue,enumerable:!1,writable:!0,configurable:!0}}),T(ue,Q)},c(N)}function h(N,U,W){return v()?h=Reflect.construct.bind():h=function(ue,se,he){var G=[null];G.push.apply(G,se);var $=Function.bind.apply(ue,G),J=new $;return he&&T(J,he.prototype),J},h.apply(null,arguments)}function v(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function p(N){return Function.toString.call(N).indexOf("[native code]")!==-1}function T(N,U){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Q,ue){return Q.__proto__=ue,Q},T(N,U)}function l(N){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(W){return W.__proto__||Object.getPrototypeOf(W)},l(N)}function _(N){"@babel/helpers - typeof";return _=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(U){return typeof U}:function(U){return U&&typeof Symbol=="function"&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U},_(N)}var w=g1(),S=w.inspect,E=ZM(),m=E.codes.ERR_INVALID_ARG_TYPE;function b(N,U,W){return(W===void 0||W>N.length)&&(W=N.length),N.substring(W-U.length,W)===U}function d(N,U){if(U=Math.floor(U),N.length==0||U==0)return"";var W=N.length*U;for(U=Math.floor(Math.log(U)/Math.log(2));U;)N+=N,U--;return N+=N.substring(0,W-N.length),N}var u="",y="",f="",P="",L={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},z=10;function F(N){var U=Object.keys(N),W=Object.create(Object.getPrototypeOf(N));return U.forEach(function(Q){W[Q]=N[Q]}),Object.defineProperty(W,"message",{value:N.message}),W}function B(N){return S(N,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function O(N,U,W){var Q="",ue="",se=0,he="",G=!1,$=B(N),J=$.split(`
+`),Z=B(U).split(`
+`),re=0,ne="";if(W==="strictEqual"&&_(N)==="object"&&_(U)==="object"&&N!==null&&U!==null&&(W="strictEqualObject"),J.length===1&&Z.length===1&&J[0]!==Z[0]){var j=J[0].length+Z[0].length;if(j<=z){if((_(N)!=="object"||N===null)&&(_(U)!=="object"||U===null)&&(N!==0||U!==0))return"".concat(L[W],`
+
+`)+"".concat(J[0]," !== ").concat(Z[0],`
+`)}else if(W!=="strictEqualObject"){var ee=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(j<ee){for(;J[0][re]===Z[0][re];)re++;re>2&&(ne=`
+ `.concat(d(" ",re),"^"),re=0)}}}for(var ie=J[J.length-1],fe=Z[Z.length-1];ie===fe&&(re++<2?he=`
+ `.concat(ie).concat(he):Q=ie,J.pop(),Z.pop(),!(J.length===0||Z.length===0));)ie=J[J.length-1],fe=Z[Z.length-1];var be=Math.max(J.length,Z.length);if(be===0){var Ae=$.split(`
+`);if(Ae.length>30)for(Ae[26]="".concat(u,"...").concat(P);Ae.length>27;)Ae.pop();return"".concat(L.notIdentical,`
+
+`).concat(Ae.join(`
+`),`
+`)}re>3&&(he=`
+`.concat(u,"...").concat(P).concat(he),G=!0),Q!==""&&(he=`
+ `.concat(Q).concat(he),Q="");var Be=0,Ie=L[W]+`
+`.concat(y,"+ actual").concat(P," ").concat(f,"- expected").concat(P),Ze=" ".concat(u,"...").concat(P," Lines skipped");for(re=0;re<be;re++){var at=re-se;if(J.length<re+1)at>1&&re>2&&(at>4?(ue+=`
+`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
+ `.concat(Z[re-2]),Be++),ue+=`
+ `.concat(Z[re-1]),Be++),se=re,Q+=`
+`.concat(f,"-").concat(P," ").concat(Z[re]),Be++;else if(Z.length<re+1)at>1&&re>2&&(at>4?(ue+=`
+`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
+ `.concat(J[re-2]),Be++),ue+=`
+ `.concat(J[re-1]),Be++),se=re,ue+=`
+`.concat(y,"+").concat(P," ").concat(J[re]),Be++;else{var it=Z[re],et=J[re],lt=et!==it&&(!b(et,",")||et.slice(0,-1)!==it);lt&&b(it,",")&&it.slice(0,-1)===et&&(lt=!1,et+=","),lt?(at>1&&re>2&&(at>4?(ue+=`
+`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
+ `.concat(J[re-2]),Be++),ue+=`
+ `.concat(J[re-1]),Be++),se=re,ue+=`
+`.concat(y,"+").concat(P," ").concat(et),Q+=`
+`.concat(f,"-").concat(P," ").concat(it),Be+=2):(ue+=Q,Q="",(at===1||re===0)&&(ue+=`
+ `.concat(et),Be++))}if(Be>20&&re<be-2)return"".concat(Ie).concat(Ze,`
+`).concat(ue,`
+`).concat(u,"...").concat(P).concat(Q,`
+`)+"".concat(u,"...").concat(P)}return"".concat(Ie).concat(G?Ze:"",`
+`).concat(ue).concat(Q).concat(he).concat(ne)}var I=function(N,U){a(Q,N);var W=i(Q);function Q(ue){var se;if(M(this,Q),_(ue)!=="object"||ue===null)throw new m("options","Object",ue);var he=ue.message,G=ue.operator,$=ue.stackStartFn,J=ue.actual,Z=ue.expected,re=Error.stackTraceLimit;if(Error.stackTraceLimit=0,he!=null)se=W.call(this,String(he));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(u="\x1B[34m",y="\x1B[32m",P="\x1B[39m",f="\x1B[31m"):(u="",y="",P="",f="")),_(J)==="object"&&J!==null&&_(Z)==="object"&&Z!==null&&"stack"in J&&J instanceof Error&&"stack"in Z&&Z instanceof Error&&(J=F(J),Z=F(Z)),G==="deepStrictEqual"||G==="strictEqual")se=W.call(this,O(J,Z,G));else if(G==="notDeepStrictEqual"||G==="notStrictEqual"){var ne=L[G],j=B(J).split(`
+`);if(G==="notStrictEqual"&&_(J)==="object"&&J!==null&&(ne=L.notStrictEqualObject),j.length>30)for(j[26]="".concat(u,"...").concat(P);j.length>27;)j.pop();j.length===1?se=W.call(this,"".concat(ne," ").concat(j[0])):se=W.call(this,"".concat(ne,`
+
+`).concat(j.join(`
+`),`
+`))}else{var ee=B(J),ie="",fe=L[G];G==="notDeepEqual"||G==="notEqual"?(ee="".concat(L[G],`
+
+`).concat(ee),ee.length>1024&&(ee="".concat(ee.slice(0,1021),"..."))):(ie="".concat(B(Z)),ee.length>512&&(ee="".concat(ee.slice(0,509),"...")),ie.length>512&&(ie="".concat(ie.slice(0,509),"...")),G==="deepEqual"||G==="equal"?ee="".concat(fe,`
+
+`).concat(ee,`
+
+should equal
+
+`):ie=" ".concat(G," ").concat(ie)),se=W.call(this,"".concat(ee).concat(ie))}return Error.stackTraceLimit=re,se.generatedMessage=!he,Object.defineProperty(s(se),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),se.code="ERR_ASSERTION",se.actual=J,se.expected=Z,se.operator=G,Error.captureStackTrace&&Error.captureStackTrace(s(se),$),se.stack,se.name="AssertionError",n(se)}return t(Q,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:U,value:function(se,he){return S(this,x(x({},he),{},{customInspect:!1,depth:0}))}}]),Q}(c(Error),S.custom);H.exports=I}}),XM=Ye({"node_modules/object-keys/isArguments.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(A){var M=g.call(A),e=M==="[object Arguments]";return e||(e=M!=="[object Array]"&&A!==null&&typeof A=="object"&&typeof A.length=="number"&&A.length>=0&&g.call(A.callee)==="[object Function]"),e}}}),I4=Ye({"node_modules/object-keys/implementation.js"(X,H){"use strict";var g;Object.keys||(x=Object.prototype.hasOwnProperty,A=Object.prototype.toString,M=XM(),e=Object.prototype.propertyIsEnumerable,t=!e.call({toString:null},"toString"),r=e.call(function(){},"prototype"),o=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],a=function(c){var h=c.constructor;return h&&h.prototype===c},i={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},n=function(){if(typeof window>"u")return!1;for(var c in window)try{if(!i["$"+c]&&x.call(window,c)&&window[c]!==null&&typeof window[c]=="object")try{a(window[c])}catch{return!0}}catch{return!0}return!1}(),s=function(c){if(typeof window>"u"||!n)return a(c);try{return a(c)}catch{return!1}},g=function(h){var v=h!==null&&typeof h=="object",p=A.call(h)==="[object Function]",T=M(h),l=v&&A.call(h)==="[object String]",_=[];if(!v&&!p&&!T)throw new TypeError("Object.keys called on a non-object");var w=r&&p;if(l&&h.length>0&&!x.call(h,0))for(var S=0;S<h.length;++S)_.push(String(S));if(T&&h.length>0)for(var E=0;E<h.length;++E)_.push(String(E));else for(var m in h)!(w&&m==="prototype")&&x.call(h,m)&&_.push(String(m));if(t)for(var b=s(h),d=0;d<o.length;++d)!(b&&o[d]==="constructor")&&x.call(h,o[d])&&_.push(o[d]);return _});var x,A,M,e,t,r,o,a,i,n,s;H.exports=g}}),YM=Ye({"node_modules/object-keys/index.js"(X,H){"use strict";var g=Array.prototype.slice,x=XM(),A=Object.keys,M=A?function(r){return A(r)}:I4(),e=Object.keys;M.shim=function(){if(Object.keys){var r=function(){var o=Object.keys(arguments);return o&&o.length===arguments.length}(1,2);r||(Object.keys=function(a){return x(a)?e(g.call(a)):e(a)})}else Object.keys=M;return Object.keys||M},H.exports=M}}),R4=Ye({"node_modules/object.assign/implementation.js"(X,H){"use strict";var g=YM(),x=h3()(),A=m1(),M=Object,e=A("Array.prototype.push"),t=A("Object.prototype.propertyIsEnumerable"),r=x?Object.getOwnPropertySymbols:null;H.exports=function(a,i){if(a==null)throw new TypeError("target must be an object");var n=M(a);if(arguments.length===1)return n;for(var s=1;s<arguments.length;++s){var c=M(arguments[s]),h=g(c),v=x&&(Object.getOwnPropertySymbols||r);if(v)for(var p=v(c),T=0;T<p.length;++T){var l=p[T];t(c,l)&&e(h,l)}for(var _=0;_<h.length;++_){var w=h[_];if(t(c,w)){var S=c[w];n[w]=S}}}return n}}}),D4=Ye({"node_modules/object.assign/polyfill.js"(X,H){"use strict";var g=R4(),x=function(){if(!Object.assign)return!1;for(var M="abcdefghijklmnopqrst",e=M.split(""),t={},r=0;r<e.length;++r)t[e[r]]=e[r];var o=Object.assign({},t),a="";for(var i in o)a+=i;return M!==a},A=function(){if(!Object.assign||!Object.preventExtensions)return!1;var M=Object.preventExtensions({1:2});try{Object.assign(M,"xy")}catch{return M[1]==="y"}return!1};H.exports=function(){return!Object.assign||x()||A()?g:Object.assign}}}),KM=Ye({"node_modules/object-is/implementation.js"(X,H){"use strict";var g=function(x){return x!==x};H.exports=function(A,M){return A===0&&M===0?1/A===1/M:!!(A===M||g(A)&&g(M))}}}),m3=Ye({"node_modules/object-is/polyfill.js"(X,H){"use strict";var g=KM();H.exports=function(){return typeof Object.is=="function"?Object.is:g}}}),Z_=Ye({"node_modules/define-properties/index.js"(X,H){"use strict";var g=YM(),x=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",A=Object.prototype.toString,M=Array.prototype.concat,e=Object.defineProperty,t=function(n){return typeof n=="function"&&A.call(n)==="[object Function]"},r=zM()(),o=e&&r,a=function(n,s,c,h){if(s in n){if(h===!0){if(n[s]===c)return}else if(!t(h)||!h())return}o?e(n,s,{configurable:!0,enumerable:!1,value:c,writable:!0}):n[s]=c},i=function(n,s){var c=arguments.length>2?arguments[2]:{},h=g(s);x&&(h=M.call(h,Object.getOwnPropertySymbols(s)));for(var v=0;v<h.length;v+=1)a(n,h[v],s[h[v]],c[h[v]])};i.supportsDescriptors=!!o,H.exports=i}}),z4=Ye({"node_modules/object-is/shim.js"(X,H){"use strict";var g=m3(),x=Z_();H.exports=function(){var M=g();return x(Object,{is:M},{is:function(){return Object.is!==M}}),M}}}),F4=Ye({"node_modules/object-is/index.js"(X,H){"use strict";var g=Z_(),x=W_(),A=KM(),M=m3(),e=z4(),t=x(M(),Object);g(t,{getPolyfill:M,implementation:A,shim:e}),H.exports=t}}),JM=Ye({"node_modules/is-nan/implementation.js"(X,H){"use strict";H.exports=function(x){return x!==x}}}),$M=Ye({"node_modules/is-nan/polyfill.js"(X,H){"use strict";var g=JM();H.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:g}}}),O4=Ye({"node_modules/is-nan/shim.js"(X,H){"use strict";var g=Z_(),x=$M();H.exports=function(){var M=x();return g(Number,{isNaN:M},{isNaN:function(){return Number.isNaN!==M}}),M}}}),B4=Ye({"node_modules/is-nan/index.js"(X,H){"use strict";var g=W_(),x=Z_(),A=JM(),M=$M(),e=O4(),t=g(M(),Number);x(t,{getPolyfill:M,implementation:A,shim:e}),H.exports=t}}),N4=Ye({"node_modules/assert/build/internal/util/comparisons.js"(X,H){"use strict";function g(Me,ge){return t(Me)||e(Me,ge)||A(Me,ge)||x()}function x(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function A(Me,ge){if(Me){if(typeof Me=="string")return M(Me,ge);var ce=Object.prototype.toString.call(Me).slice(8,-1);if(ce==="Object"&&Me.constructor&&(ce=Me.constructor.name),ce==="Map"||ce==="Set")return Array.from(Me);if(ce==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(ce))return M(Me,ge)}}function M(Me,ge){(ge==null||ge>Me.length)&&(ge=Me.length);for(var ce=0,ze=new Array(ge);ce<ge;ce++)ze[ce]=Me[ce];return ze}function e(Me,ge){var ce=Me==null?null:typeof Symbol<"u"&&Me[Symbol.iterator]||Me["@@iterator"];if(ce!=null){var ze,tt,nt,Qe,Ct=[],St=!0,Ot=!1;try{if(nt=(ce=ce.call(Me)).next,ge===0){if(Object(ce)!==ce)return;St=!1}else for(;!(St=(ze=nt.call(ce)).done)&&(Ct.push(ze.value),Ct.length!==ge);St=!0);}catch(jt){Ot=!0,tt=jt}finally{try{if(!St&&ce.return!=null&&(Qe=ce.return(),Object(Qe)!==Qe))return}finally{if(Ot)throw tt}}return Ct}}function t(Me){if(Array.isArray(Me))return Me}function r(Me){"@babel/helpers - typeof";return r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ge){return typeof ge}:function(ge){return ge&&typeof Symbol=="function"&&ge.constructor===Symbol&&ge!==Symbol.prototype?"symbol":typeof ge},r(Me)}var o=/a/g.flags!==void 0,a=function(ge){var ce=[];return ge.forEach(function(ze){return ce.push(ze)}),ce},i=function(ge){var ce=[];return ge.forEach(function(ze,tt){return ce.push([tt,ze])}),ce},n=Object.is?Object.is:F4(),s=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},c=Number.isNaN?Number.isNaN:B4();function h(Me){return Me.call.bind(Me)}var v=h(Object.prototype.hasOwnProperty),p=h(Object.prototype.propertyIsEnumerable),T=h(Object.prototype.toString),l=g1().types,_=l.isAnyArrayBuffer,w=l.isArrayBufferView,S=l.isDate,E=l.isMap,m=l.isRegExp,b=l.isSet,d=l.isNativeError,u=l.isBoxedPrimitive,y=l.isNumberObject,f=l.isStringObject,P=l.isBooleanObject,L=l.isBigIntObject,z=l.isSymbolObject,F=l.isFloat32Array,B=l.isFloat64Array;function O(Me){if(Me.length===0||Me.length>10)return!0;for(var ge=0;ge<Me.length;ge++){var ce=Me.charCodeAt(ge);if(ce<48||ce>57)return!0}return Me.length===10&&Me>=Math.pow(2,32)}function I(Me){return Object.keys(Me).filter(O).concat(s(Me).filter(Object.prototype.propertyIsEnumerable.bind(Me)))}function N(Me,ge){if(Me===ge)return 0;for(var ce=Me.length,ze=ge.length,tt=0,nt=Math.min(ce,ze);tt<nt;++tt)if(Me[tt]!==ge[tt]){ce=Me[tt],ze=ge[tt];break}return ce<ze?-1:ze<ce?1:0}var U=void 0,W=!0,Q=!1,ue=0,se=1,he=2,G=3;function $(Me,ge){return o?Me.source===ge.source&&Me.flags===ge.flags:RegExp.prototype.toString.call(Me)===RegExp.prototype.toString.call(ge)}function J(Me,ge){if(Me.byteLength!==ge.byteLength)return!1;for(var ce=0;ce<Me.byteLength;ce++)if(Me[ce]!==ge[ce])return!1;return!0}function Z(Me,ge){return Me.byteLength!==ge.byteLength?!1:N(new Uint8Array(Me.buffer,Me.byteOffset,Me.byteLength),new Uint8Array(ge.buffer,ge.byteOffset,ge.byteLength))===0}function re(Me,ge){return Me.byteLength===ge.byteLength&&N(new Uint8Array(Me),new Uint8Array(ge))===0}function ne(Me,ge){return y(Me)?y(ge)&&n(Number.prototype.valueOf.call(Me),Number.prototype.valueOf.call(ge)):f(Me)?f(ge)&&String.prototype.valueOf.call(Me)===String.prototype.valueOf.call(ge):P(Me)?P(ge)&&Boolean.prototype.valueOf.call(Me)===Boolean.prototype.valueOf.call(ge):L(Me)?L(ge)&&BigInt.prototype.valueOf.call(Me)===BigInt.prototype.valueOf.call(ge):z(ge)&&Symbol.prototype.valueOf.call(Me)===Symbol.prototype.valueOf.call(ge)}function j(Me,ge,ce,ze){if(Me===ge)return Me!==0?!0:ce?n(Me,ge):!0;if(ce){if(r(Me)!=="object")return typeof Me=="number"&&c(Me)&&c(ge);if(r(ge)!=="object"||Me===null||ge===null||Object.getPrototypeOf(Me)!==Object.getPrototypeOf(ge))return!1}else{if(Me===null||r(Me)!=="object")return ge===null||r(ge)!=="object"?Me==ge:!1;if(ge===null||r(ge)!=="object")return!1}var tt=T(Me),nt=T(ge);if(tt!==nt)return!1;if(Array.isArray(Me)){if(Me.length!==ge.length)return!1;var Qe=I(Me,U),Ct=I(ge,U);return Qe.length!==Ct.length?!1:ie(Me,ge,ce,ze,se,Qe)}if(tt==="[object Object]"&&(!E(Me)&&E(ge)||!b(Me)&&b(ge)))return!1;if(S(Me)){if(!S(ge)||Date.prototype.getTime.call(Me)!==Date.prototype.getTime.call(ge))return!1}else if(m(Me)){if(!m(ge)||!$(Me,ge))return!1}else if(d(Me)||Me instanceof Error){if(Me.message!==ge.message||Me.name!==ge.name)return!1}else if(w(Me)){if(!ce&&(F(Me)||B(Me))){if(!J(Me,ge))return!1}else if(!Z(Me,ge))return!1;var St=I(Me,U),Ot=I(ge,U);return St.length!==Ot.length?!1:ie(Me,ge,ce,ze,ue,St)}else{if(b(Me))return!b(ge)||Me.size!==ge.size?!1:ie(Me,ge,ce,ze,he);if(E(Me))return!E(ge)||Me.size!==ge.size?!1:ie(Me,ge,ce,ze,G);if(_(Me)){if(!re(Me,ge))return!1}else if(u(Me)&&!ne(Me,ge))return!1}return ie(Me,ge,ce,ze,ue)}function ee(Me,ge){return ge.filter(function(ce){return p(Me,ce)})}function ie(Me,ge,ce,ze,tt,nt){if(arguments.length===5){nt=Object.keys(Me);var Qe=Object.keys(ge);if(nt.length!==Qe.length)return!1}for(var Ct=0;Ct<nt.length;Ct++)if(!v(ge,nt[Ct]))return!1;if(ce&&arguments.length===5){var St=s(Me);if(St.length!==0){var Ot=0;for(Ct=0;Ct<St.length;Ct++){var jt=St[Ct];if(p(Me,jt)){if(!p(ge,jt))return!1;nt.push(jt),Ot++}else if(p(ge,jt))return!1}var ur=s(ge);if(St.length!==ur.length&&ee(ge,ur).length!==Ot)return!1}else{var ar=s(ge);if(ar.length!==0&&ee(ge,ar).length!==0)return!1}}if(nt.length===0&&(tt===ue||tt===se&&Me.length===0||Me.size===0))return!0;if(ze===void 0)ze={val1:new Map,val2:new Map,position:0};else{var Cr=ze.val1.get(Me);if(Cr!==void 0){var vr=ze.val2.get(ge);if(vr!==void 0)return Cr===vr}ze.position++}ze.val1.set(Me,ze.position),ze.val2.set(ge,ze.position);var _r=it(Me,ge,ce,nt,ze,tt);return ze.val1.delete(Me),ze.val2.delete(ge),_r}function fe(Me,ge,ce,ze){for(var tt=a(Me),nt=0;nt<tt.length;nt++){var Qe=tt[nt];if(j(ge,Qe,ce,ze))return Me.delete(Qe),!0}return!1}function be(Me){switch(r(Me)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":Me=+Me;case"number":if(c(Me))return!1}return!0}function Ae(Me,ge,ce){var ze=be(ce);return ze??(ge.has(ze)&&!Me.has(ze))}function Be(Me,ge,ce,ze,tt){var nt=be(ce);if(nt!=null)return nt;var Qe=ge.get(nt);return Qe===void 0&&!ge.has(nt)||!j(ze,Qe,!1,tt)?!1:!Me.has(nt)&&j(ze,Qe,!1,tt)}function Ie(Me,ge,ce,ze){for(var tt=null,nt=a(Me),Qe=0;Qe<nt.length;Qe++){var Ct=nt[Qe];if(r(Ct)==="object"&&Ct!==null)tt===null&&(tt=new Set),tt.add(Ct);else if(!ge.has(Ct)){if(ce||!Ae(Me,ge,Ct))return!1;tt===null&&(tt=new Set),tt.add(Ct)}}if(tt!==null){for(var St=a(ge),Ot=0;Ot<St.length;Ot++){var jt=St[Ot];if(r(jt)==="object"&&jt!==null){if(!fe(tt,jt,ce,ze))return!1}else if(!ce&&!Me.has(jt)&&!fe(tt,jt,ce,ze))return!1}return tt.size===0}return!0}function Ze(Me,ge,ce,ze,tt,nt){for(var Qe=a(Me),Ct=0;Ct<Qe.length;Ct++){var St=Qe[Ct];if(j(ce,St,tt,nt)&&j(ze,ge.get(St),tt,nt))return Me.delete(St),!0}return!1}function at(Me,ge,ce,ze){for(var tt=null,nt=i(Me),Qe=0;Qe<nt.length;Qe++){var Ct=g(nt[Qe],2),St=Ct[0],Ot=Ct[1];if(r(St)==="object"&&St!==null)tt===null&&(tt=new Set),tt.add(St);else{var jt=ge.get(St);if(jt===void 0&&!ge.has(St)||!j(Ot,jt,ce,ze)){if(ce||!Be(Me,ge,St,Ot,ze))return!1;tt===null&&(tt=new Set),tt.add(St)}}}if(tt!==null){for(var ur=i(ge),ar=0;ar<ur.length;ar++){var Cr=g(ur[ar],2),vr=Cr[0],_r=Cr[1];if(r(vr)==="object"&&vr!==null){if(!Ze(tt,Me,vr,_r,ce,ze))return!1}else if(!ce&&(!Me.has(vr)||!j(Me.get(vr),_r,!1,ze))&&!Ze(tt,Me,vr,_r,!1,ze))return!1}return tt.size===0}return!0}function it(Me,ge,ce,ze,tt,nt){var Qe=0;if(nt===he){if(!Ie(Me,ge,ce,tt))return!1}else if(nt===G){if(!at(Me,ge,ce,tt))return!1}else if(nt===se)for(;Qe<Me.length;Qe++)if(v(Me,Qe)){if(!v(ge,Qe)||!j(Me[Qe],ge[Qe],ce,tt))return!1}else{if(v(ge,Qe))return!1;for(var Ct=Object.keys(Me);Qe<Ct.length;Qe++){var St=Ct[Qe];if(!v(ge,St)||!j(Me[St],ge[St],ce,tt))return!1}return Ct.length===Object.keys(ge).length}for(Qe=0;Qe<ze.length;Qe++){var Ot=ze[Qe];if(!j(Me[Ot],ge[Ot],ce,tt))return!1}return!0}function et(Me,ge){return j(Me,ge,Q)}function lt(Me,ge){return j(Me,ge,W)}H.exports={isDeepEqual:et,isDeepStrictEqual:lt}}}),X_=Ye({"node_modules/assert/build/assert.js"(X,H){"use strict";function g($){"@babel/helpers - typeof";return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(J){return typeof J}:function(J){return J&&typeof Symbol=="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J},g($)}function x($,J){for(var Z=0;Z<J.length;Z++){var re=J[Z];re.enumerable=re.enumerable||!1,re.configurable=!0,"value"in re&&(re.writable=!0),Object.defineProperty($,M(re.key),re)}}function A($,J,Z){return J&&x($.prototype,J),Z&&x($,Z),Object.defineProperty($,"prototype",{writable:!1}),$}function M($){var J=e($,"string");return g(J)==="symbol"?J:String(J)}function e($,J){if(g($)!=="object"||$===null)return $;var Z=$[Symbol.toPrimitive];if(Z!==void 0){var re=Z.call($,J||"default");if(g(re)!=="object")return re;throw new TypeError("@@toPrimitive must return a primitive value.")}return(J==="string"?String:Number)($)}function t($,J){if(!($ instanceof J))throw new TypeError("Cannot call a class as a function")}var r=ZM(),o=r.codes,a=o.ERR_AMBIGUOUS_ARGUMENT,i=o.ERR_INVALID_ARG_TYPE,n=o.ERR_INVALID_ARG_VALUE,s=o.ERR_INVALID_RETURN_VALUE,c=o.ERR_MISSING_ARGS,h=P4(),v=g1(),p=v.inspect,T=g1().types,l=T.isPromise,_=T.isRegExp,w=D4()(),S=m3()(),E=m1()("RegExp.prototype.test"),m,b;function d(){var $=N4();m=$.isDeepEqual,b=$.isDeepStrictEqual}var u=!1,y=H.exports=F,f={};function P($){throw $.message instanceof Error?$.message:new h($)}function L($,J,Z,re,ne){var j=arguments.length,ee;if(j===0)ee="Failed";else if(j===1)Z=$,$=void 0;else{if(u===!1){u=!0;var ie=process.emitWarning?process.emitWarning:console.warn.bind(console);ie("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")}j===2&&(re="!=")}if(Z instanceof Error)throw Z;var fe={actual:$,expected:J,operator:re===void 0?"fail":re,stackStartFn:ne||L};Z!==void 0&&(fe.message=Z);var be=new h(fe);throw ee&&(be.message=ee,be.generatedMessage=!0),be}y.fail=L,y.AssertionError=h;function z($,J,Z,re){if(!Z){var ne=!1;if(J===0)ne=!0,re="No value argument passed to `assert.ok()`";else if(re instanceof Error)throw re;var j=new h({actual:Z,expected:!0,message:re,operator:"==",stackStartFn:$});throw j.generatedMessage=ne,j}}function F(){for(var $=arguments.length,J=new Array($),Z=0;Z<$;Z++)J[Z]=arguments[Z];z.apply(void 0,[F,J.length].concat(J))}y.ok=F,y.equal=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");J!=Z&&P({actual:J,expected:Z,message:re,operator:"==",stackStartFn:$})},y.notEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");J==Z&&P({actual:J,expected:Z,message:re,operator:"!=",stackStartFn:$})},y.deepEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),m(J,Z)||P({actual:J,expected:Z,message:re,operator:"deepEqual",stackStartFn:$})},y.notDeepEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),m(J,Z)&&P({actual:J,expected:Z,message:re,operator:"notDeepEqual",stackStartFn:$})},y.deepStrictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),b(J,Z)||P({actual:J,expected:Z,message:re,operator:"deepStrictEqual",stackStartFn:$})},y.notDeepStrictEqual=B;function B($,J,Z){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),b($,J)&&P({actual:$,expected:J,message:Z,operator:"notDeepStrictEqual",stackStartFn:B})}y.strictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");S(J,Z)||P({actual:J,expected:Z,message:re,operator:"strictEqual",stackStartFn:$})},y.notStrictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");S(J,Z)&&P({actual:J,expected:Z,message:re,operator:"notStrictEqual",stackStartFn:$})};var O=A(function $(J,Z,re){var ne=this;t(this,$),Z.forEach(function(j){j in J&&(re!==void 0&&typeof re[j]=="string"&&_(J[j])&&E(J[j],re[j])?ne[j]=re[j]:ne[j]=J[j])})});function I($,J,Z,re,ne,j){if(!(Z in $)||!b($[Z],J[Z])){if(!re){var ee=new O($,ne),ie=new O(J,ne,$),fe=new h({actual:ee,expected:ie,operator:"deepStrictEqual",stackStartFn:j});throw fe.actual=$,fe.expected=J,fe.operator=j.name,fe}P({actual:$,expected:J,message:re,operator:j.name,stackStartFn:j})}}function N($,J,Z,re){if(typeof J!="function"){if(_(J))return E(J,$);if(arguments.length===2)throw new i("expected",["Function","RegExp"],J);if(g($)!=="object"||$===null){var ne=new h({actual:$,expected:J,message:Z,operator:"deepStrictEqual",stackStartFn:re});throw ne.operator=re.name,ne}var j=Object.keys(J);if(J instanceof Error)j.push("name","message");else if(j.length===0)throw new n("error",J,"may not be an empty object");return m===void 0&&d(),j.forEach(function(ee){typeof $[ee]=="string"&&_(J[ee])&&E(J[ee],$[ee])||I($,J,ee,Z,j,re)}),!0}return J.prototype!==void 0&&$ instanceof J?!0:Error.isPrototypeOf(J)?!1:J.call({},$)===!0}function U($){if(typeof $!="function")throw new i("fn","Function",$);try{$()}catch(J){return J}return f}function W($){return l($)||$!==null&&g($)==="object"&&typeof $.then=="function"&&typeof $.catch=="function"}function Q($){return Promise.resolve().then(function(){var J;if(typeof $=="function"){if(J=$(),!W(J))throw new s("instance of Promise","promiseFn",J)}else if(W($))J=$;else throw new i("promiseFn",["Function","Promise"],$);return Promise.resolve().then(function(){return J}).then(function(){return f}).catch(function(Z){return Z})})}function ue($,J,Z,re){if(typeof Z=="string"){if(arguments.length===4)throw new i("error",["Object","Error","Function","RegExp"],Z);if(g(J)==="object"&&J!==null){if(J.message===Z)throw new a("error/message",'The error message "'.concat(J.message,'" is identical to the message.'))}else if(J===Z)throw new a("error/message",'The error "'.concat(J,'" is identical to the message.'));re=Z,Z=void 0}else if(Z!=null&&g(Z)!=="object"&&typeof Z!="function")throw new i("error",["Object","Error","Function","RegExp"],Z);if(J===f){var ne="";Z&&Z.name&&(ne+=" (".concat(Z.name,")")),ne+=re?": ".concat(re):".";var j=$.name==="rejects"?"rejection":"exception";P({actual:void 0,expected:Z,operator:$.name,message:"Missing expected ".concat(j).concat(ne),stackStartFn:$})}if(Z&&!N(J,Z,re,$))throw J}function se($,J,Z,re){if(J!==f){if(typeof Z=="string"&&(re=Z,Z=void 0),!Z||N(J,Z)){var ne=re?": ".concat(re):".",j=$.name==="doesNotReject"?"rejection":"exception";P({actual:J,expected:Z,operator:$.name,message:"Got unwanted ".concat(j).concat(ne,`
+`)+'Actual message: "'.concat(J&&J.message,'"'),stackStartFn:$})}throw J}}y.throws=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];ue.apply(void 0,[$,U(J)].concat(re))},y.rejects=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];return Q(J).then(function(j){return ue.apply(void 0,[$,j].concat(re))})},y.doesNotThrow=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];se.apply(void 0,[$,U(J)].concat(re))},y.doesNotReject=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];return Q(J).then(function(j){return se.apply(void 0,[$,j].concat(re))})},y.ifError=function $(J){if(J!=null){var Z="ifError got unwanted exception: ";g(J)==="object"&&typeof J.message=="string"?J.message.length===0&&J.constructor?Z+=J.constructor.name:Z+=J.message:Z+=p(J);var re=new h({actual:J,expected:null,operator:"ifError",message:Z,stackStartFn:$}),ne=J.stack;if(typeof ne=="string"){var j=ne.split(`
+`);j.shift();for(var ee=re.stack.split(`
+`),ie=0;ie<j.length;ie++){var fe=ee.indexOf(j[ie]);if(fe!==-1){ee=ee.slice(0,fe);break}}re.stack="".concat(ee.join(`
+`),`
+`).concat(j.join(`
+`))}throw re}};function he($,J,Z,re,ne){if(!_(J))throw new i("regexp","RegExp",J);var j=ne==="match";if(typeof $!="string"||E(J,$)!==j){if(Z instanceof Error)throw Z;var ee=!Z;Z=Z||(typeof $!="string"?'The "string" argument must be of type string. Received type '+"".concat(g($)," (").concat(p($),")"):(j?"The input did not match the regular expression ":"The input was expected to not match the regular expression ")+"".concat(p(J),`. Input:
+
+`).concat(p($),`
+`));var ie=new h({actual:$,expected:J,message:Z,operator:ne,stackStartFn:re});throw ie.generatedMessage=ee,ie}}y.match=function $(J,Z,re){he(J,Z,re,$,"match")},y.doesNotMatch=function $(J,Z,re){he(J,Z,re,$,"doesNotMatch")};function G(){for(var $=arguments.length,J=new Array($),Z=0;Z<$;Z++)J[Z]=arguments[Z];z.apply(void 0,[G,J.length].concat(J))}y.strict=w(G,y,{equal:y.strictEqual,deepEqual:y.deepStrictEqual,notEqual:y.notStrictEqual,notDeepEqual:y.notDeepStrictEqual}),y.strict.strict=y.strict}}),U4=Ye({"node_modules/stream-parser/node_modules/ms/index.js"(X,H){var g=1e3,x=g*60,A=x*60,M=A*24,e=M*365.25;H.exports=function(i,n){n=n||{};var s=typeof i;if(s==="string"&&i.length>0)return t(i);if(s==="number"&&isNaN(i)===!1)return n.long?o(i):r(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))};function t(i){if(i=String(i),!(i.length>100)){var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(i);if(n){var s=parseFloat(n[1]),c=(n[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*e;case"days":case"day":case"d":return s*M;case"hours":case"hour":case"hrs":case"hr":case"h":return s*A;case"minutes":case"minute":case"mins":case"min":case"m":return s*x;case"seconds":case"second":case"secs":case"sec":case"s":return s*g;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function r(i){return i>=M?Math.round(i/M)+"d":i>=A?Math.round(i/A)+"h":i>=x?Math.round(i/x)+"m":i>=g?Math.round(i/g)+"s":i+"ms"}function o(i){return a(i,M,"day")||a(i,A,"hour")||a(i,x,"minute")||a(i,g,"second")||i+" ms"}function a(i,n,s){if(!(i<n))return i<n*1.5?Math.floor(i/n)+" "+s:Math.ceil(i/n)+" "+s+"s"}}}),j4=Ye({"node_modules/stream-parser/node_modules/debug/src/debug.js"(X,H){X=H.exports=A.debug=A.default=A,X.coerce=r,X.disable=e,X.enable=M,X.enabled=t,X.humanize=U4(),X.names=[],X.skips=[],X.formatters={};var g;function x(o){var a=0,i;for(i in o)a=(a<<5)-a+o.charCodeAt(i),a|=0;return X.colors[Math.abs(a)%X.colors.length]}function A(o){function a(){if(a.enabled){var i=a,n=+new Date,s=n-(g||n);i.diff=s,i.prev=g,i.curr=n,g=n;for(var c=new Array(arguments.length),h=0;h<c.length;h++)c[h]=arguments[h];c[0]=X.coerce(c[0]),typeof c[0]!="string"&&c.unshift("%O");var v=0;c[0]=c[0].replace(/%([a-zA-Z%])/g,function(T,l){if(T==="%%")return T;v++;var _=X.formatters[l];if(typeof _=="function"){var w=c[v];T=_.call(i,w),c.splice(v,1),v--}return T}),X.formatArgs.call(i,c);var p=a.log||X.log||console.log.bind(console);p.apply(i,c)}}return a.namespace=o,a.enabled=X.enabled(o),a.useColors=X.useColors(),a.color=x(o),typeof X.init=="function"&&X.init(a),a}function M(o){X.save(o),X.names=[],X.skips=[];for(var a=(typeof o=="string"?o:"").split(/[\s,]+/),i=a.length,n=0;n<i;n++)a[n]&&(o=a[n].replace(/\*/g,".*?"),o[0]==="-"?X.skips.push(new RegExp("^"+o.substr(1)+"$")):X.names.push(new RegExp("^"+o+"$")))}function e(){X.enable("")}function t(o){var a,i;for(a=0,i=X.skips.length;a<i;a++)if(X.skips[a].test(o))return!1;for(a=0,i=X.names.length;a<i;a++)if(X.names[a].test(o))return!0;return!1}function r(o){return o instanceof Error?o.stack||o.message:o}}}),V4=Ye({"node_modules/stream-parser/node_modules/debug/src/browser.js"(X,H){X=H.exports=j4(),X.log=A,X.formatArgs=x,X.save=M,X.load=e,X.useColors=g,X.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:t(),X.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function g(){return typeof window<"u"&&window.process&&window.process.type==="renderer"?!0:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}X.formatters.j=function(r){try{return JSON.stringify(r)}catch(o){return"[UnexpectedJSONParseError]: "+o.message}};function x(r){var o=this.useColors;if(r[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+r[0]+(o?"%c ":" ")+"+"+X.humanize(this.diff),!!o){var a="color: "+this.color;r.splice(1,0,a,"color: inherit");var i=0,n=0;r[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(i++,s==="%c"&&(n=i))}),r.splice(n,0,a)}}function A(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function M(r){try{r==null?X.storage.removeItem("debug"):X.storage.debug=r}catch{}}function e(){var r;try{r=X.storage.debug}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}X.enable(e());function t(){try{return window.localStorage}catch{}}}}),q4=Ye({"node_modules/stream-parser/index.js"(X,H){var g=X_(),x=V4()("stream-parser");H.exports=r;var A=-1,M=0,e=1,t=2;function r(l){var _=l&&typeof l._transform=="function",w=l&&typeof l._write=="function";if(!_&&!w)throw new Error("must pass a Writable or Transform stream in");x("extending Parser into stream"),l._bytes=a,l._skipBytes=i,_&&(l._passthrough=n),_?l._transform=c:l._write=s}function o(l){x("initializing parser stream"),l._parserBytesLeft=0,l._parserBuffers=[],l._parserBuffered=0,l._parserState=A,l._parserCallback=null,typeof l.push=="function"&&(l._parserOutput=l.push.bind(l)),l._parserInit=!0}function a(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(isFinite(l)&&l>0,'can only buffer a finite number of bytes > 0, got "'+l+'"'),this._parserInit||o(this),x("buffering %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=M}function i(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(l>0,'can only skip > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("skipping %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=e}function n(l,_){g(!this._parserCallback,'There is already a "callback" set!'),g(l>0,'can only pass through > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("passing through %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=t}function s(l,_,w){this._parserInit||o(this),x("write(%o bytes)",l.length),typeof _=="function"&&(w=_),p(this,l,null,w)}function c(l,_,w){this._parserInit||o(this),x("transform(%o bytes)",l.length),typeof _!="function"&&(_=this._parserOutput),p(this,l,_,w)}function h(l,_,w,S){return l._parserBytesLeft<=0?S(new Error("got data but not currently parsing anything")):_.length<=l._parserBytesLeft?function(){return v(l,_,w,S)}:function(){var E=_.slice(0,l._parserBytesLeft);return v(l,E,w,function(m){if(m)return S(m);if(_.length>E.length)return function(){return h(l,_.slice(E.length),w,S)}})}}function v(l,_,w,S){if(l._parserBytesLeft-=_.length,x("%o bytes left for stream piece",l._parserBytesLeft),l._parserState===M?(l._parserBuffers.push(_),l._parserBuffered+=_.length):l._parserState===t&&w(_),l._parserBytesLeft===0){var E=l._parserCallback;if(E&&l._parserState===M&&l._parserBuffers.length>1&&(_=Buffer.concat(l._parserBuffers,l._parserBuffered)),l._parserState!==M&&(_=null),l._parserCallback=null,l._parserBuffered=0,l._parserState=A,l._parserBuffers.splice(0),E){var m=[];_&&m.push(_),w&&m.push(w);var b=E.length>m.length;b&&m.push(T(S));var d=E.apply(l,m);if(!b||S===d)return S}}else return S}var p=T(h);function T(l){return function(){for(var _=l.apply(this,arguments);typeof _=="function";)_=_();return _}}}}),Mu=Ye({"node_modules/probe-image-size/lib/common.js"(X){"use strict";var H=L4().Transform,g=q4();function x(){H.call(this,{readableObjectMode:!0})}x.prototype=Object.create(H.prototype),x.prototype.constructor=x,g(x.prototype),X.ParserStream=x,X.sliceEq=function(M,e,t){for(var r=e,o=0;o<t.length;)if(M[r++]!==t[o++])return!1;return!0},X.str2arr=function(M,e){var t=[],r=0;if(e&&e==="hex")for(;r<M.length;)t.push(parseInt(M.slice(r,r+2),16)),r+=2;else for(;r<M.length;r++)t.push(M.charCodeAt(r)&255);return t},X.readUInt16LE=function(M,e){return M[e]|M[e+1]<<8},X.readUInt16BE=function(M,e){return M[e+1]|M[e]<<8},X.readUInt32LE=function(M,e){return M[e]|M[e+1]<<8|M[e+2]<<16|M[e+3]*16777216},X.readUInt32BE=function(M,e){return M[e+3]|M[e+2]<<8|M[e+1]<<16|M[e]*16777216};function A(M,e,t){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||"",this.name=this.constructor.name,this.message=M,e&&(this.code=e),t&&(this.statusCode=t)}A.prototype=Object.create(Error.prototype),A.prototype.constructor=A,X.ProbeError=A}}),H4=Ye({"node_modules/probe-image-size/lib/miaf_utils.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().readUInt32BE;function A(n,s){if(n.length<4+s)return null;var c=x(n,s);return n.length<c+s||c<8?null:{boxtype:String.fromCharCode.apply(null,n.slice(s+4,s+8)),data:n.slice(s+8,s+c),end:s+c}}H.exports.unbox=A;function M(n,s){for(var c=0;;){var h=A(n,c);if(!h)break;switch(h.boxtype){case"ispe":s.sizes.push({width:x(h.data,4),height:x(h.data,8)});break;case"irot":s.transforms.push({type:"irot",value:h.data[0]&3});break;case"imir":s.transforms.push({type:"imir",value:h.data[0]&1});break}c=h.end}}function e(n,s,c){for(var h=0,v=0;v<c;v++)h=h*256+(n[s+v]||0);return h}function t(n,s){for(var c=n[4]>>4&15,h=n[4]&15,v=n[5]>>4&15,p=g(n,6),T=8,l=0;l<p;l++){var _=g(n,T);T+=2;var w=g(n,T);T+=2;var S=e(n,T,v);T+=v;var E=g(n,T);if(T+=2,w===0&&E===1){var m=e(n,T,c),b=e(n,T+c,h);s.item_loc[_]={length:b,offset:m+S}}T+=E*(c+h)}}function r(n,s){for(var c=g(n,4),h=6,v=0;v<c;v++){var p=A(n,h);if(!p)break;if(p.boxtype==="infe"){for(var T=g(p.data,4),l="",_=8;_<p.data.length&&p.data[_];_++)l+=String.fromCharCode(p.data[_]);s.item_inf[l]=T}h=p.end}}function o(n,s){for(var c=0;;){var h=A(n,c);if(!h)break;h.boxtype==="ipco"&&M(h.data,s),c=h.end}}function a(n,s){for(var c=4;;){var h=A(n,c);if(!h)break;h.boxtype==="iprp"&&o(h.data,s),h.boxtype==="iloc"&&t(h.data,s),h.boxtype==="iinf"&&r(h.data,s),c=h.end}}function i(n){var s=n.reduce(function(v,p){return v.width>p.width||v.width===p.width&&v.height>p.height?v:p}),c=n.reduce(function(v,p){return v.height>p.height||v.height===p.height&&v.width>p.width?v:p}),h;return s.width>c.height||s.width===c.height&&s.height>c.width?h=s:h=c,h}H.exports.readSizeFromMeta=function(n){var s={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(a(n,s),!!s.sizes.length){var c=i(s.sizes),h=1;s.transforms.forEach(function(p){var T={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(p.type==="imir"&&(p.value===0?h=l[h]:(h=l[h],h=T[h],h=T[h])),p.type==="irot")for(var _=0;_<p.value;_++)h=T[h]});var v=null;return s.item_inf.Exif&&(v=s.item_loc[s.item_inf.Exif]),{width:c.width,height:c.height,orientation:s.transforms.length?h:null,variants:s.sizes,exif_location:v}}},H.exports.getMimeType=function(n){var s=String.fromCharCode.apply(null,n.slice(0,4)),c={};c[s]=!0;for(var h=8;h<n.length;h+=4)c[String.fromCharCode.apply(null,n.slice(h,h+4))]=!0;if(!(!c.mif1&&!c.msf1&&!c.miaf))return s==="avif"||s==="avis"||s==="avio"?{type:"avif",mime:"image/avif"}:s==="heic"||s==="heix"?{type:"heic",mime:"image/heic"}:s==="hevc"||s==="hevx"?{type:"heic",mime:"image/heic-sequence"}:c.avif||c.avis?{type:"avif",mime:"image/avif"}:c.heic||c.heix||c.hevc||c.hevx||c.heis?c.msf1?{type:"heif",mime:"image/heif-sequence"}:{type:"heif",mime:"image/heif"}:{type:"avif",mime:"image/avif"}}}}),g3=Ye({"node_modules/probe-image-size/lib/exif_utils.js"(X,H){"use strict";function g(M,e){var t=new Error(M);return t.code=e,t}function x(M){try{return decodeURIComponent(escape(M))}catch{return M}}function A(M,e,t){this.input=M.subarray(e,t),this.start=e;var r=String.fromCharCode.apply(null,this.input.subarray(0,4));if(r!=="II*\0"&&r!=="MM\0*")throw g("invalid TIFF signature","EBADDATA");this.big_endian=r[0]==="M"}A.prototype.each=function(M){this.aborted=!1;var e=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:e}];this.ifds_to_read.length>0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,M)}},A.prototype.read_uint16=function(M){var e=this.input;if(M+2>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*256+e[M+1]:e[M]+e[M+1]*256},A.prototype.read_uint32=function(M){var e=this.input;if(M+4>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*16777216+e[M+1]*65536+e[M+2]*256+e[M+3]:e[M]+e[M+1]*256+e[M+2]*65536+e[M+3]*16777216},A.prototype.is_subifd_link=function(M,e){return M===0&&e===34665||M===0&&e===34853||M===34665&&e===40965},A.prototype.exif_format_length=function(M){switch(M){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},A.prototype.exif_format_read=function(M,e){var t;switch(M){case 1:case 2:return t=this.input[e],t;case 6:return t=this.input[e],t|(t&128)*33554430;case 3:return t=this.read_uint16(e),t;case 8:return t=this.read_uint16(e),t|(t&32768)*131070;case 4:return t=this.read_uint32(e),t;case 9:return t=this.read_uint32(e),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},A.prototype.scan_ifd=function(M,e,t){var r=this.read_uint16(e);e+=2;for(var o=0;o<r;o++){var a=this.read_uint16(e),i=this.read_uint16(e+2),n=this.read_uint32(e+4),s=this.exif_format_length(i),c=n*s,h=c<=4?e+8:this.read_uint32(e+8),v=!1;if(h+c>this.input.length)throw g("unexpected EOF","EBADDATA");for(var p=[],T=h,l=0;l<n;l++,T+=s){var _=this.exif_format_read(i,T);if(_===null){p=null;break}p.push(_)}Array.isArray(p)&&i===2&&(p=x(String.fromCharCode.apply(null,p)),p&&p[p.length-1]==="\0"&&(p=p.slice(0,-1))),this.is_subifd_link(M,a)&&Array.isArray(p)&&Number.isInteger(p[0])&&p[0]>0&&(this.ifds_to_read.push({id:a,offset:p[0]}),v=!0);var w={is_big_endian:this.big_endian,ifd:M,tag:a,format:i,count:n,entry_offset:e+this.start,data_length:c,data_offset:h+this.start,value:p,is_subifd_link:v};if(t(w)===!1){this.aborted=!0;return}e+=12}M===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(e)})},H.exports.ExifParser=A,H.exports.get_orientation=function(M){var e=0;try{return new A(M,0,M.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return e=t.value[0],!1}),e}catch{return-1}}}}),G4=Ye({"node_modules/probe-image-size/lib/parse_sync/avif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=H4(),e=g3(),t=g("ftyp");H.exports=function(r){if(x(r,4,t)){var o=M.unbox(r,0);if(o){var a=M.getMimeType(o.data);if(a){for(var i,n=o.end;;){var s=M.unbox(r,n);if(!s)break;if(n=s.end,s.boxtype==="mdat")return;if(s.boxtype==="meta"){i=s.data;break}}if(i){var c=M.readSizeFromMeta(i);if(c){var h={width:c.width,height:c.height,type:a.type,mime:a.mime,wUnits:"px",hUnits:"px"};if(c.variants.length>1&&(h.variants=c.variants),c.orientation&&(h.orientation=c.orientation),c.exif_location&&c.exif_location.offset+c.exif_location.length<=r.length){var v=A(r,c.exif_location.offset),p=r.slice(c.exif_location.offset+v+4,c.exif_location.offset+c.exif_location.length),T=e.get_orientation(p);T>0&&(h.orientation=T)}return h}}}}}}}}),W4=Ye({"node_modules/probe-image-size/lib/parse_sync/bmp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("BM");H.exports=function(e){if(!(e.length<26)&&x(e,0,M))return{width:A(e,18),height:A(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}}}),Z4=Ye({"node_modules/probe-image-size/lib/parse_sync/gif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("GIF87a"),e=g("GIF89a");H.exports=function(t){if(!(t.length<10)&&!(!x(t,0,M)&&!x(t,0,e)))return{width:A(t,6),height:A(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}}}),X4=Ye({"node_modules/probe-image-size/lib/parse_sync/ico.js"(X,H){"use strict";var g=Mu().readUInt16LE,x=0,A=1,M=16;H.exports=function(e){var t=g(e,0),r=g(e,2),o=g(e,4);if(!(t!==x||r!==A||!o)){for(var a=[],i={width:0,height:0},n=0;n<o;n++){var s=e[6+M*n]||256,c=e[6+M*n+1]||256,h={width:s,height:c};a.push(h),(s>i.width||c>i.height)&&(i=h)}return{width:i.width,height:i.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}}}),Y4=Ye({"node_modules/probe-image-size/lib/parse_sync/jpeg.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().str2arr,A=Mu().sliceEq,M=g3(),e=x("Exif\0\0");H.exports=function(t){if(!(t.length<2)&&!(t[0]!==255||t[1]!==216||t[2]!==255))for(var r=2;;){for(;;){if(t.length-r<2)return;if(t[r++]===255)break}for(var o=t[r++],a;o===255;)o=t[r++];if(208<=o&&o<=217||o===1)a=0;else if(192<=o&&o<=254){if(t.length-r<2)return;a=g(t,r)-2,r+=2}else return;if(o===217||o===218)return;var i;if(o===225&&a>=10&&A(t,r,e)&&(i=M.get_orientation(t.slice(r+6,r+a))),a>=5&&192<=o&&o<=207&&o!==196&&o!==200&&o!==204){if(t.length-r<a)return;var n={width:g(t,r+3),height:g(t,r+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return i>0&&(n.orientation=i),n}r+=a}}}}),K4=Ye({"node_modules/probe-image-size/lib/parse_sync/png.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g(`\x89PNG\r
+
+`),e=g("IHDR");H.exports=function(t){if(!(t.length<24)&&x(t,0,M)&&x(t,12,e))return{width:A(t,16),height:A(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}}}),J4=Ye({"node_modules/probe-image-size/lib/parse_sync/psd.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g("8BPS\0");H.exports=function(e){if(!(e.length<22)&&x(e,0,M))return{width:A(e,18),height:A(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}}}),$4=Ye({"node_modules/probe-image-size/lib/parse_sync/svg.js"(X,H){"use strict";function g(s){return s===32||s===9||s===13||s===10}function x(s){return typeof s=="number"&&isFinite(s)&&s>0}function A(s){var c=0,h=s.length;for(s[0]===239&&s[1]===187&&s[2]===191&&(c=3);c<h&&g(s[c]);)c++;return c===h?!1:s[c]===60}var M=/<[-_.:a-zA-Z0-9][^>]*>/,e=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,t=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,r=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,a=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function i(s){var c=s.match(t),h=s.match(r),v=s.match(o);return{width:c&&(c[1]||c[2]),height:h&&(h[1]||h[2]),viewbox:v&&(v[1]||v[2])}}function n(s){return a.test(s)?s.match(a)[0]:"px"}H.exports=function(s){if(A(s)){for(var c="",h=0;h<s.length;h++)c+=String.fromCharCode(s[h]);var v=(c.match(M)||[""])[0];if(e.test(v)){var p=i(v),T=parseFloat(p.width),l=parseFloat(p.height);if(p.width&&p.height)return!x(T)||!x(l)?void 0:{width:T,height:l,type:"svg",mime:"image/svg+xml",wUnits:n(p.width),hUnits:n(p.height)};var _=(p.viewbox||"").split(" "),w={width:_[2],height:_[3]},S=parseFloat(w.width),E=parseFloat(w.height);if(!(!x(S)||!x(E))&&n(w.width)===n(w.height)){var m=S/E;return p.width?x(T)?{width:T,height:T/m,type:"svg",mime:"image/svg+xml",wUnits:n(p.width),hUnits:n(p.width)}:void 0:p.height?x(l)?{width:l*m,height:l,type:"svg",mime:"image/svg+xml",wUnits:n(p.height),hUnits:n(p.height)}:void 0:{width:S,height:E,type:"svg",mime:"image/svg+xml",wUnits:n(w.width),hUnits:n(w.height)}}}}}}}),Q4=Ye({"node_modules/probe-image-size/lib/parse_sync/tiff.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=Mu().readUInt16BE,e=Mu().readUInt32LE,t=Mu().readUInt32BE,r=g("II*\0"),o=g("MM\0*");function a(s,c,h){return h?M(s,c):A(s,c)}function i(s,c,h){return h?t(s,c):e(s,c)}function n(s,c,h){var v=a(s,c+2,h),p=i(s,c+4,h);return p!==1||v!==3&&v!==4?null:v===3?a(s,c+8,h):i(s,c+8,h)}H.exports=function(s){if(!(s.length<8)&&!(!x(s,0,r)&&!x(s,0,o))){var c=s[0]===77,h=i(s,4,c)-8;if(!(h<0)){var v=h+8;if(!(s.length-v<2)){var p=a(s,v+0,c)*12;if(!(p<=0)&&(v+=2,!(s.length-v<p))){var T,l,_,w;for(T=0;T<p;T+=12)w=a(s,v+T,c),w===256?l=n(s,v+T,c):w===257&&(_=n(s,v+T,c));if(l&&_)return{width:l,height:_,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}}}}}}}}),e9=Ye({"node_modules/probe-image-size/lib/parse_sync/webp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=Mu().readUInt32LE,e=g3(),t=g("RIFF"),r=g("WEBP");function o(n,s){if(!(n[s+3]!==157||n[s+4]!==1||n[s+5]!==42))return{width:A(n,s+6)&16383,height:A(n,s+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function a(n,s){if(n[s]===47){var c=M(n,s+1);return{width:(c&16383)+1,height:(c>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function i(n,s){return{width:(n[s+6]<<16|n[s+5]<<8|n[s+4])+1,height:(n[s+9]<<s|n[s+8]<<8|n[s+7])+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}H.exports=function(n){if(!(n.length<16)&&!(!x(n,0,t)&&!x(n,8,r))){var s=12,c=null,h=0,v=M(n,4)+8;if(!(v>n.length)){for(;s+8<v;){if(n[s]===0){s++;continue}var p=String.fromCharCode.apply(null,n.slice(s,s+4)),T=M(n,s+4);p==="VP8 "&&T>=10?c=c||o(n,s+8):p==="VP8L"&&T>=9?c=c||a(n,s+8):p==="VP8X"&&T>=10?c=c||i(n,s+8):p==="EXIF"&&(h=e.get_orientation(n.slice(s+8,s+8+T)),s=1/0),s+=8+T}if(c)return h>0&&(c.orientation=h),c}}}}}),t9=Ye({"node_modules/probe-image-size/lib/parsers_sync.js"(X,H){"use strict";H.exports={avif:G4(),bmp:W4(),gif:Z4(),ico:X4(),jpeg:Y4(),png:K4(),psd:J4(),svg:$4(),tiff:Q4(),webp:e9()}}}),r9=Ye({"node_modules/probe-image-size/sync.js"(X,H){"use strict";var g=t9();function x(A){for(var M=Object.keys(g),e=0;e<M.length;e++){var t=g[M[e]](A);if(t)return t}return null}H.exports=function(M){return x(M)},H.exports.parsers=g}}),a9=Ye({"src/traces/image/helpers.js"(X){"use strict";var H=r9(),g=Xv().IMAGE_URL_PREFIX,x=t0().Buffer;X.getImageSize=function(A){var M=A.replace(g,""),e=new x(M,"base64");return H(e)}}}),i9=Ye({"src/traces/image/calc.js"(X,H){"use strict";var g=ta(),x=d1(),A=jo(),M=Co(),e=ta().maxRowLength,t=a9().getImageSize;H.exports=function(n,s){var c,h;if(s._hasZ)c=s.z.length,h=e(s.z);else if(s._hasSource){var v=t(s.source);c=v.height,h=v.width}var p=M.getFromId(n,s.xaxis||"x"),T=M.getFromId(n,s.yaxis||"y"),l=p.d2c(s.x0)-s.dx/2,_=T.d2c(s.y0)-s.dy/2,w,S=[l,l+h*s.dx],E=[_,_+c*s.dy];if(p&&p.type==="log")for(w=0;w<h;w++)S.push(l+w*s.dx);if(T&&T.type==="log")for(w=0;w<c;w++)E.push(_+w*s.dy);s._extremes[p._id]=M.findExtremes(p,S),s._extremes[T._id]=M.findExtremes(T,E),s._scaler=a(s);var m={x0:l,y0:_,z:s.z,w:h,h:c};return[m]};function r(i,n,s,c){return function(h){return g.constrain((h-i)*n,s,c)}}function o(i,n){return function(s){return g.constrain(s,i,n)}}function a(i){var n=x.colormodel[i.colormodel],s=n.colormodel||i.colormodel,c=s.length;i._sArray=[];for(var h=0;h<c;h++)n.min[h]!==i.zmin[h]||n.max[h]!==i.zmax[h]?i._sArray.push(r(i.zmin[h],(n.max[h]-n.min[h])/(i.zmax[h]-i.zmin[h]),n.min[h],n.max[h])):i._sArray.push(o(n.min[h],n.max[h]));return function(v){for(var p=v.slice(0,c),T=0;T<c;T++){var l=p[T];if(!A(l))return!1;p[T]=i._sArray[T](l)}return p}}}}),n9=Ye({"src/traces/image/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.strTranslate,M=vd(),e=d1(),t=oM(),r=$2().STYLE;H.exports=function(a,i,n,s){var c=i.xaxis,h=i.yaxis,v=!a._context._exportedPlot&&t();x.makeTraceGroups(s,n,"im").each(function(p){var T=g.select(this),l=p[0],_=l.trace,w=(_.zsmooth==="fast"||_.zsmooth===!1&&v)&&!_._hasZ&&_._hasSource&&c.type==="linear"&&h.type==="linear";_._realImage=w;var S=l.z,E=l.x0,m=l.y0,b=l.w,d=l.h,u=_.dx,y=_.dy,f,P,L,z,F,B;for(B=0;f===void 0&&B<b;)f=c.c2p(E+B*u),B++;for(B=b;P===void 0&&B>0;)P=c.c2p(E+B*u),B--;for(B=0;z===void 0&&B<d;)z=h.c2p(m+B*y),B++;for(B=d;F===void 0&&B>0;)F=h.c2p(m+B*y),B--;if(P<f&&(L=P,P=f,f=L),F<z&&(L=z,z=F,F=L),!w){var O=.5;f=Math.max(-O*c._length,f),P=Math.min((1+O)*c._length,P),z=Math.max(-O*h._length,z),F=Math.min((1+O)*h._length,F)}var I=Math.round(P-f),N=Math.round(F-z),U=I<=0||N<=0;if(U){var W=T.selectAll("image").data([]);W.exit().remove();return}function Q(j){var ee=document.createElement("canvas");ee.width=I,ee.height=N;var ie=ee.getContext("2d",{willReadFrequently:!0}),fe=function(ge){return x.constrain(Math.round(c.c2p(E+ge*u)-f),0,I)},be=function(ge){return x.constrain(Math.round(h.c2p(m+ge*y)-z),0,N)},Ae=e.colormodel[_.colormodel],Be=Ae.colormodel||_.colormodel,Ie=Ae.fmt,Ze;for(B=0;B<l.w;B++){var at=fe(B),it=fe(B+1);if(!(it===at||isNaN(it)||isNaN(at)))for(var et=0;et<l.h;et++){var lt=be(et),Me=be(et+1);Me===lt||isNaN(Me)||isNaN(lt)||!j(B,et)||(Ze=_._scaler(j(B,et)),Ze?ie.fillStyle=Be+"("+Ie(Ze).join(",")+")":ie.fillStyle="rgba(0,0,0,0)",ie.fillRect(at,lt,it-at,Me-lt))}}return ee}var ue=T.selectAll("image").data([p]);ue.enter().append("svg:image").attr({xmlns:M.svg,preserveAspectRatio:"none"}),ue.exit().remove();var se=_.zsmooth===!1?r:"";if(w){var he=x.simpleMap(c.range,c.r2l),G=x.simpleMap(h.range,h.r2l),$=he[1]<he[0],J=G[1]>G[0];if($||J){var Z=f+I/2,re=z+N/2;se+="transform:"+A(Z+"px",re+"px")+"scale("+($?-1:1)+","+(J?-1:1)+")"+A(-Z+"px",-re+"px")+";"}}ue.attr("style",se);var ne=new Promise(function(j){if(_._hasZ)j();else if(_._hasSource)if(_._canvas&&_._canvas.el.width===b&&_._canvas.el.height===d&&_._canvas.source===_.source)j();else{var ee=document.createElement("canvas");ee.width=b,ee.height=d;var ie=ee.getContext("2d",{willReadFrequently:!0});_._image=_._image||new Image;var fe=_._image;fe.onload=function(){ie.drawImage(fe,0,0),_._canvas={el:ee,source:_.source},j()},fe.setAttribute("src",_.source)}}).then(function(){var j,ee;if(_._hasZ)ee=Q(function(be,Ae){var Be=S[Ae][be];return x.isTypedArray(Be)&&(Be=Array.from(Be)),Be}),j=ee.toDataURL("image/png");else if(_._hasSource)if(w)j=_.source;else{var ie=_._canvas.el.getContext("2d",{willReadFrequently:!0}),fe=ie.getImageData(0,0,b,d).data;ee=Q(function(be,Ae){var Be=4*(Ae*b+be);return[fe[Be],fe[Be+1],fe[Be+2],fe[Be+3]]}),j=ee.toDataURL("image/png")}ue.attr({"xlink:href":j,height:N,width:I,x:f,y:z})});a._promises.push(ne)})}}}),o9=Ye({"src/traces/image/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".im image").style("opacity",function(M){return M[0].trace.opacity})}}}),s9=Ye({"src/traces/image/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=d1();H.exports=function(t,r,o){var a=t.cd[0],i=a.trace,n=t.xa,s=t.ya;if(!(g.inbox(r-a.x0,r-(a.x0+a.w*i.dx),0)>0||g.inbox(o-a.y0,o-(a.y0+a.h*i.dy),0)>0)){var c=Math.floor((r-a.x0)/i.dx),h=Math.floor(Math.abs(o-a.y0)/i.dy),v;if(i._hasZ?v=a.z[h][c]:i._hasSource&&(v=i._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(c,h,1,1).data),!!v){var p=a.hi||i.hoverinfo,T;if(p){var l=p.split("+");l.indexOf("all")!==-1&&(l=["color"]),l.indexOf("color")!==-1&&(T=!0)}var _=M.colormodel[i.colormodel],w=_.colormodel||i.colormodel,S=w.length,E=i._scaler(v),m=_.suffix,b=[];(i.hovertemplate||T)&&(b.push("["+[E[0]+m[0],E[1]+m[1],E[2]+m[2]].join(", ")),S===4&&b.push(", "+E[3]+m[3]),b.push("]"),b=b.join(""),t.extraText=w.toUpperCase()+": "+b);var d;A(i.hovertext)&&A(i.hovertext[h])?d=i.hovertext[h][c]:A(i.text)&&A(i.text[h])&&(d=i.text[h][c]);var u=s.c2p(a.y0+(h+.5)*i.dy),y=a.x0+(c+.5)*i.dx,f=a.y0+(h+.5)*i.dy,P="["+v.slice(0,i.colormodel.length).join(", ")+"]";return[x.extendFlat(t,{index:[h,c],x0:n.c2p(a.x0+c*i.dx),x1:n.c2p(a.x0+(c+1)*i.dx),y0:u,y1:u,color:E,xVal:y,xLabelVal:y,yVal:f,yLabelVal:f,zLabelVal:P,text:d,hovertemplateLabels:{zLabel:P,colorLabel:b,"color[0]Label":E[0]+m[0],"color[1]Label":E[1]+m[1],"color[2]Label":E[2]+m[2],"color[3]Label":E[3]+m[3]}})]}}}}}),l9=Ye({"src/traces/image/event_data.js"(X,H){"use strict";H.exports=function(x,A){return"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x.color=A.color,x.colormodel=A.trace.colormodel,x.z||(x.z=A.color),x}}}),u9=Ye({"src/traces/image/index.js"(X,H){"use strict";H.exports={attributes:IM(),supplyDefaults:i4(),calc:i9(),plot:n9(),style:o9(),hoverPoints:s9(),eventData:l9(),moduleType:"trace",name:"image",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}}}),c9=Ye({"lib/image.js"(X,H){"use strict";H.exports=u9()}}),i0=Ye({"src/traces/pie/attributes.js"(X,H){"use strict";var g=Pl(),x=Wu().attributes,A=Au(),M=Gf(),e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Oo().extendFlat,o=Uh().pattern,a=A({editType:"plot",arrayOk:!0,colorEditType:"plot"});H.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:M.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:o,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:r({},g.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:e({},{keys:["label","color","value","percent","text"]}),texttemplate:t({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:r({},a,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:r({},a,{}),outsidetextfont:r({},a,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:r({},a,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:x({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}}}),n0=Ye({"src/traces/pie/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=i0(),M=Wu().defaults,e=gd().handleText,t=ta().coercePattern;function r(i,n){var s=x.isArrayOrTypedArray(i),c=x.isArrayOrTypedArray(n),h=Math.min(s?i.length:1/0,c?n.length:1/0);if(isFinite(h)||(h=0),h&&c){for(var v,p=0;p<h;p++){var T=n[p];if(g(T)&&T>0){v=!0;break}}v||(h=0)}return{hasLabels:s,hasValues:c,len:h}}function o(i,n,s,c,h){var v=c("marker.line.width");v&&c("marker.line.color",h?void 0:s.paper_bgcolor);var p=c("marker.colors");t(c,"marker.pattern",p),i.marker&&!n.marker.pattern.fgcolor&&(n.marker.pattern.fgcolor=i.marker.colors),n.marker.pattern.bgcolor||(n.marker.pattern.bgcolor=s.paper_bgcolor)}function a(i,n,s,c){function h(f,P){return x.coerce(i,n,A,f,P)}var v=h("labels"),p=h("values"),T=r(v,p),l=T.len;if(n._hasLabels=T.hasLabels,n._hasValues=T.hasValues,!n._hasLabels&&n._hasValues&&(h("label0"),h("dlabel")),!l){n.visible=!1;return}n._length=l,o(i,n,c,h,!0),h("scalegroup");var _=h("text"),w=h("texttemplate"),S;if(w||(S=h("textinfo",x.isArrayOrTypedArray(_)?"text+percent":"percent")),h("hovertext"),h("hovertemplate"),w||S&&S!=="none"){var E=h("textposition");e(i,n,c,h,E,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var m=Array.isArray(E)||E==="auto",b=m||E==="outside";b&&h("automargin"),(E==="inside"||E==="auto"||Array.isArray(E))&&h("insidetextorientation")}else S==="none"&&h("textposition","none");M(n,c,h);var d=h("hole"),u=h("title.text");if(u){var y=h("title.position",d?"middle center":"top center");!d&&y==="middle center"&&(n.title.position="top center"),x.coerceFont(h,"title.font",c.font)}h("sort"),h("direction"),h("rotation"),h("pull")}H.exports={handleLabelsAndValues:r,handleMarkerDefaults:o,supplyDefaults:a}}}),y3=Ye({"src/traces/pie/layout_attributes.js"(X,H){"use strict";H.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),f9=Ye({"src/traces/pie/layout_defaults.js"(X,H){"use strict";var g=ta(),x=y3();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("piecolorway",e.colorway),t("extendpiecolors")}}}),y1=Ye({"src/traces/pie/calc.js"(X,H){"use strict";var g=jo(),x=bh(),A=Fn(),M={};function e(a,i){var n=[],s=a._fullLayout,c=s.hiddenlabels||[],h=i.labels,v=i.marker.colors||[],p=i.values,T=i._length,l=i._hasValues&&T,_,w;if(i.dlabel)for(h=new Array(T),_=0;_<T;_++)h[_]=String(i.label0+_*i.dlabel);var S={},E=t(s["_"+i.type+"colormap"]),m=0,b=!1;for(_=0;_<T;_++){var d,u,y;if(l){if(d=p[_],!g(d))continue;d=+d}else d=1;u=h[_],(u===void 0||u==="")&&(u=_),u=String(u);var f=S[u];f===void 0?(S[u]=n.length,y=c.indexOf(u)!==-1,y||(m+=d),n.push({v:d,label:u,color:E(v[_],u),i:_,pts:[_],hidden:y})):(b=!0,w=n[f],w.v+=d,w.pts.push(_),w.hidden||(m+=d),w.color===!1&&v[_]&&(w.color=E(v[_],u)))}n=n.filter(function(L){return L.v>=0});var P=i.type==="funnelarea"?b:i.sort;return P&&n.sort(function(L,z){return z.v-L.v}),n[0]&&(n[0].vTotal=m),n}function t(a){return function(n,s){return!n||(n=x(n),!n.isValid())?!1:(n=A.addOpacity(n,n.getAlpha()),a[s]||(a[s]=n),n)}}function r(a,i){var n=(i||{}).type;n||(n="pie");var s=a._fullLayout,c=a.calcdata,h=s[n+"colorway"],v=s["_"+n+"colormap"];s["extend"+n+"colors"]&&(h=o(h,M));for(var p=0,T=0;T<c.length;T++){var l=c[T],_=l[0].trace.type;if(_===n)for(var w=0;w<l.length;w++){var S=l[w];S.color===!1&&(v[S.label]?S.color=v[S.label]:(v[S.label]=S.color=h[p%h.length],p++))}}}function o(a,i){var n,s=JSON.stringify(a),c=i[s];if(!c){for(c=a.slice(),n=0;n<a.length;n++)c.push(x(a[n]).lighten(20).toHexString());for(n=0;n<a.length;n++)c.push(x(a[n]).darken(20).toHexString());i[s]=c}return c}H.exports={calc:e,crossTraceCalc:r,makePullColorFn:t,generateExtendedColors:o}}}),h9=Ye({"src/traces/pie/event_data.js"(X,H){"use strict";var g=Qp().appendArrayMultiPointValues;H.exports=function(A,M){var e={curveNumber:M.index,pointNumbers:A.pts,data:M._input,fullData:M,label:A.label,color:A.color,value:A.v,percent:A.percent,text:A.text,bbox:A.bbox,v:A.v};return A.pts.length===1&&(e.pointNumber=e.i=A.pts[0]),g(e,M,A.pts),M.type==="funnelarea"&&(delete e.v,delete e.i),e}}}),_3=Ye({"src/traces/pie/plot.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Lc(),M=Fn(),e=Bo(),t=ta(),r=t.strScale,o=t.strTranslate,a=jl(),i=wp(),n=i.recordMinTextSize,s=i.clearMinTextSize,c=Qg().TEXTPAD,h=eg(),v=h9(),p=ta().isValidTextValue;function T($,J){var Z=$._context.staticPlot,re=$._fullLayout,ne=re._size;s("pie",re),E(J,$),W(J,ne);var j=t.makeTraceGroups(re._pielayer,J,"trace").each(function(ee){var ie=g.select(this),fe=ee[0],be=fe.trace;ue(ee),ie.attr("stroke-linejoin","round"),ie.each(function(){var Ae=g.select(this).selectAll("g.slice").data(ee);Ae.enter().append("g").classed("slice",!0),Ae.exit().remove();var Be=[[[],[]],[[],[]]],Ie=!1;Ae.each(function(ce,ze){if(ce.hidden){g.select(this).selectAll("path,g").remove();return}ce.pointNumber=ce.i,ce.curveNumber=be.index,Be[ce.pxmid[1]<0?0:1][ce.pxmid[0]<0?0:1].push(ce);var tt=fe.cx,nt=fe.cy,Qe=g.select(this),Ct=Qe.selectAll("path.surface").data([ce]);if(Ct.enter().append("path").classed("surface",!0).style({"pointer-events":Z?"none":"all"}),Qe.call(_,$,ee),be.pull){var St=+h.castOption(be.pull,ce.pts)||0;St>0&&(tt+=St*ce.pxmid[0],nt+=St*ce.pxmid[1])}ce.cxFinal=tt,ce.cyFinal=nt;function Ot(yt,Fe,Ke,Ne){var Ee=Ne*(Fe[0]-yt[0]),Ve=Ne*(Fe[1]-yt[1]);return"a"+Ne*fe.r+","+Ne*fe.r+" 0 "+ce.largeArc+(Ke?" 1 ":" 0 ")+Ee+","+Ve}var jt=be.hole;if(ce.v===fe.vTotal){var ur="M"+(tt+ce.px0[0])+","+(nt+ce.px0[1])+Ot(ce.px0,ce.pxmid,!0,1)+Ot(ce.pxmid,ce.px0,!0,1)+"Z";jt?Ct.attr("d","M"+(tt+jt*ce.px0[0])+","+(nt+jt*ce.px0[1])+Ot(ce.px0,ce.pxmid,!1,jt)+Ot(ce.pxmid,ce.px0,!1,jt)+"Z"+ur):Ct.attr("d",ur)}else{var ar=Ot(ce.px0,ce.px1,!0,1);if(jt){var Cr=1-jt;Ct.attr("d","M"+(tt+jt*ce.px1[0])+","+(nt+jt*ce.px1[1])+Ot(ce.px1,ce.px0,!1,jt)+"l"+Cr*ce.px0[0]+","+Cr*ce.px0[1]+ar+"Z")}else Ct.attr("d","M"+tt+","+nt+"l"+ce.px0[0]+","+ce.px0[1]+ar+"Z")}he($,ce,fe);var vr=h.castOption(be.textposition,ce.pts),_r=Qe.selectAll("g.slicetext").data(ce.text&&vr!=="none"?[0]:[]);_r.enter().append("g").classed("slicetext",!0),_r.exit().remove(),_r.each(function(){var yt=t.ensureSingle(g.select(this),"text","",function(Le){Le.attr("data-notex",1)}),Fe=t.ensureUniformFontSize($,vr==="outside"?w(be,ce,re.font):S(be,ce,re.font));yt.text(ce.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(e.font,Fe).call(a.convertToTspans,$);var Ke=e.bBox(yt.node()),Ne;if(vr==="outside")Ne=z(Ke,ce);else if(Ne=m(Ke,ce,fe),vr==="auto"&&Ne.scale<1){var Ee=t.ensureUniformFontSize($,be.outsidetextfont);yt.call(e.font,Ee),Ke=e.bBox(yt.node()),Ne=z(Ke,ce)}var Ve=Ne.textPosAngle,ke=Ve===void 0?ce.pxmid:se(fe.r,Ve);if(Ne.targetX=tt+ke[0]*Ne.rCenter+(Ne.x||0),Ne.targetY=nt+ke[1]*Ne.rCenter+(Ne.y||0),G(Ne,Ke),Ne.outside){var Te=Ne.targetY;ce.yLabelMin=Te-Ke.height/2,ce.yLabelMid=Te,ce.yLabelMax=Te+Ke.height/2,ce.labelExtraX=0,ce.labelExtraY=0,Ie=!0}Ne.fontSize=Fe.size,n(be.type,Ne,re),ee[ze].transform=Ne,t.setTransormAndDisplay(yt,Ne)})});var Ze=g.select(this).selectAll("g.titletext").data(be.title.text?[0]:[]);if(Ze.enter().append("g").classed("titletext",!0),Ze.exit().remove(),Ze.each(function(){var ce=t.ensureSingle(g.select(this),"text","",function(nt){nt.attr("data-notex",1)}),ze=be.title.text;be._meta&&(ze=t.templateString(ze,be._meta)),ce.text(ze).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(e.font,be.title.font).call(a.convertToTspans,$);var tt;be.title.position==="middle center"?tt=F(fe):tt=B(fe,ne),ce.attr("transform",o(tt.x,tt.y)+r(Math.min(1,tt.scale))+o(tt.tx,tt.ty))}),Ie&&U(Be,be),l(Ae,be),Ie&&be.automargin){var at=e.bBox(ie.node()),it=be.domain,et=ne.w*(it.x[1]-it.x[0]),lt=ne.h*(it.y[1]-it.y[0]),Me=(.5*et-fe.r)/ne.w,ge=(.5*lt-fe.r)/ne.h;x.autoMargin($,"pie."+be.uid+".automargin",{xl:it.x[0]-Me,xr:it.x[1]+Me,yb:it.y[0]-ge,yt:it.y[1]+ge,l:Math.max(fe.cx-fe.r-at.left,0),r:Math.max(at.right-(fe.cx+fe.r),0),b:Math.max(at.bottom-(fe.cy+fe.r),0),t:Math.max(fe.cy-fe.r-at.top,0),pad:5})}})});setTimeout(function(){j.selectAll("tspan").each(function(){var ee=g.select(this);ee.attr("dy")&&ee.attr("dy",ee.attr("dy"))})},0)}function l($,J){$.each(function(Z){var re=g.select(this);if(!Z.labelExtraX&&!Z.labelExtraY){re.select("path.textline").remove();return}var ne=re.select("g.slicetext text");Z.transform.targetX+=Z.labelExtraX,Z.transform.targetY+=Z.labelExtraY,t.setTransormAndDisplay(ne,Z.transform);var j=Z.cxFinal+Z.pxmid[0],ee=Z.cyFinal+Z.pxmid[1],ie="M"+j+","+ee,fe=(Z.yLabelMax-Z.yLabelMin)*(Z.pxmid[0]<0?-1:1)/4;if(Z.labelExtraX){var be=Z.labelExtraX*Z.pxmid[1]/Z.pxmid[0],Ae=Z.yLabelMid+Z.labelExtraY-(Z.cyFinal+Z.pxmid[1]);Math.abs(be)>Math.abs(Ae)?ie+="l"+Ae*Z.pxmid[0]/Z.pxmid[1]+","+Ae+"H"+(j+Z.labelExtraX+fe):ie+="l"+Z.labelExtraX+","+be+"v"+(Ae-be)+"h"+fe}else ie+="V"+(Z.yLabelMid+Z.labelExtraY)+"h"+fe;t.ensureSingle(re,"path","textline").call(M.stroke,J.outsidetextfont.color).attr({"stroke-width":Math.min(2,J.outsidetextfont.size/8),d:ie,fill:"none"})})}function _($,J,Z){var re=Z[0],ne=re.cx,j=re.cy,ee=re.trace,ie=ee.type==="funnelarea";"_hasHoverLabel"in ee||(ee._hasHoverLabel=!1),"_hasHoverEvent"in ee||(ee._hasHoverEvent=!1),$.on("mouseover",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];if(!(J._dragging||be.hovermode===!1)){var Be=Ae.hoverinfo;if(Array.isArray(Be)&&(Be=A.castHoverinfo({hoverinfo:[h.castOption(Be,fe.pts)],_module:ee._module},be,0)),Be==="all"&&(Be="label+text+value+percent+name"),Ae.hovertemplate||Be!=="none"&&Be!=="skip"&&Be){var Ie=fe.rInscribed||0,Ze=ne+fe.pxmid[0]*(1-Ie),at=j+fe.pxmid[1]*(1-Ie),it=be.separators,et=[];if(Be&&Be.indexOf("label")!==-1&&et.push(fe.label),fe.text=h.castOption(Ae.hovertext||Ae.text,fe.pts),Be&&Be.indexOf("text")!==-1){var lt=fe.text;t.isValidTextValue(lt)&&et.push(lt)}fe.value=fe.v,fe.valueLabel=h.formatPieValue(fe.v,it),Be&&Be.indexOf("value")!==-1&&et.push(fe.valueLabel),fe.percent=fe.v/re.vTotal,fe.percentLabel=h.formatPiePercent(fe.percent,it),Be&&Be.indexOf("percent")!==-1&&et.push(fe.percentLabel);var Me=Ae.hoverlabel,ge=Me.font,ce=[];A.loneHover({trace:ee,x0:Ze-Ie*re.r,x1:Ze+Ie*re.r,y:at,_x0:ie?ne+fe.TL[0]:Ze-Ie*re.r,_x1:ie?ne+fe.TR[0]:Ze+Ie*re.r,_y0:ie?j+fe.TL[1]:at-Ie*re.r,_y1:ie?j+fe.BL[1]:at+Ie*re.r,text:et.join("<br>"),name:Ae.hovertemplate||Be.indexOf("name")!==-1?Ae.name:void 0,idealAlign:fe.pxmid[0]<0?"left":"right",color:h.castOption(Me.bgcolor,fe.pts)||fe.color,borderColor:h.castOption(Me.bordercolor,fe.pts),fontFamily:h.castOption(ge.family,fe.pts),fontSize:h.castOption(ge.size,fe.pts),fontColor:h.castOption(ge.color,fe.pts),nameLength:h.castOption(Me.namelength,fe.pts),textAlign:h.castOption(Me.align,fe.pts),hovertemplate:h.castOption(Ae.hovertemplate,fe.pts),hovertemplateLabels:fe,eventData:[v(fe,Ae)]},{container:be._hoverlayer.node(),outerContainer:be._paper.node(),gd:J,inOut_bbox:ce}),fe.bbox=ce[0],ee._hasHoverLabel=!0}ee._hasHoverEvent=!0,J.emit("plotly_hover",{points:[v(fe,Ae)],event:g.event})}}),$.on("mouseout",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index],Be=g.select(this).datum();ee._hasHoverEvent&&(fe.originalEvent=g.event,J.emit("plotly_unhover",{points:[v(Be,Ae)],event:g.event}),ee._hasHoverEvent=!1),ee._hasHoverLabel&&(A.loneUnhover(be._hoverlayer.node()),ee._hasHoverLabel=!1)}),$.on("click",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];J._dragging||be.hovermode===!1||(J._hoverdata=[v(fe,Ae)],A.click(J,g.event))})}function w($,J,Z){var re=h.castOption($.outsidetextfont.color,J.pts)||h.castOption($.textfont.color,J.pts)||Z.color,ne=h.castOption($.outsidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.outsidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.outsidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.outsidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.outsidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.outsidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.outsidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.outsidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re,family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function S($,J,Z){var re=h.castOption($.insidetextfont.color,J.pts);!re&&$._input.textfont&&(re=h.castOption($._input.textfont.color,J.pts));var ne=h.castOption($.insidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.insidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.insidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.insidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.insidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.insidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.insidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.insidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re||M.contrast(J.color),family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function E($,J){for(var Z,re,ne=0;ne<$.length;ne++)if(Z=$[ne][0],re=Z.trace,re.title.text){var j=re.title.text;re._meta&&(j=t.templateString(j,re._meta));var ee=e.tester.append("text").attr("data-notex",1).text(j).call(e.font,re.title.font).call(a.convertToTspans,J),ie=e.bBox(ee.node(),!0);Z.titleBox={width:ie.width,height:ie.height},ee.remove()}}function m($,J,Z){var re=Z.r||J.rpx1,ne=J.rInscribed,j=J.startangle===J.stopangle;if(j)return{rCenter:1-ne,scale:0,rotate:0,textPosAngle:0};var ee=J.ring,ie=ee===1&&Math.abs(J.startangle-J.stopangle)===Math.PI*2,fe=J.halfangle,be=J.midangle,Ae=Z.trace.insidetextorientation,Be=Ae==="horizontal",Ie=Ae==="tangential",Ze=Ae==="radial",at=Ae==="auto",it=[],et;if(!at){var lt=function(Qe,Ct){if(b(J,Qe)){var St=Math.abs(Qe-J.startangle),Ot=Math.abs(Qe-J.stopangle),jt=St<Ot?St:Ot;Ct==="tan"?et=u($,re,ee,jt,0):et=d($,re,ee,jt,Math.PI/2),et.textPosAngle=Qe,it.push(et)}},Me;if(Be||Ie){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*Me,"tan");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1),"tan")}if(Be||Ze){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1.5),"rad");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+.5),"rad")}}if(ie||at||Be){var ge=Math.sqrt($.width*$.width+$.height*$.height);if(et={scale:ne*re*2/ge,rCenter:1-ne,rotate:0},et.textPosAngle=(J.startangle+J.stopangle)/2,et.scale>=1)return et;it.push(et)}(at||Ze)&&(et=d($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et)),(at||Ie)&&(et=u($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et));for(var ce=0,ze=0,tt=0;tt<it.length;tt++){var nt=it[tt].scale;if(ze<nt&&(ze=nt,ce=tt),!at&&ze>=1)break}return it[ce]}function b($,J){var Z=$.startangle,re=$.stopangle;return Z>J&&J>re||Z<J&&J<re}function d($,J,Z,re,ne){J=Math.max(0,J-2*c);var j=$.width/$.height,ee=P(j,re,J,Z);return{scale:ee*2/$.height,rCenter:y(j,ee/J),rotate:f(ne)}}function u($,J,Z,re,ne){J=Math.max(0,J-2*c);var j=$.height/$.width,ee=P(j,re,J,Z);return{scale:ee*2/$.width,rCenter:y(j,ee/J),rotate:f(ne+Math.PI/2)}}function y($,J){return Math.cos(J)-$*J}function f($){return(180/Math.PI*$+720)%180-90}function P($,J,Z,re){var ne=$+1/(2*Math.tan(J));return Z*Math.min(1/(Math.sqrt(ne*ne+.5)+ne),re/(Math.sqrt($*$+re/2)+$))}function L($,J){return $.v===J.vTotal&&!J.trace.hole?1:Math.min(1/(1+1/Math.sin($.halfangle)),$.ring/2)}function z($,J){var Z=J.pxmid[0],re=J.pxmid[1],ne=$.width/2,j=$.height/2;return Z<0&&(ne*=-1),re<0&&(j*=-1),{scale:1,rCenter:1,rotate:0,x:ne+Math.abs(j)*(ne>0?1:-1)/2,y:j/(1+Z*Z/(re*re)),outside:!0}}function F($){var J=Math.sqrt($.titleBox.width*$.titleBox.width+$.titleBox.height*$.titleBox.height);return{x:$.cx,y:$.cy,scale:$.trace.hole*$.r*2/J,tx:0,ty:-$.titleBox.height/2+$.trace.title.font.size}}function B($,J){var Z=1,re=1,ne,j=$.trace,ee={x:$.cx,y:$.cy},ie={tx:0,ty:0};ie.ty+=j.title.font.size,ne=N(j),j.title.position.indexOf("top")!==-1?(ee.y-=(1+ne)*$.r,ie.ty-=$.titleBox.height):j.title.position.indexOf("bottom")!==-1&&(ee.y+=(1+ne)*$.r);var fe=O($.r,$.trace.aspectratio),be=J.w*(j.domain.x[1]-j.domain.x[0])/2;return j.title.position.indexOf("left")!==-1?(be=be+fe,ee.x-=(1+ne)*fe,ie.tx+=$.titleBox.width/2):j.title.position.indexOf("center")!==-1?be*=2:j.title.position.indexOf("right")!==-1&&(be=be+fe,ee.x+=(1+ne)*fe,ie.tx-=$.titleBox.width/2),Z=be/$.titleBox.width,re=I($,J)/$.titleBox.height,{x:ee.x,y:ee.y,scale:Math.min(Z,re),tx:ie.tx,ty:ie.ty}}function O($,J){return $/(J===void 0?1:J)}function I($,J){var Z=$.trace,re=J.h*(Z.domain.y[1]-Z.domain.y[0]);return Math.min($.titleBox.height,re/2)}function N($){var J=$.pull;if(!J)return 0;var Z;if(t.isArrayOrTypedArray(J))for(J=0,Z=0;Z<$.pull.length;Z++)$.pull[Z]>J&&(J=$.pull[Z]);return J}function U($,J){var Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at;function it(ge,ce){return ge.pxmid[1]-ce.pxmid[1]}function et(ge,ce){return ce.pxmid[1]-ge.pxmid[1]}function lt(ge,ce){ce||(ce={});var ze=ce.labelExtraY+(re?ce.yLabelMax:ce.yLabelMin),tt=re?ge.yLabelMin:ge.yLabelMax,nt=re?ge.yLabelMax:ge.yLabelMin,Qe=ge.cyFinal+ee(ge.px0[1],ge.px1[1]),Ct=ze-tt,St,Ot,jt,ur,ar,Cr;if(Ct*fe>0&&(ge.labelExtraY=Ct),!!t.isArrayOrTypedArray(J.pull))for(Ot=0;Ot<Be.length;Ot++)jt=Be[Ot],!(jt===ge||(h.castOption(J.pull,ge.pts)||0)>=(h.castOption(J.pull,jt.pts)||0))&&((ge.pxmid[1]-jt.pxmid[1])*fe>0?(ur=jt.cyFinal+ee(jt.px0[1],jt.px1[1]),Ct=ur-tt-ge.labelExtraY,Ct*fe>0&&(ge.labelExtraY+=Ct)):(nt+ge.labelExtraY-Qe)*fe>0&&(St=3*ie*Math.abs(Ot-Be.indexOf(ge)),ar=jt.cxFinal+j(jt.px0[0],jt.px1[0]),Cr=ar+St-(ge.cxFinal+ge.pxmid[0])-ge.labelExtraX,Cr*ie>0&&(ge.labelExtraX+=Cr)))}for(re=0;re<2;re++)for(ne=re?it:et,ee=re?Math.max:Math.min,fe=re?1:-1,Z=0;Z<2;Z++){for(j=Z?Math.max:Math.min,ie=Z?1:-1,be=$[re][Z],be.sort(ne),Ae=$[1-re][Z],Be=Ae.concat(be),Ze=[],Ie=0;Ie<be.length;Ie++)be[Ie].yLabelMid!==void 0&&Ze.push(be[Ie]);for(at=!1,Ie=0;re&&Ie<Ae.length;Ie++)if(Ae[Ie].yLabelMid!==void 0){at=Ae[Ie];break}for(Ie=0;Ie<Ze.length;Ie++){var Me=Ie&&Ze[Ie-1];at&&!Ie&&(Me=at),lt(Ze[Ie],Me)}}}function W($,J){for(var Z=[],re=0;re<$.length;re++){var ne=$[re][0],j=ne.trace,ee=j.domain,ie=J.w*(ee.x[1]-ee.x[0]),fe=J.h*(ee.y[1]-ee.y[0]);j.title.text&&j.title.position!=="middle center"&&(fe-=I(ne,J));var be=ie/2,Ae=fe/2;j.type==="funnelarea"&&!j.scalegroup&&(Ae/=j.aspectratio),ne.r=Math.min(be,Ae)/(1+N(j)),ne.cx=J.l+J.w*(j.domain.x[1]+j.domain.x[0])/2,ne.cy=J.t+J.h*(1-j.domain.y[0])-fe/2,j.title.text&&j.title.position.indexOf("bottom")!==-1&&(ne.cy-=I(ne,J)),j.scalegroup&&Z.indexOf(j.scalegroup)===-1&&Z.push(j.scalegroup)}Q($,Z)}function Q($,J){for(var Z,re,ne,j=0;j<J.length;j++){var ee=1/0,ie=J[j];for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var fe;if(ne.type==="pie")fe=Z.r*Z.r;else if(ne.type==="funnelarea"){var be,Ae;ne.aspectratio>1?(be=Z.r,Ae=be/ne.aspectratio):(Ae=Z.r,be=Ae*ne.aspectratio),be*=(1+ne.baseratio)/2,fe=be*Ae}ee=Math.min(ee,fe/Z.vTotal)}for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var Be=ee*Z.vTotal;ne.type==="funnelarea"&&(Be/=(1+ne.baseratio)/2,Be/=ne.aspectratio),Z.r=Math.sqrt(Be)}}}function ue($){var J=$[0],Z=J.r,re=J.trace,ne=h.getRotationAngle(re.rotation),j=2*Math.PI/J.vTotal,ee="px0",ie="px1",fe,be,Ae;if(re.direction==="counterclockwise"){for(fe=0;fe<$.length&&$[fe].hidden;fe++);if(fe===$.length)return;ne+=j*$[fe].v,j*=-1,ee="px1",ie="px0"}for(Ae=se(Z,ne),fe=0;fe<$.length;fe++)be=$[fe],!be.hidden&&(be[ee]=Ae,be.startangle=ne,ne+=j*be.v/2,be.pxmid=se(Z,ne),be.midangle=ne,ne+=j*be.v/2,Ae=se(Z,ne),be.stopangle=ne,be[ie]=Ae,be.largeArc=be.v>J.vTotal/2?1:0,be.halfangle=Math.PI*Math.min(be.v/J.vTotal,.5),be.ring=1-re.hole,be.rInscribed=L(be,J))}function se($,J){return[$*Math.sin(J),-$*Math.cos(J)]}function he($,J,Z){var re=$._fullLayout,ne=Z.trace,j=ne.texttemplate,ee=ne.textinfo;if(!j&&ee&&ee!=="none"){var ie=ee.split("+"),fe=function(ce){return ie.indexOf(ce)!==-1},be=fe("label"),Ae=fe("text"),Be=fe("value"),Ie=fe("percent"),Ze=re.separators,at;if(at=be?[J.label]:[],Ae){var it=h.getFirstFilled(ne.text,J.pts);p(it)&&at.push(it)}Be&&at.push(h.formatPieValue(J.v,Ze)),Ie&&at.push(h.formatPiePercent(J.v/Z.vTotal,Ze)),J.text=at.join("<br>")}function et(ce){return{label:ce.label,value:ce.v,valueLabel:h.formatPieValue(ce.v,re.separators),percent:ce.v/Z.vTotal,percentLabel:h.formatPiePercent(ce.v/Z.vTotal,re.separators),color:ce.color,text:ce.text,customdata:t.castOption(ne,ce.i,"customdata")}}if(j){var lt=t.castOption(ne,J.i,"texttemplate");if(!lt)J.text="";else{var Me=et(J),ge=h.getFirstFilled(ne.text,J.pts);(p(ge)||ge==="")&&(Me.text=ge),J.text=t.texttemplateString(lt,Me,$._fullLayout._d3locale,Me,ne._meta||{})}}}function G($,J){var Z=$.rotate*Math.PI/180,re=Math.cos(Z),ne=Math.sin(Z),j=(J.left+J.right)/2,ee=(J.top+J.bottom)/2;$.textX=j*re-ee*ne,$.textY=j*ne+ee*re,$.noCenter=!0}H.exports={plot:T,formatSliceLabel:he,transformInsideText:m,determineInsideTextFont:S,positionTitleOutside:B,prerenderTitles:E,layoutAreas:W,attachFxHandlers:_,computeTransform:G}}}),p9=Ye({"src/traces/pie/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");A(e,t,"pie"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),d9=Ye({"src/traces/pie/base_plot.js"(X){"use strict";var H=Gu();X.name="pie",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),v9=Ye({"src/traces/pie/index.js"(X,H){"use strict";H.exports={attributes:i0(),supplyDefaults:n0().supplyDefaults,supplyLayoutDefaults:f9(),layoutAttributes:y3(),calc:y1().calc,crossTraceCalc:y1().crossTraceCalc,plot:_3().plot,style:p9(),styleOne:a1(),moduleType:"trace",name:"pie",basePlotModule:d9(),categories:["pie-like","pie","showLegend"],meta:{}}}}),m9=Ye({"lib/pie.js"(X,H){"use strict";H.exports=v9()}}),g9=Ye({"src/traces/sunburst/base_plot.js"(X){"use strict";var H=Gu();X.name="sunburst",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),QM=Ye({"src/traces/sunburst/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}}}),Y_=Ye({"src/traces/sunburst/attributes.js"(X,H){"use strict";var g=Pl(),x=xs().hovertemplateAttrs,A=xs().texttemplateAttrs,M=tu(),e=Wu().attributes,t=i0(),r=QM(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:o({colors:{valType:"data_array",editType:"calc"},line:{color:o({},t.marker.line.color,{dflt:null}),width:o({},t.marker.line.width,{dflt:1}),editType:"calc"},pattern:a,editType:"calc"},M("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:t.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:A({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:t.hovertext,hoverinfo:o({},g.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:x({},{keys:r.eventDataKeys}),textfont:t.textfont,insidetextorientation:t.insidetextorientation,insidetextfont:t.insidetextfont,outsidetextfont:o({},t.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:t.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:e({name:"sunburst",trace:!0,editType:"calc"})}}}),eE=Ye({"src/traces/sunburst/layout_attributes.js"(X,H){"use strict";H.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),y9=Ye({"src/traces/sunburst/defaults.js"(X,H){"use strict";var g=ta(),x=Y_(),A=Wu().defaults,M=gd().handleText,e=n0().handleMarkerDefaults,t=Su(),r=t.hasColorscale,o=t.handleDefaults;H.exports=function(i,n,s,c){function h(S,E){return g.coerce(i,n,x,S,E)}var v=h("labels"),p=h("parents");if(!v||!v.length||!p||!p.length){n.visible=!1;return}var T=h("values");T&&T.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),e(i,n,c,h);var l=n._hasColorscale=r(i,"marker","colors")||(i.marker||{}).coloraxis;l&&o(i,n,c,h,{prefix:"marker.",cLetter:"c"}),h("leaf.opacity",l?1:.7);var _=h("text");h("texttemplate"),n.texttemplate||h("textinfo",g.isArrayOrTypedArray(_)?"text+label":"label"),h("hovertext"),h("hovertemplate");var w="auto";M(i,n,c,h,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("insidetextorientation"),h("sort"),h("rotation"),h("root.color"),A(n,c,h),n._length=null}}}),_9=Ye({"src/traces/sunburst/layout_defaults.js"(X,H){"use strict";var g=ta(),x=eE();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("sunburstcolorway",e.colorway),t("extendsunburstcolors")}}}),K_=Ye({"node_modules/d3-hierarchy/dist/d3-hierarchy.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(Ne,Ee){return Ne.parent===Ee.parent?1:2}function A(Ne){return Ne.reduce(M,0)/Ne.length}function M(Ne,Ee){return Ne+Ee.x}function e(Ne){return 1+Ne.reduce(t,0)}function t(Ne,Ee){return Math.max(Ne,Ee.y)}function r(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[0];return Ne}function o(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[Ee.length-1];return Ne}function a(){var Ne=x,Ee=1,Ve=1,ke=!1;function Te(Le){var rt,dt=0;Le.eachAfter(function(Kt){var sr=Kt.children;sr?(Kt.x=A(sr),Kt.y=e(sr)):(Kt.x=rt?dt+=Ne(Kt,rt):0,Kt.y=0,rt=Kt)});var xt=r(Le),It=o(Le),Bt=xt.x-Ne(xt,It)/2,Gt=It.x+Ne(It,xt)/2;return Le.eachAfter(ke?function(Kt){Kt.x=(Kt.x-Le.x)*Ee,Kt.y=(Le.y-Kt.y)*Ve}:function(Kt){Kt.x=(Kt.x-Bt)/(Gt-Bt)*Ee,Kt.y=(1-(Le.y?Kt.y/Le.y:1))*Ve})}return Te.separation=function(Le){return arguments.length?(Ne=Le,Te):Ne},Te.size=function(Le){return arguments.length?(ke=!1,Ee=+Le[0],Ve=+Le[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(Le){return arguments.length?(ke=!0,Ee=+Le[0],Ve=+Le[1],Te):ke?[Ee,Ve]:null},Te}function i(Ne){var Ee=0,Ve=Ne.children,ke=Ve&&Ve.length;if(!ke)Ee=1;else for(;--ke>=0;)Ee+=Ve[ke].value;Ne.value=Ee}function n(){return this.eachAfter(i)}function s(Ne){var Ee=this,Ve,ke=[Ee],Te,Le,rt;do for(Ve=ke.reverse(),ke=[];Ee=Ve.pop();)if(Ne(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le<rt;++Le)ke.push(Te[Le]);while(ke.length);return this}function c(Ne){for(var Ee=this,Ve=[Ee],ke,Te;Ee=Ve.pop();)if(Ne(Ee),ke=Ee.children,ke)for(Te=ke.length-1;Te>=0;--Te)Ve.push(ke[Te]);return this}function h(Ne){for(var Ee=this,Ve=[Ee],ke=[],Te,Le,rt;Ee=Ve.pop();)if(ke.push(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le<rt;++Le)Ve.push(Te[Le]);for(;Ee=ke.pop();)Ne(Ee);return this}function v(Ne){return this.eachAfter(function(Ee){for(var Ve=+Ne(Ee.data)||0,ke=Ee.children,Te=ke&&ke.length;--Te>=0;)Ve+=ke[Te].value;Ee.value=Ve})}function p(Ne){return this.eachBefore(function(Ee){Ee.children&&Ee.children.sort(Ne)})}function T(Ne){for(var Ee=this,Ve=l(Ee,Ne),ke=[Ee];Ee!==Ve;)Ee=Ee.parent,ke.push(Ee);for(var Te=ke.length;Ne!==Ve;)ke.splice(Te,0,Ne),Ne=Ne.parent;return ke}function l(Ne,Ee){if(Ne===Ee)return Ne;var Ve=Ne.ancestors(),ke=Ee.ancestors(),Te=null;for(Ne=Ve.pop(),Ee=ke.pop();Ne===Ee;)Te=Ne,Ne=Ve.pop(),Ee=ke.pop();return Te}function _(){for(var Ne=this,Ee=[Ne];Ne=Ne.parent;)Ee.push(Ne);return Ee}function w(){var Ne=[];return this.each(function(Ee){Ne.push(Ee)}),Ne}function S(){var Ne=[];return this.eachBefore(function(Ee){Ee.children||Ne.push(Ee)}),Ne}function E(){var Ne=this,Ee=[];return Ne.each(function(Ve){Ve!==Ne&&Ee.push({source:Ve.parent,target:Ve})}),Ee}function m(Ne,Ee){var Ve=new f(Ne),ke=+Ne.value&&(Ve.value=Ne.value),Te,Le=[Ve],rt,dt,xt,It;for(Ee==null&&(Ee=d);Te=Le.pop();)if(ke&&(Te.value=+Te.data.value),(dt=Ee(Te.data))&&(It=dt.length))for(Te.children=new Array(It),xt=It-1;xt>=0;--xt)Le.push(rt=Te.children[xt]=new f(dt[xt])),rt.parent=Te,rt.depth=Te.depth+1;return Ve.eachBefore(y)}function b(){return m(this).eachBefore(u)}function d(Ne){return Ne.children}function u(Ne){Ne.data=Ne.data.data}function y(Ne){var Ee=0;do Ne.height=Ee;while((Ne=Ne.parent)&&Ne.height<++Ee)}function f(Ne){this.data=Ne,this.depth=this.height=0,this.parent=null}f.prototype=m.prototype={constructor:f,count:n,each:s,eachAfter:h,eachBefore:c,sum:v,sort:p,path:T,ancestors:_,descendants:w,leaves:S,links:E,copy:b};var P=Array.prototype.slice;function L(Ne){for(var Ee=Ne.length,Ve,ke;Ee;)ke=Math.random()*Ee--|0,Ve=Ne[Ee],Ne[Ee]=Ne[ke],Ne[ke]=Ve;return Ne}function z(Ne){for(var Ee=0,Ve=(Ne=L(P.call(Ne))).length,ke=[],Te,Le;Ee<Ve;)Te=Ne[Ee],Le&&O(Le,Te)?++Ee:(Le=N(ke=F(ke,Te)),Ee=0);return Le}function F(Ne,Ee){var Ve,ke;if(I(Ee,Ne))return[Ee];for(Ve=0;Ve<Ne.length;++Ve)if(B(Ee,Ne[Ve])&&I(W(Ne[Ve],Ee),Ne))return[Ne[Ve],Ee];for(Ve=0;Ve<Ne.length-1;++Ve)for(ke=Ve+1;ke<Ne.length;++ke)if(B(W(Ne[Ve],Ne[ke]),Ee)&&B(W(Ne[Ve],Ee),Ne[ke])&&B(W(Ne[ke],Ee),Ne[Ve])&&I(Q(Ne[Ve],Ne[ke],Ee),Ne))return[Ne[Ve],Ne[ke],Ee];throw new Error}function B(Ne,Ee){var Ve=Ne.r-Ee.r,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve<0||Ve*Ve<ke*ke+Te*Te}function O(Ne,Ee){var Ve=Ne.r-Ee.r+1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function I(Ne,Ee){for(var Ve=0;Ve<Ee.length;++Ve)if(!O(Ne,Ee[Ve]))return!1;return!0}function N(Ne){switch(Ne.length){case 1:return U(Ne[0]);case 2:return W(Ne[0],Ne[1]);case 3:return Q(Ne[0],Ne[1],Ne[2])}}function U(Ne){return{x:Ne.x,y:Ne.y,r:Ne.r}}function W(Ne,Ee){var Ve=Ne.x,ke=Ne.y,Te=Ne.r,Le=Ee.x,rt=Ee.y,dt=Ee.r,xt=Le-Ve,It=rt-ke,Bt=dt-Te,Gt=Math.sqrt(xt*xt+It*It);return{x:(Ve+Le+xt/Gt*Bt)/2,y:(ke+rt+It/Gt*Bt)/2,r:(Gt+Te+dt)/2}}function Q(Ne,Ee,Ve){var ke=Ne.x,Te=Ne.y,Le=Ne.r,rt=Ee.x,dt=Ee.y,xt=Ee.r,It=Ve.x,Bt=Ve.y,Gt=Ve.r,Kt=ke-rt,sr=ke-It,sa=Te-dt,Aa=Te-Bt,La=xt-Le,ka=Gt-Le,Ga=ke*ke+Te*Te-Le*Le,Ma=Ga-rt*rt-dt*dt+xt*xt,Ua=Ga-It*It-Bt*Bt+Gt*Gt,ni=sr*sa-Kt*Aa,Wt=(sa*Ua-Aa*Ma)/(ni*2)-ke,zt=(Aa*La-sa*ka)/ni,Vt=(sr*Ma-Kt*Ua)/(ni*2)-Te,Ut=(Kt*ka-sr*La)/ni,xr=zt*zt+Ut*Ut-1,Zr=2*(Le+Wt*zt+Vt*Ut),pa=Wt*Wt+Vt*Vt-Le*Le,Xr=-(xr?(Zr+Math.sqrt(Zr*Zr-4*xr*pa))/(2*xr):pa/Zr);return{x:ke+Wt+zt*Xr,y:Te+Vt+Ut*Xr,r:Xr}}function ue(Ne,Ee,Ve){var ke=Ne.x-Ee.x,Te,Le,rt=Ne.y-Ee.y,dt,xt,It=ke*ke+rt*rt;It?(Le=Ee.r+Ve.r,Le*=Le,xt=Ne.r+Ve.r,xt*=xt,Le>xt?(Te=(It+xt-Le)/(2*It),dt=Math.sqrt(Math.max(0,xt/It-Te*Te)),Ve.x=Ne.x-Te*ke-dt*rt,Ve.y=Ne.y-Te*rt+dt*ke):(Te=(It+Le-xt)/(2*It),dt=Math.sqrt(Math.max(0,Le/It-Te*Te)),Ve.x=Ee.x+Te*ke-dt*rt,Ve.y=Ee.y+Te*rt+dt*ke)):(Ve.x=Ee.x+Ve.r,Ve.y=Ee.y)}function se(Ne,Ee){var Ve=Ne.r+Ee.r-1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function he(Ne){var Ee=Ne._,Ve=Ne.next._,ke=Ee.r+Ve.r,Te=(Ee.x*Ve.r+Ve.x*Ee.r)/ke,Le=(Ee.y*Ve.r+Ve.y*Ee.r)/ke;return Te*Te+Le*Le}function G(Ne){this._=Ne,this.next=null,this.previous=null}function $(Ne){if(!(Te=Ne.length))return 0;var Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt;if(Ee=Ne[0],Ee.x=0,Ee.y=0,!(Te>1))return Ee.r;if(Ve=Ne[1],Ee.x=-Ve.r,Ve.x=Ee.r,Ve.y=0,!(Te>2))return Ee.r+Ve.r;ue(Ve,Ee,ke=Ne[2]),Ee=new G(Ee),Ve=new G(Ve),ke=new G(ke),Ee.next=ke.previous=Ve,Ve.next=Ee.previous=ke,ke.next=Ve.previous=Ee;e:for(dt=3;dt<Te;++dt){ue(Ee._,Ve._,ke=Ne[dt]),ke=new G(ke),xt=Ve.next,It=Ee.previous,Bt=Ve._.r,Gt=Ee._.r;do if(Bt<=Gt){if(se(xt._,ke._)){Ve=xt,Ee.next=Ve,Ve.previous=Ee,--dt;continue e}Bt+=xt._.r,xt=xt.next}else{if(se(It._,ke._)){Ee=It,Ee.next=Ve,Ve.previous=Ee,--dt;continue e}Gt+=It._.r,It=It.previous}while(xt!==It.next);for(ke.previous=Ee,ke.next=Ve,Ee.next=Ve.previous=Ve=ke,Le=he(Ee);(ke=ke.next)!==Ve;)(rt=he(ke))<Le&&(Ee=ke,Le=rt);Ve=Ee.next}for(Ee=[Ve._],ke=Ve;(ke=ke.next)!==Ve;)Ee.push(ke._);for(ke=z(Ee),dt=0;dt<Te;++dt)Ee=Ne[dt],Ee.x-=ke.x,Ee.y-=ke.y;return ke.r}function J(Ne){return $(Ne),Ne}function Z(Ne){return Ne==null?null:re(Ne)}function re(Ne){if(typeof Ne!="function")throw new Error;return Ne}function ne(){return 0}function j(Ne){return function(){return Ne}}function ee(Ne){return Math.sqrt(Ne.value)}function ie(){var Ne=null,Ee=1,Ve=1,ke=ne;function Te(Le){return Le.x=Ee/2,Le.y=Ve/2,Ne?Le.eachBefore(fe(Ne)).eachAfter(be(ke,.5)).eachBefore(Ae(1)):Le.eachBefore(fe(ee)).eachAfter(be(ne,1)).eachAfter(be(ke,Le.r/Math.min(Ee,Ve))).eachBefore(Ae(Math.min(Ee,Ve)/(2*Le.r))),Le}return Te.radius=function(Le){return arguments.length?(Ne=Z(Le),Te):Ne},Te.size=function(Le){return arguments.length?(Ee=+Le[0],Ve=+Le[1],Te):[Ee,Ve]},Te.padding=function(Le){return arguments.length?(ke=typeof Le=="function"?Le:j(+Le),Te):ke},Te}function fe(Ne){return function(Ee){Ee.children||(Ee.r=Math.max(0,+Ne(Ee)||0))}}function be(Ne,Ee){return function(Ve){if(ke=Ve.children){var ke,Te,Le=ke.length,rt=Ne(Ve)*Ee||0,dt;if(rt)for(Te=0;Te<Le;++Te)ke[Te].r+=rt;if(dt=$(ke),rt)for(Te=0;Te<Le;++Te)ke[Te].r-=rt;Ve.r=dt+rt}}}function Ae(Ne){return function(Ee){var Ve=Ee.parent;Ee.r*=Ne,Ve&&(Ee.x=Ve.x+Ne*Ee.x,Ee.y=Ve.y+Ne*Ee.y)}}function Be(Ne){Ne.x0=Math.round(Ne.x0),Ne.y0=Math.round(Ne.y0),Ne.x1=Math.round(Ne.x1),Ne.y1=Math.round(Ne.y1)}function Ie(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(ke-Ee)/Ne.value;++dt<xt;)rt=Le[dt],rt.y0=Ve,rt.y1=Te,rt.x0=Ee,rt.x1=Ee+=rt.value*It}function Ze(){var Ne=1,Ee=1,Ve=0,ke=!1;function Te(rt){var dt=rt.height+1;return rt.x0=rt.y0=Ve,rt.x1=Ne,rt.y1=Ee/dt,rt.eachBefore(Le(Ee,dt)),ke&&rt.eachBefore(Be),rt}function Le(rt,dt){return function(xt){xt.children&&Ie(xt,xt.x0,rt*(xt.depth+1)/dt,xt.x1,rt*(xt.depth+2)/dt);var It=xt.x0,Bt=xt.y0,Gt=xt.x1-Ve,Kt=xt.y1-Ve;Gt<It&&(It=Gt=(It+Gt)/2),Kt<Bt&&(Bt=Kt=(Bt+Kt)/2),xt.x0=It,xt.y0=Bt,xt.x1=Gt,xt.y1=Kt}}return Te.round=function(rt){return arguments.length?(ke=!!rt,Te):ke},Te.size=function(rt){return arguments.length?(Ne=+rt[0],Ee=+rt[1],Te):[Ne,Ee]},Te.padding=function(rt){return arguments.length?(Ve=+rt,Te):Ve},Te}var at="$",it={depth:-1},et={};function lt(Ne){return Ne.id}function Me(Ne){return Ne.parentId}function ge(){var Ne=lt,Ee=Me;function Ve(ke){var Te,Le,rt=ke.length,dt,xt,It,Bt=new Array(rt),Gt,Kt,sr={};for(Le=0;Le<rt;++Le)Te=ke[Le],It=Bt[Le]=new f(Te),(Gt=Ne(Te,Le,ke))!=null&&(Gt+="")&&(Kt=at+(It.id=Gt),sr[Kt]=Kt in sr?et:It);for(Le=0;Le<rt;++Le)if(It=Bt[Le],Gt=Ee(ke[Le],Le,ke),Gt==null||!(Gt+="")){if(dt)throw new Error("multiple roots");dt=It}else{if(xt=sr[at+Gt],!xt)throw new Error("missing: "+Gt);if(xt===et)throw new Error("ambiguous: "+Gt);xt.children?xt.children.push(It):xt.children=[It],It.parent=xt}if(!dt)throw new Error("no root");if(dt.parent=it,dt.eachBefore(function(sa){sa.depth=sa.parent.depth+1,--rt}).eachBefore(y),dt.parent=null,rt>0)throw new Error("cycle");return dt}return Ve.id=function(ke){return arguments.length?(Ne=re(ke),Ve):Ne},Ve.parentId=function(ke){return arguments.length?(Ee=re(ke),Ve):Ee},Ve}function ce(Ne,Ee){return Ne.parent===Ee.parent?1:2}function ze(Ne){var Ee=Ne.children;return Ee?Ee[0]:Ne.t}function tt(Ne){var Ee=Ne.children;return Ee?Ee[Ee.length-1]:Ne.t}function nt(Ne,Ee,Ve){var ke=Ve/(Ee.i-Ne.i);Ee.c-=ke,Ee.s+=Ve,Ne.c+=ke,Ee.z+=Ve,Ee.m+=Ve}function Qe(Ne){for(var Ee=0,Ve=0,ke=Ne.children,Te=ke.length,Le;--Te>=0;)Le=ke[Te],Le.z+=Ee,Le.m+=Ee,Ee+=Le.s+(Ve+=Le.c)}function Ct(Ne,Ee,Ve){return Ne.a.parent===Ee.parent?Ne.a:Ve}function St(Ne,Ee){this._=Ne,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Ee}St.prototype=Object.create(f.prototype);function Ot(Ne){for(var Ee=new St(Ne,0),Ve,ke=[Ee],Te,Le,rt,dt;Ve=ke.pop();)if(Le=Ve._.children)for(Ve.children=new Array(dt=Le.length),rt=dt-1;rt>=0;--rt)ke.push(Te=Ve.children[rt]=new St(Le[rt],rt)),Te.parent=Ve;return(Ee.parent=new St(null,0)).children=[Ee],Ee}function jt(){var Ne=ce,Ee=1,Ve=1,ke=null;function Te(It){var Bt=Ot(It);if(Bt.eachAfter(Le),Bt.parent.m=-Bt.z,Bt.eachBefore(rt),ke)It.eachBefore(xt);else{var Gt=It,Kt=It,sr=It;It.eachBefore(function(Ga){Ga.x<Gt.x&&(Gt=Ga),Ga.x>Kt.x&&(Kt=Ga),Ga.depth>sr.depth&&(sr=Ga)});var sa=Gt===Kt?1:Ne(Gt,Kt)/2,Aa=sa-Gt.x,La=Ee/(Kt.x+sa+Aa),ka=Ve/(sr.depth||1);It.eachBefore(function(Ga){Ga.x=(Ga.x+Aa)*La,Ga.y=Ga.depth*ka})}return It}function Le(It){var Bt=It.children,Gt=It.parent.children,Kt=It.i?Gt[It.i-1]:null;if(Bt){Qe(It);var sr=(Bt[0].z+Bt[Bt.length-1].z)/2;Kt?(It.z=Kt.z+Ne(It._,Kt._),It.m=It.z-sr):It.z=sr}else Kt&&(It.z=Kt.z+Ne(It._,Kt._));It.parent.A=dt(It,Kt,It.parent.A||Gt[0])}function rt(It){It._.x=It.z+It.parent.m,It.m+=It.parent.m}function dt(It,Bt,Gt){if(Bt){for(var Kt=It,sr=It,sa=Bt,Aa=Kt.parent.children[0],La=Kt.m,ka=sr.m,Ga=sa.m,Ma=Aa.m,Ua;sa=tt(sa),Kt=ze(Kt),sa&&Kt;)Aa=ze(Aa),sr=tt(sr),sr.a=It,Ua=sa.z+Ga-Kt.z-La+Ne(sa._,Kt._),Ua>0&&(nt(Ct(sa,It,Gt),It,Ua),La+=Ua,ka+=Ua),Ga+=sa.m,La+=Kt.m,Ma+=Aa.m,ka+=sr.m;sa&&!tt(sr)&&(sr.t=sa,sr.m+=Ga-ka),Kt&&!ze(Aa)&&(Aa.t=Kt,Aa.m+=La-Ma,Gt=It)}return Gt}function xt(It){It.x*=Ee,It.y=It.depth*Ve}return Te.separation=function(It){return arguments.length?(Ne=It,Te):Ne},Te.size=function(It){return arguments.length?(ke=!1,Ee=+It[0],Ve=+It[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(It){return arguments.length?(ke=!0,Ee=+It[0],Ve=+It[1],Te):ke?[Ee,Ve]:null},Te}function ur(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(Te-Ve)/Ne.value;++dt<xt;)rt=Le[dt],rt.x0=Ee,rt.x1=ke,rt.y0=Ve,rt.y1=Ve+=rt.value*It}var ar=(1+Math.sqrt(5))/2;function Cr(Ne,Ee,Ve,ke,Te,Le){for(var rt=[],dt=Ee.children,xt,It,Bt=0,Gt=0,Kt=dt.length,sr,sa,Aa=Ee.value,La,ka,Ga,Ma,Ua,ni,Wt;Bt<Kt;){sr=Te-Ve,sa=Le-ke;do La=dt[Gt++].value;while(!La&&Gt<Kt);for(ka=Ga=La,ni=Math.max(sa/sr,sr/sa)/(Aa*Ne),Wt=La*La*ni,Ua=Math.max(Ga/Wt,Wt/ka);Gt<Kt;++Gt){if(La+=It=dt[Gt].value,It<ka&&(ka=It),It>Ga&&(Ga=It),Wt=La*La*ni,Ma=Math.max(Ga/Wt,Wt/ka),Ma>Ua){La-=It;break}Ua=Ma}rt.push(xt={value:La,dice:sr<sa,children:dt.slice(Bt,Gt)}),xt.dice?Ie(xt,Ve,ke,Te,Aa?ke+=sa*La/Aa:Le):ur(xt,Ve,ke,Aa?Ve+=sr*La/Aa:Te,Le),Aa-=La,Bt=Gt}return rt}var vr=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){Cr(Ee,ke,Te,Le,rt,dt)}return Ve.ratio=function(ke){return Ne((ke=+ke)>1?ke:1)},Ve}(ar);function _r(){var Ne=vr,Ee=!1,Ve=1,ke=1,Te=[0],Le=ne,rt=ne,dt=ne,xt=ne,It=ne;function Bt(Kt){return Kt.x0=Kt.y0=0,Kt.x1=Ve,Kt.y1=ke,Kt.eachBefore(Gt),Te=[0],Ee&&Kt.eachBefore(Be),Kt}function Gt(Kt){var sr=Te[Kt.depth],sa=Kt.x0+sr,Aa=Kt.y0+sr,La=Kt.x1-sr,ka=Kt.y1-sr;La<sa&&(sa=La=(sa+La)/2),ka<Aa&&(Aa=ka=(Aa+ka)/2),Kt.x0=sa,Kt.y0=Aa,Kt.x1=La,Kt.y1=ka,Kt.children&&(sr=Te[Kt.depth+1]=Le(Kt)/2,sa+=It(Kt)-sr,Aa+=rt(Kt)-sr,La-=dt(Kt)-sr,ka-=xt(Kt)-sr,La<sa&&(sa=La=(sa+La)/2),ka<Aa&&(Aa=ka=(Aa+ka)/2),Ne(Kt,sa,Aa,La,ka))}return Bt.round=function(Kt){return arguments.length?(Ee=!!Kt,Bt):Ee},Bt.size=function(Kt){return arguments.length?(Ve=+Kt[0],ke=+Kt[1],Bt):[Ve,ke]},Bt.tile=function(Kt){return arguments.length?(Ne=re(Kt),Bt):Ne},Bt.padding=function(Kt){return arguments.length?Bt.paddingInner(Kt).paddingOuter(Kt):Bt.paddingInner()},Bt.paddingInner=function(Kt){return arguments.length?(Le=typeof Kt=="function"?Kt:j(+Kt),Bt):Le},Bt.paddingOuter=function(Kt){return arguments.length?Bt.paddingTop(Kt).paddingRight(Kt).paddingBottom(Kt).paddingLeft(Kt):Bt.paddingTop()},Bt.paddingTop=function(Kt){return arguments.length?(rt=typeof Kt=="function"?Kt:j(+Kt),Bt):rt},Bt.paddingRight=function(Kt){return arguments.length?(dt=typeof Kt=="function"?Kt:j(+Kt),Bt):dt},Bt.paddingBottom=function(Kt){return arguments.length?(xt=typeof Kt=="function"?Kt:j(+Kt),Bt):xt},Bt.paddingLeft=function(Kt){return arguments.length?(It=typeof Kt=="function"?Kt:j(+Kt),Bt):It},Bt}function yt(Ne,Ee,Ve,ke,Te){var Le=Ne.children,rt,dt=Le.length,xt,It=new Array(dt+1);for(It[0]=xt=rt=0;rt<dt;++rt)It[rt+1]=xt+=Le[rt].value;Bt(0,dt,Ne.value,Ee,Ve,ke,Te);function Bt(Gt,Kt,sr,sa,Aa,La,ka){if(Gt>=Kt-1){var Ga=Le[Gt];Ga.x0=sa,Ga.y0=Aa,Ga.x1=La,Ga.y1=ka;return}for(var Ma=It[Gt],Ua=sr/2+Ma,ni=Gt+1,Wt=Kt-1;ni<Wt;){var zt=ni+Wt>>>1;It[zt]<Ua?ni=zt+1:Wt=zt}Ua-It[ni-1]<It[ni]-Ua&&Gt+1<ni&&--ni;var Vt=It[ni]-Ma,Ut=sr-Vt;if(La-sa>ka-Aa){var xr=(sa*Ut+La*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,xr,ka),Bt(ni,Kt,Ut,xr,Aa,La,ka)}else{var Zr=(Aa*Ut+ka*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,La,Zr),Bt(ni,Kt,Ut,sa,Zr,La,ka)}}}function Fe(Ne,Ee,Ve,ke,Te){(Ne.depth&1?ur:Ie)(Ne,Ee,Ve,ke,Te)}var Ke=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){if((xt=ke._squarify)&&xt.ratio===Ee)for(var xt,It,Bt,Gt,Kt=-1,sr,sa=xt.length,Aa=ke.value;++Kt<sa;){for(It=xt[Kt],Bt=It.children,Gt=It.value=0,sr=Bt.length;Gt<sr;++Gt)It.value+=Bt[Gt].value;It.dice?Ie(It,Te,Le,rt,Le+=(dt-Le)*It.value/Aa):ur(It,Te,Le,Te+=(rt-Te)*It.value/Aa,dt),Aa-=It.value}else ke._squarify=xt=Cr(Ee,ke,Te,Le,rt,dt),xt.ratio=Ee}return Ve.ratio=function(ke){return Ne((ke=+ke)>1?ke:1)},Ve}(ar);g.cluster=a,g.hierarchy=m,g.pack=ie,g.packEnclose=z,g.packSiblings=J,g.partition=Ze,g.stratify=ge,g.tree=jt,g.treemap=_r,g.treemapBinary=yt,g.treemapDice=Ie,g.treemapResquarify=Ke,g.treemapSlice=ur,g.treemapSliceDice=Fe,g.treemapSquarify=vr,Object.defineProperty(g,"__esModule",{value:!0})})}}),J_=Ye({"src/traces/sunburst/calc.js"(X){"use strict";var H=K_(),g=jo(),x=ta(),A=Su().makeColorScaleFuncFromTrace,M=y1().makePullColorFn,e=y1().generateExtendedColors,t=Su().calc,r=ks().ALMOST_EQUAL,o={},a={},i={};X.calc=function(s,c){var h=s._fullLayout,v=c.ids,p=x.isArrayOrTypedArray(v),T=c.labels,l=c.parents,_=c.values,w=x.isArrayOrTypedArray(_),S=[],E={},m={},b=function(J,Z){E[J]?E[J].push(Z):E[J]=[Z],m[Z]=1},d=function(J){return J||typeof J=="number"},u=function(J){return!w||g(_[J])&&_[J]>=0},y,f,P;p?(y=Math.min(v.length,l.length),f=function(J){return d(v[J])&&u(J)},P=function(J){return String(v[J])}):(y=Math.min(T.length,l.length),f=function(J){return d(T[J])&&u(J)},P=function(J){return String(T[J])}),w&&(y=Math.min(y,_.length));for(var L=0;L<y;L++)if(f(L)){var z=P(L),F=d(l[L])?String(l[L]):"",B={i:L,id:z,pid:F,label:d(T[L])?String(T[L]):""};w&&(B.v=+_[L]),S.push(B),b(F,z)}if(E[""]){if(E[""].length>1){for(var N=x.randstr(),U=0;U<S.length;U++)S[U].pid===""&&(S[U].pid=N);S.unshift({hasMultipleRoots:!0,id:N,pid:"",label:""})}}else{var O=[],I;for(I in E)m[I]||O.push(I);if(O.length===1)I=O[0],S.unshift({hasImpliedRoot:!0,id:I,pid:"",label:I});else return x.warn(["Multiple implied roots, cannot build",c.type,"hierarchy of",c.name+".","These roots include:",O.join(", ")].join(" "))}var W;try{W=H.stratify().id(function(J){return J.id}).parentId(function(J){return J.pid})(S)}catch(J){return x.warn(["Failed to build",c.type,"hierarchy of",c.name+".","Error:",J.message].join(" "))}var Q=H.hierarchy(W),ue=!1;if(w)switch(c.branchvalues){case"remainder":Q.sum(function(J){return J.data.v});break;case"total":Q.each(function(J){var Z=J.data.data,re=Z.v;if(J.children){var ne=J.children.reduce(function(j,ee){return j+ee.data.data.v},0);if((Z.hasImpliedRoot||Z.hasMultipleRoots)&&(re=ne),re<ne*r)return ue=!0,x.warn(["Total value for node",J.data.data.id,"of",c.name,"is smaller than the sum of its children.",`
+parent value =`,re,`
+children sum =`,ne].join(" "))}J.value=re});break}else n(Q,c,{branches:c.count.indexOf("branches")!==-1,leaves:c.count.indexOf("leaves")!==-1});if(!ue){c.sort&&Q.sort(function(J,Z){return Z.value-J.value});var se,he,G=c.marker.colors||[],$=!!G.length;return c._hasColorscale?($||(G=w?c.values:c._values),t(s,c,{vals:G,containerStr:"marker",cLetter:"c"}),he=A(c.marker)):se=M(h["_"+c.type+"colormap"]),Q.each(function(J){var Z=J.data.data;Z.color=c._hasColorscale?he(G[Z.i]):se(G[Z.i],Z.id)}),S[0].hierarchy=Q,S}},X._runCrossTraceCalc=function(s,c){var h=c._fullLayout,v=c.calcdata,p=h[s+"colorway"],T=h["_"+s+"colormap"];h["extend"+s+"colors"]&&(p=e(p,s==="icicle"?i:s==="treemap"?a:o));var l=0,_;function w(b){var d=b.data.data,u=d.id;d.color===!1&&(T[u]?d.color=T[u]:b.parent?b.parent.parent?d.color=b.parent.data.data.color:(T[u]=d.color=p[l%p.length],l++):d.color=_)}for(var S=0;S<v.length;S++){var E=v[S],m=E[0];m.trace.type===s&&m.hierarchy&&(_=m.trace.root.color,m.hierarchy.each(w))}},X.crossTraceCalc=function(s){return X._runCrossTraceCalc("sunburst",s)};function n(s,c,h){var v=0,p=s.children;if(p){for(var T=p.length,l=0;l<T;l++)v+=n(p[l],c,h);h.branches&&v++}else h.leaves&&v++;return s.value=s.data.data.value=v,c._values||(c._values=[]),c._values[s.data.data.i]=v,v}}});function o0(X,H,g){X.prototype=H.prototype=g,g.constructor=X}function _1(X,H){var g=Object.create(X.prototype);for(var x in H)g[x]=H[x];return g}var x3=Qn({"node_modules/d3-color/src/define.js"(){}});function Kv(){}function tE(){return this.rgb().formatHex()}function x9(){return this.rgb().formatHex8()}function b9(){return sE(this).formatHsl()}function rE(){return this.rgb().formatRgb()}function x1(X){var H,g;return X=(X+"").trim().toLowerCase(),(H=uE.exec(X))?(g=H[1].length,H=parseInt(H[1],16),g===6?aE(H):g===3?new qh(H>>8&15|H>>4&240,H>>4&15|H&240,(H&15)<<4|H&15,1):g===8?$_(H>>24&255,H>>16&255,H>>8&255,(H&255)/255):g===4?$_(H>>12&15|H>>8&240,H>>8&15|H>>4&240,H>>4&15|H&240,((H&15)<<4|H&15)/255):null):(H=cE.exec(X))?new qh(H[1],H[2],H[3],1):(H=fE.exec(X))?new qh(H[1]*255/100,H[2]*255/100,H[3]*255/100,1):(H=hE.exec(X))?$_(H[1],H[2],H[3],H[4]):(H=pE.exec(X))?$_(H[1]*255/100,H[2]*255/100,H[3]*255/100,H[4]):(H=dE.exec(X))?oE(H[1],H[2]/100,H[3]/100,1):(H=vE.exec(X))?oE(H[1],H[2]/100,H[3]/100,H[4]):A3.hasOwnProperty(X)?aE(A3[X]):X==="transparent"?new qh(NaN,NaN,NaN,0):null}function aE(X){return new qh(X>>16&255,X>>8&255,X&255,1)}function $_(X,H,g,x){return x<=0&&(X=H=g=NaN),new qh(X,H,g,x)}function b3(X){return X instanceof Kv||(X=x1(X)),X?(X=X.rgb(),new qh(X.r,X.g,X.b,X.opacity)):new qh}function Q_(X,H,g,x){return arguments.length===1?b3(X):new qh(X,H,g,x??1)}function qh(X,H,g,x){this.r=+X,this.g=+H,this.b=+g,this.opacity=+x}function iE(){return`#${og(this.r)}${og(this.g)}${og(this.b)}`}function w9(){return`#${og(this.r)}${og(this.g)}${og(this.b)}${og((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){let X=ex(this.opacity);return`${X===1?"rgb(":"rgba("}${ng(this.r)}, ${ng(this.g)}, ${ng(this.b)}${X===1?")":`, ${X})`}`}function ex(X){return isNaN(X)?1:Math.max(0,Math.min(1,X))}function ng(X){return Math.max(0,Math.min(255,Math.round(X)||0))}function og(X){return X=ng(X),(X<16?"0":"")+X.toString(16)}function oE(X,H,g,x){return x<=0?X=H=g=NaN:g<=0||g>=1?X=H=NaN:H<=0&&(X=NaN),new Ud(X,H,g,x)}function sE(X){if(X instanceof Ud)return new Ud(X.h,X.s,X.l,X.opacity);if(X instanceof Kv||(X=x1(X)),!X)return new Ud;if(X instanceof Ud)return X;X=X.rgb();var H=X.r/255,g=X.g/255,x=X.b/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=NaN,t=M-A,r=(M+A)/2;return t?(H===M?e=(g-x)/t+(g<x)*6:g===M?e=(x-H)/t+2:e=(H-g)/t+4,t/=r<.5?M+A:2-M-A,e*=60):t=r>0&&r<1?0:e,new Ud(e,t,r,X.opacity)}function w3(X,H,g,x){return arguments.length===1?sE(X):new Ud(X,H,g,x??1)}function Ud(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}function lE(X){return X=(X||0)%360,X<0?X+360:X}function tx(X){return Math.max(0,Math.min(1,X||0))}function T3(X,H,g){return(X<60?H+(g-H)*X/60:X<180?g:X<240?H+(g-H)*(240-X)/60:H)*255}var Jv,sg,lg,s0,jd,uE,cE,fE,hE,pE,dE,vE,A3,S3=Qn({"node_modules/d3-color/src/color.js"(){x3(),Jv=.7,sg=1/Jv,lg="\\s*([+-]?\\d+)\\s*",s0="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",jd="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",uE=/^#([0-9a-f]{3,8})$/,cE=new RegExp(`^rgb\\(${lg},${lg},${lg}\\)$`),fE=new RegExp(`^rgb\\(${jd},${jd},${jd}\\)$`),hE=new RegExp(`^rgba\\(${lg},${lg},${lg},${s0}\\)$`),pE=new RegExp(`^rgba\\(${jd},${jd},${jd},${s0}\\)$`),dE=new RegExp(`^hsl\\(${s0},${jd},${jd}\\)$`),vE=new RegExp(`^hsla\\(${s0},${jd},${jd},${s0}\\)$`),A3={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},o0(Kv,x1,{copy(X){return Object.assign(new this.constructor,this,X)},displayable(){return this.rgb().displayable()},hex:tE,formatHex:tE,formatHex8:x9,formatHsl:b9,formatRgb:rE,toString:rE}),o0(qh,Q_,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},rgb(){return this},clamp(){return new qh(ng(this.r),ng(this.g),ng(this.b),ex(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:iE,formatHex:iE,formatHex8:w9,formatRgb:nE,toString:nE})),o0(Ud,w3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new Ud(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new Ud(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=this.h%360+(this.h<0)*360,H=isNaN(X)||isNaN(this.s)?0:this.s,g=this.l,x=g+(g<.5?g:1-g)*H,A=2*g-x;return new qh(T3(X>=240?X-240:X+120,A,x),T3(X,A,x),T3(X<120?X+240:X-120,A,x),this.opacity)},clamp(){return new Ud(lE(this.h),tx(this.s),tx(this.l),ex(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let X=ex(this.opacity);return`${X===1?"hsl(":"hsla("}${lE(this.h)}, ${tx(this.s)*100}%, ${tx(this.l)*100}%${X===1?")":`, ${X})`}`}}))}}),M3,E3,mE=Qn({"node_modules/d3-color/src/math.js"(){M3=Math.PI/180,E3=180/Math.PI}});function gE(X){if(X instanceof rv)return new rv(X.l,X.a,X.b,X.opacity);if(X instanceof Mv)return yE(X);X instanceof qh||(X=b3(X));var H=I3(X.r),g=I3(X.g),x=I3(X.b),A=C3((.2225045*H+.7168786*g+.0606169*x)/z3),M,e;return H===g&&g===x?M=e=A:(M=C3((.4360747*H+.3850649*g+.1430804*x)/D3),e=C3((.0139322*H+.0971045*g+.7141733*x)/F3)),new rv(116*A-16,500*(M-A),200*(A-e),X.opacity)}function k3(X,H,g,x){return arguments.length===1?gE(X):new rv(X,H,g,x??1)}function rv(X,H,g,x){this.l=+X,this.a=+H,this.b=+g,this.opacity=+x}function C3(X){return X>_E?Math.pow(X,.3333333333333333):X/B3+O3}function L3(X){return X>ug?X*X*X:B3*(X-O3)}function P3(X){return 255*(X<=.0031308?12.92*X:1.055*Math.pow(X,.4166666666666667)-.055)}function I3(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function T9(X){if(X instanceof Mv)return new Mv(X.h,X.c,X.l,X.opacity);if(X instanceof rv||(X=gE(X)),X.a===0&&X.b===0)return new Mv(NaN,0<X.l&&X.l<100?0:NaN,X.l,X.opacity);var H=Math.atan2(X.b,X.a)*E3;return new Mv(H<0?H+360:H,Math.sqrt(X.a*X.a+X.b*X.b),X.l,X.opacity)}function R3(X,H,g,x){return arguments.length===1?T9(X):new Mv(X,H,g,x??1)}function Mv(X,H,g,x){this.h=+X,this.c=+H,this.l=+g,this.opacity=+x}function yE(X){if(isNaN(X.h))return new rv(X.l,0,0,X.opacity);var H=X.h*M3;return new rv(X.l,Math.cos(H)*X.c,Math.sin(H)*X.c,X.opacity)}var b1,D3,z3,F3,O3,ug,B3,_E,A9=Qn({"node_modules/d3-color/src/lab.js"(){x3(),S3(),mE(),b1=18,D3=.96422,z3=1,F3=.82521,O3=4/29,ug=6/29,B3=3*ug*ug,_E=ug*ug*ug,o0(rv,k3,_1(Kv,{brighter(X){return new rv(this.l+b1*(X??1),this.a,this.b,this.opacity)},darker(X){return new rv(this.l-b1*(X??1),this.a,this.b,this.opacity)},rgb(){var X=(this.l+16)/116,H=isNaN(this.a)?X:X+this.a/500,g=isNaN(this.b)?X:X-this.b/200;return H=D3*L3(H),X=z3*L3(X),g=F3*L3(g),new qh(P3(3.1338561*H-1.6168667*X-.4906146*g),P3(-.9787684*H+1.9161415*X+.033454*g),P3(.0719453*H-.2289914*X+1.4052427*g),this.opacity)}})),o0(Mv,R3,_1(Kv,{brighter(X){return new Mv(this.h,this.c,this.l+b1*(X??1),this.opacity)},darker(X){return new Mv(this.h,this.c,this.l-b1*(X??1),this.opacity)},rgb(){return yE(this).rgb()}}))}});function S9(X){if(X instanceof cg)return new cg(X.h,X.s,X.l,X.opacity);X instanceof qh||(X=b3(X));var H=X.r/255,g=X.g/255,x=X.b/255,A=(q3*x+j3*H-V3*g)/(q3+j3-V3),M=x-A,e=(l0*(g-A)-ax*M)/w1,t=Math.sqrt(e*e+M*M)/(l0*A*(1-A)),r=t?Math.atan2(e,M)*E3-120:NaN;return new cg(r<0?r+360:r,t,A,X.opacity)}function N3(X,H,g,x){return arguments.length===1?S9(X):new cg(X,H,g,x??1)}function cg(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}var U3,rx,ax,w1,l0,j3,V3,q3,M9=Qn({"node_modules/d3-color/src/cubehelix.js"(){x3(),S3(),mE(),U3=-.14861,rx=1.78277,ax=-.29227,w1=-.90649,l0=1.97294,j3=l0*w1,V3=l0*rx,q3=rx*ax-w1*U3,o0(cg,N3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new cg(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new cg(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=isNaN(this.h)?0:(this.h+120)*M3,H=+this.l,g=isNaN(this.s)?0:this.s*H*(1-H),x=Math.cos(X),A=Math.sin(X);return new qh(255*(H+g*(U3*x+rx*A)),255*(H+g*(ax*x+w1*A)),255*(H+g*(l0*x)),this.opacity)}}))}}),u0=Qn({"node_modules/d3-color/src/index.js"(){S3(),A9(),M9()}});function xE(X,H,g,x,A){var M=X*X,e=M*X;return((1-3*X+3*M-e)*H+(4-6*M+3*e)*g+(1+3*X+3*M-3*e)*x+e*A)/6}function bE(X){var H=X.length-1;return function(g){var x=g<=0?g=0:g>=1?(g=1,H-1):Math.floor(g*H),A=X[x],M=X[x+1],e=x>0?X[x-1]:2*A-M,t=x<H-1?X[x+2]:2*M-A;return xE((g-x/H)*H,e,A,M,t)}}var H3=Qn({"node_modules/d3-interpolate/src/basis.js"(){}});function wE(X){var H=X.length;return function(g){var x=Math.floor(((g%=1)<0?++g:g)*H),A=X[(x+H-1)%H],M=X[x%H],e=X[(x+1)%H],t=X[(x+2)%H];return xE((g-x/H)*H,A,M,e,t)}}var TE=Qn({"node_modules/d3-interpolate/src/basisClosed.js"(){H3()}}),T1,AE=Qn({"node_modules/d3-interpolate/src/constant.js"(){T1=X=>()=>X}});function SE(X,H){return function(g){return X+g*H}}function E9(X,H,g){return X=Math.pow(X,g),H=Math.pow(H,g)-X,g=1/g,function(x){return Math.pow(X+x*H,g)}}function ix(X,H){var g=H-X;return g?SE(X,g>180||g<-180?g-360*Math.round(g/360):g):T1(isNaN(X)?H:X)}function k9(X){return(X=+X)==1?Hh:function(H,g){return g-H?E9(H,g,X):T1(isNaN(H)?g:H)}}function Hh(X,H){var g=H-X;return g?SE(X,g):T1(isNaN(X)?H:X)}var c0=Qn({"node_modules/d3-interpolate/src/color.js"(){AE()}});function ME(X){return function(H){var g=H.length,x=new Array(g),A=new Array(g),M=new Array(g),e,t;for(e=0;e<g;++e)t=Q_(H[e]),x[e]=t.r||0,A[e]=t.g||0,M[e]=t.b||0;return x=X(x),A=X(A),M=X(M),t.opacity=1,function(r){return t.r=x(r),t.g=A(r),t.b=M(r),t+""}}}var nx,EE,kE,CE=Qn({"node_modules/d3-interpolate/src/rgb.js"(){u0(),H3(),TE(),c0(),nx=function X(H){var g=k9(H);function x(A,M){var e=g((A=Q_(A)).r,(M=Q_(M)).r),t=g(A.g,M.g),r=g(A.b,M.b),o=Hh(A.opacity,M.opacity);return function(a){return A.r=e(a),A.g=t(a),A.b=r(a),A.opacity=o(a),A+""}}return x.gamma=X,x}(1),EE=ME(bE),kE=ME(wE)}});function G3(X,H){H||(H=[]);var g=X?Math.min(H.length,X.length):0,x=H.slice(),A;return function(M){for(A=0;A<g;++A)x[A]=X[A]*(1-M)+H[A]*M;return x}}function LE(X){return ArrayBuffer.isView(X)&&!(X instanceof DataView)}var W3=Qn({"node_modules/d3-interpolate/src/numberArray.js"(){}});function C9(X,H){return(LE(H)?G3:PE)(X,H)}function PE(X,H){var g=H?H.length:0,x=X?Math.min(g,X.length):0,A=new Array(x),M=new Array(g),e;for(e=0;e<x;++e)A[e]=ux(X[e],H[e]);for(;e<g;++e)M[e]=H[e];return function(t){for(e=0;e<x;++e)M[e]=A[e](t);return M}}var IE=Qn({"node_modules/d3-interpolate/src/array.js"(){cx(),W3()}});function RE(X,H){var g=new Date;return X=+X,H=+H,function(x){return g.setTime(X*(1-x)+H*x),g}}var DE=Qn({"node_modules/d3-interpolate/src/date.js"(){}});function av(X,H){return X=+X,H=+H,function(g){return X*(1-g)+H*g}}var ox=Qn({"node_modules/d3-interpolate/src/number.js"(){}});function zE(X,H){var g={},x={},A;(X===null||typeof X!="object")&&(X={}),(H===null||typeof H!="object")&&(H={});for(A in H)A in X?g[A]=ux(X[A],H[A]):x[A]=H[A];return function(M){for(A in g)x[A]=g[A](M);return x}}var FE=Qn({"node_modules/d3-interpolate/src/object.js"(){cx()}});function L9(X){return function(){return X}}function P9(X){return function(H){return X(H)+""}}function OE(X,H){var g=sx.lastIndex=lx.lastIndex=0,x,A,M,e=-1,t=[],r=[];for(X=X+"",H=H+"";(x=sx.exec(X))&&(A=lx.exec(H));)(M=A.index)>g&&(M=H.slice(g,M),t[e]?t[e]+=M:t[++e]=M),(x=x[0])===(A=A[0])?t[e]?t[e]+=A:t[++e]=A:(t[++e]=null,r.push({i:e,x:av(x,A)})),g=lx.lastIndex;return g<H.length&&(M=H.slice(g),t[e]?t[e]+=M:t[++e]=M),t.length<2?r[0]?P9(r[0].x):L9(H):(H=r.length,function(o){for(var a=0,i;a<H;++a)t[(i=r[a]).i]=i.x(o);return t.join("")})}var sx,lx,BE=Qn({"node_modules/d3-interpolate/src/string.js"(){ox(),sx=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,lx=new RegExp(sx.source,"g")}});function ux(X,H){var g=typeof H,x;return H==null||g==="boolean"?T1(H):(g==="number"?av:g==="string"?(x=x1(H))?(H=x,nx):OE:H instanceof x1?nx:H instanceof Date?RE:LE(H)?G3:Array.isArray(H)?PE:typeof H.valueOf!="function"&&typeof H.toString!="function"||isNaN(H)?zE:av)(X,H)}var cx=Qn({"node_modules/d3-interpolate/src/value.js"(){u0(),CE(),IE(),DE(),ox(),FE(),BE(),AE(),W3()}});function I9(X){var H=X.length;return function(g){return X[Math.max(0,Math.min(H-1,Math.floor(g*H)))]}}var R9=Qn({"node_modules/d3-interpolate/src/discrete.js"(){}});function D9(X,H){var g=ix(+X,+H);return function(x){var A=g(x);return A-360*Math.floor(A/360)}}var z9=Qn({"node_modules/d3-interpolate/src/hue.js"(){c0()}});function F9(X,H){return X=+X,H=+H,function(g){return Math.round(X*(1-g)+H*g)}}var O9=Qn({"node_modules/d3-interpolate/src/round.js"(){}});function NE(X,H,g,x,A,M){var e,t,r;return(e=Math.sqrt(X*X+H*H))&&(X/=e,H/=e),(r=X*g+H*x)&&(g-=X*r,x-=H*r),(t=Math.sqrt(g*g+x*x))&&(g/=t,x/=t,r/=t),X*x<H*g&&(X=-X,H=-H,r=-r,e=-e),{translateX:A,translateY:M,rotate:Math.atan2(H,X)*Z3,skewX:Math.atan(r)*Z3,scaleX:e,scaleY:t}}var Z3,fx,B9=Qn({"node_modules/d3-interpolate/src/transform/decompose.js"(){Z3=180/Math.PI,fx={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}}});function N9(X){let H=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(X+"");return H.isIdentity?fx:NE(H.a,H.b,H.c,H.d,H.e,H.f)}function U9(X){return X==null||(hx||(hx=document.createElementNS("http://www.w3.org/2000/svg","g")),hx.setAttribute("transform",X),!(X=hx.transform.baseVal.consolidate()))?fx:(X=X.matrix,NE(X.a,X.b,X.c,X.d,X.e,X.f))}var hx,j9=Qn({"node_modules/d3-interpolate/src/transform/parse.js"(){B9()}});function UE(X,H,g,x){function A(o){return o.length?o.pop()+" ":""}function M(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push("translate(",null,H,null,g);c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i||n)&&s.push("translate("+i+H+n+g)}function e(o,a,i,n){o!==a?(o-a>180?a+=360:a-o>180&&(o+=360),n.push({i:i.push(A(i)+"rotate(",null,x)-2,x:av(o,a)})):a&&i.push(A(i)+"rotate("+a+x)}function t(o,a,i,n){o!==a?n.push({i:i.push(A(i)+"skewX(",null,x)-2,x:av(o,a)}):a&&i.push(A(i)+"skewX("+a+x)}function r(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push(A(s)+"scale(",null,",",null,")");c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i!==1||n!==1)&&s.push(A(s)+"scale("+i+","+n+")")}return function(o,a){var i=[],n=[];return o=X(o),a=X(a),M(o.translateX,o.translateY,a.translateX,a.translateY,i,n),e(o.rotate,a.rotate,i,n),t(o.skewX,a.skewX,i,n),r(o.scaleX,o.scaleY,a.scaleX,a.scaleY,i,n),o=a=null,function(s){for(var c=-1,h=n.length,v;++c<h;)i[(v=n[c]).i]=v.x(s);return i.join("")}}}var jE,VE,V9=Qn({"node_modules/d3-interpolate/src/transform/index.js"(){ox(),j9(),jE=UE(N9,"px, ","px)","deg)"),VE=UE(U9,", ",")",")")}});function qE(X){return((X=Math.exp(X))+1/X)/2}function q9(X){return((X=Math.exp(X))-1/X)/2}function H9(X){return((X=Math.exp(2*X))-1)/(X+1)}var HE,GE,G9=Qn({"node_modules/d3-interpolate/src/zoom.js"(){HE=1e-12,GE=function X(H,g,x){function A(M,e){var t=M[0],r=M[1],o=M[2],a=e[0],i=e[1],n=e[2],s=a-t,c=i-r,h=s*s+c*c,v,p;if(h<HE)p=Math.log(n/o)/H,v=function(E){return[t+E*s,r+E*c,o*Math.exp(H*E*p)]};else{var T=Math.sqrt(h),l=(n*n-o*o+x*h)/(2*o*g*T),_=(n*n-o*o-x*h)/(2*n*g*T),w=Math.log(Math.sqrt(l*l+1)-l),S=Math.log(Math.sqrt(_*_+1)-_);p=(S-w)/H,v=function(E){var m=E*p,b=qE(w),d=o/(g*T)*(b*H9(H*m+w)-q9(w));return[t+d*s,r+d*c,o*b/qE(H*m+w)]}}return v.duration=p*1e3*H/Math.SQRT2,v}return A.rho=function(M){var e=Math.max(.001,+M),t=e*e,r=t*t;return X(e,t,r)},A}(Math.SQRT2,2,4)}});function WE(X){return function(H,g){var x=X((H=w3(H)).h,(g=w3(g)).h),A=Hh(H.s,g.s),M=Hh(H.l,g.l),e=Hh(H.opacity,g.opacity);return function(t){return H.h=x(t),H.s=A(t),H.l=M(t),H.opacity=e(t),H+""}}}var ZE,XE,W9=Qn({"node_modules/d3-interpolate/src/hsl.js"(){u0(),c0(),ZE=WE(ix),XE=WE(Hh)}});function Z9(X,H){var g=Hh((X=k3(X)).l,(H=k3(H)).l),x=Hh(X.a,H.a),A=Hh(X.b,H.b),M=Hh(X.opacity,H.opacity);return function(e){return X.l=g(e),X.a=x(e),X.b=A(e),X.opacity=M(e),X+""}}var X9=Qn({"node_modules/d3-interpolate/src/lab.js"(){u0(),c0()}});function YE(X){return function(H,g){var x=X((H=R3(H)).h,(g=R3(g)).h),A=Hh(H.c,g.c),M=Hh(H.l,g.l),e=Hh(H.opacity,g.opacity);return function(t){return H.h=x(t),H.c=A(t),H.l=M(t),H.opacity=e(t),H+""}}}var KE,JE,Y9=Qn({"node_modules/d3-interpolate/src/hcl.js"(){u0(),c0(),KE=YE(ix),JE=YE(Hh)}});function $E(X){return function H(g){g=+g;function x(A,M){var e=X((A=N3(A)).h,(M=N3(M)).h),t=Hh(A.s,M.s),r=Hh(A.l,M.l),o=Hh(A.opacity,M.opacity);return function(a){return A.h=e(a),A.s=t(a),A.l=r(Math.pow(a,g)),A.opacity=o(a),A+""}}return x.gamma=H,x}(1)}var QE,e5,K9=Qn({"node_modules/d3-interpolate/src/cubehelix.js"(){u0(),c0(),QE=$E(ix),e5=$E(Hh)}});function J9(X,H){H===void 0&&(H=X,X=ux);for(var g=0,x=H.length-1,A=H[0],M=new Array(x<0?0:x);g<x;)M[g]=X(A,A=H[++g]);return function(e){var t=Math.max(0,Math.min(x-1,Math.floor(e*=x)));return M[t](e-t)}}var $9=Qn({"node_modules/d3-interpolate/src/piecewise.js"(){cx()}});function Q9(X,H){for(var g=new Array(H),x=0;x<H;++x)g[x]=X(x/(H-1));return g}var eN=Qn({"node_modules/d3-interpolate/src/quantize.js"(){}}),fg={};Ps(fg,{interpolate:()=>ux,interpolateArray:()=>C9,interpolateBasis:()=>bE,interpolateBasisClosed:()=>wE,interpolateCubehelix:()=>QE,interpolateCubehelixLong:()=>e5,interpolateDate:()=>RE,interpolateDiscrete:()=>I9,interpolateHcl:()=>KE,interpolateHclLong:()=>JE,interpolateHsl:()=>ZE,interpolateHslLong:()=>XE,interpolateHue:()=>D9,interpolateLab:()=>Z9,interpolateNumber:()=>av,interpolateNumberArray:()=>G3,interpolateObject:()=>zE,interpolateRgb:()=>nx,interpolateRgbBasis:()=>EE,interpolateRgbBasisClosed:()=>kE,interpolateRound:()=>F9,interpolateString:()=>OE,interpolateTransformCss:()=>jE,interpolateTransformSvg:()=>VE,interpolateZoom:()=>GE,piecewise:()=>J9,quantize:()=>Q9});var f0=Qn({"node_modules/d3-interpolate/src/index.js"(){cx(),IE(),H3(),TE(),DE(),R9(),z9(),ox(),W3(),FE(),O9(),BE(),V9(),G9(),CE(),W9(),X9(),Y9(),K9(),$9(),eN()}}),X3=Ye({"src/traces/sunburst/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r,o){var a=e.data.data,i=a.i,n=o||a.color;if(i>=0){e.i=a.i;var s=t.marker;s.pattern?(!s.colors||!s.pattern.shape)&&(s.color=n,e.color=n):(s.color=n,e.color=n),g.pointStyle(M,t,r,e)}else x.fill(M,n)}}}),t5=Ye({"src/traces/sunburst/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._sunburstlayer.selectAll(".trace");M(o,a,"sunburst"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),$v=Ye({"src/traces/sunburst/helpers.js"(X){"use strict";var H=ta(),g=Fn(),x=Kd(),A=eg();X.findEntryWithLevel=function(r,o){var a;return o&&r.eachAfter(function(i){if(X.getPtId(i)===o)return a=i.copy()}),a||r},X.findEntryWithChild=function(r,o){var a;return r.eachAfter(function(i){for(var n=i.children||[],s=0;s<n.length;s++){var c=n[s];if(X.getPtId(c)===o)return a=i.copy()}}),a||r},X.isEntry=function(r){return!r.parent},X.isLeaf=function(r){return!r.children},X.getPtId=function(r){return r.data.data.id},X.getPtLabel=function(r){return r.data.data.label},X.getValue=function(r){return r.value},X.isHierarchyRoot=function(r){return t(r)===""},X.setSliceCursor=function(r,o,a){var i=a.isTransitioning;if(!i){var n=r.datum();i=a.hideOnRoot&&X.isHierarchyRoot(n)||a.hideOnLeaves&&X.isLeaf(n)}x(r,i?null:"pointer")};function M(r,o,a){return{color:X.getOutsideTextFontKey("color",r,o,a),family:X.getOutsideTextFontKey("family",r,o,a),size:X.getOutsideTextFontKey("size",r,o,a),weight:X.getOutsideTextFontKey("weight",r,o,a),style:X.getOutsideTextFontKey("style",r,o,a),variant:X.getOutsideTextFontKey("variant",r,o,a),textcase:X.getOutsideTextFontKey("textcase",r,o,a),lineposition:X.getOutsideTextFontKey("lineposition",r,o,a),shadow:X.getOutsideTextFontKey("shadow",r,o,a)}}function e(r,o,a,i){var n=(i||{}).onPathbar,s=o.data.data,c=s.i,h=H.castOption(r,c,(n?"pathbar.textfont":"insidetextfont")+".color");return!h&&r._input.textfont&&(h=H.castOption(r._input,c,"textfont.color")),{color:h||g.contrast(s.color),family:X.getInsideTextFontKey("family",r,o,a,i),size:X.getInsideTextFontKey("size",r,o,a,i),weight:X.getInsideTextFontKey("weight",r,o,a,i),style:X.getInsideTextFontKey("style",r,o,a,i),variant:X.getInsideTextFontKey("variant",r,o,a,i),textcase:X.getInsideTextFontKey("textcase",r,o,a,i),lineposition:X.getInsideTextFontKey("lineposition",r,o,a,i),shadow:X.getInsideTextFontKey("shadow",r,o,a,i)}}X.getInsideTextFontKey=function(r,o,a,i,n){var s=(n||{}).onPathbar,c=s?"pathbar.textfont":"insidetextfont",h=a.data.data.i;return H.castOption(o,h,c+"."+r)||H.castOption(o,h,"textfont."+r)||i.size},X.getOutsideTextFontKey=function(r,o,a,i){var n=a.data.data.i;return H.castOption(o,n,"outsidetextfont."+r)||H.castOption(o,n,"textfont."+r)||i.size},X.isOutsideText=function(r,o){return!r._hasColorscale&&X.isHierarchyRoot(o)},X.determineTextFont=function(r,o,a,i){return X.isOutsideText(r,o)?M(r,o,a):e(r,o,a,i)},X.hasTransition=function(r){return!!(r&&r.duration>0)},X.getMaxDepth=function(r){return r.maxdepth>=0?r.maxdepth:1/0},X.isHeader=function(r,o){return!(X.isLeaf(r)||r.depth===o._maxDepth-1)};function t(r){return r.data.data.pid}X.getParent=function(r,o){return X.findEntryWithLevel(r,t(o))},X.listPath=function(r,o){var a=r.parent;if(!a)return[];var i=o?[a.data[o]]:[a];return X.listPath(a,o).concat(i)},X.getPath=function(r){return X.listPath(r,"label").join("/")+"/"},X.formatValue=A.formatPieValue,X.formatPercent=function(r,o){var a=H.formatPercent(r,0);return a==="0%"&&(a=A.formatPiePercent(r,o)),a}}}),px=Ye({"src/traces/sunburst/fx.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Qp().appendArrayPointValue,M=Lc(),e=ta(),t=$y(),r=$v(),o=eg(),a=o.formatPieValue;H.exports=function(s,c,h,v,p){var T=v[0],l=T.trace,_=T.hierarchy,w=l.type==="sunburst",S=l.type==="treemap"||l.type==="icicle";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1);var E=function(d){var u=h._fullLayout;if(!(h._dragging||u.hovermode===!1)){var y=h._fullData[l.index],f=d.data.data,P=f.i,L=r.isHierarchyRoot(d),z=r.getParent(_,d),F=r.getValue(d),B=function(ee){return e.castOption(y,P,ee)},O=B("hovertemplate"),I=M.castHoverinfo(y,u,P),N=u.separators,U;if(O||I&&I!=="none"&&I!=="skip"){var W,Q;w&&(W=T.cx+d.pxmid[0]*(1-d.rInscribed),Q=T.cy+d.pxmid[1]*(1-d.rInscribed)),S&&(W=d._hoverX,Q=d._hoverY);var ue={},se=[],he=[],G=function(ee){return se.indexOf(ee)!==-1};I&&(se=I==="all"?y._module.attributes.hoverinfo.flags:I.split("+")),ue.label=f.label,G("label")&&ue.label&&he.push(ue.label),f.hasOwnProperty("v")&&(ue.value=f.v,ue.valueLabel=a(ue.value,N),G("value")&&he.push(ue.valueLabel)),ue.currentPath=d.currentPath=r.getPath(d.data),G("current path")&&!L&&he.push(ue.currentPath);var $,J=[],Z=function(){J.indexOf($)===-1&&(he.push($),J.push($))};ue.percentParent=d.percentParent=F/r.getValue(z),ue.parent=d.parentString=r.getPtLabel(z),G("percent parent")&&($=r.formatPercent(ue.percentParent,N)+" of "+ue.parent,Z()),ue.percentEntry=d.percentEntry=F/r.getValue(c),ue.entry=d.entry=r.getPtLabel(c),G("percent entry")&&!L&&!d.onPathbar&&($=r.formatPercent(ue.percentEntry,N)+" of "+ue.entry,Z()),ue.percentRoot=d.percentRoot=F/r.getValue(_),ue.root=d.root=r.getPtLabel(_),G("percent root")&&!L&&($=r.formatPercent(ue.percentRoot,N)+" of "+ue.root,Z()),ue.text=B("hovertext")||B("text"),G("text")&&($=ue.text,e.isValidTextValue($)&&he.push($)),U=[i(d,y,p.eventDataKeys)];var re={trace:y,y:Q,_x0:d._x0,_x1:d._x1,_y0:d._y0,_y1:d._y1,text:he.join("<br>"),name:O||G("name")?y.name:void 0,color:B("hoverlabel.bgcolor")||f.color,borderColor:B("hoverlabel.bordercolor"),fontFamily:B("hoverlabel.font.family"),fontSize:B("hoverlabel.font.size"),fontColor:B("hoverlabel.font.color"),fontWeight:B("hoverlabel.font.weight"),fontStyle:B("hoverlabel.font.style"),fontVariant:B("hoverlabel.font.variant"),nameLength:B("hoverlabel.namelength"),textAlign:B("hoverlabel.align"),hovertemplate:O,hovertemplateLabels:ue,eventData:U};w&&(re.x0=W-d.rInscribed*d.rpx1,re.x1=W+d.rInscribed*d.rpx1,re.idealAlign=d.pxmid[0]<0?"left":"right"),S&&(re.x=W,re.idealAlign=W<0?"left":"right");var ne=[];M.loneHover(re,{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:h,inOut_bbox:ne}),U[0].bbox=ne[0],l._hasHoverLabel=!0}if(S){var j=s.select("path.surface");p.styleOne(j,d,y,h,{hovered:!0})}l._hasHoverEvent=!0,h.emit("plotly_hover",{points:U||[i(d,y,p.eventDataKeys)],event:g.event})}},m=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=g.select(this).datum();if(l._hasHoverEvent&&(d.originalEvent=g.event,h.emit("plotly_unhover",{points:[i(f,y,p.eventDataKeys)],event:g.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(M.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1),S){var P=s.select("path.surface");p.styleOne(P,f,y,h,{hovered:!1})}},b=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=w&&(r.isHierarchyRoot(d)||r.isLeaf(d)),P=r.getPtId(d),L=r.isEntry(d)?r.findEntryWithChild(_,P):r.findEntryWithLevel(_,P),z=r.getPtId(L),F={points:[i(d,y,p.eventDataKeys)],event:g.event};f||(F.nextLevel=z);var B=t.triggerHandler(h,"plotly_"+l.type+"click",F);if(B!==!1&&u.hovermode&&(h._hoverdata=[i(d,y,p.eventDataKeys)],M.click(h,g.event)),!f&&B!==!1&&!h._dragging&&!h._transitioning){x.call("_storeDirectGUIEdit",y,u._tracePreGUI[y.uid],{level:y.level});var O={data:[{level:z}],traces:[l.index]},I={frame:{redraw:!1,duration:p.transitionTime},transition:{duration:p.transitionTime,easing:p.transitionEasing},mode:"immediate",fromcurrent:!0};M.loneUnhover(u._hoverlayer.node()),x.call("animate",h,O,I)}};s.on("mouseover",E),s.on("mouseout",m),s.on("click",b)};function i(n,s,c){for(var h=n.data.data,v={curveNumber:s.index,pointNumber:h.i,data:s._input,fullData:s},p=0;p<c.length;p++){var T=c[p];T in n&&(v[T]=n[T])}return"parentString"in n&&!r.isHierarchyRoot(n)&&(v.parent=n.parentString),A(v,s,h.i),v}}}),Y3=Ye({"src/traces/sunburst/plot.js"(X){"use strict";var H=_n(),g=K_(),x=(f0(),Hf(fg)).interpolate,A=Bo(),M=ta(),e=jl(),t=wp(),r=t.recordMinTextSize,o=t.clearMinTextSize,a=_3(),i=eg().getRotationAngle,n=a.computeTransform,s=a.transformInsideText,c=t5().styleOne,h=Nd().resizeText,v=px(),p=QM(),T=$v();X.plot=function(m,b,d,u){var y=m._fullLayout,f=y._sunburstlayer,P,L,z=!d,F=!y.uniformtext.mode&&T.hasTransition(d);if(o("sunburst",y),P=f.selectAll("g.trace.sunburst").data(b,function(O){return O[0].trace.uid}),P.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),P.order(),F){u&&(L=u());var B=H.transition().duration(d.duration).ease(d.easing).each("end",function(){L&&L()}).each("interrupt",function(){L&&L()});B.each(function(){f.selectAll("g.trace").each(function(O){l(m,O,this,d)})})}else P.each(function(O){l(m,O,this,d)}),y.uniformtext.mode&&h(m,y._sunburstlayer.selectAll(".trace"),"sunburst");z&&P.exit().remove()};function l(m,b,d,u){var y=m._context.staticPlot,f=m._fullLayout,P=!f.uniformtext.mode&&T.hasTransition(u),L=H.select(d),z=L.selectAll("g.slice"),F=b[0],B=F.trace,O=F.hierarchy,I=T.findEntryWithLevel(O,B.level),N=T.getMaxDepth(B),U=f._size,W=B.domain,Q=U.w*(W.x[1]-W.x[0]),ue=U.h*(W.y[1]-W.y[0]),se=.5*Math.min(Q,ue),he=F.cx=U.l+U.w*(W.x[1]+W.x[0])/2,G=F.cy=U.t+U.h*(1-W.y[0])-ue/2;if(!I)return z.remove();var $=null,J={};P&&z.each(function(ce){J[T.getPtId(ce)]={rpx0:ce.rpx0,rpx1:ce.rpx1,x0:ce.x0,x1:ce.x1,transform:ce.transform},!$&&T.isEntry(ce)&&($=ce)});var Z=_(I).descendants(),re=I.height+1,ne=0,j=N;F.hasMultipleRoots&&T.isHierarchyRoot(I)&&(Z=Z.slice(1),re-=1,ne=1,j+=1),Z=Z.filter(function(ce){return ce.y1<=j});var ee=i(B.rotation);ee&&Z.forEach(function(ce){ce.x0+=ee,ce.x1+=ee});var ie=Math.min(re,N),fe=function(ce){return(ce-ne)/ie*se},be=function(ce,ze){return[ce*Math.cos(ze),-ce*Math.sin(ze)]},Ae=function(ce){return M.pathAnnulus(ce.rpx0,ce.rpx1,ce.x0,ce.x1,he,G)},Be=function(ce){return he+S(ce)[0]*(ce.transform.rCenter||0)+(ce.transform.x||0)},Ie=function(ce){return G+S(ce)[1]*(ce.transform.rCenter||0)+(ce.transform.y||0)};z=z.data(Z,T.getPtId),z.enter().append("g").classed("slice",!0),P?z.exit().transition().each(function(){var ce=H.select(this),ze=ce.select("path.surface");ze.transition().attrTween("d",function(nt){var Qe=et(nt);return function(Ct){return Ae(Qe(Ct))}});var tt=ce.select("g.slicetext");tt.attr("opacity",0)}).remove():z.exit().remove(),z.order();var Ze=null;if(P&&$){var at=T.getPtId($);z.each(function(ce){Ze===null&&T.getPtId(ce)===at&&(Ze=ce.x1)})}var it=z;P&&(it=it.transition().each("end",function(){var ce=H.select(this);T.setSliceCursor(ce,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),it.each(function(ce){var ze=H.select(this),tt=M.ensureSingle(ze,"path","surface",function(jt){jt.style("pointer-events",y?"none":"all")});ce.rpx0=fe(ce.y0),ce.rpx1=fe(ce.y1),ce.xmid=(ce.x0+ce.x1)/2,ce.pxmid=be(ce.rpx1,ce.xmid),ce.midangle=-(ce.xmid-Math.PI/2),ce.startangle=-(ce.x0-Math.PI/2),ce.stopangle=-(ce.x1-Math.PI/2),ce.halfangle=.5*Math.min(M.angleDelta(ce.x0,ce.x1)||Math.PI,Math.PI),ce.ring=1-ce.rpx0/ce.rpx1,ce.rInscribed=w(ce,B),P?tt.transition().attrTween("d",function(jt){var ur=lt(jt);return function(ar){return Ae(ur(ar))}}):tt.attr("d",Ae),ze.call(v,I,m,b,{eventDataKeys:p.eventDataKeys,transitionTime:p.CLICK_TRANSITION_TIME,transitionEasing:p.CLICK_TRANSITION_EASING}).call(T.setSliceCursor,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:m._transitioning}),tt.call(c,ce,B,m);var nt=M.ensureSingle(ze,"g","slicetext"),Qe=M.ensureSingle(nt,"text","",function(jt){jt.attr("data-notex",1)}),Ct=M.ensureUniformFontSize(m,T.determineTextFont(B,ce,f.font));Qe.text(X.formatSliceLabel(ce,I,B,b,f)).classed("slicetext",!0).attr("text-anchor","middle").call(A.font,Ct).call(e.convertToTspans,m);var St=A.bBox(Qe.node());ce.transform=s(St,ce,F),ce.transform.targetX=Be(ce),ce.transform.targetY=Ie(ce);var Ot=function(jt,ur){var ar=jt.transform;return n(ar,ur),ar.fontSize=Ct.size,r(B.type,ar,f),M.getTextTransform(ar)};P?Qe.transition().attrTween("transform",function(jt){var ur=Me(jt);return function(ar){return Ot(ur(ar),St)}}):Qe.attr("transform",Ot(ce,St))});function et(ce){var ze=T.getPtId(ce),tt=J[ze],nt=J[T.getPtId(I)],Qe;if(nt){var Ct=(ce.x1>nt.x1?2*Math.PI:0)+ee;Qe=ce.rpx1<nt.rpx1?{x0:ce.x0,x1:ce.x1,rpx0:0,rpx1:0}:{x0:Ct,x1:Ct,rpx0:ce.rpx0,rpx1:ce.rpx1}}else{var St,Ot=T.getPtId(ce.parent);z.each(function(vr){if(T.getPtId(vr)===Ot)return St=vr});var jt=St.children,ur;jt.forEach(function(vr,_r){if(T.getPtId(vr)===ze)return ur=_r});var ar=jt.length,Cr=x(St.x0,St.x1);Qe={rpx0:se,rpx1:se,x0:Cr(ur/ar),x1:Cr((ur+1)/ar)}}return x(tt,Qe)}function lt(ce){var ze=J[T.getPtId(ce)],tt,nt={x0:ce.x0,x1:ce.x1,rpx0:ce.rpx0,rpx1:ce.rpx1};if(ze)tt=ze;else if($)if(ce.parent)if(Ze){var Qe=(ce.x1>Ze?2*Math.PI:0)+ee;tt={x0:Qe,x1:Qe}}else tt={rpx0:se,rpx1:se},M.extendFlat(tt,ge(ce));else tt={rpx0:0,rpx1:0};else tt={x0:ee,x1:ee};return x(tt,nt)}function Me(ce){var ze=J[T.getPtId(ce)],tt,nt=ce.transform;if(ze)tt=ze;else if(tt={rpx1:ce.rpx1,transform:{textPosAngle:nt.textPosAngle,scale:0,rotate:nt.rotate,rCenter:nt.rCenter,x:nt.x,y:nt.y}},$)if(ce.parent)if(Ze){var Qe=ce.x1>Ze?2*Math.PI:0;tt.x0=tt.x1=Qe}else M.extendFlat(tt,ge(ce));else tt.x0=tt.x1=ee;else tt.x0=tt.x1=ee;var Ct=x(tt.transform.textPosAngle,ce.transform.textPosAngle),St=x(tt.rpx1,ce.rpx1),Ot=x(tt.x0,ce.x0),jt=x(tt.x1,ce.x1),ur=x(tt.transform.scale,nt.scale),ar=x(tt.transform.rotate,nt.rotate),Cr=nt.rCenter===0?3:tt.transform.rCenter===0?1/3:1,vr=x(tt.transform.rCenter,nt.rCenter),_r=function(yt){return vr(Math.pow(yt,Cr))};return function(yt){var Fe=St(yt),Ke=Ot(yt),Ne=jt(yt),Ee=_r(yt),Ve=be(Fe,(Ke+Ne)/2),ke=Ct(yt),Te={pxmid:Ve,rpx1:Fe,transform:{textPosAngle:ke,rCenter:Ee,x:nt.x,y:nt.y}};return r(B.type,nt,f),{transform:{targetX:Be(Te),targetY:Ie(Te),scale:ur(yt),rotate:ar(yt),rCenter:Ee}}}}function ge(ce){var ze=ce.parent,tt=J[T.getPtId(ze)],nt={};if(tt){var Qe=ze.children,Ct=Qe.indexOf(ce),St=Qe.length,Ot=x(tt.x0,tt.x1);nt.x0=Ot(Ct/St),nt.x1=Ot(Ct/St)}else nt.x0=nt.x1=0;return nt}}function _(m){return g.partition().size([2*Math.PI,m.height+1])(m)}X.formatSliceLabel=function(m,b,d,u,y){var f=d.texttemplate,P=d.textinfo;if(!f&&(!P||P==="none"))return"";var L=y.separators,z=u[0],F=m.data.data,B=z.hierarchy,O=T.isHierarchyRoot(m),I=T.getParent(B,m),N=T.getValue(m);if(!f){var U=P.split("+"),W=function(ne){return U.indexOf(ne)!==-1},Q=[],ue;if(W("label")&&F.label&&Q.push(F.label),F.hasOwnProperty("v")&&W("value")&&Q.push(T.formatValue(F.v,L)),!O){W("current path")&&Q.push(T.getPath(m.data));var se=0;W("percent parent")&&se++,W("percent entry")&&se++,W("percent root")&&se++;var he=se>1;if(se){var G,$=function(ne){ue=T.formatPercent(G,L),he&&(ue+=" of "+ne),Q.push(ue)};W("percent parent")&&!O&&(G=N/T.getValue(I),$("parent")),W("percent entry")&&(G=N/T.getValue(b),$("entry")),W("percent root")&&(G=N/T.getValue(B),$("root"))}}return W("text")&&(ue=M.castOption(d,F.i,"text"),M.isValidTextValue(ue)&&Q.push(ue)),Q.join("<br>")}var J=M.castOption(d,F.i,"texttemplate");if(!J)return"";var Z={};F.label&&(Z.label=F.label),F.hasOwnProperty("v")&&(Z.value=F.v,Z.valueLabel=T.formatValue(F.v,L)),Z.currentPath=T.getPath(m.data),O||(Z.percentParent=N/T.getValue(I),Z.percentParentLabel=T.formatPercent(Z.percentParent,L),Z.parent=T.getPtLabel(I)),Z.percentEntry=N/T.getValue(b),Z.percentEntryLabel=T.formatPercent(Z.percentEntry,L),Z.entry=T.getPtLabel(b),Z.percentRoot=N/T.getValue(B),Z.percentRootLabel=T.formatPercent(Z.percentRoot,L),Z.root=T.getPtLabel(B),F.hasOwnProperty("color")&&(Z.color=F.color);var re=M.castOption(d,F.i,"text");return(M.isValidTextValue(re)||re==="")&&(Z.text=re),Z.customdata=M.castOption(d,F.i,"customdata"),M.texttemplateString(J,Z,y._d3locale,Z,d._meta||{})};function w(m){return m.rpx0===0&&M.isFullCircle([m.x0,m.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(m.halfangle)),m.ring/2))}function S(m){return E(m.rpx1,m.transform.textPosAngle)}function E(m,b){return[m*Math.sin(b),-m*Math.cos(b)]}}}),tN=Ye({"src/traces/sunburst/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"sunburst",basePlotModule:g9(),categories:[],animatable:!0,attributes:Y_(),layoutAttributes:eE(),supplyDefaults:y9(),supplyLayoutDefaults:_9(),calc:J_().calc,crossTraceCalc:J_().crossTraceCalc,plot:Y3().plot,style:t5().style,colorbar:cp(),meta:{}}}}),rN=Ye({"lib/sunburst.js"(X,H){"use strict";H.exports=tN()}}),aN=Ye({"src/traces/treemap/base_plot.js"(X){"use strict";var H=Gu();X.name="treemap",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),h0=Ye({"src/traces/treemap/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}}}),K3=Ye({"src/traces/treemap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=h0(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:o({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:t.marker.colors,pattern:a,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:t.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:o({},e.textfont,{}),editType:"calc"},text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:r.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:o({},e.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:e.sort,root:t.root,domain:M({name:"treemap",trace:!0,editType:"calc"})}}}),r5=Ye({"src/traces/treemap/layout_attributes.js"(X,H){"use strict";H.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),iN=Ye({"src/traces/treemap/defaults.js"(X,H){"use strict";var g=ta(),x=K3(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(y,f){return g.coerce(s,c,x,y,f)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth");var w=p("tiling.packing");w==="squarify"&&p("tiling.squarifyratio"),p("tiling.flip"),p("tiling.pad");var S=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(S)?"text+label":"label"),p("hovertext"),p("hovertemplate");var E=p("pathbar.visible"),m="auto";e(s,c,v,p,m,{hasPathbar:E,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition");var b=c.textposition.indexOf("bottom")!==-1;r(s,c,v,p);var d=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;d?i(s,c,v,p,{prefix:"marker.",cLetter:"c"}):p("marker.depthfade",!(c.marker.colors||[]).length);var u=c.textfont.size*2;p("marker.pad.t",b?u/4:u),p("marker.pad.l",u/4),p("marker.pad.r",u/4),p("marker.pad.b",b?u:u/4),p("marker.cornerradius"),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},E&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),nN=Ye({"src/traces/treemap/layout_defaults.js"(X,H){"use strict";var g=ta(),x=r5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("treemapcolorway",e.colorway),t("extendtreemapcolors")}}}),a5=Ye({"src/traces/treemap/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("treemap",g)}}}),i5=Ye({"src/traces/treemap/flip_tree.js"(X,H){"use strict";H.exports=function g(x,A,M){var e;M.swapXY&&(e=x.x0,x.x0=x.y0,x.y0=e,e=x.x1,x.x1=x.y1,x.y1=e),M.flipX&&(e=x.x0,x.x0=A[0]-x.x1,x.x1=A[0]-e),M.flipY&&(e=x.y0,x.y0=A[1]-x.y1,x.y1=A[1]-e);var t=x.children;if(t)for(var r=0;r<t.length;r++)g(t[r],A,M)}}}),n5=Ye({"src/traces/treemap/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(e,t,r){var o=r.flipX,a=r.flipY,i=r.packing==="dice-slice",n=r.pad[a?"bottom":"top"],s=r.pad[o?"right":"left"],c=r.pad[o?"left":"right"],h=r.pad[a?"top":"bottom"],v;i&&(v=s,s=n,n=v,v=c,c=h,h=v);var p=g.treemap().tile(A(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(s).paddingRight(c).paddingTop(n).paddingBottom(h).size(i?[t[1],t[0]]:t)(e);return(i||o||a)&&x(p,t,{swapXY:i,flipX:o,flipY:a}),p};function A(M,e){switch(M){case"squarify":return g.treemapSquarify.ratio(e);case"binary":return g.treemapBinary;case"dice":return g.treemapDice;case"slice":return g.treemapSlice;default:return g.treemapSliceDice}}}}),J3=Ye({"src/traces/treemap/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=$v(),e=wp().resizeText,t=X3();function r(a){var i=a._fullLayout._treemaplayer.selectAll(".trace");e(a,i,"treemap"),i.each(function(n){var s=g.select(this),c=n[0],h=c.trace;s.style("opacity",h.opacity),s.selectAll("path.surface").each(function(v){g.select(this).call(o,v,h,a,{hovered:!1})})})}function o(a,i,n,s,c){var h=(c||{}).hovered,v=i.data.data,p=v.i,T,l,_=v.color,w=M.isHierarchyRoot(i),S=1;if(h)T=n._hovered.marker.line.color,l=n._hovered.marker.line.width;else if(w&&_===n.root.color)S=100,T="rgba(0,0,0,0)",l=0;else if(T=A.castOption(n,p,"marker.line.color")||x.defaultLine,l=A.castOption(n,p,"marker.line.width")||0,!n._hasColorscale&&!i.onPathbar){var E=n.marker.depthfade;if(E){var m=x.combine(x.addOpacity(n._backgroundColor,.75),_),b;if(E===!0){var d=M.getMaxDepth(n);isFinite(d)?M.isLeaf(i)?b=0:b=n._maxVisibleLayers-(i.data.depth-n._entryDepth):b=i.data.height+1}else b=i.data.depth-n._entryDepth,n._atRootLevel||b++;if(b>0)for(var u=0;u<b;u++){var y=.5*u/b;_=x.combine(x.addOpacity(m,y),_)}}}a.call(t,i,n,s,_).style("stroke-width",l).call(x.stroke,T).style("opacity",S)}H.exports={style:r,styleOne:o}}}),oN=Ye({"src/traces/treemap/draw_ancestors.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=n5(),t=J3().styleOne,r=h0(),o=$v(),a=px(),i=!0;H.exports=function(s,c,h,v,p){var T=p.barDifY,l=p.width,_=p.height,w=p.viewX,S=p.viewY,E=p.pathSlice,m=p.toMoveInsideSlice,b=p.strTransform,d=p.hasTransition,u=p.handleSlicesExit,y=p.makeUpdateSliceInterpolator,f=p.makeUpdateTextInterpolator,P={},L=s._context.staticPlot,z=s._fullLayout,F=c[0],B=F.trace,O=F.hierarchy,I=l/B._entryDepth,N=o.listPath(h.data,"id"),U=e(O.copy(),[l,_],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();U=U.filter(function(Q){var ue=N.indexOf(Q.data.id);return ue===-1?!1:(Q.x0=I*ue,Q.x1=I*(ue+1),Q.y0=T,Q.y1=T+_,Q.onPathbar=!0,!0)}),U.reverse(),v=v.data(U,o.getPtId),v.enter().append("g").classed("pathbar",!0),u(v,i,P,[l,_],E),v.order();var W=v;d&&(W=W.transition().each("end",function(){var Q=g.select(this);o.setSliceCursor(Q,s,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),W.each(function(Q){Q._x0=w(Q.x0),Q._x1=w(Q.x1),Q._y0=S(Q.y0),Q._y1=S(Q.y1),Q._hoverX=w(Q.x1-Math.min(l,_)/2),Q._hoverY=S(Q.y1-_/2);var ue=g.select(this),se=x.ensureSingle(ue,"path","surface",function(J){J.style("pointer-events",L?"none":"all")});d?se.transition().attrTween("d",function(J){var Z=y(J,i,P,[l,_]);return function(re){return E(Z(re))}}):se.attr("d",E),ue.call(a,h,s,c,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,s,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:s._transitioning}),se.call(t,Q,B,s,{hovered:!1}),Q._text=(o.getPtLabel(Q)||"").split("<br>").join(" ")||"";var he=x.ensureSingle(ue,"g","slicetext"),G=x.ensureSingle(he,"text","",function(J){J.attr("data-notex",1)}),$=x.ensureUniformFontSize(s,o.determineTextFont(B,Q,z.font,{onPathbar:!0}));G.text(Q._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(A.font,$).call(M.convertToTspans,s),Q.textBB=A.bBox(G.node()),Q.transform=m(Q,{fontSize:$.size,onPathbar:!0}),Q.transform.fontSize=$.size,d?G.transition().attrTween("transform",function(J){var Z=f(J,i,P,[l,_]);return function(re){return b(Z(re))}}):G.attr("transform",b(Q))})}}}),sN=Ye({"src/traces/treemap/plot_one.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=$v(),M=ta(),e=Qg().TEXTPAD,t=e0(),r=t.toMoveInsideBar,o=wp(),a=o.recordMinTextSize,i=h0(),n=oN();function s(c){return A.isHierarchyRoot(c)?"":A.getPtId(c)}H.exports=function(h,v,p,T,l){var _=h._fullLayout,w=v[0],S=w.trace,E=S.type,m=E==="icicle",b=w.hierarchy,d=A.findEntryWithLevel(b,S.level),u=g.select(p),y=u.selectAll("g.pathbar"),f=u.selectAll("g.slice");if(!d){y.remove(),f.remove();return}var P=A.isHierarchyRoot(d),L=!_.uniformtext.mode&&A.hasTransition(T),z=A.getMaxDepth(S),F=function(vr){return vr.data.depth-d.data.depth<z},B=_._size,O=S.domain,I=B.w*(O.x[1]-O.x[0]),N=B.h*(O.y[1]-O.y[0]),U=I,W=S.pathbar.thickness,Q=S.marker.line.width+i.gapWithPathbar,ue=S.pathbar.visible?S.pathbar.side.indexOf("bottom")>-1?N+Q:-(W+Q):0,se={x0:U,x1:U,y0:ue,y1:ue+W},he=function(vr,_r,yt){var Fe=S.tiling.pad,Ke=function(ke){return ke-Fe<=_r.x0},Ne=function(ke){return ke+Fe>=_r.x1},Ee=function(ke){return ke-Fe<=_r.y0},Ve=function(ke){return ke+Fe>=_r.y1};return vr.x0===_r.x0&&vr.x1===_r.x1&&vr.y0===_r.y0&&vr.y1===_r.y1?{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1}:{x0:Ke(vr.x0-Fe)?0:Ne(vr.x0-Fe)?yt[0]:vr.x0,x1:Ke(vr.x1+Fe)?0:Ne(vr.x1+Fe)?yt[0]:vr.x1,y0:Ee(vr.y0-Fe)?0:Ve(vr.y0-Fe)?yt[1]:vr.y0,y1:Ee(vr.y1+Fe)?0:Ve(vr.y1+Fe)?yt[1]:vr.y1}},G=null,$={},J={},Z=null,re=function(vr,_r){return _r?$[s(vr)]:J[s(vr)]},ne=function(vr,_r,yt,Fe){if(_r)return $[s(b)]||se;var Ke=J[S.level]||yt;return F(vr)?he(vr,Ke,Fe):{}};w.hasMultipleRoots&&P&&z++,S._maxDepth=z,S._backgroundColor=_.paper_bgcolor,S._entryDepth=d.data.depth,S._atRootLevel=P;var j=-I/2+B.l+B.w*(O.x[1]+O.x[0])/2,ee=-N/2+B.t+B.h*(1-(O.y[1]+O.y[0])/2),ie=function(vr){return j+vr},fe=function(vr){return ee+vr},be=fe(0),Ae=ie(0),Be=function(vr){return Ae+vr},Ie=function(vr){return be+vr};function Ze(vr,_r){return vr+","+_r}var at=Be(0),it=function(vr){vr.x=Math.max(at,vr.x)},et=S.pathbar.edgeshape,lt=function(vr){var _r=Be(Math.max(Math.min(vr.x0,vr.x0),0)),yt=Be(Math.min(Math.max(vr.x1,vr.x1),U)),Fe=Ie(vr.y0),Ke=Ie(vr.y1),Ne=W/2,Ee={},Ve={};Ee.x=_r,Ve.x=yt,Ee.y=Ve.y=(Fe+Ke)/2;var ke={x:_r,y:Fe},Te={x:yt,y:Fe},Le={x:yt,y:Ke},rt={x:_r,y:Ke};return et===">"?(ke.x-=Ne,Te.x-=Ne,Le.x-=Ne,rt.x-=Ne):et==="/"?(Le.x-=Ne,rt.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="\\"?(ke.x-=Ne,Te.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="<"&&(Ee.x-=Ne,Ve.x-=Ne),it(ke),it(rt),it(Ee),it(Te),it(Le),it(Ve),"M"+Ze(ke.x,ke.y)+"L"+Ze(Te.x,Te.y)+"L"+Ze(Ve.x,Ve.y)+"L"+Ze(Le.x,Le.y)+"L"+Ze(rt.x,rt.y)+"L"+Ze(Ee.x,Ee.y)+"Z"},Me=S[m?"tiling":"marker"].pad,ge=function(vr){return S.textposition.indexOf(vr)!==-1},ce=ge("top"),ze=ge("left"),tt=ge("right"),nt=ge("bottom"),Qe=function(vr){var _r=ie(vr.x0),yt=ie(vr.x1),Fe=fe(vr.y0),Ke=fe(vr.y1),Ne=yt-_r,Ee=Ke-Fe;if(!Ne||!Ee)return"";var Ve=S.marker.cornerradius||0,ke=Math.min(Ve,Ne/2,Ee/2);ke&&vr.data&&vr.data.data&&vr.data.data.label&&(ce&&(ke=Math.min(ke,Me.t)),ze&&(ke=Math.min(ke,Me.l)),tt&&(ke=Math.min(ke,Me.r)),nt&&(ke=Math.min(ke,Me.b)));var Te=function(Le,rt){return ke?"a"+Ze(ke,ke)+" 0 0 1 "+Ze(Le,rt):""};return"M"+Ze(_r,Fe+ke)+Te(ke,-ke)+"L"+Ze(yt-ke,Fe)+Te(ke,ke)+"L"+Ze(yt,Ke-ke)+Te(-ke,ke)+"L"+Ze(_r+ke,Ke)+Te(-ke,-ke)+"Z"},Ct=function(vr,_r){var yt=vr.x0,Fe=vr.x1,Ke=vr.y0,Ne=vr.y1,Ee=vr.textBB,Ve=ce||_r.isHeader&&!nt,ke=Ve?"start":nt?"end":"middle",Te=ge("right"),Le=ge("left")||_r.onPathbar,rt=Le?-1:Te?1:0;if(_r.isHeader){if(yt+=(m?Me:Me.l)-e,Fe-=(m?Me:Me.r)-e,yt>=Fe){var dt=(yt+Fe)/2;yt=dt,Fe=dt}var xt;nt?(xt=Ne-(m?Me:Me.b),Ke<xt&&xt<Ne&&(Ke=xt)):(xt=Ke+(m?Me:Me.t),Ke<xt&&xt<Ne&&(Ne=xt))}var It=r(yt,Fe,Ke,Ne,Ee,{isHorizontal:!1,constrained:!0,angle:0,anchor:ke,leftToRight:rt});return It.fontSize=_r.fontSize,It.targetX=ie(It.targetX),It.targetY=fe(It.targetY),isNaN(It.targetX)||isNaN(It.targetY)?{}:(yt!==Fe&&Ke!==Ne&&a(S.type,It,_),{scale:It.scale,rotate:It.rotate,textX:It.textX,textY:It.textY,anchorX:It.anchorX,anchorY:It.anchorY,targetX:It.targetX,targetY:It.targetY})},St=function(vr,_r){for(var yt,Fe=0,Ke=vr;!yt&&Fe<z;)Fe++,Ke=Ke.parent,Ke?yt=re(Ke,_r):Fe=z;return yt||{}},Ot=function(vr,_r,yt,Fe){var Ke=re(vr,_r),Ne;if(_r)Ne=se;else{var Ee=re(d,_r);Ee?Ne=he(vr,Ee,Fe):Ne={}}return x(Ke,Ne)},jt=function(vr,_r,yt,Fe,Ke){var Ne=re(vr,_r),Ee;if(Ne)Ee=Ne;else if(_r)Ee=se;else if(G)if(vr.parent){var Ve=Z||yt;Ve&&!_r?Ee=he(vr,Ve,Fe):(Ee={},M.extendFlat(Ee,St(vr,_r)))}else Ee=M.extendFlat({},vr),m&&(Ke.orientation==="h"?Ke.flipX?Ee.x0=vr.x1:Ee.x1=0:Ke.flipY?Ee.y0=vr.y1:Ee.y1=0);else Ee={};return x(Ee,{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1})},ur=function(vr,_r,yt,Fe){var Ke=re(vr,_r),Ne={},Ee=ne(vr,_r,yt,Fe);M.extendFlat(Ne,{transform:Ct({x0:Ee.x0,x1:Ee.x1,y0:Ee.y0,y1:Ee.y1,textBB:vr.textBB,_text:vr._text},{isHeader:A.isHeader(vr,S)})}),Ke?Ne=Ke:vr.parent&&M.extendFlat(Ne,St(vr,_r));var Ve=vr.transform;return vr.x0!==vr.x1&&vr.y0!==vr.y1&&a(S.type,Ve,_),x(Ne,{transform:{scale:Ve.scale,rotate:Ve.rotate,textX:Ve.textX,textY:Ve.textY,anchorX:Ve.anchorX,anchorY:Ve.anchorY,targetX:Ve.targetX,targetY:Ve.targetY}})},ar=function(vr,_r,yt,Fe,Ke){var Ne=Fe[0],Ee=Fe[1];L?vr.exit().transition().each(function(){var Ve=g.select(this),ke=Ve.select("path.surface");ke.transition().attrTween("d",function(Le){var rt=Ot(Le,_r,yt,[Ne,Ee]);return function(dt){return Ke(rt(dt))}});var Te=Ve.select("g.slicetext");Te.attr("opacity",0)}).remove():vr.exit().remove()},Cr=function(vr){var _r=vr.transform;return vr.x0!==vr.x1&&vr.y0!==vr.y1&&a(S.type,_r,_),M.getTextTransform({textX:_r.textX,textY:_r.textY,anchorX:_r.anchorX,anchorY:_r.anchorY,targetX:_r.targetX,targetY:_r.targetY,scale:_r.scale,rotate:_r.rotate})};L&&(y.each(function(vr){$[s(vr)]={x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1},vr.transform&&($[s(vr)].transform={textX:vr.transform.textX,textY:vr.transform.textY,anchorX:vr.transform.anchorX,anchorY:vr.transform.anchorY,targetX:vr.transform.targetX,targetY:vr.transform.targetY,scale:vr.transform.scale,rotate:vr.transform.rotate})}),f.each(function(vr){J[s(vr)]={x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1},vr.transform&&(J[s(vr)].transform={textX:vr.transform.textX,textY:vr.transform.textY,anchorX:vr.transform.anchorX,anchorY:vr.transform.anchorY,targetX:vr.transform.targetX,targetY:vr.transform.targetY,scale:vr.transform.scale,rotate:vr.transform.rotate}),!G&&A.isEntry(vr)&&(G=vr)})),Z=l(h,v,d,f,{width:I,height:N,viewX:ie,viewY:fe,pathSlice:Qe,toMoveInsideSlice:Ct,prevEntry:G,makeUpdateSliceInterpolator:jt,makeUpdateTextInterpolator:ur,handleSlicesExit:ar,hasTransition:L,strTransform:Cr}),S.pathbar.visible?n(h,v,d,y,{barDifY:ue,width:U,height:W,viewX:Be,viewY:Ie,pathSlice:lt,toMoveInsideSlice:Ct,makeUpdateSliceInterpolator:jt,makeUpdateTextInterpolator:ur,handleSlicesExit:ar,hasTransition:L,strTransform:Cr}):y.remove()}}}),o5=Ye({"src/traces/treemap/draw.js"(X,H){"use strict";var g=_n(),x=$v(),A=wp(),M=A.clearMinTextSize,e=Nd().resizeText,t=sN();H.exports=function(o,a,i,n,s){var c=s.type,h=s.drawDescendants,v=o._fullLayout,p=v["_"+c+"layer"],T,l,_=!i;if(M(c,v),T=p.selectAll("g.trace."+c).data(a,function(S){return S[0].trace.uid}),T.enter().append("g").classed("trace",!0).classed(c,!0),T.order(),!v.uniformtext.mode&&x.hasTransition(i)){n&&(l=n());var w=g.transition().duration(i.duration).ease(i.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});w.each(function(){p.selectAll("g.trace").each(function(S){t(o,S,this,i,h)})})}else T.each(function(S){t(o,S,this,i,h)}),v.uniformtext.mode&&e(o,p.selectAll(".trace"),c);_&&T.exit().remove()}}}),lN=Ye({"src/traces/treemap/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=n5(),t=J3().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=!U&&!O.marker.pad.t||U&&!O.marker.pad.b,Q=e(v,[l,_],{packing:O.tiling.packing,squarifyratio:O.tiling.squarifyratio,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,pad:{inner:O.tiling.pad,top:O.marker.pad.t,left:O.marker.pad.l,right:O.marker.pad.r,bottom:O.marker.pad.b}}),ue=Q.descendants(),se=1/0,he=-1/0;ue.forEach(function(re){var ne=re.depth;ne>=O._maxDepth?(re.x0=re.x1=(re.x0+re.x1)/2,re.y0=re.y1=(re.y0+re.y1)/2):(se=Math.min(se,ne),he=Math.max(he,ne))}),p=p.data(ue,o.getPtId),O._maxVisibleLayers=isFinite(he)?he-se+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var G=null;if(d&&P){var $=o.getPtId(P);p.each(function(re){G===null&&o.getPtId(re)===$&&(G={x0:re.x0,x1:re.x1,y0:re.y0,y1:re.y1})})}var J=function(){return G||{x0:0,x1:l,y0:0,y1:_}},Z=p;return d&&(Z=Z.transition().each("end",function(){var re=g.select(this);o.setSliceCursor(re,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),Z.each(function(re){var ne=o.isHeader(re,O);re._x0=w(re.x0),re._x1=w(re.x1),re._y0=S(re.y0),re._y1=S(re.y1),re._hoverX=w(re.x1-O.marker.pad.r),re._hoverY=S(U?re.y1-O.marker.pad.b/2:re.y0+O.marker.pad.t/2);var j=g.select(this),ee=x.ensureSingle(j,"path","surface",function(Ie){Ie.style("pointer-events",z?"none":"all")});d?ee.transition().attrTween("d",function(Ie){var Ze=y(Ie,n,J(),[l,_]);return function(at){return E(Ze(at))}}):ee.attr("d",E),j.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ee.call(t,re,O,c,{hovered:!1}),re.x0===re.x1||re.y0===re.y1?re._text="":ne?re._text=W?"":o.getPtLabel(re)||"":re._text=i(re,v,O,h,F)||"";var ie=x.ensureSingle(j,"g","slicetext"),fe=x.ensureSingle(ie,"text","",function(Ie){Ie.attr("data-notex",1)}),be=x.ensureUniformFontSize(c,o.determineTextFont(O,re,F.font)),Ae=re._text||" ",Be=ne&&Ae.indexOf("<br>")===-1;fe.text(Ae).classed("slicetext",!0).attr("text-anchor",N?"end":I||Be?"start":"middle").call(A.font,be).call(M.convertToTspans,c),re.textBB=A.bBox(fe.node()),re.transform=m(re,{fontSize:be.size,isHeader:ne}),re.transform.fontSize=be.size,d?fe.transition().attrTween("transform",function(Ie){var Ze=f(Ie,n,J(),[l,_]);return function(at){return b(Ze(at))}}):fe.attr("transform",b(re))}),G}}}),uN=Ye({"src/traces/treemap/plot.js"(X,H){"use strict";var g=o5(),x=lN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"treemap",drawDescendants:x})}}}),cN=Ye({"src/traces/treemap/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"treemap",basePlotModule:aN(),categories:[],animatable:!0,attributes:K3(),layoutAttributes:r5(),supplyDefaults:iN(),supplyLayoutDefaults:nN(),calc:a5().calc,crossTraceCalc:a5().crossTraceCalc,plot:uN(),style:J3().style,colorbar:cp(),meta:{}}}}),fN=Ye({"lib/treemap.js"(X,H){"use strict";H.exports=cN()}}),hN=Ye({"src/traces/icicle/base_plot.js"(X){"use strict";var H=Gu();X.name="icicle",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),s5=Ye({"src/traces/icicle/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=K3(),o=h0(),a=Oo().extendFlat,i=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:r.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:a({colors:t.marker.colors,line:t.marker.line,pattern:i,editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),leaf:t.leaf,pathbar:r.pathbar,text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:o.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:o.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:r.outsidetextfont,textposition:r.textposition,sort:e.sort,root:t.root,domain:M({name:"icicle",trace:!0,editType:"calc"})}}}),l5=Ye({"src/traces/icicle/layout_attributes.js"(X,H){"use strict";H.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),pN=Ye({"src/traces/icicle/defaults.js"(X,H){"use strict";var g=ta(),x=s5(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(b,d){return g.coerce(s,c,x,b,d)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth"),p("tiling.orientation"),p("tiling.flip"),p("tiling.pad");var w=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(w)?"text+label":"label"),p("hovertext"),p("hovertemplate");var S=p("pathbar.visible"),E="auto";e(s,c,v,p,E,{hasPathbar:S,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition"),r(s,c,v,p);var m=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;m&&i(s,c,v,p,{prefix:"marker.",cLetter:"c"}),p("leaf.opacity",m?1:.7),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},S&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),dN=Ye({"src/traces/icicle/layout_defaults.js"(X,H){"use strict";var g=ta(),x=l5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("iciclecolorway",e.colorway),t("extendiciclecolors")}}}),u5=Ye({"src/traces/icicle/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("icicle",g)}}}),vN=Ye({"src/traces/icicle/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(M,e,t){var r=t.flipX,o=t.flipY,a=t.orientation==="h",i=t.maxDepth,n=e[0],s=e[1];i&&(n=(M.height+1)*e[0]/Math.min(M.height+1,i),s=(M.height+1)*e[1]/Math.min(M.height+1,i));var c=g.partition().padding(t.pad.inner).size(a?[e[1],n]:[e[0],s])(M);return(a||r||o)&&x(c,e,{swapXY:a,flipX:r,flipY:o}),c}}}),c5=Ye({"src/traces/icicle/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._iciclelayer.selectAll(".trace");M(o,a,"icicle"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),mN=Ye({"src/traces/icicle/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=vN(),t=c5().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=e(v,[l,_],{flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,orientation:O.tiling.orientation,pad:{inner:O.tiling.pad},maxDepth:O._maxDepth}),Q=W.descendants(),ue=1/0,se=-1/0;Q.forEach(function(Z){var re=Z.depth;re>=O._maxDepth?(Z.x0=Z.x1=(Z.x0+Z.x1)/2,Z.y0=Z.y1=(Z.y0+Z.y1)/2):(ue=Math.min(ue,re),se=Math.max(se,re))}),p=p.data(Q,o.getPtId),O._maxVisibleLayers=isFinite(se)?se-ue+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var he=null;if(d&&P){var G=o.getPtId(P);p.each(function(Z){he===null&&o.getPtId(Z)===G&&(he={x0:Z.x0,x1:Z.x1,y0:Z.y0,y1:Z.y1})})}var $=function(){return he||{x0:0,x1:l,y0:0,y1:_}},J=p;return d&&(J=J.transition().each("end",function(){var Z=g.select(this);o.setSliceCursor(Z,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),J.each(function(Z){Z._x0=w(Z.x0),Z._x1=w(Z.x1),Z._y0=S(Z.y0),Z._y1=S(Z.y1),Z._hoverX=w(Z.x1-O.tiling.pad),Z._hoverY=S(U?Z.y1-O.tiling.pad/2:Z.y0+O.tiling.pad/2);var re=g.select(this),ne=x.ensureSingle(re,"path","surface",function(fe){fe.style("pointer-events",z?"none":"all")});d?ne.transition().attrTween("d",function(fe){var be=y(fe,n,$(),[l,_],{orientation:O.tiling.orientation,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1});return function(Ae){return E(be(Ae))}}):ne.attr("d",E),re.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ne.call(t,Z,O,c,{hovered:!1}),Z.x0===Z.x1||Z.y0===Z.y1?Z._text="":Z._text=i(Z,v,O,h,F)||"";var j=x.ensureSingle(re,"g","slicetext"),ee=x.ensureSingle(j,"text","",function(fe){fe.attr("data-notex",1)}),ie=x.ensureUniformFontSize(c,o.determineTextFont(O,Z,F.font));ee.text(Z._text||" ").classed("slicetext",!0).attr("text-anchor",N?"end":I?"start":"middle").call(A.font,ie).call(M.convertToTspans,c),Z.textBB=A.bBox(ee.node()),Z.transform=m(Z,{fontSize:ie.size}),Z.transform.fontSize=ie.size,d?ee.transition().attrTween("transform",function(fe){var be=f(fe,n,$(),[l,_]);return function(Ae){return b(be(Ae))}}):ee.attr("transform",b(Z))}),he}}}),gN=Ye({"src/traces/icicle/plot.js"(X,H){"use strict";var g=o5(),x=mN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"icicle",drawDescendants:x})}}}),yN=Ye({"src/traces/icicle/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"icicle",basePlotModule:hN(),categories:[],animatable:!0,attributes:s5(),layoutAttributes:l5(),supplyDefaults:pN(),supplyLayoutDefaults:dN(),calc:u5().calc,crossTraceCalc:u5().crossTraceCalc,plot:gN(),style:c5().style,colorbar:cp(),meta:{}}}}),_N=Ye({"lib/icicle.js"(X,H){"use strict";H.exports=yN()}}),xN=Ye({"src/traces/funnelarea/base_plot.js"(X){"use strict";var H=Gu();X.name="funnelarea",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),f5=Ye({"src/traces/funnelarea/attributes.js"(X,H){"use strict";var g=i0(),x=Pl(),A=Wu().attributes,M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=Oo().extendFlat;H.exports={labels:g.labels,label0:g.label0,dlabel:g.dlabel,values:g.values,marker:{colors:g.marker.colors,line:{color:t({},g.marker.line.color,{dflt:null}),width:t({},g.marker.line.width,{dflt:1}),editType:"calc"},pattern:g.marker.pattern,editType:"calc"},text:g.text,hovertext:g.hovertext,scalegroup:t({},g.scalegroup,{}),textinfo:t({},g.textinfo,{flags:["label","text","value","percent"]}),texttemplate:e({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:t({},x.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:M({},{keys:["label","color","value","text","percent"]}),textposition:t({},g.textposition,{values:["inside","none"],dflt:"inside"}),textfont:g.textfont,insidetextfont:g.insidetextfont,title:{text:g.title.text,font:g.title.font,position:t({},g.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:A({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}}}),h5=Ye({"src/traces/funnelarea/layout_attributes.js"(X,H){"use strict";var g=y3().hiddenlabels;H.exports={hiddenlabels:g,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),bN=Ye({"src/traces/funnelarea/defaults.js"(X,H){"use strict";var g=ta(),x=f5(),A=Wu().defaults,M=gd().handleText,e=n0().handleLabelsAndValues,t=n0().handleMarkerDefaults;H.exports=function(o,a,i,n){function s(E,m){return g.coerce(o,a,x,E,m)}var c=s("labels"),h=s("values"),v=e(c,h),p=v.len;if(a._hasLabels=v.hasLabels,a._hasValues=v.hasValues,!a._hasLabels&&a._hasValues&&(s("label0"),s("dlabel")),!p){a.visible=!1;return}a._length=p,t(o,a,n,s),s("scalegroup");var T=s("text"),l=s("texttemplate"),_;if(l||(_=s("textinfo",Array.isArray(T)?"text+percent":"percent")),s("hovertext"),s("hovertemplate"),l||_&&_!=="none"){var w=s("textposition");M(o,a,n,s,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else _==="none"&&s("textposition","none");A(a,n,s);var S=s("title.text");S&&(s("title.position"),g.coerceFont(s,"title.font",n.font)),s("aspectratio"),s("baseratio")}}}),wN=Ye({"src/traces/funnelarea/layout_defaults.js"(X,H){"use strict";var g=ta(),x=h5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("funnelareacolorway",e.colorway),t("extendfunnelareacolors")}}}),p5=Ye({"src/traces/funnelarea/calc.js"(X,H){"use strict";var g=y1();function x(M,e){return g.calc(M,e)}function A(M){g.crossTraceCalc(M,{type:"funnelarea"})}H.exports={calc:x,crossTraceCalc:A}}}),TN=Ye({"src/traces/funnelarea/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=ta(),M=A.strScale,e=A.strTranslate,t=jl(),r=e0(),o=r.toMoveInsideBar,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=eg(),c=_3(),h=c.attachFxHandlers,v=c.determineInsideTextFont,p=c.layoutAreas,T=c.prerenderTitles,l=c.positionTitleOutside,_=c.formatSliceLabel;H.exports=function(b,d){var u=b._context.staticPlot,y=b._fullLayout;n("funnelarea",y),T(d,b),p(d,y._size),A.makeTraceGroups(y._funnelarealayer,d,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace;E(f),P.each(function(){var F=g.select(this).selectAll("g.slice").data(f);F.enter().append("g").classed("slice",!0),F.exit().remove(),F.each(function(O,I){if(O.hidden){g.select(this).selectAll("path,g").remove();return}O.pointNumber=O.i,O.curveNumber=z.index;var N=L.cx,U=L.cy,W=g.select(this),Q=W.selectAll("path.surface").data([O]);Q.enter().append("path").classed("surface",!0).style({"pointer-events":u?"none":"all"}),W.call(h,b,f);var ue="M"+(N+O.TR[0])+","+(U+O.TR[1])+w(O.TR,O.BR)+w(O.BR,O.BL)+w(O.BL,O.TL)+"Z";Q.attr("d",ue),_(b,O,L);var se=s.castOption(z.textposition,O.pts),he=W.selectAll("g.slicetext").data(O.text&&se!=="none"?[0]:[]);he.enter().append("g").classed("slicetext",!0),he.exit().remove(),he.each(function(){var G=A.ensureSingle(g.select(this),"text","",function(ie){ie.attr("data-notex",1)}),$=A.ensureUniformFontSize(b,v(z,O,y.font));G.text(O.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(x.font,$).call(t.convertToTspans,b);var J=x.bBox(G.node()),Z,re,ne,j=Math.min(O.BL[1],O.BR[1])+U,ee=Math.max(O.TL[1],O.TR[1])+U;re=Math.max(O.TL[0],O.BL[0])+N,ne=Math.min(O.TR[0],O.BR[0])+N,Z=o(re,ne,j,ee,J,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),Z.fontSize=$.size,i(z.type,Z,y),f[I].transform=Z,A.setTransormAndDisplay(G,Z)})});var B=g.select(this).selectAll("g.titletext").data(z.title.text?[0]:[]);B.enter().append("g").classed("titletext",!0),B.exit().remove(),B.each(function(){var O=A.ensureSingle(g.select(this),"text","",function(U){U.attr("data-notex",1)}),I=z.title.text;z._meta&&(I=A.templateString(I,z._meta)),O.text(I).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(x.font,z.title.font).call(t.convertToTspans,b);var N=l(L,y._size);O.attr("transform",e(N.x,N.y)+M(Math.min(1,N.scale))+e(N.tx,N.ty))})})})};function w(m,b){var d=b[0]-m[0],u=b[1]-m[1];return"l"+d+","+u}function S(m,b){return[.5*(m[0]+b[0]),.5*(m[1]+b[1])]}function E(m){if(!m.length)return;var b=m[0],d=b.trace,u=d.aspectratio,y=d.baseratio;y>.999&&(y=.999);var f=Math.pow(y,2),P=b.vTotal,L=P*f/(1-f),z=P,F=L/P;function B(){var fe=Math.sqrt(F);return{x:fe,y:-fe}}function O(){var fe=B();return[fe.x,fe.y]}var I,N=[];N.push(O());var U,W;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){var Q=W.v/z;F+=Q,N.push(O())}var ue=1/0,se=-1/0;for(U=0;U<N.length;U++)I=N[U],ue=Math.min(ue,I[1]),se=Math.max(se,I[1]);for(U=0;U<N.length;U++)N[U][1]-=(se+ue)/2;var he=N[N.length-1][0],G=b.r,$=(se-ue)/2,J=G/he,Z=G/$*u;for(b.r=Z*$,U=0;U<N.length;U++)N[U][0]*=J,N[U][1]*=Z;I=N[0];var re=[-I[0],I[1]],ne=[I[0],I[1]],j=0;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){j+=1;var ee=N[j][0],ie=N[j][1];W.TL=[-ee,ie],W.TR=[ee,ie],W.BL=re,W.BR=ne,W.pxmid=S(W.TR,W.BR),re=W.TL,ne=W.TR}}}}),AN=Ye({"src/traces/funnelarea/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");A(e,t,"funnelarea"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),SN=Ye({"src/traces/funnelarea/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"funnelarea",basePlotModule:xN(),categories:["pie-like","funnelarea","showLegend"],attributes:f5(),layoutAttributes:h5(),supplyDefaults:bN(),supplyLayoutDefaults:wN(),calc:p5().calc,crossTraceCalc:p5().crossTraceCalc,plot:TN(),style:AN(),styleOne:a1(),meta:{}}}}),MN=Ye({"lib/funnelarea.js"(X,H){"use strict";H.exports=SN()}}),Gh=Ye({"stackgl_modules/index.js"(X,H){(function(){var g={1964:function(e,t,r){e.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot3d:r(4100),gl_scatter3d:r(8418),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(e,t,r){"use strict";var o;function a(ke,Te){if(!(ke instanceof Te))throw new TypeError("Cannot call a class as a function")}function i(ke,Te){for(var Le=0;Le<Te.length;Le++){var rt=Te[Le];rt.enumerable=rt.enumerable||!1,rt.configurable=!0,"value"in rt&&(rt.writable=!0),Object.defineProperty(ke,s(rt.key),rt)}}function n(ke,Te,Le){return Te&&i(ke.prototype,Te),Le&&i(ke,Le),Object.defineProperty(ke,"prototype",{writable:!1}),ke}function s(ke){var Te=c(ke,"string");return S(Te)=="symbol"?Te:Te+""}function c(ke,Te){if(S(ke)!="object"||!ke)return ke;var Le=ke[Symbol.toPrimitive];if(Le!==void 0){var rt=Le.call(ke,Te||"default");if(S(rt)!="object")return rt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Te==="string"?String:Number)(ke)}function h(ke,Te,Le){return Te=l(Te),v(ke,T()?Reflect.construct(Te,Le||[],l(ke).constructor):Te.apply(ke,Le))}function v(ke,Te){if(Te&&(S(Te)=="object"||typeof Te=="function"))return Te;if(Te!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return p(ke)}function p(ke){if(ke===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ke}function T(){try{var ke=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(T=function(){return!!ke})()}function l(ke){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Te){return Te.__proto__||Object.getPrototypeOf(Te)},l(ke)}function _(ke,Te){if(typeof Te!="function"&&Te!==null)throw new TypeError("Super expression must either be null or a function");ke.prototype=Object.create(Te&&Te.prototype,{constructor:{value:ke,writable:!0,configurable:!0}}),Object.defineProperty(ke,"prototype",{writable:!1}),Te&&w(ke,Te)}function w(ke,Te){return w=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Le,rt){return Le.__proto__=rt,Le},w(ke,Te)}function S(ke){"@babel/helpers - typeof";return S=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Te){return typeof Te}:function(Te){return Te&&typeof Symbol=="function"&&Te.constructor===Symbol&&Te!==Symbol.prototype?"symbol":typeof Te},S(ke)}var E=r(7507),m=r(3778),b=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.hp=f,o=Q,t.IS=50;var d=2147483647;o=d,f.TYPED_ARRAY_SUPPORT=u(),!f.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function u(){try{var ke=new Uint8Array(1),Te={foo:function(){return 42}};return Object.setPrototypeOf(Te,Uint8Array.prototype),Object.setPrototypeOf(ke,Te),ke.foo()===42}catch{return!1}}Object.defineProperty(f.prototype,"parent",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.buffer}}),Object.defineProperty(f.prototype,"offset",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.byteOffset}});function y(ke){if(ke>d)throw new RangeError('The value "'+ke+'" is invalid for option "size"');var Te=new Uint8Array(ke);return Object.setPrototypeOf(Te,f.prototype),Te}function f(ke,Te,Le){if(typeof ke=="number"){if(typeof Te=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return F(ke)}return P(ke,Te,Le)}f.poolSize=8192;function P(ke,Te,Le){if(typeof ke=="string")return B(ke,Te);if(ArrayBuffer.isView(ke))return I(ke);if(ke==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke));if(Fe(ke,ArrayBuffer)||ke&&Fe(ke.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Fe(ke,SharedArrayBuffer)||ke&&Fe(ke.buffer,SharedArrayBuffer)))return N(ke,Te,Le);if(typeof ke=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var rt=ke.valueOf&&ke.valueOf();if(rt!=null&&rt!==ke)return f.from(rt,Te,Le);var dt=U(ke);if(dt)return dt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof ke[Symbol.toPrimitive]=="function")return f.from(ke[Symbol.toPrimitive]("string"),Te,Le);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke))}f.from=function(ke,Te,Le){return P(ke,Te,Le)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array);function L(ke){if(typeof ke!="number")throw new TypeError('"size" argument must be of type number');if(ke<0)throw new RangeError('The value "'+ke+'" is invalid for option "size"')}function z(ke,Te,Le){return L(ke),ke<=0?y(ke):Te!==void 0?typeof Le=="string"?y(ke).fill(Te,Le):y(ke).fill(Te):y(ke)}f.alloc=function(ke,Te,Le){return z(ke,Te,Le)};function F(ke){return L(ke),y(ke<0?0:W(ke)|0)}f.allocUnsafe=function(ke){return F(ke)},f.allocUnsafeSlow=function(ke){return F(ke)};function B(ke,Te){if((typeof Te!="string"||Te==="")&&(Te="utf8"),!f.isEncoding(Te))throw new TypeError("Unknown encoding: "+Te);var Le=ue(ke,Te)|0,rt=y(Le),dt=rt.write(ke,Te);return dt!==Le&&(rt=rt.slice(0,dt)),rt}function O(ke){for(var Te=ke.length<0?0:W(ke.length)|0,Le=y(Te),rt=0;rt<Te;rt+=1)Le[rt]=ke[rt]&255;return Le}function I(ke){if(Fe(ke,Uint8Array)){var Te=new Uint8Array(ke);return N(Te.buffer,Te.byteOffset,Te.byteLength)}return O(ke)}function N(ke,Te,Le){if(Te<0||ke.byteLength<Te)throw new RangeError('"offset" is outside of buffer bounds');if(ke.byteLength<Te+(Le||0))throw new RangeError('"length" is outside of buffer bounds');var rt;return Te===void 0&&Le===void 0?rt=new Uint8Array(ke):Le===void 0?rt=new Uint8Array(ke,Te):rt=new Uint8Array(ke,Te,Le),Object.setPrototypeOf(rt,f.prototype),rt}function U(ke){if(f.isBuffer(ke)){var Te=W(ke.length)|0,Le=y(Te);return Le.length===0||ke.copy(Le,0,0,Te),Le}if(ke.length!==void 0)return typeof ke.length!="number"||Ke(ke.length)?y(0):O(ke);if(ke.type==="Buffer"&&Array.isArray(ke.data))return O(ke.data)}function W(ke){if(ke>=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return ke|0}function Q(ke){return+ke!=ke&&(ke=0),f.alloc(+ke)}f.isBuffer=function(Te){return Te!=null&&Te._isBuffer===!0&&Te!==f.prototype},f.compare=function(Te,Le){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),Fe(Le,Uint8Array)&&(Le=f.from(Le,Le.offset,Le.byteLength)),!f.isBuffer(Te)||!f.isBuffer(Le))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(Te===Le)return 0;for(var rt=Te.length,dt=Le.length,xt=0,It=Math.min(rt,dt);xt<It;++xt)if(Te[xt]!==Le[xt]){rt=Te[xt],dt=Le[xt];break}return rt<dt?-1:dt<rt?1:0},f.isEncoding=function(Te){switch(String(Te).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},f.concat=function(Te,Le){if(!Array.isArray(Te))throw new TypeError('"list" argument must be an Array of Buffers');if(Te.length===0)return f.alloc(0);var rt;if(Le===void 0)for(Le=0,rt=0;rt<Te.length;++rt)Le+=Te[rt].length;var dt=f.allocUnsafe(Le),xt=0;for(rt=0;rt<Te.length;++rt){var It=Te[rt];if(Fe(It,Uint8Array))xt+It.length>dt.length?(f.isBuffer(It)||(It=f.from(It)),It.copy(dt,xt)):Uint8Array.prototype.set.call(dt,It,xt);else if(f.isBuffer(It))It.copy(dt,xt);else throw new TypeError('"list" argument must be an Array of Buffers');xt+=It.length}return dt};function ue(ke,Te){if(f.isBuffer(ke))return ke.length;if(ArrayBuffer.isView(ke)||Fe(ke,ArrayBuffer))return ke.byteLength;if(typeof ke!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(ke));var Le=ke.length,rt=arguments.length>2&&arguments[2]===!0;if(!rt&&Le===0)return 0;for(var dt=!1;;)switch(Te){case"ascii":case"latin1":case"binary":return Le;case"utf8":case"utf-8":return ar(ke).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Le*2;case"hex":return Le>>>1;case"base64":return _r(ke).length;default:if(dt)return rt?-1:ar(ke).length;Te=(""+Te).toLowerCase(),dt=!0}}f.byteLength=ue;function se(ke,Te,Le){var rt=!1;if((Te===void 0||Te<0)&&(Te=0),Te>this.length||((Le===void 0||Le>this.length)&&(Le=this.length),Le<=0)||(Le>>>=0,Te>>>=0,Le<=Te))return"";for(ke||(ke="utf8");;)switch(ke){case"hex":return Ie(this,Te,Le);case"utf8":case"utf-8":return ie(this,Te,Le);case"ascii":return Ae(this,Te,Le);case"latin1":case"binary":return Be(this,Te,Le);case"base64":return ee(this,Te,Le);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ze(this,Te,Le);default:if(rt)throw new TypeError("Unknown encoding: "+ke);ke=(ke+"").toLowerCase(),rt=!0}}f.prototype._isBuffer=!0;function he(ke,Te,Le){var rt=ke[Te];ke[Te]=ke[Le],ke[Le]=rt}f.prototype.swap16=function(){var Te=this.length;if(Te%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Le=0;Le<Te;Le+=2)he(this,Le,Le+1);return this},f.prototype.swap32=function(){var Te=this.length;if(Te%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var Le=0;Le<Te;Le+=4)he(this,Le,Le+3),he(this,Le+1,Le+2);return this},f.prototype.swap64=function(){var Te=this.length;if(Te%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var Le=0;Le<Te;Le+=8)he(this,Le,Le+7),he(this,Le+1,Le+6),he(this,Le+2,Le+5),he(this,Le+3,Le+4);return this},f.prototype.toString=function(){var Te=this.length;return Te===0?"":arguments.length===0?ie(this,0,Te):se.apply(this,arguments)},f.prototype.toLocaleString=f.prototype.toString,f.prototype.equals=function(Te){if(!f.isBuffer(Te))throw new TypeError("Argument must be a Buffer");return this===Te?!0:f.compare(this,Te)===0},f.prototype.inspect=function(){var Te="",Le=t.IS;return Te=this.toString("hex",0,Le).replace(/(.{2})/g,"$1 ").trim(),this.length>Le&&(Te+=" ... "),"<Buffer "+Te+">"},b&&(f.prototype[b]=f.prototype.inspect),f.prototype.compare=function(Te,Le,rt,dt,xt){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),!f.isBuffer(Te))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(Te));if(Le===void 0&&(Le=0),rt===void 0&&(rt=Te?Te.length:0),dt===void 0&&(dt=0),xt===void 0&&(xt=this.length),Le<0||rt>Te.length||dt<0||xt>this.length)throw new RangeError("out of range index");if(dt>=xt&&Le>=rt)return 0;if(dt>=xt)return-1;if(Le>=rt)return 1;if(Le>>>=0,rt>>>=0,dt>>>=0,xt>>>=0,this===Te)return 0;for(var It=xt-dt,Bt=rt-Le,Gt=Math.min(It,Bt),Kt=this.slice(dt,xt),sr=Te.slice(Le,rt),sa=0;sa<Gt;++sa)if(Kt[sa]!==sr[sa]){It=Kt[sa],Bt=sr[sa];break}return It<Bt?-1:Bt<It?1:0};function G(ke,Te,Le,rt,dt){if(ke.length===0)return-1;if(typeof Le=="string"?(rt=Le,Le=0):Le>2147483647?Le=2147483647:Le<-2147483648&&(Le=-2147483648),Le=+Le,Ke(Le)&&(Le=dt?0:ke.length-1),Le<0&&(Le=ke.length+Le),Le>=ke.length){if(dt)return-1;Le=ke.length-1}else if(Le<0)if(dt)Le=0;else return-1;if(typeof Te=="string"&&(Te=f.from(Te,rt)),f.isBuffer(Te))return Te.length===0?-1:$(ke,Te,Le,rt,dt);if(typeof Te=="number")return Te=Te&255,typeof Uint8Array.prototype.indexOf=="function"?dt?Uint8Array.prototype.indexOf.call(ke,Te,Le):Uint8Array.prototype.lastIndexOf.call(ke,Te,Le):$(ke,[Te],Le,rt,dt);throw new TypeError("val must be string, number or Buffer")}function $(ke,Te,Le,rt,dt){var xt=1,It=ke.length,Bt=Te.length;if(rt!==void 0&&(rt=String(rt).toLowerCase(),rt==="ucs2"||rt==="ucs-2"||rt==="utf16le"||rt==="utf-16le")){if(ke.length<2||Te.length<2)return-1;xt=2,It/=2,Bt/=2,Le/=2}function Gt(La,ka){return xt===1?La[ka]:La.readUInt16BE(ka*xt)}var Kt;if(dt){var sr=-1;for(Kt=Le;Kt<It;Kt++)if(Gt(ke,Kt)===Gt(Te,sr===-1?0:Kt-sr)){if(sr===-1&&(sr=Kt),Kt-sr+1===Bt)return sr*xt}else sr!==-1&&(Kt-=Kt-sr),sr=-1}else for(Le+Bt>It&&(Le=It-Bt),Kt=Le;Kt>=0;Kt--){for(var sa=!0,Aa=0;Aa<Bt;Aa++)if(Gt(ke,Kt+Aa)!==Gt(Te,Aa)){sa=!1;break}if(sa)return Kt}return-1}f.prototype.includes=function(Te,Le,rt){return this.indexOf(Te,Le,rt)!==-1},f.prototype.indexOf=function(Te,Le,rt){return G(this,Te,Le,rt,!0)},f.prototype.lastIndexOf=function(Te,Le,rt){return G(this,Te,Le,rt,!1)};function J(ke,Te,Le,rt){Le=Number(Le)||0;var dt=ke.length-Le;rt?(rt=Number(rt),rt>dt&&(rt=dt)):rt=dt;var xt=Te.length;rt>xt/2&&(rt=xt/2);var It;for(It=0;It<rt;++It){var Bt=parseInt(Te.substr(It*2,2),16);if(Ke(Bt))return It;ke[Le+It]=Bt}return It}function Z(ke,Te,Le,rt){return yt(ar(Te,ke.length-Le),ke,Le,rt)}function re(ke,Te,Le,rt){return yt(Cr(Te),ke,Le,rt)}function ne(ke,Te,Le,rt){return yt(_r(Te),ke,Le,rt)}function j(ke,Te,Le,rt){return yt(vr(Te,ke.length-Le),ke,Le,rt)}f.prototype.write=function(Te,Le,rt,dt){if(Le===void 0)dt="utf8",rt=this.length,Le=0;else if(rt===void 0&&typeof Le=="string")dt=Le,rt=this.length,Le=0;else if(isFinite(Le))Le=Le>>>0,isFinite(rt)?(rt=rt>>>0,dt===void 0&&(dt="utf8")):(dt=rt,rt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var xt=this.length-Le;if((rt===void 0||rt>xt)&&(rt=xt),Te.length>0&&(rt<0||Le<0)||Le>this.length)throw new RangeError("Attempt to write outside buffer bounds");dt||(dt="utf8");for(var It=!1;;)switch(dt){case"hex":return J(this,Te,Le,rt);case"utf8":case"utf-8":return Z(this,Te,Le,rt);case"ascii":case"latin1":case"binary":return re(this,Te,Le,rt);case"base64":return ne(this,Te,Le,rt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,Te,Le,rt);default:if(It)throw new TypeError("Unknown encoding: "+dt);dt=(""+dt).toLowerCase(),It=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(ke,Te,Le){return Te===0&&Le===ke.length?E.fromByteArray(ke):E.fromByteArray(ke.slice(Te,Le))}function ie(ke,Te,Le){Le=Math.min(ke.length,Le);for(var rt=[],dt=Te;dt<Le;){var xt=ke[dt],It=null,Bt=xt>239?4:xt>223?3:xt>191?2:1;if(dt+Bt<=Le){var Gt=void 0,Kt=void 0,sr=void 0,sa=void 0;switch(Bt){case 1:xt<128&&(It=xt);break;case 2:Gt=ke[dt+1],(Gt&192)===128&&(sa=(xt&31)<<6|Gt&63,sa>127&&(It=sa));break;case 3:Gt=ke[dt+1],Kt=ke[dt+2],(Gt&192)===128&&(Kt&192)===128&&(sa=(xt&15)<<12|(Gt&63)<<6|Kt&63,sa>2047&&(sa<55296||sa>57343)&&(It=sa));break;case 4:Gt=ke[dt+1],Kt=ke[dt+2],sr=ke[dt+3],(Gt&192)===128&&(Kt&192)===128&&(sr&192)===128&&(sa=(xt&15)<<18|(Gt&63)<<12|(Kt&63)<<6|sr&63,sa>65535&&sa<1114112&&(It=sa))}}It===null?(It=65533,Bt=1):It>65535&&(It-=65536,rt.push(It>>>10&1023|55296),It=56320|It&1023),rt.push(It),dt+=Bt}return be(rt)}var fe=4096;function be(ke){var Te=ke.length;if(Te<=fe)return String.fromCharCode.apply(String,ke);for(var Le="",rt=0;rt<Te;)Le+=String.fromCharCode.apply(String,ke.slice(rt,rt+=fe));return Le}function Ae(ke,Te,Le){var rt="";Le=Math.min(ke.length,Le);for(var dt=Te;dt<Le;++dt)rt+=String.fromCharCode(ke[dt]&127);return rt}function Be(ke,Te,Le){var rt="";Le=Math.min(ke.length,Le);for(var dt=Te;dt<Le;++dt)rt+=String.fromCharCode(ke[dt]);return rt}function Ie(ke,Te,Le){var rt=ke.length;(!Te||Te<0)&&(Te=0),(!Le||Le<0||Le>rt)&&(Le=rt);for(var dt="",xt=Te;xt<Le;++xt)dt+=Ne[ke[xt]];return dt}function Ze(ke,Te,Le){for(var rt=ke.slice(Te,Le),dt="",xt=0;xt<rt.length-1;xt+=2)dt+=String.fromCharCode(rt[xt]+rt[xt+1]*256);return dt}f.prototype.slice=function(Te,Le){var rt=this.length;Te=~~Te,Le=Le===void 0?rt:~~Le,Te<0?(Te+=rt,Te<0&&(Te=0)):Te>rt&&(Te=rt),Le<0?(Le+=rt,Le<0&&(Le=0)):Le>rt&&(Le=rt),Le<Te&&(Le=Te);var dt=this.subarray(Te,Le);return Object.setPrototypeOf(dt,f.prototype),dt};function at(ke,Te,Le){if(ke%1!==0||ke<0)throw new RangeError("offset is not uint");if(ke+Te>Le)throw new RangeError("Trying to access beyond buffer length")}f.prototype.readUintLE=f.prototype.readUIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It<Le&&(xt*=256);)dt+=this[Te+It]*xt;return dt},f.prototype.readUintBE=f.prototype.readUIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te+--Le],xt=1;Le>0&&(xt*=256);)dt+=this[Te+--Le]*xt;return dt},f.prototype.readUint8=f.prototype.readUInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]|this[Te+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]<<8|this[Te+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),(this[Te]|this[Te+1]<<8|this[Te+2]<<16)+this[Te+3]*16777216},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]*16777216+(this[Te+1]<<16|this[Te+2]<<8|this[Te+3])},f.prototype.readBigUInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24),xt=this[++Te]+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+rt*Math.pow(2,24);return BigInt(dt)+(BigInt(xt)<<BigInt(32))}),f.prototype.readBigUInt64BE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te],xt=this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt;return(BigInt(dt)<<BigInt(32))+BigInt(xt)}),f.prototype.readIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It<Le&&(xt*=256);)dt+=this[Te+It]*xt;return xt*=128,dt>=xt&&(dt-=Math.pow(2,8*Le)),dt},f.prototype.readIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=Le,xt=1,It=this[Te+--dt];dt>0&&(xt*=256);)It+=this[Te+--dt]*xt;return xt*=128,It>=xt&&(It-=Math.pow(2,8*Le)),It},f.prototype.readInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]&128?(255-this[Te]+1)*-1:this[Te]},f.prototype.readInt16LE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te]|this[Te+1]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt16BE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te+1]|this[Te]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]|this[Te+1]<<8|this[Te+2]<<16|this[Te+3]<<24},f.prototype.readInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]<<24|this[Te+1]<<16|this[Te+2]<<8|this[Te+3]},f.prototype.readBigInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=this[Te+4]+this[Te+5]*Math.pow(2,8)+this[Te+6]*Math.pow(2,16)+(rt<<24);return(BigInt(dt)<<BigInt(32))+BigInt(Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24))}),f.prototype.readBigInt64BE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=(Le<<24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te];return(BigInt(dt)<<BigInt(32))+BigInt(this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt)}),f.prototype.readFloatLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!0,23,4)},f.prototype.readFloatBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!1,23,4)},f.prototype.readDoubleLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!0,52,8)},f.prototype.readDoubleBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!1,52,8)};function it(ke,Te,Le,rt,dt,xt){if(!f.isBuffer(ke))throw new TypeError('"buffer" argument must be a Buffer instance');if(Te>dt||Te<xt)throw new RangeError('"value" argument is out of bounds');if(Le+rt>ke.length)throw new RangeError("Index out of range")}f.prototype.writeUintLE=f.prototype.writeUIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=1,Bt=0;for(this[Le]=Te&255;++Bt<rt&&(It*=256);)this[Le+Bt]=Te/It&255;return Le+rt},f.prototype.writeUintBE=f.prototype.writeUIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=rt-1,Bt=1;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)this[Le+It]=Te/Bt&255;return Le+rt},f.prototype.writeUint8=f.prototype.writeUInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,255,0),this[Le]=Te&255,Le+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le+3]=Te>>>24,this[Le+2]=Te>>>16,this[Le+1]=Te>>>8,this[Le]=Te&255,Le+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4};function et(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,Le}function lt(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le+7]=xt,xt=xt>>8,ke[Le+6]=xt,xt=xt>>8,ke[Le+5]=xt,xt=xt>>8,ke[Le+4]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le+3]=It,It=It>>8,ke[Le+2]=It,It=It>>8,ke[Le+1]=It,It=It>>8,ke[Le]=It,Le+8}f.prototype.writeBigUInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeBigUInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=0,Bt=1,Gt=0;for(this[Le]=Te&255;++It<rt&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It-1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=rt-1,Bt=1,Gt=0;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It+1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,127,-128),Te<0&&(Te=255+Te+1),this[Le]=Te&255,Le+1},f.prototype.writeInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),this[Le]=Te&255,this[Le+1]=Te>>>8,this[Le+2]=Te>>>16,this[Le+3]=Te>>>24,Le+4},f.prototype.writeInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),Te<0&&(Te=4294967295+Te+1),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4},f.prototype.writeBigInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeBigInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Me(ke,Te,Le,rt,dt,xt){if(Le+rt>ke.length)throw new RangeError("Index out of range");if(Le<0)throw new RangeError("Index out of range")}function ge(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,4,34028234663852886e22,-34028234663852886e22),m.write(ke,Te,Le,rt,23,4),Le+4}f.prototype.writeFloatLE=function(Te,Le,rt){return ge(this,Te,Le,!0,rt)},f.prototype.writeFloatBE=function(Te,Le,rt){return ge(this,Te,Le,!1,rt)};function ce(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,8,17976931348623157e292,-17976931348623157e292),m.write(ke,Te,Le,rt,52,8),Le+8}f.prototype.writeDoubleLE=function(Te,Le,rt){return ce(this,Te,Le,!0,rt)},f.prototype.writeDoubleBE=function(Te,Le,rt){return ce(this,Te,Le,!1,rt)},f.prototype.copy=function(Te,Le,rt,dt){if(!f.isBuffer(Te))throw new TypeError("argument should be a Buffer");if(rt||(rt=0),!dt&&dt!==0&&(dt=this.length),Le>=Te.length&&(Le=Te.length),Le||(Le=0),dt>0&&dt<rt&&(dt=rt),dt===rt||Te.length===0||this.length===0)return 0;if(Le<0)throw new RangeError("targetStart out of bounds");if(rt<0||rt>=this.length)throw new RangeError("Index out of range");if(dt<0)throw new RangeError("sourceEnd out of bounds");dt>this.length&&(dt=this.length),Te.length-Le<dt-rt&&(dt=Te.length-Le+rt);var xt=dt-rt;return this===Te&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(Le,rt,dt):Uint8Array.prototype.set.call(Te,this.subarray(rt,dt),Le),xt},f.prototype.fill=function(Te,Le,rt,dt){if(typeof Te=="string"){if(typeof Le=="string"?(dt=Le,Le=0,rt=this.length):typeof rt=="string"&&(dt=rt,rt=this.length),dt!==void 0&&typeof dt!="string")throw new TypeError("encoding must be a string");if(typeof dt=="string"&&!f.isEncoding(dt))throw new TypeError("Unknown encoding: "+dt);if(Te.length===1){var xt=Te.charCodeAt(0);(dt==="utf8"&&xt<128||dt==="latin1")&&(Te=xt)}}else typeof Te=="number"?Te=Te&255:typeof Te=="boolean"&&(Te=Number(Te));if(Le<0||this.length<Le||this.length<rt)throw new RangeError("Out of range index");if(rt<=Le)return this;Le=Le>>>0,rt=rt===void 0?this.length:rt>>>0,Te||(Te=0);var It;if(typeof Te=="number")for(It=Le;It<rt;++It)this[It]=Te;else{var Bt=f.isBuffer(Te)?Te:f.from(Te,dt),Gt=Bt.length;if(Gt===0)throw new TypeError('The value "'+Te+'" is invalid for argument "value"');for(It=0;It<rt-Le;++It)this[It+Le]=Bt[It%Gt]}return this};var ze={};function tt(ke,Te,Le){ze[ke]=function(rt){function dt(){var xt;return a(this,dt),xt=h(this,dt),Object.defineProperty(xt,"message",{value:Te.apply(xt,arguments),writable:!0,configurable:!0}),xt.name="".concat(xt.name," [").concat(ke,"]"),xt.stack,delete xt.name,xt}return _(dt,rt),n(dt,[{key:"code",get:function(){return ke},set:function(It){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:It,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(ke,"]: ").concat(this.message)}}])}(Le)}tt("ERR_BUFFER_OUT_OF_BOUNDS",function(ke){return ke?"".concat(ke," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),tt("ERR_INVALID_ARG_TYPE",function(ke,Te){return'The "'.concat(ke,'" argument must be of type number. Received type ').concat(S(Te))},TypeError),tt("ERR_OUT_OF_RANGE",function(ke,Te,Le){var rt='The value of "'.concat(ke,'" is out of range.'),dt=Le;return Number.isInteger(Le)&&Math.abs(Le)>Math.pow(2,32)?dt=nt(String(Le)):typeof Le=="bigint"&&(dt=String(Le),(Le>Math.pow(BigInt(2),BigInt(32))||Le<-Math.pow(BigInt(2),BigInt(32)))&&(dt=nt(dt)),dt+="n"),rt+=" It must be ".concat(Te,". Received ").concat(dt),rt},RangeError);function nt(ke){for(var Te="",Le=ke.length,rt=ke[0]==="-"?1:0;Le>=rt+4;Le-=3)Te="_".concat(ke.slice(Le-3,Le)).concat(Te);return"".concat(ke.slice(0,Le)).concat(Te)}function Qe(ke,Te,Le){St(Te,"offset"),(ke[Te]===void 0||ke[Te+Le]===void 0)&&Ot(Te,ke.length-(Le+1))}function Ct(ke,Te,Le,rt,dt,xt){if(ke>Le||ke<Te){var It=typeof Te=="bigint"?"n":"",Bt;throw xt>3?Te===0||Te===BigInt(0)?Bt=">= 0".concat(It," and < 2").concat(It," ** ").concat((xt+1)*8).concat(It):Bt=">= -(2".concat(It," ** ").concat((xt+1)*8-1).concat(It,") and < 2 ** ")+"".concat((xt+1)*8-1).concat(It):Bt=">= ".concat(Te).concat(It," and <= ").concat(Le).concat(It),new ze.ERR_OUT_OF_RANGE("value",Bt,ke)}Qe(rt,dt,xt)}function St(ke,Te){if(typeof ke!="number")throw new ze.ERR_INVALID_ARG_TYPE(Te,"number",ke)}function Ot(ke,Te,Le){throw Math.floor(ke)!==ke?(St(ke,Le),new ze.ERR_OUT_OF_RANGE(Le||"offset","an integer",ke)):Te<0?new ze.ERR_BUFFER_OUT_OF_BOUNDS:new ze.ERR_OUT_OF_RANGE(Le||"offset",">= ".concat(Le?1:0," and <= ").concat(Te),ke)}var jt=/[^+/0-9A-Za-z-_]/g;function ur(ke){if(ke=ke.split("=")[0],ke=ke.trim().replace(jt,""),ke.length<2)return"";for(;ke.length%4!==0;)ke=ke+"=";return ke}function ar(ke,Te){Te=Te||1/0;for(var Le,rt=ke.length,dt=null,xt=[],It=0;It<rt;++It){if(Le=ke.charCodeAt(It),Le>55295&&Le<57344){if(!dt){if(Le>56319){(Te-=3)>-1&&xt.push(239,191,189);continue}else if(It+1===rt){(Te-=3)>-1&&xt.push(239,191,189);continue}dt=Le;continue}if(Le<56320){(Te-=3)>-1&&xt.push(239,191,189),dt=Le;continue}Le=(dt-55296<<10|Le-56320)+65536}else dt&&(Te-=3)>-1&&xt.push(239,191,189);if(dt=null,Le<128){if((Te-=1)<0)break;xt.push(Le)}else if(Le<2048){if((Te-=2)<0)break;xt.push(Le>>6|192,Le&63|128)}else if(Le<65536){if((Te-=3)<0)break;xt.push(Le>>12|224,Le>>6&63|128,Le&63|128)}else if(Le<1114112){if((Te-=4)<0)break;xt.push(Le>>18|240,Le>>12&63|128,Le>>6&63|128,Le&63|128)}else throw new Error("Invalid code point")}return xt}function Cr(ke){for(var Te=[],Le=0;Le<ke.length;++Le)Te.push(ke.charCodeAt(Le)&255);return Te}function vr(ke,Te){for(var Le,rt,dt,xt=[],It=0;It<ke.length&&!((Te-=2)<0);++It)Le=ke.charCodeAt(It),rt=Le>>8,dt=Le%256,xt.push(dt),xt.push(rt);return xt}function _r(ke){return E.toByteArray(ur(ke))}function yt(ke,Te,Le,rt){var dt;for(dt=0;dt<rt&&!(dt+Le>=Te.length||dt>=ke.length);++dt)Te[dt+Le]=ke[dt];return dt}function Fe(ke,Te){return ke instanceof Te||ke!=null&&ke.constructor!=null&&ke.constructor.name!=null&&ke.constructor.name===Te.name}function Ke(ke){return ke!==ke}var Ne=function(){for(var ke="0123456789abcdef",Te=new Array(256),Le=0;Le<16;++Le)for(var rt=Le*16,dt=0;dt<16;++dt)Te[rt+dt]=ke[Le]+ke[dt];return Te}();function Ee(ke){return typeof BigInt>"u"?Ve:ke}function Ve(){throw new Error("BigInt not supported")}},9216:function(e){"use strict";e.exports=a,e.exports.isMobile=a,e.exports.default=a;var t=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,o=/android|ipad|playbook|silk/i;function a(i){i||(i={});var n=i.ua;if(!n&&typeof navigator<"u"&&(n=navigator.userAgent),n&&n.headers&&typeof n.headers["user-agent"]=="string"&&(n=n.headers["user-agent"]),typeof n!="string")return!1;var s=t.test(n)&&!r.test(n)||!!i.tablet&&o.test(n);return!s&&i.tablet&&i.featureDetect&&navigator&&navigator.maxTouchPoints>1&&n.indexOf("Macintosh")!==-1&&n.indexOf("Safari")!==-1&&(s=!0),s}},6296:function(e,t,r){"use strict";e.exports=c;var o=r(7261),a=r(9977),i=r(1811);function n(h,v){this._controllerNames=Object.keys(h),this._controllerList=this._controllerNames.map(function(p){return h[p]}),this._mode=v,this._active=h[v],this._active||(this._mode="turntable",this._active=h.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=n.prototype;s.flush=function(h){for(var v=this._controllerList,p=0;p<v.length;++p)v[p].flush(h)},s.idle=function(h){for(var v=this._controllerList,p=0;p<v.length;++p)v[p].idle(h)},s.lookAt=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].lookAt(h,v,p,T)},s.rotate=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].rotate(h,v,p,T)},s.pan=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].pan(h,v,p,T)},s.translate=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].translate(h,v,p,T)},s.setMatrix=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setMatrix(h,v)},s.setDistanceLimits=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setDistanceLimits(h,v)},s.setDistance=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setDistance(h,v)},s.recalcMatrix=function(h){this._active.recalcMatrix(h)},s.getDistance=function(h){return this._active.getDistance(h)},s.getDistanceLimits=function(h){return this._active.getDistanceLimits(h)},s.lastT=function(){return this._active.lastT()},s.setMode=function(h){if(h!==this._mode){var v=this._controllerNames.indexOf(h);if(!(v<0)){var p=this._active,T=this._controllerList[v],l=Math.max(p.lastT(),T.lastT());p.recalcMatrix(l),T.setMatrix(l,p.computedMatrix),this._active=T,this._mode=h,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}}},s.getMode=function(){return this._mode};function c(h){h=h||{};var v=h.eye||[0,0,1],p=h.center||[0,0,0],T=h.up||[0,1,0],l=h.distanceLimits||[0,1/0],_=h.mode||"turntable",w=o(),S=a(),E=i();return w.setDistanceLimits(l[0],l[1]),w.lookAt(0,v,p,T),S.setDistanceLimits(l[0],l[1]),S.lookAt(0,v,p,T),E.setDistanceLimits(l[0],l[1]),E.lookAt(0,v,p,T),new n({turntable:w,orbit:S,matrix:E},_)}},7169:function(e,t,r){"use strict";var o=typeof WeakMap>"u"?r(1538):WeakMap,a=r(2762),i=r(8116),n=new o;function s(c){var h=n.get(c),v=h&&(h._triangleBuffer.handle||h._triangleBuffer.buffer);if(!v||!c.isBuffer(v)){var p=a(c,new Float32Array([-1,-1,-1,4,4,-1]));h=i(c,[{buffer:p,type:c.FLOAT,size:2}]),h._triangleBuffer=p,n.set(c,h)}h.bind(),c.drawArrays(c.TRIANGLES,0,3),h.unbind()}e.exports=s},1085:function(e,t,r){var o=r(1371);e.exports=a;function a(i,n,s){n=typeof n=="number"?n:1,s=s||": ";var c=i.split(/\r?\n/),h=String(c.length+n-1).length;return c.map(function(v,p){var T=p+n,l=String(T).length,_=o(T,h-l);return _+s+v}).join(`
+`)}},3952:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){for(var c=new Array(s+1),h=0;h<n.length;++h)c[h]=n[h];for(var h=0;h<=n.length;++h){for(var v=n.length;v<=s;++v){for(var p=new Array(s),T=0;T<s;++T)p[T]=Math.pow(v+1-h,T);c[v]=p}var l=o.apply(void 0,c);if(l)return!0}return!1}function i(n){var s=n.length;if(s===0)return[];if(s===1)return[0];for(var c=n[0].length,h=[n[0]],v=[0],p=1;p<s;++p){if(h.push(n[p]),!a(h,c)){h.pop();continue}if(v.push(p),v.length===c+1)return v}return v}},5995:function(e,t,r){"use strict";e.exports=i;var o=r(7642),a=r(6037);function i(n,s){return o(s).filter(function(c){for(var h=new Array(c.length),v=0;v<c.length;++v)h[v]=s[c[v]];return a(h)*n<1})}},3502:function(e,t,r){e.exports=i;var o=r(5995),a=r(9127);function i(n,s){return a(o(n,s))}},6468:function(e){e.exports=function(r){return atob(r)}},2642:function(e,t,r){"use strict";e.exports=i;var o=r(727);function a(n){for(var s=0,c=0;c<n.length;++c)s+=n[c];return s}function i(n,s){for(var c=s.length,h=new Array(c+1),v=0;v<c;++v){for(var p=new Array(c+1),T=0;T<=c;++T)p[T]=n[T][v];h[v]=p}h[c]=new Array(c+1);for(var v=0;v<=c;++v)h[c][v]=1;for(var l=new Array(c+1),v=0;v<c;++v)l[v]=s[v];l[c]=1;var _=o(h,l),w=a(_[c+1]);w===0&&(w=1);for(var S=new Array(c+1),v=0;v<=c;++v)S[v]=a(_[v])/w;return S}},7507:function(e,t){"use strict";t.byteLength=h,t.toByteArray=p,t.fromByteArray=_;for(var r=[],o=[],a=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,s=i.length;n<s;++n)r[n]=i[n],o[i.charCodeAt(n)]=n;o[45]=62,o[95]=63;function c(w){var S=w.length;if(S%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var E=w.indexOf("=");E===-1&&(E=S);var m=E===S?0:4-E%4;return[E,m]}function h(w){var S=c(w),E=S[0],m=S[1];return(E+m)*3/4-m}function v(w,S,E){return(S+E)*3/4-E}function p(w){var S,E=c(w),m=E[0],b=E[1],d=new a(v(w,m,b)),u=0,y=b>0?m-4:m,f;for(f=0;f<y;f+=4)S=o[w.charCodeAt(f)]<<18|o[w.charCodeAt(f+1)]<<12|o[w.charCodeAt(f+2)]<<6|o[w.charCodeAt(f+3)],d[u++]=S>>16&255,d[u++]=S>>8&255,d[u++]=S&255;return b===2&&(S=o[w.charCodeAt(f)]<<2|o[w.charCodeAt(f+1)]>>4,d[u++]=S&255),b===1&&(S=o[w.charCodeAt(f)]<<10|o[w.charCodeAt(f+1)]<<4|o[w.charCodeAt(f+2)]>>2,d[u++]=S>>8&255,d[u++]=S&255),d}function T(w){return r[w>>18&63]+r[w>>12&63]+r[w>>6&63]+r[w&63]}function l(w,S,E){for(var m,b=[],d=S;d<E;d+=3)m=(w[d]<<16&16711680)+(w[d+1]<<8&65280)+(w[d+2]&255),b.push(T(m));return b.join("")}function _(w){for(var S,E=w.length,m=E%3,b=[],d=16383,u=0,y=E-m;u<y;u+=d)b.push(l(w,u,u+d>y?y:u+d));return m===1?(S=w[E-1],b.push(r[S>>2]+r[S<<4&63]+"==")):m===2&&(S=(w[E-2]<<8)+w[E-1],b.push(r[S>>10]+r[S>>4&63]+r[S<<2&63]+"=")),b.join("")}},3865:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).add(n[0].mul(i[1])),i[1].mul(n[1]))}},1318:function(e){"use strict";e.exports=t;function t(r,o){return r[0].mul(o[1]).cmp(o[0].mul(r[1]))}},8697:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]),i[1].mul(n[0]))}},7842:function(e,t,r){"use strict";var o=r(6330),a=r(1533),i=r(2651),n=r(6768),s=r(869),c=r(8697);e.exports=h;function h(v,p){if(o(v))return p?c(v,h(p)):[v[0].clone(),v[1].clone()];var T=0,l,_;if(a(v))l=v.clone();else if(typeof v=="string")l=n(v);else{if(v===0)return[i(0),i(1)];if(v===Math.floor(v))l=i(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),T-=256;l=i(v)}}if(o(p))l.mul(p[1]),_=p[0].clone();else if(a(p))_=p.clone();else if(typeof p=="string")_=n(p);else if(!p)_=i(1);else if(p===Math.floor(p))_=i(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),T+=256;_=i(p)}return T>0?l=l.ushln(T):T<0&&(_=_.ushln(-T)),s(l,_)}},6330:function(e,t,r){"use strict";var o=r(1533);e.exports=a;function a(i){return Array.isArray(i)&&i.length===2&&o(i[0])&&o(i[1])}},5716:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i.cmp(new o(0))}},1369:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){var n=i.length,s=i.words,c=0;if(n===1)c=s[0];else if(n===2)c=s[0]+s[1]*67108864;else for(var h=0;h<n;h++){var v=s[h];c+=v*Math.pow(67108864,h)}return o(i)*c}},4025:function(e,t,r){"use strict";var o=r(2361),a=r(8828).countTrailingZeros;e.exports=i;function i(n){var s=a(o.lo(n));if(s<32)return s;var c=a(o.hi(n));return c>20?52:c+32}},1533:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i&&typeof i=="object"&&!!i.words}},2651:function(e,t,r){"use strict";var o=r(6859),a=r(2361);e.exports=i;function i(n){var s=a.exponent(n);return s<52?new o(n):new o(n*Math.pow(2,52-s)).ushln(s-52)}},869:function(e,t,r){"use strict";var o=r(2651),a=r(5716);e.exports=i;function i(n,s){var c=a(n),h=a(s);if(c===0)return[o(0),o(1)];if(h===0)return[o(0),o(0)];h<0&&(n=n.neg(),s=s.neg());var v=n.gcd(s);return v.cmpn(1)?[n.div(v),s.div(v)]:[n,s]}},6768:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return new o(i)}},6504:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[0]),i[1].mul(n[1]))}},7721:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){return o(i[0])*o(i[1])}},5572:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).sub(i[1].mul(n[0])),i[1].mul(n[1]))}},946:function(e,t,r){"use strict";var o=r(1369),a=r(4025);e.exports=i;function i(n){var s=n[0],c=n[1];if(s.cmpn(0)===0)return 0;var h=s.abs().divmod(c.abs()),v=h.div,p=o(v),T=h.mod,l=s.negative!==c.negative?-1:1;if(T.cmpn(0)===0)return l*p;if(p){var _=a(p)+4,w=o(T.ushln(_).divRound(c));return l*(p+w*Math.pow(2,-_))}else{var S=c.bitLength()-T.bitLength()+53,w=o(T.ushln(S).divRound(c));return S<1023?l*w*Math.pow(2,-S):(w*=Math.pow(2,-1023),l*w*Math.pow(2,1023-S))}}},2478:function(e){"use strict";function t(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>=0?(T=l,p=l-1):v=l+1}return T}function r(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>0?(T=l,p=l-1):v=l+1}return T}function o(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<0?(T=l,v=l+1):p=l-1}return T}function a(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<=0?(T=l,v=l+1):p=l-1}return T}function i(s,c,h,v,p){for(;v<=p;){var T=v+p>>>1,l=s[T],_=h!==void 0?h(l,c):l-c;if(_===0)return T;_<=0?v=T+1:p=T-1}return-1}function n(s,c,h,v,p,T){return typeof h=="function"?T(s,c,h,v===void 0?0:v|0,p===void 0?s.length-1:p|0):T(s,c,void 0,h===void 0?0:h|0,v===void 0?s.length-1:v|0)}e.exports={ge:function(s,c,h,v,p){return n(s,c,h,v,p,t)},gt:function(s,c,h,v,p){return n(s,c,h,v,p,r)},lt:function(s,c,h,v,p){return n(s,c,h,v,p,o)},le:function(s,c,h,v,p){return n(s,c,h,v,p,a)},eq:function(s,c,h,v,p){return n(s,c,h,v,p,i)}}},8828:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<<r-1,t.sign=function(i){return(i>0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i<n)},t.max=function(i,n){return i^(i^n)&-(i<n)},t.isPow2=function(i){return!(i&i-1)&&!!i},t.log2=function(i){var n,s;return n=(i>65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<<h&255}})(a),t.reverse=function(i){return a[i&255]<<24|a[i>>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},6859:function(e,t,r){e=r.nmd(e),function(o,a){"use strict";function i(O,I){if(!O)throw new Error(I||"Assertion failed")}function n(O,I){O.super_=I;var N=function(){};N.prototype=I.prototype,O.prototype=new N,O.prototype.constructor=O}function s(O,I,N){if(s.isBN(O))return O;this.negative=0,this.words=null,this.length=0,this.red=null,O!==null&&((I==="le"||I==="be")&&(N=I,I=10),this._init(O||0,I||10,N||"be"))}typeof o=="object"?o.exports=s:a.BN=s,s.BN=s,s.wordSize=26;var c;try{typeof window<"u"&&typeof window.Buffer<"u"?c=window.Buffer:c=r(7790).Buffer}catch{}s.isBN=function(I){return I instanceof s?!0:I!==null&&typeof I=="object"&&I.constructor.wordSize===s.wordSize&&Array.isArray(I.words)},s.max=function(I,N){return I.cmp(N)>0?I:N},s.min=function(I,N){return I.cmp(N)<0?I:N},s.prototype._init=function(I,N,U){if(typeof I=="number")return this._initNumber(I,N,U);if(typeof I=="object")return this._initArray(I,N,U);N==="hex"&&(N=16),i(N===(N|0)&&N>=2&&N<=36),I=I.toString().replace(/\s+/g,"");var W=0;I[0]==="-"&&(W++,this.negative=1),W<I.length&&(N===16?this._parseHex(I,W,U):(this._parseBase(I,N,W),U==="le"&&this._initArray(this.toArray(),N,U)))},s.prototype._initNumber=function(I,N,U){I<0&&(this.negative=1,I=-I),I<67108864?(this.words=[I&67108863],this.length=1):I<4503599627370496?(this.words=[I&67108863,I/67108864&67108863],this.length=2):(i(I<9007199254740992),this.words=[I&67108863,I/67108864&67108863,1],this.length=3),U==="le"&&this._initArray(this.toArray(),N,U)},s.prototype._initArray=function(I,N,U){if(i(typeof I.length=="number"),I.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(I.length/3),this.words=new Array(this.length);for(var W=0;W<this.length;W++)this.words[W]=0;var Q,ue,se=0;if(U==="be")for(W=I.length-1,Q=0;W>=0;W-=3)ue=I[W]|I[W-1]<<8|I[W-2]<<16,this.words[Q]|=ue<<se&67108863,this.words[Q+1]=ue>>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);else if(U==="le")for(W=0,Q=0;W<I.length;W+=3)ue=I[W]|I[W+1]<<8|I[W+2]<<16,this.words[Q]|=ue<<se&67108863,this.words[Q+1]=ue>>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);return this.strip()};function h(O,I){var N=O.charCodeAt(I);return N>=65&&N<=70?N-55:N>=97&&N<=102?N-87:N-48&15}function v(O,I,N){var U=h(O,N);return N-1>=I&&(U|=h(O,N-1)<<4),U}s.prototype._parseHex=function(I,N,U){this.length=Math.ceil((I.length-N)/6),this.words=new Array(this.length);for(var W=0;W<this.length;W++)this.words[W]=0;var Q=0,ue=0,se;if(U==="be")for(W=I.length-1;W>=N;W-=2)se=v(I,N,W)<<Q,this.words[ue]|=se&67108863,Q>=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8;else{var he=I.length-N;for(W=he%2===0?N+1:N;W<I.length;W+=2)se=v(I,N,W)<<Q,this.words[ue]|=se&67108863,Q>=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8}this.strip()};function p(O,I,N,U){for(var W=0,Q=Math.min(O.length,N),ue=I;ue<Q;ue++){var se=O.charCodeAt(ue)-48;W*=U,se>=49?W+=se-49+10:se>=17?W+=se-17+10:W+=se}return W}s.prototype._parseBase=function(I,N,U){this.words=[0],this.length=1;for(var W=0,Q=1;Q<=67108863;Q*=N)W++;W--,Q=Q/N|0;for(var ue=I.length-U,se=ue%W,he=Math.min(ue,ue-se)+U,G=0,$=U;$<he;$+=W)G=p(I,$,$+W,N),this.imuln(Q),this.words[0]+G<67108864?this.words[0]+=G:this._iaddn(G);if(se!==0){var J=1;for(G=p(I,$,I.length,N),$=0;$<se;$++)J*=N;this.imuln(J),this.words[0]+G<67108864?this.words[0]+=G:this._iaddn(G)}this.strip()},s.prototype.copy=function(I){I.words=new Array(this.length);for(var N=0;N<this.length;N++)I.words[N]=this.words[N];I.length=this.length,I.negative=this.negative,I.red=this.red},s.prototype.clone=function(){var I=new s(null);return this.copy(I),I},s.prototype._expand=function(I){for(;this.length<I;)this.words[this.length++]=0;return this},s.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},s.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},s.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],_=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];s.prototype.toString=function(I,N){I=I||10,N=N|0||1;var U;if(I===16||I==="hex"){U="";for(var W=0,Q=0,ue=0;ue<this.length;ue++){var se=this.words[ue],he=((se<<W|Q)&16777215).toString(16);Q=se>>>24-W&16777215,Q!==0||ue!==this.length-1?U=T[6-he.length]+he+U:U=he+U,W+=2,W>=26&&(W-=26,ue--)}for(Q!==0&&(U=Q.toString(16)+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}if(I===(I|0)&&I>=2&&I<=36){var G=l[I],$=_[I];U="";var J=this.clone();for(J.negative=0;!J.isZero();){var Z=J.modn($).toString(I);J=J.idivn($),J.isZero()?U=Z+U:U=T[G-Z.length]+Z+U}for(this.isZero()&&(U="0"+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}i(!1,"Base should be between 2 and 36")},s.prototype.toNumber=function(){var I=this.words[0];return this.length===2?I+=this.words[1]*67108864:this.length===3&&this.words[2]===1?I+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-I:I},s.prototype.toJSON=function(){return this.toString(16)},s.prototype.toBuffer=function(I,N){return i(typeof c<"u"),this.toArrayLike(c,I,N)},s.prototype.toArray=function(I,N){return this.toArrayLike(Array,I,N)},s.prototype.toArrayLike=function(I,N,U){var W=this.byteLength(),Q=U||Math.max(1,W);i(W<=Q,"byte array longer than desired length"),i(Q>0,"Requested array length <= 0"),this.strip();var ue=N==="le",se=new I(Q),he,G,$=this.clone();if(ue){for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[G]=he;for(;G<Q;G++)se[G]=0}else{for(G=0;G<Q-W;G++)se[G]=0;for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[Q-G-1]=he}return se},Math.clz32?s.prototype._countBits=function(I){return 32-Math.clz32(I)}:s.prototype._countBits=function(I){var N=I,U=0;return N>=4096&&(U+=13,N>>>=13),N>=64&&(U+=7,N>>>=7),N>=8&&(U+=4,N>>>=4),N>=2&&(U+=2,N>>>=2),U+N},s.prototype._zeroBits=function(I){if(I===0)return 26;var N=I,U=0;return N&8191||(U+=13,N>>>=13),N&127||(U+=7,N>>>=7),N&15||(U+=4,N>>>=4),N&3||(U+=2,N>>>=2),N&1||U++,U},s.prototype.bitLength=function(){var I=this.words[this.length-1],N=this._countBits(I);return(this.length-1)*26+N};function w(O){for(var I=new Array(O.bitLength()),N=0;N<I.length;N++){var U=N/26|0,W=N%26;I[N]=(O.words[U]&1<<W)>>>W}return I}s.prototype.zeroBits=function(){if(this.isZero())return 0;for(var I=0,N=0;N<this.length;N++){var U=this._zeroBits(this.words[N]);if(I+=U,U!==26)break}return I},s.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},s.prototype.toTwos=function(I){return this.negative!==0?this.abs().inotn(I).iaddn(1):this.clone()},s.prototype.fromTwos=function(I){return this.testn(I-1)?this.notn(I).iaddn(1).ineg():this.clone()},s.prototype.isNeg=function(){return this.negative!==0},s.prototype.neg=function(){return this.clone().ineg()},s.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},s.prototype.iuor=function(I){for(;this.length<I.length;)this.words[this.length++]=0;for(var N=0;N<I.length;N++)this.words[N]=this.words[N]|I.words[N];return this.strip()},s.prototype.ior=function(I){return i((this.negative|I.negative)===0),this.iuor(I)},s.prototype.or=function(I){return this.length>I.length?this.clone().ior(I):I.clone().ior(this)},s.prototype.uor=function(I){return this.length>I.length?this.clone().iuor(I):I.clone().iuor(this)},s.prototype.iuand=function(I){var N;this.length>I.length?N=I:N=this;for(var U=0;U<N.length;U++)this.words[U]=this.words[U]&I.words[U];return this.length=N.length,this.strip()},s.prototype.iand=function(I){return i((this.negative|I.negative)===0),this.iuand(I)},s.prototype.and=function(I){return this.length>I.length?this.clone().iand(I):I.clone().iand(this)},s.prototype.uand=function(I){return this.length>I.length?this.clone().iuand(I):I.clone().iuand(this)},s.prototype.iuxor=function(I){var N,U;this.length>I.length?(N=this,U=I):(N=I,U=this);for(var W=0;W<U.length;W++)this.words[W]=N.words[W]^U.words[W];if(this!==N)for(;W<N.length;W++)this.words[W]=N.words[W];return this.length=N.length,this.strip()},s.prototype.ixor=function(I){return i((this.negative|I.negative)===0),this.iuxor(I)},s.prototype.xor=function(I){return this.length>I.length?this.clone().ixor(I):I.clone().ixor(this)},s.prototype.uxor=function(I){return this.length>I.length?this.clone().iuxor(I):I.clone().iuxor(this)},s.prototype.inotn=function(I){i(typeof I=="number"&&I>=0);var N=Math.ceil(I/26)|0,U=I%26;this._expand(N),U>0&&N--;for(var W=0;W<N;W++)this.words[W]=~this.words[W]&67108863;return U>0&&(this.words[W]=~this.words[W]&67108863>>26-U),this.strip()},s.prototype.notn=function(I){return this.clone().inotn(I)},s.prototype.setn=function(I,N){i(typeof I=="number"&&I>=0);var U=I/26|0,W=I%26;return this._expand(U+1),N?this.words[U]=this.words[U]|1<<W:this.words[U]=this.words[U]&~(1<<W),this.strip()},s.prototype.iadd=function(I){var N;if(this.negative!==0&&I.negative===0)return this.negative=0,N=this.isub(I),this.negative^=1,this._normSign();if(this.negative===0&&I.negative!==0)return I.negative=0,N=this.isub(I),I.negative=1,N._normSign();var U,W;this.length>I.length?(U=this,W=I):(U=I,W=this);for(var Q=0,ue=0;ue<W.length;ue++)N=(U.words[ue]|0)+(W.words[ue]|0)+Q,this.words[ue]=N&67108863,Q=N>>>26;for(;Q!==0&&ue<U.length;ue++)N=(U.words[ue]|0)+Q,this.words[ue]=N&67108863,Q=N>>>26;if(this.length=U.length,Q!==0)this.words[this.length]=Q,this.length++;else if(U!==this)for(;ue<U.length;ue++)this.words[ue]=U.words[ue];return this},s.prototype.add=function(I){var N;return I.negative!==0&&this.negative===0?(I.negative=0,N=this.sub(I),I.negative^=1,N):I.negative===0&&this.negative!==0?(this.negative=0,N=I.sub(this),this.negative=1,N):this.length>I.length?this.clone().iadd(I):I.clone().iadd(this)},s.prototype.isub=function(I){if(I.negative!==0){I.negative=0;var N=this.iadd(I);return I.negative=1,N._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(I),this.negative=1,this._normSign();var U=this.cmp(I);if(U===0)return this.negative=0,this.length=1,this.words[0]=0,this;var W,Q;U>0?(W=this,Q=I):(W=I,Q=this);for(var ue=0,se=0;se<Q.length;se++)N=(W.words[se]|0)-(Q.words[se]|0)+ue,ue=N>>26,this.words[se]=N&67108863;for(;ue!==0&&se<W.length;se++)N=(W.words[se]|0)+ue,ue=N>>26,this.words[se]=N&67108863;if(ue===0&&se<W.length&&W!==this)for(;se<W.length;se++)this.words[se]=W.words[se];return this.length=Math.max(this.length,se),W!==this&&(this.negative=1),this.strip()},s.prototype.sub=function(I){return this.clone().isub(I)};function S(O,I,N){N.negative=I.negative^O.negative;var U=O.length+I.length|0;N.length=U,U=U-1|0;var W=O.words[0]|0,Q=I.words[0]|0,ue=W*Q,se=ue&67108863,he=ue/67108864|0;N.words[0]=se;for(var G=1;G<U;G++){for(var $=he>>>26,J=he&67108863,Z=Math.min(G,I.length-1),re=Math.max(0,G-O.length+1);re<=Z;re++){var ne=G-re|0;W=O.words[ne]|0,Q=I.words[re]|0,ue=W*Q+J,$+=ue/67108864|0,J=ue&67108863}N.words[G]=J|0,he=$|0}return he!==0?N.words[G]=he|0:N.length--,N.strip()}var E=function(I,N,U){var W=I.words,Q=N.words,ue=U.words,se=0,he,G,$,J=W[0]|0,Z=J&8191,re=J>>>13,ne=W[1]|0,j=ne&8191,ee=ne>>>13,ie=W[2]|0,fe=ie&8191,be=ie>>>13,Ae=W[3]|0,Be=Ae&8191,Ie=Ae>>>13,Ze=W[4]|0,at=Ze&8191,it=Ze>>>13,et=W[5]|0,lt=et&8191,Me=et>>>13,ge=W[6]|0,ce=ge&8191,ze=ge>>>13,tt=W[7]|0,nt=tt&8191,Qe=tt>>>13,Ct=W[8]|0,St=Ct&8191,Ot=Ct>>>13,jt=W[9]|0,ur=jt&8191,ar=jt>>>13,Cr=Q[0]|0,vr=Cr&8191,_r=Cr>>>13,yt=Q[1]|0,Fe=yt&8191,Ke=yt>>>13,Ne=Q[2]|0,Ee=Ne&8191,Ve=Ne>>>13,ke=Q[3]|0,Te=ke&8191,Le=ke>>>13,rt=Q[4]|0,dt=rt&8191,xt=rt>>>13,It=Q[5]|0,Bt=It&8191,Gt=It>>>13,Kt=Q[6]|0,sr=Kt&8191,sa=Kt>>>13,Aa=Q[7]|0,La=Aa&8191,ka=Aa>>>13,Ga=Q[8]|0,Ma=Ga&8191,Ua=Ga>>>13,ni=Q[9]|0,Wt=ni&8191,zt=ni>>>13;U.negative=I.negative^N.negative,U.length=19,he=Math.imul(Z,vr),G=Math.imul(Z,_r),G=G+Math.imul(re,vr)|0,$=Math.imul(re,_r);var Vt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,he=Math.imul(j,vr),G=Math.imul(j,_r),G=G+Math.imul(ee,vr)|0,$=Math.imul(ee,_r),he=he+Math.imul(Z,Fe)|0,G=G+Math.imul(Z,Ke)|0,G=G+Math.imul(re,Fe)|0,$=$+Math.imul(re,Ke)|0;var Ut=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ut>>>26)|0,Ut&=67108863,he=Math.imul(fe,vr),G=Math.imul(fe,_r),G=G+Math.imul(be,vr)|0,$=Math.imul(be,_r),he=he+Math.imul(j,Fe)|0,G=G+Math.imul(j,Ke)|0,G=G+Math.imul(ee,Fe)|0,$=$+Math.imul(ee,Ke)|0,he=he+Math.imul(Z,Ee)|0,G=G+Math.imul(Z,Ve)|0,G=G+Math.imul(re,Ee)|0,$=$+Math.imul(re,Ve)|0;var xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(xr>>>26)|0,xr&=67108863,he=Math.imul(Be,vr),G=Math.imul(Be,_r),G=G+Math.imul(Ie,vr)|0,$=Math.imul(Ie,_r),he=he+Math.imul(fe,Fe)|0,G=G+Math.imul(fe,Ke)|0,G=G+Math.imul(be,Fe)|0,$=$+Math.imul(be,Ke)|0,he=he+Math.imul(j,Ee)|0,G=G+Math.imul(j,Ve)|0,G=G+Math.imul(ee,Ee)|0,$=$+Math.imul(ee,Ve)|0,he=he+Math.imul(Z,Te)|0,G=G+Math.imul(Z,Le)|0,G=G+Math.imul(re,Te)|0,$=$+Math.imul(re,Le)|0;var Zr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,he=Math.imul(at,vr),G=Math.imul(at,_r),G=G+Math.imul(it,vr)|0,$=Math.imul(it,_r),he=he+Math.imul(Be,Fe)|0,G=G+Math.imul(Be,Ke)|0,G=G+Math.imul(Ie,Fe)|0,$=$+Math.imul(Ie,Ke)|0,he=he+Math.imul(fe,Ee)|0,G=G+Math.imul(fe,Ve)|0,G=G+Math.imul(be,Ee)|0,$=$+Math.imul(be,Ve)|0,he=he+Math.imul(j,Te)|0,G=G+Math.imul(j,Le)|0,G=G+Math.imul(ee,Te)|0,$=$+Math.imul(ee,Le)|0,he=he+Math.imul(Z,dt)|0,G=G+Math.imul(Z,xt)|0,G=G+Math.imul(re,dt)|0,$=$+Math.imul(re,xt)|0;var pa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(pa>>>26)|0,pa&=67108863,he=Math.imul(lt,vr),G=Math.imul(lt,_r),G=G+Math.imul(Me,vr)|0,$=Math.imul(Me,_r),he=he+Math.imul(at,Fe)|0,G=G+Math.imul(at,Ke)|0,G=G+Math.imul(it,Fe)|0,$=$+Math.imul(it,Ke)|0,he=he+Math.imul(Be,Ee)|0,G=G+Math.imul(Be,Ve)|0,G=G+Math.imul(Ie,Ee)|0,$=$+Math.imul(Ie,Ve)|0,he=he+Math.imul(fe,Te)|0,G=G+Math.imul(fe,Le)|0,G=G+Math.imul(be,Te)|0,$=$+Math.imul(be,Le)|0,he=he+Math.imul(j,dt)|0,G=G+Math.imul(j,xt)|0,G=G+Math.imul(ee,dt)|0,$=$+Math.imul(ee,xt)|0,he=he+Math.imul(Z,Bt)|0,G=G+Math.imul(Z,Gt)|0,G=G+Math.imul(re,Bt)|0,$=$+Math.imul(re,Gt)|0;var Xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,he=Math.imul(ce,vr),G=Math.imul(ce,_r),G=G+Math.imul(ze,vr)|0,$=Math.imul(ze,_r),he=he+Math.imul(lt,Fe)|0,G=G+Math.imul(lt,Ke)|0,G=G+Math.imul(Me,Fe)|0,$=$+Math.imul(Me,Ke)|0,he=he+Math.imul(at,Ee)|0,G=G+Math.imul(at,Ve)|0,G=G+Math.imul(it,Ee)|0,$=$+Math.imul(it,Ve)|0,he=he+Math.imul(Be,Te)|0,G=G+Math.imul(Be,Le)|0,G=G+Math.imul(Ie,Te)|0,$=$+Math.imul(Ie,Le)|0,he=he+Math.imul(fe,dt)|0,G=G+Math.imul(fe,xt)|0,G=G+Math.imul(be,dt)|0,$=$+Math.imul(be,xt)|0,he=he+Math.imul(j,Bt)|0,G=G+Math.imul(j,Gt)|0,G=G+Math.imul(ee,Bt)|0,$=$+Math.imul(ee,Gt)|0,he=he+Math.imul(Z,sr)|0,G=G+Math.imul(Z,sa)|0,G=G+Math.imul(re,sr)|0,$=$+Math.imul(re,sa)|0;var Ea=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ea>>>26)|0,Ea&=67108863,he=Math.imul(nt,vr),G=Math.imul(nt,_r),G=G+Math.imul(Qe,vr)|0,$=Math.imul(Qe,_r),he=he+Math.imul(ce,Fe)|0,G=G+Math.imul(ce,Ke)|0,G=G+Math.imul(ze,Fe)|0,$=$+Math.imul(ze,Ke)|0,he=he+Math.imul(lt,Ee)|0,G=G+Math.imul(lt,Ve)|0,G=G+Math.imul(Me,Ee)|0,$=$+Math.imul(Me,Ve)|0,he=he+Math.imul(at,Te)|0,G=G+Math.imul(at,Le)|0,G=G+Math.imul(it,Te)|0,$=$+Math.imul(it,Le)|0,he=he+Math.imul(Be,dt)|0,G=G+Math.imul(Be,xt)|0,G=G+Math.imul(Ie,dt)|0,$=$+Math.imul(Ie,xt)|0,he=he+Math.imul(fe,Bt)|0,G=G+Math.imul(fe,Gt)|0,G=G+Math.imul(be,Bt)|0,$=$+Math.imul(be,Gt)|0,he=he+Math.imul(j,sr)|0,G=G+Math.imul(j,sa)|0,G=G+Math.imul(ee,sr)|0,$=$+Math.imul(ee,sa)|0,he=he+Math.imul(Z,La)|0,G=G+Math.imul(Z,ka)|0,G=G+Math.imul(re,La)|0,$=$+Math.imul(re,ka)|0;var Fa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,he=Math.imul(St,vr),G=Math.imul(St,_r),G=G+Math.imul(Ot,vr)|0,$=Math.imul(Ot,_r),he=he+Math.imul(nt,Fe)|0,G=G+Math.imul(nt,Ke)|0,G=G+Math.imul(Qe,Fe)|0,$=$+Math.imul(Qe,Ke)|0,he=he+Math.imul(ce,Ee)|0,G=G+Math.imul(ce,Ve)|0,G=G+Math.imul(ze,Ee)|0,$=$+Math.imul(ze,Ve)|0,he=he+Math.imul(lt,Te)|0,G=G+Math.imul(lt,Le)|0,G=G+Math.imul(Me,Te)|0,$=$+Math.imul(Me,Le)|0,he=he+Math.imul(at,dt)|0,G=G+Math.imul(at,xt)|0,G=G+Math.imul(it,dt)|0,$=$+Math.imul(it,xt)|0,he=he+Math.imul(Be,Bt)|0,G=G+Math.imul(Be,Gt)|0,G=G+Math.imul(Ie,Bt)|0,$=$+Math.imul(Ie,Gt)|0,he=he+Math.imul(fe,sr)|0,G=G+Math.imul(fe,sa)|0,G=G+Math.imul(be,sr)|0,$=$+Math.imul(be,sa)|0,he=he+Math.imul(j,La)|0,G=G+Math.imul(j,ka)|0,G=G+Math.imul(ee,La)|0,$=$+Math.imul(ee,ka)|0,he=he+Math.imul(Z,Ma)|0,G=G+Math.imul(Z,Ua)|0,G=G+Math.imul(re,Ma)|0,$=$+Math.imul(re,Ua)|0;var qa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(qa>>>26)|0,qa&=67108863,he=Math.imul(ur,vr),G=Math.imul(ur,_r),G=G+Math.imul(ar,vr)|0,$=Math.imul(ar,_r),he=he+Math.imul(St,Fe)|0,G=G+Math.imul(St,Ke)|0,G=G+Math.imul(Ot,Fe)|0,$=$+Math.imul(Ot,Ke)|0,he=he+Math.imul(nt,Ee)|0,G=G+Math.imul(nt,Ve)|0,G=G+Math.imul(Qe,Ee)|0,$=$+Math.imul(Qe,Ve)|0,he=he+Math.imul(ce,Te)|0,G=G+Math.imul(ce,Le)|0,G=G+Math.imul(ze,Te)|0,$=$+Math.imul(ze,Le)|0,he=he+Math.imul(lt,dt)|0,G=G+Math.imul(lt,xt)|0,G=G+Math.imul(Me,dt)|0,$=$+Math.imul(Me,xt)|0,he=he+Math.imul(at,Bt)|0,G=G+Math.imul(at,Gt)|0,G=G+Math.imul(it,Bt)|0,$=$+Math.imul(it,Gt)|0,he=he+Math.imul(Be,sr)|0,G=G+Math.imul(Be,sa)|0,G=G+Math.imul(Ie,sr)|0,$=$+Math.imul(Ie,sa)|0,he=he+Math.imul(fe,La)|0,G=G+Math.imul(fe,ka)|0,G=G+Math.imul(be,La)|0,$=$+Math.imul(be,ka)|0,he=he+Math.imul(j,Ma)|0,G=G+Math.imul(j,Ua)|0,G=G+Math.imul(ee,Ma)|0,$=$+Math.imul(ee,Ua)|0,he=he+Math.imul(Z,Wt)|0,G=G+Math.imul(Z,zt)|0,G=G+Math.imul(re,Wt)|0,$=$+Math.imul(re,zt)|0;var ya=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(ya>>>26)|0,ya&=67108863,he=Math.imul(ur,Fe),G=Math.imul(ur,Ke),G=G+Math.imul(ar,Fe)|0,$=Math.imul(ar,Ke),he=he+Math.imul(St,Ee)|0,G=G+Math.imul(St,Ve)|0,G=G+Math.imul(Ot,Ee)|0,$=$+Math.imul(Ot,Ve)|0,he=he+Math.imul(nt,Te)|0,G=G+Math.imul(nt,Le)|0,G=G+Math.imul(Qe,Te)|0,$=$+Math.imul(Qe,Le)|0,he=he+Math.imul(ce,dt)|0,G=G+Math.imul(ce,xt)|0,G=G+Math.imul(ze,dt)|0,$=$+Math.imul(ze,xt)|0,he=he+Math.imul(lt,Bt)|0,G=G+Math.imul(lt,Gt)|0,G=G+Math.imul(Me,Bt)|0,$=$+Math.imul(Me,Gt)|0,he=he+Math.imul(at,sr)|0,G=G+Math.imul(at,sa)|0,G=G+Math.imul(it,sr)|0,$=$+Math.imul(it,sa)|0,he=he+Math.imul(Be,La)|0,G=G+Math.imul(Be,ka)|0,G=G+Math.imul(Ie,La)|0,$=$+Math.imul(Ie,ka)|0,he=he+Math.imul(fe,Ma)|0,G=G+Math.imul(fe,Ua)|0,G=G+Math.imul(be,Ma)|0,$=$+Math.imul(be,Ua)|0,he=he+Math.imul(j,Wt)|0,G=G+Math.imul(j,zt)|0,G=G+Math.imul(ee,Wt)|0,$=$+Math.imul(ee,zt)|0;var $a=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+($a>>>26)|0,$a&=67108863,he=Math.imul(ur,Ee),G=Math.imul(ur,Ve),G=G+Math.imul(ar,Ee)|0,$=Math.imul(ar,Ve),he=he+Math.imul(St,Te)|0,G=G+Math.imul(St,Le)|0,G=G+Math.imul(Ot,Te)|0,$=$+Math.imul(Ot,Le)|0,he=he+Math.imul(nt,dt)|0,G=G+Math.imul(nt,xt)|0,G=G+Math.imul(Qe,dt)|0,$=$+Math.imul(Qe,xt)|0,he=he+Math.imul(ce,Bt)|0,G=G+Math.imul(ce,Gt)|0,G=G+Math.imul(ze,Bt)|0,$=$+Math.imul(ze,Gt)|0,he=he+Math.imul(lt,sr)|0,G=G+Math.imul(lt,sa)|0,G=G+Math.imul(Me,sr)|0,$=$+Math.imul(Me,sa)|0,he=he+Math.imul(at,La)|0,G=G+Math.imul(at,ka)|0,G=G+Math.imul(it,La)|0,$=$+Math.imul(it,ka)|0,he=he+Math.imul(Be,Ma)|0,G=G+Math.imul(Be,Ua)|0,G=G+Math.imul(Ie,Ma)|0,$=$+Math.imul(Ie,Ua)|0,he=he+Math.imul(fe,Wt)|0,G=G+Math.imul(fe,zt)|0,G=G+Math.imul(be,Wt)|0,$=$+Math.imul(be,zt)|0;var mt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(mt>>>26)|0,mt&=67108863,he=Math.imul(ur,Te),G=Math.imul(ur,Le),G=G+Math.imul(ar,Te)|0,$=Math.imul(ar,Le),he=he+Math.imul(St,dt)|0,G=G+Math.imul(St,xt)|0,G=G+Math.imul(Ot,dt)|0,$=$+Math.imul(Ot,xt)|0,he=he+Math.imul(nt,Bt)|0,G=G+Math.imul(nt,Gt)|0,G=G+Math.imul(Qe,Bt)|0,$=$+Math.imul(Qe,Gt)|0,he=he+Math.imul(ce,sr)|0,G=G+Math.imul(ce,sa)|0,G=G+Math.imul(ze,sr)|0,$=$+Math.imul(ze,sa)|0,he=he+Math.imul(lt,La)|0,G=G+Math.imul(lt,ka)|0,G=G+Math.imul(Me,La)|0,$=$+Math.imul(Me,ka)|0,he=he+Math.imul(at,Ma)|0,G=G+Math.imul(at,Ua)|0,G=G+Math.imul(it,Ma)|0,$=$+Math.imul(it,Ua)|0,he=he+Math.imul(Be,Wt)|0,G=G+Math.imul(Be,zt)|0,G=G+Math.imul(Ie,Wt)|0,$=$+Math.imul(Ie,zt)|0;var gt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(gt>>>26)|0,gt&=67108863,he=Math.imul(ur,dt),G=Math.imul(ur,xt),G=G+Math.imul(ar,dt)|0,$=Math.imul(ar,xt),he=he+Math.imul(St,Bt)|0,G=G+Math.imul(St,Gt)|0,G=G+Math.imul(Ot,Bt)|0,$=$+Math.imul(Ot,Gt)|0,he=he+Math.imul(nt,sr)|0,G=G+Math.imul(nt,sa)|0,G=G+Math.imul(Qe,sr)|0,$=$+Math.imul(Qe,sa)|0,he=he+Math.imul(ce,La)|0,G=G+Math.imul(ce,ka)|0,G=G+Math.imul(ze,La)|0,$=$+Math.imul(ze,ka)|0,he=he+Math.imul(lt,Ma)|0,G=G+Math.imul(lt,Ua)|0,G=G+Math.imul(Me,Ma)|0,$=$+Math.imul(Me,Ua)|0,he=he+Math.imul(at,Wt)|0,G=G+Math.imul(at,zt)|0,G=G+Math.imul(it,Wt)|0,$=$+Math.imul(it,zt)|0;var Er=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Er>>>26)|0,Er&=67108863,he=Math.imul(ur,Bt),G=Math.imul(ur,Gt),G=G+Math.imul(ar,Bt)|0,$=Math.imul(ar,Gt),he=he+Math.imul(St,sr)|0,G=G+Math.imul(St,sa)|0,G=G+Math.imul(Ot,sr)|0,$=$+Math.imul(Ot,sa)|0,he=he+Math.imul(nt,La)|0,G=G+Math.imul(nt,ka)|0,G=G+Math.imul(Qe,La)|0,$=$+Math.imul(Qe,ka)|0,he=he+Math.imul(ce,Ma)|0,G=G+Math.imul(ce,Ua)|0,G=G+Math.imul(ze,Ma)|0,$=$+Math.imul(ze,Ua)|0,he=he+Math.imul(lt,Wt)|0,G=G+Math.imul(lt,zt)|0,G=G+Math.imul(Me,Wt)|0,$=$+Math.imul(Me,zt)|0;var kr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(kr>>>26)|0,kr&=67108863,he=Math.imul(ur,sr),G=Math.imul(ur,sa),G=G+Math.imul(ar,sr)|0,$=Math.imul(ar,sa),he=he+Math.imul(St,La)|0,G=G+Math.imul(St,ka)|0,G=G+Math.imul(Ot,La)|0,$=$+Math.imul(Ot,ka)|0,he=he+Math.imul(nt,Ma)|0,G=G+Math.imul(nt,Ua)|0,G=G+Math.imul(Qe,Ma)|0,$=$+Math.imul(Qe,Ua)|0,he=he+Math.imul(ce,Wt)|0,G=G+Math.imul(ce,zt)|0,G=G+Math.imul(ze,Wt)|0,$=$+Math.imul(ze,zt)|0;var br=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(br>>>26)|0,br&=67108863,he=Math.imul(ur,La),G=Math.imul(ur,ka),G=G+Math.imul(ar,La)|0,$=Math.imul(ar,ka),he=he+Math.imul(St,Ma)|0,G=G+Math.imul(St,Ua)|0,G=G+Math.imul(Ot,Ma)|0,$=$+Math.imul(Ot,Ua)|0,he=he+Math.imul(nt,Wt)|0,G=G+Math.imul(nt,zt)|0,G=G+Math.imul(Qe,Wt)|0,$=$+Math.imul(Qe,zt)|0;var Tr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Tr>>>26)|0,Tr&=67108863,he=Math.imul(ur,Ma),G=Math.imul(ur,Ua),G=G+Math.imul(ar,Ma)|0,$=Math.imul(ar,Ua),he=he+Math.imul(St,Wt)|0,G=G+Math.imul(St,zt)|0,G=G+Math.imul(Ot,Wt)|0,$=$+Math.imul(Ot,zt)|0;var Mr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,he=Math.imul(ur,Wt),G=Math.imul(ur,zt),G=G+Math.imul(ar,Wt)|0,$=Math.imul(ar,zt);var Fr=(se+he|0)+((G&8191)<<13)|0;return se=($+(G>>>13)|0)+(Fr>>>26)|0,Fr&=67108863,ue[0]=Vt,ue[1]=Ut,ue[2]=xr,ue[3]=Zr,ue[4]=pa,ue[5]=Xr,ue[6]=Ea,ue[7]=Fa,ue[8]=qa,ue[9]=ya,ue[10]=$a,ue[11]=mt,ue[12]=gt,ue[13]=Er,ue[14]=kr,ue[15]=br,ue[16]=Tr,ue[17]=Mr,ue[18]=Fr,se!==0&&(ue[19]=se,U.length++),U};Math.imul||(E=S);function m(O,I,N){N.negative=I.negative^O.negative,N.length=O.length+I.length;for(var U=0,W=0,Q=0;Q<N.length-1;Q++){var ue=W;W=0;for(var se=U&67108863,he=Math.min(Q,I.length-1),G=Math.max(0,Q-O.length+1);G<=he;G++){var $=Q-G,J=O.words[$]|0,Z=I.words[G]|0,re=J*Z,ne=re&67108863;ue=ue+(re/67108864|0)|0,ne=ne+se|0,se=ne&67108863,ue=ue+(ne>>>26)|0,W+=ue>>>26,ue&=67108863}N.words[Q]=se,U=ue,ue=W}return U!==0?N.words[Q]=U:N.length--,N.strip()}function b(O,I,N){var U=new d;return U.mulp(O,I,N)}s.prototype.mulTo=function(I,N){var U,W=this.length+I.length;return this.length===10&&I.length===10?U=E(this,I,N):W<63?U=S(this,I,N):W<1024?U=m(this,I,N):U=b(this,I,N),U};function d(O,I){this.x=O,this.y=I}d.prototype.makeRBT=function(I){for(var N=new Array(I),U=s.prototype._countBits(I)-1,W=0;W<I;W++)N[W]=this.revBin(W,U,I);return N},d.prototype.revBin=function(I,N,U){if(I===0||I===U-1)return I;for(var W=0,Q=0;Q<N;Q++)W|=(I&1)<<N-Q-1,I>>=1;return W},d.prototype.permute=function(I,N,U,W,Q,ue){for(var se=0;se<ue;se++)W[se]=N[I[se]],Q[se]=U[I[se]]},d.prototype.transform=function(I,N,U,W,Q,ue){this.permute(ue,I,N,U,W,Q);for(var se=1;se<Q;se<<=1)for(var he=se<<1,G=Math.cos(2*Math.PI/he),$=Math.sin(2*Math.PI/he),J=0;J<Q;J+=he)for(var Z=G,re=$,ne=0;ne<se;ne++){var j=U[J+ne],ee=W[J+ne],ie=U[J+ne+se],fe=W[J+ne+se],be=Z*ie-re*fe;fe=Z*fe+re*ie,ie=be,U[J+ne]=j+ie,W[J+ne]=ee+fe,U[J+ne+se]=j-ie,W[J+ne+se]=ee-fe,ne!==he&&(be=G*Z-$*re,re=G*re+$*Z,Z=be)}},d.prototype.guessLen13b=function(I,N){var U=Math.max(N,I)|1,W=U&1,Q=0;for(U=U/2|0;U;U=U>>>1)Q++;return 1<<Q+1+W},d.prototype.conjugate=function(I,N,U){if(!(U<=1))for(var W=0;W<U/2;W++){var Q=I[W];I[W]=I[U-W-1],I[U-W-1]=Q,Q=N[W],N[W]=-N[U-W-1],N[U-W-1]=-Q}},d.prototype.normalize13b=function(I,N){for(var U=0,W=0;W<N/2;W++){var Q=Math.round(I[2*W+1]/N)*8192+Math.round(I[2*W]/N)+U;I[W]=Q&67108863,Q<67108864?U=0:U=Q/67108864|0}return I},d.prototype.convert13b=function(I,N,U,W){for(var Q=0,ue=0;ue<N;ue++)Q=Q+(I[ue]|0),U[2*ue]=Q&8191,Q=Q>>>13,U[2*ue+1]=Q&8191,Q=Q>>>13;for(ue=2*N;ue<W;++ue)U[ue]=0;i(Q===0),i((Q&-8192)===0)},d.prototype.stub=function(I){for(var N=new Array(I),U=0;U<I;U++)N[U]=0;return N},d.prototype.mulp=function(I,N,U){var W=2*this.guessLen13b(I.length,N.length),Q=this.makeRBT(W),ue=this.stub(W),se=new Array(W),he=new Array(W),G=new Array(W),$=new Array(W),J=new Array(W),Z=new Array(W),re=U.words;re.length=W,this.convert13b(I.words,I.length,se,W),this.convert13b(N.words,N.length,$,W),this.transform(se,ue,he,G,W,Q),this.transform($,ue,J,Z,W,Q);for(var ne=0;ne<W;ne++){var j=he[ne]*J[ne]-G[ne]*Z[ne];G[ne]=he[ne]*Z[ne]+G[ne]*J[ne],he[ne]=j}return this.conjugate(he,G,W),this.transform(he,G,re,ue,W,Q),this.conjugate(re,ue,W),this.normalize13b(re,W),U.negative=I.negative^N.negative,U.length=I.length+N.length,U.strip()},s.prototype.mul=function(I){var N=new s(null);return N.words=new Array(this.length+I.length),this.mulTo(I,N)},s.prototype.mulf=function(I){var N=new s(null);return N.words=new Array(this.length+I.length),b(this,I,N)},s.prototype.imul=function(I){return this.clone().mulTo(I,this)},s.prototype.imuln=function(I){i(typeof I=="number"),i(I<67108864);for(var N=0,U=0;U<this.length;U++){var W=(this.words[U]|0)*I,Q=(W&67108863)+(N&67108863);N>>=26,N+=W/67108864|0,N+=Q>>>26,this.words[U]=Q&67108863}return N!==0&&(this.words[U]=N,this.length++),this},s.prototype.muln=function(I){return this.clone().imuln(I)},s.prototype.sqr=function(){return this.mul(this)},s.prototype.isqr=function(){return this.imul(this.clone())},s.prototype.pow=function(I){var N=w(I);if(N.length===0)return new s(1);for(var U=this,W=0;W<N.length&&N[W]===0;W++,U=U.sqr());if(++W<N.length)for(var Q=U.sqr();W<N.length;W++,Q=Q.sqr())N[W]!==0&&(U=U.mul(Q));return U},s.prototype.iushln=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=67108863>>>26-N<<26-N,Q;if(N!==0){var ue=0;for(Q=0;Q<this.length;Q++){var se=this.words[Q]&W,he=(this.words[Q]|0)-se<<N;this.words[Q]=he|ue,ue=se>>>26-N}ue&&(this.words[Q]=ue,this.length++)}if(U!==0){for(Q=this.length-1;Q>=0;Q--)this.words[Q+U]=this.words[Q];for(Q=0;Q<U;Q++)this.words[Q]=0;this.length+=U}return this.strip()},s.prototype.ishln=function(I){return i(this.negative===0),this.iushln(I)},s.prototype.iushrn=function(I,N,U){i(typeof I=="number"&&I>=0);var W;N?W=(N-N%26)/26:W=0;var Q=I%26,ue=Math.min((I-Q)/26,this.length),se=67108863^67108863>>>Q<<Q,he=U;if(W-=ue,W=Math.max(0,W),he){for(var G=0;G<ue;G++)he.words[G]=this.words[G];he.length=ue}if(ue!==0)if(this.length>ue)for(this.length-=ue,G=0;G<this.length;G++)this.words[G]=this.words[G+ue];else this.words[0]=0,this.length=1;var $=0;for(G=this.length-1;G>=0&&($!==0||G>=W);G--){var J=this.words[G]|0;this.words[G]=$<<26-Q|J>>>Q,$=J&se}return he&&$!==0&&(he.words[he.length++]=$),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},s.prototype.ishrn=function(I,N,U){return i(this.negative===0),this.iushrn(I,N,U)},s.prototype.shln=function(I){return this.clone().ishln(I)},s.prototype.ushln=function(I){return this.clone().iushln(I)},s.prototype.shrn=function(I){return this.clone().ishrn(I)},s.prototype.ushrn=function(I){return this.clone().iushrn(I)},s.prototype.testn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=1<<N;if(this.length<=U)return!1;var Q=this.words[U];return!!(Q&W)},s.prototype.imaskn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=U)return this;if(N!==0&&U++,this.length=Math.min(U,this.length),N!==0){var W=67108863^67108863>>>N<<N;this.words[this.length-1]&=W}return this.strip()},s.prototype.maskn=function(I){return this.clone().imaskn(I)},s.prototype.iaddn=function(I){return i(typeof I=="number"),i(I<67108864),I<0?this.isubn(-I):this.negative!==0?this.length===1&&(this.words[0]|0)<I?(this.words[0]=I-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(I),this.negative=1,this):this._iaddn(I)},s.prototype._iaddn=function(I){this.words[0]+=I;for(var N=0;N<this.length&&this.words[N]>=67108864;N++)this.words[N]-=67108864,N===this.length-1?this.words[N+1]=1:this.words[N+1]++;return this.length=Math.max(this.length,N+1),this},s.prototype.isubn=function(I){if(i(typeof I=="number"),i(I<67108864),I<0)return this.iaddn(-I);if(this.negative!==0)return this.negative=0,this.iaddn(I),this.negative=1,this;if(this.words[0]-=I,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var N=0;N<this.length&&this.words[N]<0;N++)this.words[N]+=67108864,this.words[N+1]-=1;return this.strip()},s.prototype.addn=function(I){return this.clone().iaddn(I)},s.prototype.subn=function(I){return this.clone().isubn(I)},s.prototype.iabs=function(){return this.negative=0,this},s.prototype.abs=function(){return this.clone().iabs()},s.prototype._ishlnsubmul=function(I,N,U){var W=I.length+U,Q;this._expand(W);var ue,se=0;for(Q=0;Q<I.length;Q++){ue=(this.words[Q+U]|0)+se;var he=(I.words[Q]|0)*N;ue-=he&67108863,se=(ue>>26)-(he/67108864|0),this.words[Q+U]=ue&67108863}for(;Q<this.length-U;Q++)ue=(this.words[Q+U]|0)+se,se=ue>>26,this.words[Q+U]=ue&67108863;if(se===0)return this.strip();for(i(se===-1),se=0,Q=0;Q<this.length;Q++)ue=-(this.words[Q]|0)+se,se=ue>>26,this.words[Q]=ue&67108863;return this.negative=1,this.strip()},s.prototype._wordDiv=function(I,N){var U=this.length-I.length,W=this.clone(),Q=I,ue=Q.words[Q.length-1]|0,se=this._countBits(ue);U=26-se,U!==0&&(Q=Q.ushln(U),W.iushln(U),ue=Q.words[Q.length-1]|0);var he=W.length-Q.length,G;if(N!=="mod"){G=new s(null),G.length=he+1,G.words=new Array(G.length);for(var $=0;$<G.length;$++)G.words[$]=0}var J=W.clone()._ishlnsubmul(Q,1,he);J.negative===0&&(W=J,G&&(G.words[he]=1));for(var Z=he-1;Z>=0;Z--){var re=(W.words[Q.length+Z]|0)*67108864+(W.words[Q.length+Z-1]|0);for(re=Math.min(re/ue|0,67108863),W._ishlnsubmul(Q,re,Z);W.negative!==0;)re--,W.negative=0,W._ishlnsubmul(Q,1,Z),W.isZero()||(W.negative^=1);G&&(G.words[Z]=re)}return G&&G.strip(),W.strip(),N!=="div"&&U!==0&&W.iushrn(U),{div:G||null,mod:W}},s.prototype.divmod=function(I,N,U){if(i(!I.isZero()),this.isZero())return{div:new s(0),mod:new s(0)};var W,Q,ue;return this.negative!==0&&I.negative===0?(ue=this.neg().divmod(I,N),N!=="mod"&&(W=ue.div.neg()),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.iadd(I)),{div:W,mod:Q}):this.negative===0&&I.negative!==0?(ue=this.divmod(I.neg(),N),N!=="mod"&&(W=ue.div.neg()),{div:W,mod:ue.mod}):this.negative&I.negative?(ue=this.neg().divmod(I.neg(),N),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.isub(I)),{div:ue.div,mod:Q}):I.length>this.length||this.cmp(I)<0?{div:new s(0),mod:this}:I.length===1?N==="div"?{div:this.divn(I.words[0]),mod:null}:N==="mod"?{div:null,mod:new s(this.modn(I.words[0]))}:{div:this.divn(I.words[0]),mod:new s(this.modn(I.words[0]))}:this._wordDiv(I,N)},s.prototype.div=function(I){return this.divmod(I,"div",!1).div},s.prototype.mod=function(I){return this.divmod(I,"mod",!1).mod},s.prototype.umod=function(I){return this.divmod(I,"mod",!0).mod},s.prototype.divRound=function(I){var N=this.divmod(I);if(N.mod.isZero())return N.div;var U=N.div.negative!==0?N.mod.isub(I):N.mod,W=I.ushrn(1),Q=I.andln(1),ue=U.cmp(W);return ue<0||Q===1&&ue===0?N.div:N.div.negative!==0?N.div.isubn(1):N.div.iaddn(1)},s.prototype.modn=function(I){i(I<=67108863);for(var N=(1<<26)%I,U=0,W=this.length-1;W>=0;W--)U=(N*U+(this.words[W]|0))%I;return U},s.prototype.idivn=function(I){i(I<=67108863);for(var N=0,U=this.length-1;U>=0;U--){var W=(this.words[U]|0)+N*67108864;this.words[U]=W/I|0,N=W%I}return this.strip()},s.prototype.divn=function(I){return this.clone().idivn(I)},s.prototype.egcd=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=new s(0),se=new s(1),he=0;N.isEven()&&U.isEven();)N.iushrn(1),U.iushrn(1),++he;for(var G=U.clone(),$=N.clone();!N.isZero();){for(var J=0,Z=1;!(N.words[0]&Z)&&J<26;++J,Z<<=1);if(J>0)for(N.iushrn(J);J-- >0;)(W.isOdd()||Q.isOdd())&&(W.iadd(G),Q.isub($)),W.iushrn(1),Q.iushrn(1);for(var re=0,ne=1;!(U.words[0]&ne)&&re<26;++re,ne<<=1);if(re>0)for(U.iushrn(re);re-- >0;)(ue.isOdd()||se.isOdd())&&(ue.iadd(G),se.isub($)),ue.iushrn(1),se.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(ue),Q.isub(se)):(U.isub(N),ue.isub(W),se.isub(Q))}return{a:ue,b:se,gcd:U.iushln(he)}},s.prototype._invmp=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=U.clone();N.cmpn(1)>0&&U.cmpn(1)>0;){for(var se=0,he=1;!(N.words[0]&he)&&se<26;++se,he<<=1);if(se>0)for(N.iushrn(se);se-- >0;)W.isOdd()&&W.iadd(ue),W.iushrn(1);for(var G=0,$=1;!(U.words[0]&$)&&G<26;++G,$<<=1);if(G>0)for(U.iushrn(G);G-- >0;)Q.isOdd()&&Q.iadd(ue),Q.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(Q)):(U.isub(N),Q.isub(W))}var J;return N.cmpn(1)===0?J=W:J=Q,J.cmpn(0)<0&&J.iadd(I),J},s.prototype.gcd=function(I){if(this.isZero())return I.abs();if(I.isZero())return this.abs();var N=this.clone(),U=I.clone();N.negative=0,U.negative=0;for(var W=0;N.isEven()&&U.isEven();W++)N.iushrn(1),U.iushrn(1);do{for(;N.isEven();)N.iushrn(1);for(;U.isEven();)U.iushrn(1);var Q=N.cmp(U);if(Q<0){var ue=N;N=U,U=ue}else if(Q===0||U.cmpn(1)===0)break;N.isub(U)}while(!0);return U.iushln(W)},s.prototype.invm=function(I){return this.egcd(I).a.umod(I)},s.prototype.isEven=function(){return(this.words[0]&1)===0},s.prototype.isOdd=function(){return(this.words[0]&1)===1},s.prototype.andln=function(I){return this.words[0]&I},s.prototype.bincn=function(I){i(typeof I=="number");var N=I%26,U=(I-N)/26,W=1<<N;if(this.length<=U)return this._expand(U+1),this.words[U]|=W,this;for(var Q=W,ue=U;Q!==0&&ue<this.length;ue++){var se=this.words[ue]|0;se+=Q,Q=se>>>26,se&=67108863,this.words[ue]=se}return Q!==0&&(this.words[ue]=Q,this.length++),this},s.prototype.isZero=function(){return this.length===1&&this.words[0]===0},s.prototype.cmpn=function(I){var N=I<0;if(this.negative!==0&&!N)return-1;if(this.negative===0&&N)return 1;this.strip();var U;if(this.length>1)U=1;else{N&&(I=-I),i(I<=67108863,"Number is too big");var W=this.words[0]|0;U=W===I?0:W<I?-1:1}return this.negative!==0?-U|0:U},s.prototype.cmp=function(I){if(this.negative!==0&&I.negative===0)return-1;if(this.negative===0&&I.negative!==0)return 1;var N=this.ucmp(I);return this.negative!==0?-N|0:N},s.prototype.ucmp=function(I){if(this.length>I.length)return 1;if(this.length<I.length)return-1;for(var N=0,U=this.length-1;U>=0;U--){var W=this.words[U]|0,Q=I.words[U]|0;if(W!==Q){W<Q?N=-1:W>Q&&(N=1);break}}return N},s.prototype.gtn=function(I){return this.cmpn(I)===1},s.prototype.gt=function(I){return this.cmp(I)===1},s.prototype.gten=function(I){return this.cmpn(I)>=0},s.prototype.gte=function(I){return this.cmp(I)>=0},s.prototype.ltn=function(I){return this.cmpn(I)===-1},s.prototype.lt=function(I){return this.cmp(I)===-1},s.prototype.lten=function(I){return this.cmpn(I)<=0},s.prototype.lte=function(I){return this.cmp(I)<=0},s.prototype.eqn=function(I){return this.cmpn(I)===0},s.prototype.eq=function(I){return this.cmp(I)===0},s.red=function(I){return new F(I)},s.prototype.toRed=function(I){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),I.convertTo(this)._forceRed(I)},s.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},s.prototype._forceRed=function(I){return this.red=I,this},s.prototype.forceRed=function(I){return i(!this.red,"Already a number in reduction context"),this._forceRed(I)},s.prototype.redAdd=function(I){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,I)},s.prototype.redIAdd=function(I){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,I)},s.prototype.redSub=function(I){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,I)},s.prototype.redISub=function(I){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,I)},s.prototype.redShl=function(I){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,I)},s.prototype.redMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.mul(this,I)},s.prototype.redIMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.imul(this,I)},s.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},s.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},s.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},s.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},s.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},s.prototype.redPow=function(I){return i(this.red&&!I.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,I)};var u={k256:null,p224:null,p192:null,p25519:null};function y(O,I){this.name=O,this.p=new s(I,16),this.n=this.p.bitLength(),this.k=new s(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}y.prototype._tmp=function(){var I=new s(null);return I.words=new Array(Math.ceil(this.n/13)),I},y.prototype.ireduce=function(I){var N=I,U;do this.split(N,this.tmp),N=this.imulK(N),N=N.iadd(this.tmp),U=N.bitLength();while(U>this.n);var W=U<this.n?-1:N.ucmp(this.p);return W===0?(N.words[0]=0,N.length=1):W>0?N.isub(this.p):N.strip!==void 0?N.strip():N._strip(),N},y.prototype.split=function(I,N){I.iushrn(this.n,0,N)},y.prototype.imulK=function(I){return I.imul(this.k)};function f(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}n(f,y),f.prototype.split=function(I,N){for(var U=4194303,W=Math.min(I.length,9),Q=0;Q<W;Q++)N.words[Q]=I.words[Q];if(N.length=W,I.length<=9){I.words[0]=0,I.length=1;return}var ue=I.words[9];for(N.words[N.length++]=ue&U,Q=10;Q<I.length;Q++){var se=I.words[Q]|0;I.words[Q-10]=(se&U)<<4|ue>>>22,ue=se}ue>>>=22,I.words[Q-10]=ue,ue===0&&I.length>10?I.length-=10:I.length-=9},f.prototype.imulK=function(I){I.words[I.length]=0,I.words[I.length+1]=0,I.length+=2;for(var N=0,U=0;U<I.length;U++){var W=I.words[U]|0;N+=W*977,I.words[U]=N&67108863,N=W*64+(N/67108864|0)}return I.words[I.length-1]===0&&(I.length--,I.words[I.length-1]===0&&I.length--),I};function P(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}n(P,y);function L(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}n(L,y);function z(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}n(z,y),z.prototype.imulK=function(I){for(var N=0,U=0;U<I.length;U++){var W=(I.words[U]|0)*19+N,Q=W&67108863;W>>>=26,I.words[U]=Q,N=W}return N!==0&&(I.words[I.length++]=N),I},s._prime=function(I){if(u[I])return u[I];var N;if(I==="k256")N=new f;else if(I==="p224")N=new P;else if(I==="p192")N=new L;else if(I==="p25519")N=new z;else throw new Error("Unknown prime "+I);return u[I]=N,N};function F(O){if(typeof O=="string"){var I=s._prime(O);this.m=I.p,this.prime=I}else i(O.gtn(1),"modulus must be greater than 1"),this.m=O,this.prime=null}F.prototype._verify1=function(I){i(I.negative===0,"red works only with positives"),i(I.red,"red works only with red numbers")},F.prototype._verify2=function(I,N){i((I.negative|N.negative)===0,"red works only with positives"),i(I.red&&I.red===N.red,"red works only with red numbers")},F.prototype.imod=function(I){return this.prime?this.prime.ireduce(I)._forceRed(this):I.umod(this.m)._forceRed(this)},F.prototype.neg=function(I){return I.isZero()?I.clone():this.m.sub(I)._forceRed(this)},F.prototype.add=function(I,N){this._verify2(I,N);var U=I.add(N);return U.cmp(this.m)>=0&&U.isub(this.m),U._forceRed(this)},F.prototype.iadd=function(I,N){this._verify2(I,N);var U=I.iadd(N);return U.cmp(this.m)>=0&&U.isub(this.m),U},F.prototype.sub=function(I,N){this._verify2(I,N);var U=I.sub(N);return U.cmpn(0)<0&&U.iadd(this.m),U._forceRed(this)},F.prototype.isub=function(I,N){this._verify2(I,N);var U=I.isub(N);return U.cmpn(0)<0&&U.iadd(this.m),U},F.prototype.shl=function(I,N){return this._verify1(I),this.imod(I.ushln(N))},F.prototype.imul=function(I,N){return this._verify2(I,N),this.imod(I.imul(N))},F.prototype.mul=function(I,N){return this._verify2(I,N),this.imod(I.mul(N))},F.prototype.isqr=function(I){return this.imul(I,I.clone())},F.prototype.sqr=function(I){return this.mul(I,I)},F.prototype.sqrt=function(I){if(I.isZero())return I.clone();var N=this.m.andln(3);if(i(N%2===1),N===3){var U=this.m.add(new s(1)).iushrn(2);return this.pow(I,U)}for(var W=this.m.subn(1),Q=0;!W.isZero()&&W.andln(1)===0;)Q++,W.iushrn(1);i(!W.isZero());var ue=new s(1).toRed(this),se=ue.redNeg(),he=this.m.subn(1).iushrn(1),G=this.m.bitLength();for(G=new s(2*G*G).toRed(this);this.pow(G,he).cmp(se)!==0;)G.redIAdd(se);for(var $=this.pow(G,W),J=this.pow(I,W.addn(1).iushrn(1)),Z=this.pow(I,W),re=Q;Z.cmp(ue)!==0;){for(var ne=Z,j=0;ne.cmp(ue)!==0;j++)ne=ne.redSqr();i(j<re);var ee=this.pow($,new s(1).iushln(re-j-1));J=J.redMul(ee),$=ee.redSqr(),Z=Z.redMul($),re=j}return J},F.prototype.invm=function(I){var N=I._invmp(this.m);return N.negative!==0?(N.negative=0,this.imod(N).redNeg()):this.imod(N)},F.prototype.pow=function(I,N){if(N.isZero())return new s(1).toRed(this);if(N.cmpn(1)===0)return I.clone();var U=4,W=new Array(1<<U);W[0]=new s(1).toRed(this),W[1]=I;for(var Q=2;Q<W.length;Q++)W[Q]=this.mul(W[Q-1],I);var ue=W[0],se=0,he=0,G=N.bitLength()%26;for(G===0&&(G=26),Q=N.length-1;Q>=0;Q--){for(var $=N.words[Q],J=G-1;J>=0;J--){var Z=$>>J&1;if(ue!==W[0]&&(ue=this.sqr(ue)),Z===0&&se===0){he=0;continue}se<<=1,se|=Z,he++,!(he!==U&&(Q!==0||J!==0))&&(ue=this.mul(ue,W[se]),he=0,se=0)}G=26}return ue},F.prototype.convertTo=function(I){var N=I.umod(this.m);return N===I?N.clone():N},F.prototype.convertFrom=function(I){var N=I.clone();return N.red=null,N},s.mont=function(I){return new B(I)};function B(O){F.call(this,O),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new s(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}n(B,F),B.prototype.convertTo=function(I){return this.imod(I.ushln(this.shift))},B.prototype.convertFrom=function(I){var N=this.imod(I.mul(this.rinv));return N.red=null,N},B.prototype.imul=function(I,N){if(I.isZero()||N.isZero())return I.words[0]=0,I.length=1,I;var U=I.imul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.mul=function(I,N){if(I.isZero()||N.isZero())return new s(0)._forceRed(this);var U=I.mul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.invm=function(I){var N=this.imod(I._invmp(this.m).mul(this.r2));return N._forceRed(this)}}(e,this)},6204:function(e){"use strict";e.exports=t;function t(r){var o,a,i,n=r.length,s=0;for(o=0;o<n;++o)s+=r[o].length;var c=new Array(s),h=0;for(o=0;o<n;++o){var v=r[o],p=v.length;for(a=0;a<p;++a){var T=c[h++]=new Array(p-1),l=0;for(i=0;i<p;++i)i!==a&&(T[l++]=v[i]);if(a&1){var _=T[1];T[1]=T[0],T[0]=_}}}return c}},6867:function(e,t,r){"use strict";e.exports=l;var o=r(1888),a=r(855),i=r(7150);function n(_,w){for(var S=0;S<_;++S)if(!(w[S]<=w[S+_]))return!0;return!1}function s(_,w,S,E){for(var m=0,b=0,d=0,u=_.length;d<u;++d){var y=_[d];if(!n(w,y)){for(var f=0;f<2*w;++f)S[m++]=y[f];E[b++]=d}}return b}function c(_,w,S,E){var m=_.length,b=w.length;if(!(m<=0||b<=0)){var d=_[0].length>>>1;if(!(d<=0)){var u,y=o.mallocDouble(2*d*m),f=o.mallocInt32(m);if(m=s(_,d,y,f),m>0){if(d===1&&E)a.init(m),u=a.sweepComplete(d,S,0,m,y,f,0,m,y,f);else{var P=o.mallocDouble(2*d*b),L=o.mallocInt32(b);b=s(w,d,P,L),b>0&&(a.init(m+b),d===1?u=a.sweepBipartite(d,S,0,m,y,f,0,b,P,L):u=i(d,S,E,m,y,f,b,P,L),o.free(P),o.free(L))}o.free(y),o.free(f)}return u}}}var h;function v(_,w){h.push([_,w])}function p(_){return h=[],c(_,_,v,!0),h}function T(_,w){return h=[],c(_,w,v,!1),h}function l(_,w,S){switch(arguments.length){case 1:return p(_);case 2:return typeof w=="function"?c(_,_,w,!0):T(_,w);case 3:return c(_,w,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(e,t){"use strict";function r(){function i(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=p,u=b*p;d<T;++d,u+=b){var y=l[h+u],f=l[h+u+c],P=_[d];e:for(var L=w,z=b*w;L<S;++L,z+=b){var F=E[h+z],B=E[h+z+c],O=m[L];if(!(B<y||f<F)){for(var I=h+1;I<c;++I){var N=l[I+u],U=l[I+c+u],W=E[I+z],Q=E[I+c+z];if(U<W||Q<N)continue e}var ue=v(P,O);if(ue!==void 0)return ue}}}}function n(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=w,u=b*w;d<S;++d,u+=b){var y=E[h+u],f=E[h+u+c],P=m[d];e:for(var L=p,z=b*p;L<T;++L,z+=b){var F=l[h+z],B=l[h+z+c],O=_[L];if(!(f<F||B<y)){for(var I=h+1;I<c;++I){var N=l[I+z],U=l[I+c+z],W=E[I+u],Q=E[I+c+u];if(U<W||Q<N)continue e}var ue=v(O,P);if(ue!==void 0)return ue}}}}function s(c,h,v,p,T,l,_,w,S,E,m){return T-p>S-w?i(c,h,v,p,T,l,_,w,S,E,m):n(c,h,v,p,T,l,_,w,S,E,m)}return s}function o(){function i(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;F<m;++F,B+=u){var O=b[p+B],I=d[F];if(!(O<=P||L<O)){for(var N=p+1;N<v;++N){var U=w[N+f],W=w[N+v+f],Q=b[N+B],ue=b[N+v+B];if(W<Q||ue<U)continue e}var se=T(I,z);if(se!==void 0)return se}}}}function n(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;F<m;++F,B+=u){var O=b[p+B],I=d[F];if(!(O<P||L<O)){for(var N=p+1;N<v;++N){var U=w[N+f],W=w[N+v+f],Q=b[N+B],ue=b[N+v+B];if(W<Q||ue<U)continue e}var se=T(z,I);if(se!==void 0)return se}}}}function s(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=E,f=u*E;y<m;++y,f+=u){var P=b[p+f],L=d[y];e:for(var z=l,F=u*l;z<_;++z,F+=u){var B=w[p+F],O=w[p+F+v],I=S[z];if(!(P<=B||O<P)){for(var N=p+1;N<v;++N){var U=w[N+F],W=w[N+v+F],Q=b[N+f],ue=b[N+v+f];if(W<Q||ue<U)continue e}var se=T(L,I);if(se!==void 0)return se}}}}function c(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=E,f=u*E;y<m;++y,f+=u){var P=b[p+f],L=d[y];e:for(var z=l,F=u*l;z<_;++z,F+=u){var B=w[p+F],O=w[p+F+v],I=S[z];if(!(P<B||O<P)){for(var N=p+1;N<v;++N){var U=w[N+F],W=w[N+v+F],Q=b[N+f],ue=b[N+v+f];if(W<Q||ue<U)continue e}var se=T(I,L);if(se!==void 0)return se}}}}function h(v,p,T,l,_,w,S,E,m,b,d,u){return w-_>b-m?l?i(v,p,T,_,w,S,E,m,b,d,u):n(v,p,T,_,w,S,E,m,b,d,u):l?s(v,p,T,_,w,S,E,m,b,d,u):c(v,p,T,_,w,S,E,m,b,d,u)}return h}function a(i){return i?r():o()}t.partial=a(!1),t.full=a(!0)},7150:function(e,t,r){"use strict";e.exports=O;var o=r(1888),a=r(8828),i=r(2455),n=i.partial,s=i.full,c=r(855),h=r(3545),v=r(8105),p=128,T=1<<22,l=1<<22,_=v("!(lo>=p0)&&!(p1>=hi)"),w=v("lo===p0"),S=v("lo<p0"),E=v("hi<=p0"),m=v("lo<=p0&&p0<=hi"),b=v("lo<p0&&p0<=hi"),d=6,u=2,y=1024,f=o.mallocInt32(y),P=o.mallocDouble(y);function L(I,N){var U=8*a.log2(N+1)*(I+1)|0,W=a.nextPow2(d*U);f.length<W&&(o.free(f),f=o.mallocInt32(W));var Q=a.nextPow2(u*U);P.length<Q&&(o.free(P),P=o.mallocDouble(Q))}function z(I,N,U,W,Q,ue,se,he,G){var $=d*I;f[$]=N,f[$+1]=U,f[$+2]=W,f[$+3]=Q,f[$+4]=ue,f[$+5]=se;var J=u*I;P[J]=he,P[J+1]=G}function F(I,N,U,W,Q,ue,se,he,G,$,J){var Z=2*I,re=G*Z,ne=$[re+N];e:for(var j=Q,ee=Q*Z;j<ue;++j,ee+=Z){var ie=se[ee+N],fe=se[ee+N+I];if(!(ne<ie||fe<ne)&&!(W&&ne===ie)){for(var be=he[j],Ae=N+1;Ae<I;++Ae){var ie=se[ee+Ae],fe=se[ee+Ae+I],Be=$[re+Ae],Ie=$[re+Ae+I];if(fe<Be||Ie<ie)continue e}var Ze;if(W?Ze=U(J,be):Ze=U(be,J),Ze!==void 0)return Ze}}}function B(I,N,U,W,Q,ue,se,he,G,$){var J=2*I,Z=he*J,re=G[Z+N];e:for(var ne=W,j=W*J;ne<Q;++ne,j+=J){var ee=se[ne];if(ee!==$){var ie=ue[j+N],fe=ue[j+N+I];if(!(re<ie||fe<re)){for(var be=N+1;be<I;++be){var ie=ue[j+be],fe=ue[j+be+I],Ae=G[Z+be],Be=G[Z+be+I];if(fe<Ae||Be<ie)continue e}var Ie=U(ee,$);if(Ie!==void 0)return Ie}}}}function O(I,N,U,W,Q,ue,se,he,G){L(I,W+se);var $=0,J=2*I,Z;for(z($++,0,0,W,0,se,U?16:0,-1/0,1/0),U||z($++,0,0,se,0,W,1,-1/0,1/0);$>0;){$-=1;var re=$*d,ne=f[re],j=f[re+1],ee=f[re+2],ie=f[re+3],fe=f[re+4],be=f[re+5],Ae=$*u,Be=P[Ae],Ie=P[Ae+1],Ze=be&1,at=!!(be&16),it=Q,et=ue,lt=he,Me=G;if(Ze&&(it=he,et=G,lt=Q,Me=ue),!(be&2&&(ee=S(I,ne,j,ee,it,et,Ie),j>=ee))&&!(be&4&&(j=E(I,ne,j,ee,it,et,Be),j>=ee))){var ge=ee-j,ce=fe-ie;if(at){if(I*ge*(ge+ce)<l){if(Z=c.scanComplete(I,ne,N,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}}else if(I*Math.min(ge,ce)<p){if(Z=n(I,ne,N,Ze,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}else if(I*ge*ce<T){if(Z=c.scanBipartite(I,ne,N,Ze,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}var ze=_(I,ne,j,ee,it,et,Be,Ie);if(j<ze)if(I*(ze-j)<p){if(Z=s(I,ne+1,N,j,ze,it,et,ie,fe,lt,Me),Z!==void 0)return Z}else if(ne===I-2){if(Ze?Z=c.sweepBipartite(I,N,ie,fe,lt,Me,j,ze,it,et):Z=c.sweepBipartite(I,N,j,ze,it,et,ie,fe,lt,Me),Z!==void 0)return Z}else z($++,ne+1,j,ze,ie,fe,Ze,-1/0,1/0),z($++,ne+1,ie,fe,j,ze,Ze^1,-1/0,1/0);if(ze<ee){var tt=h(I,ne,ie,fe,lt,Me),nt=lt[J*tt+ne],Qe=w(I,ne,tt,fe,lt,Me,nt);if(Qe<fe&&z($++,ne,ze,ee,Qe,fe,(Ze|4)+(at?16:0),nt,Ie),ie<tt&&z($++,ne,ze,ee,ie,tt,(Ze|2)+(at?16:0),Be,nt),tt+1===Qe){if(at?Z=B(I,ne,N,ze,ee,it,et,tt,lt,Me[tt]):Z=F(I,ne,N,Ze,ze,ee,it,et,tt,lt,Me[tt]),Z!==void 0)return Z}else if(tt<Qe){var Ct;if(at){if(Ct=m(I,ne,ze,ee,it,et,nt),ze<Ct){var St=w(I,ne,ze,Ct,it,et,nt);if(ne===I-2){if(ze<St&&(Z=c.sweepComplete(I,N,ze,St,it,et,tt,Qe,lt,Me),Z!==void 0)||St<Ct&&(Z=c.sweepBipartite(I,N,St,Ct,it,et,tt,Qe,lt,Me),Z!==void 0))return Z}else ze<St&&z($++,ne+1,ze,St,tt,Qe,16,-1/0,1/0),St<Ct&&(z($++,ne+1,St,Ct,tt,Qe,0,-1/0,1/0),z($++,ne+1,tt,Qe,St,Ct,1,-1/0,1/0))}}else Ze?Ct=b(I,ne,ze,ee,it,et,nt):Ct=m(I,ne,ze,ee,it,et,nt),ze<Ct&&(ne===I-2?Ze?Z=c.sweepBipartite(I,N,tt,Qe,lt,Me,ze,Ct,it,et):Z=c.sweepBipartite(I,N,ze,Ct,it,et,tt,Qe,lt,Me):(z($++,ne+1,ze,Ct,tt,Qe,Ze,-1/0,1/0),z($++,ne+1,tt,Qe,ze,Ct,Ze^1,-1/0,1/0)))}}}}}},3545:function(e,t,r){"use strict";e.exports=s;var o=r(8105),a=o("lo<p0"),i=8;function n(c,h,v,p,T,l){for(var _=2*c,w=_*(v+1)+h,S=v+1;S<p;++S,w+=_)for(var E=T[w],m=S,b=_*(S-1);m>v&&T[b+h]>E;--m,b-=_){for(var d=b,u=b+_,y=0;y<_;++y,++d,++u){var f=T[d];T[d]=T[u],T[u]=f}var P=l[m];l[m]=l[m-1],l[m-1]=P}}function s(c,h,v,p,T,l){if(p<=v+1)return v;for(var _=v,w=p,S=p+v>>>1,E=2*c,m=S,b=T[E*S+h];_<w;){if(w-_<i){n(c,h,_,w,T,l),b=T[E*S+h];break}var d=w-_,u=Math.random()*d+_|0,y=T[E*u+h],f=Math.random()*d+_|0,P=T[E*f+h],L=Math.random()*d+_|0,z=T[E*L+h];y<=P?z>=P?(m=f,b=P):y>=z?(m=u,b=y):(m=L,b=z):P>=z?(m=f,b=P):z>=y?(m=u,b=y):(m=L,b=z);for(var O=E*(w-1),I=E*m,F=0;F<E;++F,++O,++I){var B=T[O];T[O]=T[I],T[I]=B}var N=l[w-1];l[w-1]=l[m],l[m]=N,m=a(c,h,_,w-1,T,l,b);for(var O=E*(w-1),I=E*m,F=0;F<E;++F,++O,++I){var B=T[O];T[O]=T[I],T[I]=B}var N=l[w-1];if(l[w-1]=l[m],l[m]=N,S<m){for(w=m-1;_<w&&T[E*(w-1)+h]===b;)w-=1;w+=1}else if(m<S)for(_=m+1;_<w&&T[E*_+h]===b;)_+=1;else break}return a(c,h,v,S,T,l,T[E*S+h])}},8105:function(e){"use strict";e.exports=r;var t={"lo===p0":o,"lo<p0":a,"lo<=p0":i,"hi<=p0":n,"lo<p0&&p0<=hi":c,"lo<=p0&&p0<=hi":s,"!(lo>=p0)&&!(p1>=hi)":h};function r(v){return t[v]}function o(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P===S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function a(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P<S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function i(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function n(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function s(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<=S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function c(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function h(v,p,T,l,_,w,S,E){for(var m=2*v,b=m*T,d=b,u=T,y=p,f=v+p,P=T;l>P;++P,b+=m){var L=_[b+y],z=_[b+f];if(!(L>=S)&&!(E>=z))if(u===P)u+=1,d+=m;else{for(var F=0;m>F;++F){var B=_[b+F];_[b+F]=_[d],_[d++]=B}var O=w[P];w[P]=w[u],w[u++]=O}}return u}},4192:function(e){"use strict";e.exports=r;var t=32;function r(p,T){T<=4*t?o(0,T-1,p):v(0,T-1,p)}function o(p,T,l){for(var _=2*(p+1),w=p+1;w<=T;++w){for(var S=l[_++],E=l[_++],m=w,b=_-2;m-- >p;){var d=l[b-2],u=l[b-1];if(d<S)break;if(d===S&&u<E)break;l[b]=d,l[b+1]=u,b-=2}l[b]=S,l[b+1]=E}}function a(p,T,l){p*=2,T*=2;var _=l[p],w=l[p+1];l[p]=l[T],l[p+1]=l[T+1],l[T]=_,l[T+1]=w}function i(p,T,l){p*=2,T*=2,l[p]=l[T],l[p+1]=l[T+1]}function n(p,T,l,_){p*=2,T*=2,l*=2;var w=_[p],S=_[p+1];_[p]=_[T],_[p+1]=_[T+1],_[T]=_[l],_[T+1]=_[l+1],_[l]=w,_[l+1]=S}function s(p,T,l,_,w){p*=2,T*=2,w[p]=w[T],w[T]=l,w[p+1]=w[T+1],w[T+1]=_}function c(p,T,l){p*=2,T*=2;var _=l[p],w=l[T];return _<w?!1:_===w?l[p+1]>l[T+1]:!0}function h(p,T,l,_){p*=2;var w=_[p];return w<T?!0:w===T?_[p+1]<l:!1}function v(p,T,l){var _=(T-p+1)/6|0,w=p+_,S=T-_,E=p+T>>1,m=E-_,b=E+_,d=w,u=m,y=E,f=b,P=S,L=p+1,z=T-1,F=0;c(d,u,l)&&(F=d,d=u,u=F),c(f,P,l)&&(F=f,f=P,P=F),c(d,y,l)&&(F=d,d=y,y=F),c(u,y,l)&&(F=u,u=y,y=F),c(d,f,l)&&(F=d,d=f,f=F),c(y,f,l)&&(F=y,y=f,f=F),c(u,P,l)&&(F=u,u=P,P=F),c(u,y,l)&&(F=u,u=y,y=F),c(f,P,l)&&(F=f,f=P,P=F);for(var B=l[2*u],O=l[2*u+1],I=l[2*f],N=l[2*f+1],U=2*d,W=2*y,Q=2*P,ue=2*w,se=2*E,he=2*S,G=0;G<2;++G){var $=l[U+G],J=l[W+G],Z=l[Q+G];l[ue+G]=$,l[se+G]=J,l[he+G]=Z}i(m,p,l),i(b,T,l);for(var re=L;re<=z;++re)if(h(re,B,O,l))re!==L&&a(re,L,l),++L;else if(!h(re,I,N,l))for(;;)if(h(z,I,N,l)){h(z,B,O,l)?(n(re,L,z,l),++L,--z):(a(re,z,l),--z);break}else{if(--z<re)break;continue}s(p,L-1,B,O,l),s(T,z+1,I,N,l),L-2-p<=t?o(p,L-2,l):v(p,L-2,l),T-(z+2)<=t?o(z+2,T,l):v(z+2,T,l),z-L<=t?o(L,z,l):v(L,z,l)}},855:function(e,t,r){"use strict";e.exports={init:w,sweepBipartite:m,sweepComplete:b,scanBipartite:d,scanComplete:u};var o=r(1888),a=r(8828),i=r(4192),n=1<<28,s=1024,c=o.mallocInt32(s),h=o.mallocInt32(s),v=o.mallocInt32(s),p=o.mallocInt32(s),T=o.mallocInt32(s),l=o.mallocInt32(s),_=o.mallocDouble(s*8);function w(y){var f=a.nextPow2(y);c.length<f&&(o.free(c),c=o.mallocInt32(f)),h.length<f&&(o.free(h),h=o.mallocInt32(f)),v.length<f&&(o.free(v),v=o.mallocInt32(f)),p.length<f&&(o.free(p),p=o.mallocInt32(f)),T.length<f&&(o.free(T),T=o.mallocInt32(f)),l.length<f&&(o.free(l),l=o.mallocInt32(f));var P=8*f;_.length<P&&(o.free(_),_=o.mallocDouble(P))}function S(y,f,P,L){var z=f[L],F=y[P-1];y[z]=F,f[F]=z}function E(y,f,P,L){y[P]=L,f[L]=P}function m(y,f,P,L,z,F,B,O,I,N){for(var U=0,W=2*y,Q=y-1,ue=W-1,se=P;se<L;++se){var he=F[se],G=W*se;_[U++]=z[G+Q],_[U++]=-(he+1),_[U++]=z[G+ue],_[U++]=he}for(var se=B;se<O;++se){var he=N[se]+n,$=W*se;_[U++]=I[$+Q],_[U++]=-he,_[U++]=I[$+ue],_[U++]=he}var J=U>>>1;i(_,J);for(var Z=0,re=0,se=0;se<J;++se){var ne=_[2*se+1]|0;if(ne>=n)ne=ne-n|0,S(v,p,re--,ne);else if(ne>=0)S(c,h,Z--,ne);else if(ne<=-n){ne=-ne-n|0;for(var j=0;j<Z;++j){var ee=f(c[j],ne);if(ee!==void 0)return ee}E(v,p,re++,ne)}else{ne=-ne-1|0;for(var j=0;j<re;++j){var ee=f(ne,v[j]);if(ee!==void 0)return ee}E(c,h,Z++,ne)}}}function b(y,f,P,L,z,F,B,O,I,N){for(var U=0,W=2*y,Q=y-1,ue=W-1,se=P;se<L;++se){var he=F[se]+1<<1,G=W*se;_[U++]=z[G+Q],_[U++]=-he,_[U++]=z[G+ue],_[U++]=he}for(var se=B;se<O;++se){var he=N[se]+1<<1,$=W*se;_[U++]=I[$+Q],_[U++]=-he|1,_[U++]=I[$+ue],_[U++]=he|1}var J=U>>>1;i(_,J);for(var Z=0,re=0,ne=0,se=0;se<J;++se){var j=_[2*se+1]|0,ee=j&1;if(se<J-1&&j>>1===_[2*se+3]>>1&&(ee=2,se+=1),j<0){for(var ie=-(j>>1)-1,fe=0;fe<ne;++fe){var be=f(T[fe],ie);if(be!==void 0)return be}if(ee!==0)for(var fe=0;fe<Z;++fe){var be=f(c[fe],ie);if(be!==void 0)return be}if(ee!==1)for(var fe=0;fe<re;++fe){var be=f(v[fe],ie);if(be!==void 0)return be}ee===0?E(c,h,Z++,ie):ee===1?E(v,p,re++,ie):ee===2&&E(T,l,ne++,ie)}else{var ie=(j>>1)-1;ee===0?S(c,h,Z--,ie):ee===1?S(v,p,re--,ie):ee===2&&S(T,l,ne--,ie)}}}function d(y,f,P,L,z,F,B,O,I,N,U,W){var Q=0,ue=2*y,se=f,he=f+y,G=1,$=1;L?$=n:G=n;for(var J=z;J<F;++J){var Z=J+G,re=ue*J;_[Q++]=B[re+se],_[Q++]=-Z,_[Q++]=B[re+he],_[Q++]=Z}for(var J=I;J<N;++J){var Z=J+$,ne=ue*J;_[Q++]=U[ne+se],_[Q++]=-Z}var j=Q>>>1;i(_,j);for(var ee=0,J=0;J<j;++J){var ie=_[2*J+1]|0;if(ie<0){var Z=-ie,fe=!1;if(Z>=n?(fe=!L,Z-=n):(fe=!!L,Z-=1),fe)E(c,h,ee++,Z);else{var be=W[Z],Ae=ue*Z,Be=U[Ae+f+1],Ie=U[Ae+f+1+y];e:for(var Ze=0;Ze<ee;++Ze){var at=c[Ze],it=ue*at;if(!(Ie<B[it+f+1]||B[it+f+1+y]<Be)){for(var et=f+2;et<y;++et)if(U[Ae+et+y]<B[it+et]||B[it+et+y]<U[Ae+et])continue e;var lt=O[at],Me;if(L?Me=P(be,lt):Me=P(lt,be),Me!==void 0)return Me}}}}else S(c,h,ee--,ie-G)}}function u(y,f,P,L,z,F,B,O,I,N,U){for(var W=0,Q=2*y,ue=f,se=f+y,he=L;he<z;++he){var G=he+n,$=Q*he;_[W++]=F[$+ue],_[W++]=-G,_[W++]=F[$+se],_[W++]=G}for(var he=O;he<I;++he){var G=he+1,J=Q*he;_[W++]=N[J+ue],_[W++]=-G}var Z=W>>>1;i(_,Z);for(var re=0,he=0;he<Z;++he){var ne=_[2*he+1]|0;if(ne<0){var G=-ne;if(G>=n)c[re++]=G-n;else{G-=1;var j=U[G],ee=Q*G,ie=N[ee+f+1],fe=N[ee+f+1+y];e:for(var be=0;be<re;++be){var Ae=c[be],Be=B[Ae];if(Be===j)break;var Ie=Q*Ae;if(!(fe<F[Ie+f+1]||F[Ie+f+1+y]<ie)){for(var Ze=f+2;Ze<y;++Ze)if(N[ee+Ze+y]<F[Ie+Ze]||F[Ie+Ze+y]<N[ee+Ze])continue e;var at=P(Be,j);if(at!==void 0)return at}}}}else{for(var G=ne-n,be=re-1;be>=0;--be)if(c[be]===G){for(var Ze=be+1;Ze<re;++Ze)c[Ze-1]=c[Ze];break}--re}}}},2538:function(e,t,r){"use strict";var o=r(8902),a=r(5542),i=r(2272),n=r(5023);e.exports=p;function s(T){return[Math.min(T[0],T[1]),Math.max(T[0],T[1])]}function c(T,l){return T[0]-l[0]||T[1]-l[1]}function h(T){return T.map(s).sort(c)}function v(T,l,_){return l in T?T[l]:_}function p(T,l,_){Array.isArray(l)?(_=_||{},l=l||[]):(_=l||{},l=[]);var w=!!v(_,"delaunay",!0),S=!!v(_,"interior",!0),E=!!v(_,"exterior",!0),m=!!v(_,"infinity",!1);if(!S&&!E||T.length===0)return[];var b=o(T,l);if(w||S!==E||m){for(var d=a(T.length,h(l)),u=0;u<b.length;++u){var y=b[u];d.addTriangle(y[0],y[1],y[2])}return w&&i(T,d),E?S?m?n(d,0,m):d.cells():n(d,1,m):n(d,-1)}else return b}},2272:function(e,t,r){"use strict";var o=r(2646)[4],a=r(2478);e.exports=n;function i(s,c,h,v,p,T){var l=c.opposite(v,p);if(!(l<0)){if(p<v){var _=v;v=p,p=_,_=T,T=l,l=_}c.isConstraint(v,p)||o(s[v],s[p],s[T],s[l])<0&&h.push(v,p)}}function n(s,c){for(var h=[],v=s.length,p=c.stars,T=0;T<v;++T)for(var l=p[T],_=1;_<l.length;_+=2){var w=l[_];if(!(w<T)&&!c.isConstraint(T,w)){for(var S=l[_-1],E=-1,m=1;m<l.length;m+=2)if(l[m-1]===w){E=l[m];break}E<0||o(s[T],s[w],s[S],s[E])<0&&h.push(T,w)}}for(;h.length>0;){for(var w=h.pop(),T=h.pop(),S=-1,E=-1,l=p[T],b=1;b<l.length;b+=2){var d=l[b-1],u=l[b];d===w?E=u:u===w&&(S=d)}S<0||E<0||o(s[T],s[w],s[S],s[E])>=0||(c.flip(T,w),i(s,c,h,S,T,E),i(s,c,h,T,E,S),i(s,c,h,E,w,S),i(s,c,h,w,S,E))}}},5023:function(e,t,r){"use strict";var o=r(2478);e.exports=h;function a(v,p,T,l,_,w,S){this.cells=v,this.neighbor=p,this.flags=l,this.constraint=T,this.active=_,this.next=w,this.boundary=S}var i=a.prototype;function n(v,p){return v[0]-p[0]||v[1]-p[1]||v[2]-p[2]}i.locate=function(){var v=[0,0,0];return function(p,T,l){var _=p,w=T,S=l;return T<l?T<p&&(_=T,w=l,S=p):l<p&&(_=l,w=p,S=T),_<0?-1:(v[0]=_,v[1]=w,v[2]=S,o.eq(this.cells,v,n))}}();function s(v,p){for(var T=v.cells(),l=T.length,_=0;_<l;++_){var w=T[_],S=w[0],E=w[1],m=w[2];E<m?E<S&&(w[0]=E,w[1]=m,w[2]=S):m<S&&(w[0]=m,w[1]=S,w[2]=E)}T.sort(n);for(var b=new Array(l),_=0;_<b.length;++_)b[_]=0;var d=[],u=[],y=new Array(3*l),f=new Array(3*l),P=null;p&&(P=[]);for(var L=new a(T,y,f,b,d,u,P),_=0;_<l;++_)for(var w=T[_],z=0;z<3;++z){var S=w[z],E=w[(z+1)%3],F=y[3*_+z]=L.locate(E,S,v.opposite(E,S)),B=f[3*_+z]=v.isConstraint(S,E);F<0&&(B?u.push(_):(d.push(_),b[_]=1),p&&P.push([E,S,-1]))}return L}function c(v,p,T){for(var l=0,_=0;_<v.length;++_)p[_]===T&&(v[l++]=v[_]);return v.length=l,v}function h(v,p,T){var l=s(v,T);if(p===0)return T?l.cells.concat(l.boundary):l.cells;for(var _=1,w=l.active,S=l.next,E=l.flags,m=l.cells,b=l.constraint,d=l.neighbor;w.length>0||S.length>0;){for(;w.length>0;){var u=w.pop();if(E[u]!==-_){E[u]=_;for(var y=m[u],f=0;f<3;++f){var P=d[3*u+f];P>=0&&E[P]===0&&(b[3*u+f]?S.push(P):(w.push(P),E[P]=_))}}}var L=S;S=w,w=L,S.length=0,_=-_}var z=c(m,E,p);return T?z.concat(l.boundary):z}},8902:function(e,t,r){"use strict";var o=r(2478),a=r(3250)[3],i=0,n=1,s=2;e.exports=S;function c(E,m,b,d,u){this.a=E,this.b=m,this.idx=b,this.lowerIds=d,this.upperIds=u}function h(E,m,b,d){this.a=E,this.b=m,this.type=b,this.idx=d}function v(E,m){var b=E.a[0]-m.a[0]||E.a[1]-m.a[1]||E.type-m.type;return b||E.type!==i&&(b=a(E.a,E.b,m.b),b)?b:E.idx-m.idx}function p(E,m){return a(E.a,E.b,m)}function T(E,m,b,d,u){for(var y=o.lt(m,d,p),f=o.gt(m,d,p),P=y;P<f;++P){for(var L=m[P],z=L.lowerIds,B=z.length;B>1&&a(b[z[B-2]],b[z[B-1]],d)>0;)E.push([z[B-1],z[B-2],u]),B-=1;z.length=B,z.push(u);for(var F=L.upperIds,B=F.length;B>1&&a(b[F[B-2]],b[F[B-1]],d)<0;)E.push([F[B-2],F[B-1],u]),B-=1;F.length=B,F.push(u)}}function l(E,m){var b;return E.a[0]<m.a[0]?b=a(E.a,E.b,m.a):b=a(m.b,m.a,E.a),b||(m.b[0]<E.b[0]?b=a(E.a,E.b,m.b):b=a(m.b,m.a,E.b),b||E.idx-m.idx)}function _(E,m,b){var d=o.le(E,b,l),u=E[d],y=u.upperIds,f=y[y.length-1];u.upperIds=[f],E.splice(d+1,0,new c(b.a,b.b,b.idx,[f],y))}function w(E,m,b){var d=b.a;b.a=b.b,b.b=d;var u=o.eq(E,b,l),y=E[u],f=E[u-1];f.upperIds=y.upperIds,E.splice(u,1)}function S(E,m){for(var b=E.length,d=m.length,u=[],y=0;y<b;++y)u.push(new h(E[y],null,i,y));for(var y=0;y<d;++y){var f=m[y],P=E[f[0]],L=E[f[1]];P[0]<L[0]?u.push(new h(P,L,s,y),new h(L,P,n,y)):P[0]>L[0]&&u.push(new h(L,P,s,y),new h(P,L,n,y))}u.sort(v);for(var z=u[0].a[0]-(1+Math.abs(u[0].a[0]))*Math.pow(2,-52),F=[new c([z,1],[z,0],-1,[],[],[],[])],B=[],y=0,O=u.length;y<O;++y){var I=u[y],N=I.type;N===i?T(B,F,E,I.a,I.idx):N===s?_(F,E,I):w(F,E,I)}return B}},5542:function(e,t,r){"use strict";var o=r(2478);e.exports=s;function a(c,h){this.stars=c,this.edges=h}var i=a.prototype;function n(c,h,v){for(var p=1,T=c.length;p<T;p+=2)if(c[p-1]===h&&c[p]===v){c[p-1]=c[T-2],c[p]=c[T-1],c.length=T-2;return}}i.isConstraint=function(){var c=[0,0];function h(v,p){return v[0]-p[0]||v[1]-p[1]}return function(v,p){return c[0]=Math.min(v,p),c[1]=Math.max(v,p),o.eq(this.edges,c,h)>=0}}(),i.removeTriangle=function(c,h,v){var p=this.stars;n(p[c],h,v),n(p[h],v,c),n(p[v],c,h)},i.addTriangle=function(c,h,v){var p=this.stars;p[c].push(h,v),p[h].push(v,c),p[v].push(c,h)},i.opposite=function(c,h){for(var v=this.stars[h],p=1,T=v.length;p<T;p+=2)if(v[p]===c)return v[p-1];return-1},i.flip=function(c,h){var v=this.opposite(c,h),p=this.opposite(h,c);this.removeTriangle(c,h,v),this.removeTriangle(h,c,p),this.addTriangle(c,p,v),this.addTriangle(h,v,p)},i.edges=function(){for(var c=this.stars,h=[],v=0,p=c.length;v<p;++v)for(var T=c[v],l=0,_=T.length;l<_;l+=2)h.push([T[l],T[l+1]]);return h},i.cells=function(){for(var c=this.stars,h=[],v=0,p=c.length;v<p;++v)for(var T=c[v],l=0,_=T.length;l<_;l+=2){var w=T[l],S=T[l+1];v<Math.min(w,S)&&h.push([v,w,S])}return h};function s(c,h){for(var v=new Array(c),p=0;p<c;++p)v[p]=[];return new a(v,h)}},2419:function(e){"use strict";e.exports=t;function t(r){for(var o=1,a=1;a<r.length;++a)for(var i=0;i<a;++i)if(r[a]<r[i])o=-o;else if(r[i]===r[a])return 0;return o}},3628:function(e,t,r){"use strict";var o=r(1338),a=r(727);function i(c,h){for(var v=0,p=c.length,T=0;T<p;++T)v+=c[T]*h[T];return v}function n(c){var h=c.length;if(h===0)return[];var v=c[0].length,p=o([c.length+1,c.length+1],1),T=o([c.length+1],1);p[h][h]=0;for(var l=0;l<h;++l){for(var _=0;_<=l;++_)p[_][l]=p[l][_]=2*i(c[l],c[_]);T[l]=i(c[l],c[l])}for(var w=a(p,T),S=0,E=w[h+1],l=0;l<E.length;++l)S+=E[l];for(var m=new Array(h),l=0;l<h;++l){for(var E=w[l],b=0,_=0;_<E.length;++_)b+=E[_];m[l]=b/S}return m}function s(c){if(c.length===0)return[];for(var h=c[0].length,v=o([h]),p=n(c),T=0;T<c.length;++T)for(var l=0;l<h;++l)v[l]+=c[T][l]*p[T];return v}s.barycenetric=n,e.exports=s},6037:function(e,t,r){e.exports=a;var o=r(3628);function a(i){for(var n=o(i),s=0,c=0;c<i.length;++c)for(var h=i[c],v=0;v<n.length;++v)s+=Math.pow(h[v]-n[v],2);return Math.sqrt(s/i.length)}},332:function(e,t,r){"use strict";e.exports=P;var o=r(1755),a=r(6867),i=r(1125),n=r(7842),s=r(1318),c=r(946),h=r(5838),v=r(1278),p=r(3637);function T(L){var z=c(L);return[v(z,-1/0),v(z,1/0)]}function l(L,z){for(var F=new Array(z.length),B=0;B<z.length;++B){var O=z[B],I=L[O[0]],N=L[O[1]];F[B]=[v(Math.min(I[0],N[0]),-1/0),v(Math.min(I[1],N[1]),-1/0),v(Math.max(I[0],N[0]),1/0),v(Math.max(I[1],N[1]),1/0)]}return F}function _(L){for(var z=new Array(L.length),F=0;F<L.length;++F){var B=L[F];z[F]=[v(B[0],-1/0),v(B[1],-1/0),v(B[0],1/0),v(B[1],1/0)]}return z}function w(L,z,F){var B=[];return a(F,function(O,I){var N=z[O],U=z[I];if(!(N[0]===U[0]||N[0]===U[1]||N[1]===U[0]||N[1]===U[1])){var W=L[N[0]],Q=L[N[1]],ue=L[U[0]],se=L[U[1]];i(W,Q,ue,se)&&B.push([O,I])}}),B}function S(L,z,F,B){var O=[];return a(F,B,function(I,N){var U=z[I];if(!(U[0]===N||U[1]===N)){var W=L[N],Q=L[U[0]],ue=L[U[1]];i(Q,ue,W,W)&&O.push([I,N])}}),O}function E(L,z,F,B,O){var I,N,U=L.map(function(Ae){return[n(Ae[0]),n(Ae[1])]});for(I=0;I<F.length;++I){var W=F[I];N=W[0];var Q=W[1],ue=z[N],se=z[Q],he=p(h(L[ue[0]]),h(L[ue[1]]),h(L[se[0]]),h(L[se[1]]));if(he){var G=L.length;L.push([c(he[0]),c(he[1])]),U.push(he),B.push([N,G],[Q,G])}}for(B.sort(function(Ae,Be){if(Ae[0]!==Be[0])return Ae[0]-Be[0];var Ie=U[Ae[1]],Ze=U[Be[1]];return s(Ie[0],Ze[0])||s(Ie[1],Ze[1])}),I=B.length-1;I>=0;--I){var $=B[I];N=$[0];var J=z[N],Z=J[0],re=J[1],ne=L[Z],j=L[re];if((ne[0]-j[0]||ne[1]-j[1])<0){var ee=Z;Z=re,re=ee}J[0]=Z;var ie=J[1]=$[1],fe;for(O&&(fe=J[2]);I>0&&B[I-1][0]===N;){var $=B[--I],be=$[1];O?z.push([ie,be,fe]):z.push([ie,be]),ie=be}O?z.push([ie,re,fe]):z.push([ie,re])}return U}function m(L,z,F){for(var B=z.length,O=new o(B),I=[],N=0;N<z.length;++N){var U=z[N],W=T(U[0]),Q=T(U[1]);I.push([v(W[0],-1/0),v(Q[0],-1/0),v(W[1],1/0),v(Q[1],1/0)])}a(I,function($,J){O.link($,J)});for(var ue=!0,se=new Array(B),N=0;N<B;++N){var he=O.find(N);he!==N&&(ue=!1,L[he]=[Math.min(L[N][0],L[he][0]),Math.min(L[N][1],L[he][1])])}if(ue)return null;for(var G=0,N=0;N<B;++N){var he=O.find(N);he===N?(se[N]=G,L[G++]=L[N]):se[N]=-1}L.length=G;for(var N=0;N<B;++N)se[N]<0&&(se[N]=se[O.find(N)]);return se}function b(L,z){return L[0]-z[0]||L[1]-z[1]}function d(L,z){var F=L[0]-z[0]||L[1]-z[1];return F||(L[2]<z[2]?-1:L[2]>z[2]?1:0)}function u(L,z,F){if(L.length!==0){if(z)for(var B=0;B<L.length;++B){var O=L[B],I=z[O[0]],N=z[O[1]];O[0]=Math.min(I,N),O[1]=Math.max(I,N)}else for(var B=0;B<L.length;++B){var O=L[B],I=O[0],N=O[1];O[0]=Math.min(I,N),O[1]=Math.max(I,N)}F?L.sort(d):L.sort(b);for(var U=1,B=1;B<L.length;++B){var W=L[B-1],Q=L[B];Q[0]===W[0]&&Q[1]===W[1]&&(!F||Q[2]===W[2])||(L[U++]=Q)}L.length=U}}function y(L,z,F){var B=m(L,[],_(L));return u(z,B,F),!!B}function f(L,z,F){var B=l(L,z),O=w(L,z,B),I=_(L),N=S(L,z,B,I),U=E(L,z,O,N,F),W=m(L,U,I);return u(z,W,F),W?!0:O.length>0||N.length>0}function P(L,z,F){var B;if(F){B=z;for(var O=new Array(z.length),I=0;I<z.length;++I){var N=z[I];O[I]=[N[0],N[1],F[I]]}z=O}for(var U=y(L,z,!!F);f(L,z,!!F);)U=!0;if(F&&U){B.length=0,F.length=0;for(var I=0;I<z.length;++I){var N=z[I];B.push([N[0],N[1]]),F.push(N[2])}}return U}},3637:function(e,t,r){"use strict";e.exports=p;var o=r(6504),a=r(8697),i=r(5572),n=r(7721),s=r(544),c=r(2653),h=r(8987);function v(T,l){return i(o(T[0],l[1]),o(T[1],l[0]))}function p(T,l,_,w){var S=s(l,T),E=s(w,_),m=v(S,E);if(n(m)===0)return null;var b=s(T,_),d=v(E,b),u=a(d,m),y=h(S,u),f=c(T,y);return f}},3642:function(e){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],"rainbow-soft":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],"freesurface-blue":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],"freesurface-red":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],"velocity-blue":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],"velocity-green":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},6729:function(e,t,r){"use strict";var o=r(3642),a=r(395);e.exports=i;function i(h){var v,p,T,l,_,w,S,E,u,m,b;if(h||(h={}),E=(h.nshades||72)-1,S=h.format||"hex",w=h.colormap,w||(w="jet"),typeof w=="string"){if(w=w.toLowerCase(),!o[w])throw Error(w+" not a supported colorscale");_=o[w]}else if(Array.isArray(w))_=w.slice();else throw Error("unsupported colormap option",w);if(_.length>E+1)throw new Error(w+" map requires nshades to be at least size "+_.length);Array.isArray(h.alpha)?h.alpha.length!==2?m=[1,1]:m=h.alpha.slice():typeof h.alpha=="number"?m=[h.alpha,h.alpha]:m=[1,1],v=_.map(function(P){return Math.round(P.index*E)}),m[0]=Math.min(Math.max(m[0],0),1),m[1]=Math.min(Math.max(m[1],0),1);var d=_.map(function(P,L){var z=_[L].index,F=_[L].rgb.slice();return F.length===4&&F[3]>=0&&F[3]<=1||(F[3]=m[0]+(m[1]-m[0])*z),F}),u=[];for(b=0;b<v.length-1;++b){l=v[b+1]-v[b],p=d[b],T=d[b+1];for(var y=0;y<l;y++){var f=y/l;u.push([Math.round(a(p[0],T[0],f)),Math.round(a(p[1],T[1],f)),Math.round(a(p[2],T[2],f)),a(p[3],T[3],f)])}}return u.push(_[_.length-1].rgb.concat(m[1])),S==="hex"?u=u.map(s):S==="rgbaString"?u=u.map(c):S==="float"&&(u=u.map(n)),u}function n(h){return[h[0]/255,h[1]/255,h[2]/255,h[3]]}function s(h){for(var v,p="#",T=0;T<3;++T)v=h[T],v=v.toString(16),p+=("00"+v).substr(v.length);return p}function c(h){return"rgba("+h.join(",")+")"}},3140:function(e,t,r){"use strict";e.exports=h;var o=r(3250),a=r(8572),i=r(9362),n=r(5382),s=r(8210);function c(v,p,T){var l=i(v[0],-p[0]),_=i(v[1],-p[1]),w=i(T[0],-p[0]),S=i(T[1],-p[1]),E=s(n(l,w),n(_,S));return E[E.length-1]>=0}function h(v,p,T,l){var _=o(p,T,l);if(_===0){var w=a(o(v,p,T)),S=a(o(v,p,l));if(w===S){if(w===0){var E=c(v,p,T),m=c(v,p,l);return E===m?0:E?1:-1}return 0}else{if(S===0)return w>0||c(v,p,l)?-1:1;if(w===0)return S>0||c(v,p,T)?1:-1}return a(S-w)}var b=o(v,p,T);if(b>0)return _>0&&o(v,p,l)>0?1:-1;if(b<0)return _>0||o(v,p,l)>0?1:-1;var d=o(v,p,l);return d>0||c(v,p,T)?1:-1}},8572:function(e){"use strict";e.exports=function(r){return r<0?-1:r>0?1:0}},8507:function(e){e.exports=o;var t=Math.min;function r(a,i){return a-i}function o(a,i){var n=a.length,s=a.length-i.length;if(s)return s;switch(n){case 0:return 0;case 1:return a[0]-i[0];case 2:return a[0]+a[1]-i[0]-i[1]||t(a[0],a[1])-t(i[0],i[1]);case 3:var c=a[0]+a[1],h=i[0]+i[1];if(s=c+a[2]-(h+i[2]),s)return s;var v=t(a[0],a[1]),p=t(i[0],i[1]);return t(v,a[2])-t(p,i[2])||t(v+a[2],c)-t(p+i[2],h);case 4:var T=a[0],l=a[1],_=a[2],w=a[3],S=i[0],E=i[1],m=i[2],b=i[3];return T+l+_+w-(S+E+m+b)||t(T,l,_,w)-t(S,E,m,b,S)||t(T+l,T+_,T+w,l+_,l+w,_+w)-t(S+E,S+m,S+b,E+m,E+b,m+b)||t(T+l+_,T+l+w,T+_+w,l+_+w)-t(S+E+m,S+E+b,S+m+b,E+m+b);default:for(var d=a.slice().sort(r),u=i.slice().sort(r),y=0;y<n;++y)if(s=d[y]-u[y],s)return s;return 0}}},3788:function(e,t,r){"use strict";var o=r(8507),a=r(2419);e.exports=i;function i(n,s){return o(n,s)||a(n)-a(s)}},7352:function(e,t,r){"use strict";var o=r(5721),a=r(4750),i=r(2690);e.exports=n;function n(s){var c=s.length;if(c===0)return[];if(c===1)return[[0]];var h=s[0].length;return h===0?[]:h===1?o(s):h===2?a(s):i(s,h)}},5721:function(e){"use strict";e.exports=t;function t(r){for(var o=0,a=0,i=1;i<r.length;++i)r[i][0]<r[o][0]&&(o=i),r[i][0]>r[a][0]&&(a=i);return o<a?[[o],[a]]:o>a?[[a],[o]]:[[o]]}},4750:function(e,t,r){"use strict";e.exports=a;var o=r(3090);function a(i){var n=o(i),s=n.length;if(s<=2)return[];for(var c=new Array(s),h=n[s-1],v=0;v<s;++v){var p=n[v];c[v]=[h,p],h=p}return c}},2690:function(e,t,r){"use strict";e.exports=s;var o=r(8954),a=r(3952);function i(c,h){for(var v=c.length,p=new Array(v),T=0;T<h.length;++T)p[T]=c[h[T]];for(var l=h.length,T=0;T<v;++T)h.indexOf(T)<0&&(p[l++]=c[T]);return p}function n(c,h){for(var v=c.length,p=h.length,T=0;T<v;++T)for(var l=c[T],_=0;_<l.length;++_){var w=l[_];if(w<p)l[_]=h[w];else{w=w-p;for(var S=0;S<p;++S)w>=h[S]&&(w+=1);l[_]=w}}return c}function s(c,h){try{return o(c,!0)}catch{var v=a(c);if(v.length<=h)return[];var p=i(c,v),T=o(p,!0);return n(T,v)}}},4769:function(e){"use strict";function t(o,a,i,n,s,c){var h=6*s*s-6*s,v=3*s*s-4*s+1,p=-6*s*s+6*s,T=3*s*s-2*s;if(o.length){c||(c=new Array(o.length));for(var l=o.length-1;l>=0;--l)c[l]=h*o[l]+v*a[l]+p*i[l]+T*n[l];return c}return h*o+v*a+p*i[l]+T*n}function r(o,a,i,n,s,c){var h=s-1,v=s*s,p=h*h,T=(1+2*s)*p,l=s*p,_=v*(3-2*s),w=v*h;if(o.length){c||(c=new Array(o.length));for(var S=o.length-1;S>=0;--S)c[S]=T*o[S]+l*a[S]+_*i[S]+w*n[S];return c}return T*o+l*a+_*i+w*n}e.exports=r,e.exports.derivative=t},7642:function(e,t,r){"use strict";var o=r(8954),a=r(1682);e.exports=c;function i(h,v){this.point=h,this.index=v}function n(h,v){for(var p=h.point,T=v.point,l=p.length,_=0;_<l;++_){var w=T[_]-p[_];if(w)return w}return 0}function s(h,v,p){if(h===1)return p?[[-1,0]]:[];var T=v.map(function(E,m){return[E[0],m]});T.sort(function(E,m){return E[0]-m[0]});for(var l=new Array(h-1),_=1;_<h;++_){var w=T[_-1],S=T[_];l[_-1]=[w[1],S[1]]}return p&&l.push([-1,l[0][1]],[l[h-1][1],-1]),l}function c(h,v){var p=h.length;if(p===0)return[];var T=h[0].length;if(T<1)return[];if(T===1)return s(p,h,v);for(var l=new Array(p),_=1,w=0;w<p;++w){for(var S=h[w],E=new Array(T+1),m=0,b=0;b<T;++b){var d=S[b];E[b]=d,m+=d*d}E[T]=m,l[w]=new i(E,w),_=Math.max(m,_)}a(l,n),p=l.length;for(var u=new Array(p+T+1),y=new Array(p+T+1),f=(T+1)*(T+1)*_,P=new Array(T+1),w=0;w<=T;++w)P[w]=0;P[T]=f,u[0]=P.slice(),y[0]=-1;for(var w=0;w<=T;++w){var E=P.slice();E[w]=1,u[w+1]=E,y[w+1]=-1}for(var w=0;w<p;++w){var L=l[w];u[w+T+1]=L.point,y[w+T+1]=L.index}var z=o(u,!1);if(v?z=z.filter(function(F){for(var B=0,O=0;O<=T;++O){var I=y[F[O]];if(I<0&&++B>=2)return!1;F[O]=I}return!0}):z=z.filter(function(F){for(var B=0;B<=T;++B){var O=y[F[B]];if(O<0)return!1;F[B]=O}return!0}),T&1)for(var w=0;w<z.length;++w){var L=z[w],E=L[0];L[0]=L[1],L[1]=E}return z}},2361:function(e){var t=!1;if(typeof Float64Array<"u"){var r=new Float64Array(1),o=new Uint32Array(r.buffer);if(r[0]=1,t=!0,o[1]===1072693248){let _=function(E,m){return o[0]=E,o[1]=m,r[0]},w=function(E){return r[0]=E,o[0]},S=function(E){return r[0]=E,o[1]};var a=_,i=w,n=S;e.exports=function(m){return r[0]=m,[o[0],o[1]]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}else if(o[0]===1072693248){let _=function(E,m){return o[1]=E,o[0]=m,r[0]},w=function(E){return r[0]=E,o[1]},S=function(E){return r[0]=E,o[0]};var s=_,c=w,h=S;e.exports=function(m){return r[0]=m,[o[1],o[0]]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}else t=!1}if(!t){let _=function(E,m){return l.writeUInt32LE(E,0,!0),l.writeUInt32LE(m,4,!0),l.readDoubleLE(0,!0)},w=function(E){return l.writeDoubleLE(E,0,!0),l.readUInt32LE(0,!0)},S=function(E){return l.writeDoubleLE(E,0,!0),l.readUInt32LE(4,!0)};var v=_,p=w,T=S,l=new Buffer(8);e.exports=function(m){return l.writeDoubleLE(m,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}e.exports.sign=function(_){return e.exports.hi(_)>>>31},e.exports.exponent=function(_){var w=e.exports.hi(_);return(w<<1>>>21)-1023},e.exports.fraction=function(_){var w=e.exports.lo(_),S=e.exports.hi(_),E=S&(1<<20)-1;return S&2146435072&&(E+=1048576),[w,E]},e.exports.denormalized=function(_){var w=e.exports.hi(_);return!(w&2146435072)}},1338:function(e){"use strict";function t(a,i,n){var s=a[n]|0;if(s<=0)return[];var c=new Array(s),h;if(n===a.length-1)for(h=0;h<s;++h)c[h]=i;else for(h=0;h<s;++h)c[h]=t(a,i,n+1);return c}function r(a,i){var n,s;for(n=new Array(a),s=0;s<a;++s)n[s]=i;return n}function o(a,i){switch(typeof i>"u"&&(i=0),typeof a){case"number":if(a>0)return r(a|0,i);break;case"object":if(typeof a.length=="number")return t(a,i,0);break}return[]}e.exports=o},3134:function(e,t,r){"use strict";e.exports=a;var o=r(1682);function a(i,n){var s=i.length;if(typeof n!="number"){n=0;for(var c=0;c<s;++c){var h=i[c];n=Math.max(n,h[0],h[1])}n=(n|0)+1}n=n|0;for(var v=new Array(n),c=0;c<n;++c)v[c]=[];for(var c=0;c<s;++c){var h=i[c];v[h[0]].push(h[1]),v[h[1]].push(h[0])}for(var p=0;p<n;++p)o(v[p],function(T,l){return T-l});return v}},5033:function(e){"use strict";e.exports=t;function t(r,o,a){var i=o||0,n=a||1;return[[r[12]+r[0],r[13]+r[1],r[14]+r[2],r[15]+r[3]],[r[12]-r[0],r[13]-r[1],r[14]-r[2],r[15]-r[3]],[r[12]+r[4],r[13]+r[5],r[14]+r[6],r[15]+r[7]],[r[12]-r[4],r[13]-r[5],r[14]-r[6],r[15]-r[7]],[i*r[12]+r[8],i*r[13]+r[9],i*r[14]+r[10],i*r[15]+r[11]],[n*r[12]-r[8],n*r[13]-r[9],n*r[14]-r[10],n*r[15]-r[11]]]}},9215:function(e,t,r){"use strict";e.exports=h;var o=r(4769),a=r(2478);function i(v,p,T){return Math.min(p,Math.max(v,T))}function n(v,p,T){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var l=0;l<this.dimension;++l)this.bounds[0][l]=-1/0,this.bounds[1][l]=1/0;this._state=v.slice().reverse(),this._velocity=p.slice().reverse(),this._time=[T],this._scratch=[v.slice(),v.slice(),v.slice(),v.slice(),v.slice()]}var s=n.prototype;s.flush=function(v){var p=a.gt(this._time,v)-1;p<=0||(this._time.splice(0,p),this._state.splice(0,p*this.dimension),this._velocity.splice(0,p*this.dimension))},s.curve=function(v){var p=this._time,T=p.length,l=a.le(p,v),_=this._scratch[0],w=this._state,S=this._velocity,E=this.dimension,m=this.bounds;if(l<0)for(var b=E-1,d=0;d<E;++d,--b)_[d]=w[b];else if(l>=T-1)for(var b=w.length-1,u=v-p[T-1],d=0;d<E;++d,--b)_[d]=w[b]+u*S[b];else{for(var b=E*(l+1)-1,y=p[l],f=p[l+1],P=f-y||1,L=this._scratch[1],z=this._scratch[2],F=this._scratch[3],B=this._scratch[4],O=!0,d=0;d<E;++d,--b)L[d]=w[b],F[d]=S[b]*P,z[d]=w[b+E],B[d]=S[b+E]*P,O=O&&L[d]===z[d]&&F[d]===B[d]&&F[d]===0;if(O)for(var d=0;d<E;++d)_[d]=L[d];else o(L,F,z,B,(v-y)/P,_)}for(var I=m[0],N=m[1],d=0;d<E;++d)_[d]=i(I[d],N[d],_[d]);return _},s.dcurve=function(v){var p=this._time,T=p.length,l=a.le(p,v),_=this._scratch[0],w=this._state,S=this._velocity,E=this.dimension;if(l>=T-1)for(var m=w.length-1,b=v-p[T-1],d=0;d<E;++d,--m)_[d]=S[m];else{for(var m=E*(l+1)-1,u=p[l],y=p[l+1],f=y-u||1,P=this._scratch[1],L=this._scratch[2],z=this._scratch[3],F=this._scratch[4],B=!0,d=0;d<E;++d,--m)P[d]=w[m],z[d]=S[m]*f,L[d]=w[m+E],F[d]=S[m+E]*f,B=B&&P[d]===L[d]&&z[d]===F[d]&&z[d]===0;if(B)for(var d=0;d<E;++d)_[d]=0;else{o.derivative(P,z,L,F,(v-u)/f,_);for(var d=0;d<E;++d)_[d]/=f}}return _},s.lastT=function(){var v=this._time;return v[v.length-1]},s.stable=function(){for(var v=this._velocity,p=v.length,T=this.dimension-1;T>=0;--T)if(v[--p])return!1;return!0},s.jump=function(v){var p=this.lastT(),T=this.dimension;if(!(v<p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1];this._time.push(p,v);for(var b=0;b<2;++b)for(var d=0;d<T;++d)l.push(l[w++]),_.push(0);this._time.push(v);for(var d=T;d>0;--d)l.push(i(E[d-1],m[d-1],arguments[d])),_.push(0)}},s.push=function(v){var p=this.lastT(),T=this.dimension;if(!(v<p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=v-p,E=this.bounds,m=E[0],b=E[1],d=S>1e-6?1/S:0;this._time.push(v);for(var u=T;u>0;--u){var y=i(m[u-1],b[u-1],arguments[u]);l.push(y),_.push((y-l[w++])*d)}}},s.set=function(v){var p=this.dimension;if(!(v<this.lastT()||arguments.length!==p+1)){var T=this._state,l=this._velocity,_=this.bounds,w=_[0],S=_[1];this._time.push(v);for(var E=p;E>0;--E)T.push(i(w[E-1],S[E-1],arguments[E])),l.push(0)}},s.move=function(v){var p=this.lastT(),T=this.dimension;if(!(v<=p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1],b=v-p,d=b>1e-6?1/b:0;this._time.push(v);for(var u=T;u>0;--u){var y=arguments[u];l.push(i(E[u-1],m[u-1],l[w++]+y)),_.push(y*d)}}},s.idle=function(v){var p=this.lastT();if(!(v<p)){var T=this.dimension,l=this._state,_=this._velocity,w=l.length-T,S=this.bounds,E=S[0],m=S[1],b=v-p;this._time.push(v);for(var d=T-1;d>=0;--d)l.push(i(E[d],m[d],l[w]+b*_[w])),_.push(0),w+=1}};function c(v){for(var p=new Array(v),T=0;T<v;++T)p[T]=0;return p}function h(v,p,T){switch(arguments.length){case 0:return new n([0],[0],0);case 1:if(typeof v=="number"){var l=c(v);return new n(l,l,0)}else return new n(v,c(v.length),0);case 2:if(typeof p=="number"){var l=c(v.length);return new n(v,l,+p)}else T=0;case 3:if(v.length!==p.length)throw new Error("state and velocity lengths must match");return new n(v,p,T)}}},3840:function(e){"use strict";e.exports=E;var t=0,r=1;function o(m,b,d,u,y,f){this._color=m,this.key=b,this.value=d,this.left=u,this.right=y,this._count=f}function a(m){return new o(m._color,m.key,m.value,m.left,m.right,m._count)}function i(m,b){return new o(m,b.key,b.value,b.left,b.right,b._count)}function n(m){m._count=1+(m.left?m.left._count:0)+(m.right?m.right._count:0)}function s(m,b){this._compare=m,this.root=b}var c=s.prototype;Object.defineProperty(c,"keys",{get:function(){var m=[];return this.forEach(function(b,d){m.push(b)}),m}}),Object.defineProperty(c,"values",{get:function(){var m=[];return this.forEach(function(b,d){m.push(d)}),m}}),Object.defineProperty(c,"length",{get:function(){return this.root?this.root._count:0}}),c.insert=function(m,b){for(var d=this._compare,u=this.root,y=[],f=[];u;){var P=d(m,u.key);y.push(u),f.push(P),P<=0?u=u.left:u=u.right}y.push(new o(t,m,b,null,null,1));for(var L=y.length-2;L>=0;--L){var u=y[L];f[L]<=0?y[L]=new o(u._color,u.key,u.value,y[L+1],u.right,u._count+1):y[L]=new o(u._color,u.key,u.value,u.left,y[L+1],u._count+1)}for(var L=y.length-1;L>1;--L){var z=y[L-1],u=y[L];if(z._color===r||u._color===r)break;var F=y[L-2];if(F.left===z)if(z.left===u){var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.left=z.right,z._color=r,z.right=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.left===F?O.left=z:O.right=z}break}}else{var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(z.right=u.left,F._color=t,F.left=u.right,u._color=r,u.left=z,u.right=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.left===F?O.left=u:O.right=u}break}}else if(z.right===u){var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.right=z.left,z._color=r,z.left=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.right===F?O.right=z:O.left=z}break}}else{var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(z.left=u.right,F._color=t,F.right=u.left,u._color=r,u.right=z,u.left=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.right===F?O.right=u:O.left=u}break}}}return y[0]._color=r,new s(d,y[0])};function h(m,b){if(b.left){var d=h(m,b.left);if(d)return d}var d=m(b.key,b.value);if(d)return d;if(b.right)return h(m,b.right)}function v(m,b,d,u){var y=b(m,u.key);if(y<=0){if(u.left){var f=v(m,b,d,u.left);if(f)return f}var f=d(u.key,u.value);if(f)return f}if(u.right)return v(m,b,d,u.right)}function p(m,b,d,u,y){var f=d(m,y.key),P=d(b,y.key),L;if(f<=0&&(y.left&&(L=p(m,b,d,u,y.left),L)||P>0&&(L=u(y.key,y.value),L)))return L;if(P>0&&y.right)return p(m,b,d,u,y.right)}c.forEach=function(b,d,u){if(this.root)switch(arguments.length){case 1:return h(b,this.root);case 2:return v(d,this._compare,b,this.root);case 3:return this._compare(d,u)>=0?void 0:p(d,u,this._compare,b,this.root)}},Object.defineProperty(c,"begin",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.left;return new T(this,m)}}),Object.defineProperty(c,"end",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.right;return new T(this,m)}}),c.at=function(m){if(m<0)return new T(this,[]);for(var b=this.root,d=[];;){if(d.push(b),b.left){if(m<b.left._count){b=b.left;continue}m-=b.left._count}if(!m)return new T(this,d);if(m-=1,b.right){if(m>=b.right._count)break;b=b.right}else break}return new T(this,[])},c.ge=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<=0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.gt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.lt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.le=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>=0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.find=function(m){for(var b=this._compare,d=this.root,u=[];d;){var y=b(m,d.key);if(u.push(d),y===0)return new T(this,u);y<=0?d=d.left:d=d.right}return new T(this,[])},c.remove=function(m){var b=this.find(m);return b?b.remove():this},c.get=function(m){for(var b=this._compare,d=this.root;d;){var u=b(m,d.key);if(u===0)return d.value;u<=0?d=d.left:d=d.right}};function T(m,b){this.tree=m,this._stack=b}var l=T.prototype;Object.defineProperty(l,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(l,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),l.clone=function(){return new T(this.tree,this._stack.slice())};function _(m,b){m.key=b.key,m.value=b.value,m.left=b.left,m.right=b.right,m._color=b._color,m._count=b._count}function w(m){for(var b,d,u,y,f=m.length-1;f>=0;--f){if(b=m[f],f===0){b._color=r;return}if(d=m[f-1],d.left===b){if(u=d.right,u.right&&u.right._color===t){if(u=d.right=a(u),y=u.right=a(u.right),d.right=u.left,u.left=d,u.right=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u;return}else if(u.left&&u.left._color===t){if(u=d.right=a(u),y=u.left=a(u.left),d.right=y.left,u.left=y.right,y.left=d,y.right=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.left===d?P.left=y:P.right=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.right=i(t,u);return}else{d.right=i(t,u);continue}else{if(u=a(u),d.right=u.left,u.left=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u,m[f]=d,f+1<m.length?m[f+1]=b:m.push(b),f=f+2}}else{if(u=d.left,u.left&&u.left._color===t){if(u=d.left=a(u),y=u.left=a(u.left),d.left=u.right,u.right=d,u.left=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u;return}else if(u.right&&u.right._color===t){if(u=d.left=a(u),y=u.right=a(u.right),d.left=y.right,u.right=y.left,y.right=d,y.left=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.right===d?P.right=y:P.left=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.left=i(t,u);return}else{d.left=i(t,u);continue}else{if(u=a(u),d.left=u.right,u.right=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u,m[f]=d,f+1<m.length?m[f+1]=b:m.push(b),f=f+2}}}}l.remove=function(){var m=this._stack;if(m.length===0)return this.tree;var b=new Array(m.length),d=m[m.length-1];b[b.length-1]=new o(d._color,d.key,d.value,d.left,d.right,d._count);for(var u=m.length-2;u>=0;--u){var d=m[u];d.left===m[u+1]?b[u]=new o(d._color,d.key,d.value,b[u+1],d.right,d._count):b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count)}if(d=b[b.length-1],d.left&&d.right){var y=b.length;for(d=d.left;d.right;)b.push(d),d=d.right;var f=b[y-1];b.push(new o(d._color,f.key,f.value,d.left,d.right,d._count)),b[y-1].key=d.key,b[y-1].value=d.value;for(var u=b.length-2;u>=y;--u)d=b[u],b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count);b[y-1].left=b[y]}if(d=b[b.length-1],d._color===t){var P=b[b.length-2];P.left===d?P.left=null:P.right===d&&(P.right=null),b.pop();for(var u=0;u<b.length;++u)b[u]._count--;return new s(this.tree._compare,b[0])}else if(d.left||d.right){d.left?_(d,d.left):d.right&&_(d,d.right),d._color=r;for(var u=0;u<b.length-1;++u)b[u]._count--;return new s(this.tree._compare,b[0])}else{if(b.length===1)return new s(this.tree._compare,null);for(var u=0;u<b.length;++u)b[u]._count--;var L=b[b.length-2];w(b),L.left===d?L.left=null:L.right=null}return new s(this.tree._compare,b[0])},Object.defineProperty(l,"key",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(l,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(l,"index",{get:function(){var m=0,b=this._stack;if(b.length===0){var d=this.tree.root;return d?d._count:0}else b[b.length-1].left&&(m=b[b.length-1].left._count);for(var u=b.length-2;u>=0;--u)b[u+1]===b[u].right&&(++m,b[u].left&&(m+=b[u].left._count));return m},enumerable:!0}),l.next=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.right)for(b=b.right;b;)m.push(b),b=b.left;else for(m.pop();m.length>0&&m[m.length-1].right===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasNext",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].right)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].left===m[b])return!0;return!1}}),l.update=function(m){var b=this._stack;if(b.length===0)throw new Error("Can't update empty node!");var d=new Array(b.length),u=b[b.length-1];d[d.length-1]=new o(u._color,u.key,m,u.left,u.right,u._count);for(var y=b.length-2;y>=0;--y)u=b[y],u.left===b[y+1]?d[y]=new o(u._color,u.key,u.value,d[y+1],u.right,u._count):d[y]=new o(u._color,u.key,u.value,u.left,d[y+1],u._count);return new s(this.tree._compare,d[0])},l.prev=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.left)for(b=b.left;b;)m.push(b),b=b.right;else for(m.pop();m.length>0&&m[m.length-1].left===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasPrev",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].left)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].right===m[b])return!0;return!1}});function S(m,b){return m<b?-1:m>b?1:0}function E(m){return new s(m||S,null)}},3837:function(e,t,r){"use strict";e.exports=L;var o=r(4935),a=r(501),i=r(5304),n=r(6429),s=r(6444),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),h=ArrayBuffer,v=DataView;function p(z){return h.isView(z)&&!(z instanceof v)}function T(z){return Array.isArray(z)||p(z)}function l(z,F){return z[0]=F[0],z[1]=F[1],z[2]=F[2],z}function _(z){this.gl=z,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=i(z)}var w=_.prototype;w.update=function(z){z=z||{};function F(Z,re,ne){if(ne in z){var j=z[ne],ee=this[ne],ie;(Z?T(j)&&T(j[0]):T(j))?this[ne]=ie=[re(j[0]),re(j[1]),re(j[2])]:this[ne]=ie=[re(j),re(j),re(j)];for(var fe=0;fe<3;++fe)if(ie[fe]!==ee[fe])return!0}return!1}var B=F.bind(this,!1,Number),O=F.bind(this,!1,Boolean),I=F.bind(this,!1,String),N=F.bind(this,!0,function(Z){if(T(Z)){if(Z.length===3)return[+Z[0],+Z[1],+Z[2],1];if(Z.length===4)return[+Z[0],+Z[1],+Z[2],+Z[3]]}return[0,0,0,1]}),U,W=!1,Q=!1;if("bounds"in z)for(var ue=z.bounds,se=0;se<2;++se)for(var he=0;he<3;++he)ue[se][he]!==this.bounds[se][he]&&(Q=!0),this.bounds[se][he]=ue[se][he];if("ticks"in z){U=z.ticks,W=!0,this.autoTicks=!1;for(var se=0;se<3;++se)this.tickSpacing[se]=0}else B("tickSpacing")&&(this.autoTicks=!0,Q=!0);if(this._firstInit&&("ticks"in z||"tickSpacing"in z||(this.autoTicks=!0),Q=!0,W=!0,this._firstInit=!1),Q&&this.autoTicks&&(U=s.create(this.bounds,this.tickSpacing),W=!0),W){for(var se=0;se<3;++se)U[se].sort(function(re,ne){return re.x-ne.x});s.equal(U,this.ticks)?W=!1:this.ticks=U}O("tickEnable"),I("tickFont")&&(W=!0),I("tickFontStyle")&&(W=!0),I("tickFontWeight")&&(W=!0),I("tickFontVariant")&&(W=!0),B("tickSize"),B("tickAngle"),B("tickPad"),N("tickColor");var G=I("labels");I("labelFont")&&(G=!0),I("labelFontStyle")&&(G=!0),I("labelFontWeight")&&(G=!0),I("labelFontVariant")&&(G=!0),O("labelEnable"),B("labelSize"),B("labelPad"),N("labelColor"),O("lineEnable"),O("lineMirror"),B("lineWidth"),N("lineColor"),O("lineTickEnable"),O("lineTickMirror"),B("lineTickLength"),B("lineTickWidth"),N("lineTickColor"),O("gridEnable"),B("gridWidth"),N("gridColor"),O("zeroEnable"),N("zeroLineColor"),B("zeroLineWidth"),O("backgroundEnable"),N("backgroundColor");var $=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],J=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(G||W)&&this._text.update(this.bounds,this.labels,$,this.ticks,J):this._text=o(this.gl,this.bounds,this.labels,$,this.ticks,J),this._lines&&W&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=a(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var E=[new S,new S,new S];function m(z,F,B,O,I){for(var N=z.primalOffset,U=z.primalMinor,W=z.mirrorOffset,Q=z.mirrorMinor,ue=O[F],se=0;se<3;++se)if(F!==se){var he=N,G=W,$=U,J=Q;ue&1<<se&&(he=W,G=N,$=Q,J=U),he[se]=B[0][se],G[se]=B[1][se],I[se]>0?($[se]=-1,J[se]=0):($[se]=0,J[se]=1)}}var b=[0,0,0],d={model:c,view:c,projection:c,_ortho:!1};w.isOpaque=function(){return!0},w.isTransparent=function(){return!1},w.drawTransparent=function(z){};var u=0,y=[0,0,0],f=[0,0,0],P=[0,0,0];w.draw=function(z){z=z||d;for(var ne=this.gl,F=z.model||c,B=z.view||c,O=z.projection||c,I=this.bounds,N=z._ortho||!1,U=n(F,B,O,I,N),W=U.cubeEdges,Q=U.axis,ue=B[12],se=B[13],he=B[14],G=B[15],$=N?2:1,J=$*this.pixelRatio*(O[3]*ue+O[7]*se+O[11]*he+O[15]*G)/ne.drawingBufferHeight,Z=0;Z<3;++Z)this.lastCubeProps.cubeEdges[Z]=W[Z],this.lastCubeProps.axis[Z]=Q[Z];for(var re=E,Z=0;Z<3;++Z)m(E[Z],Z,this.bounds,W,Q);for(var ne=this.gl,j=b,Z=0;Z<3;++Z)this.backgroundEnable[Z]?j[Z]=Q[Z]:j[Z]=0;this._background.draw(F,B,O,I,j,this.backgroundColor),this._lines.bind(F,B,O,this);for(var Z=0;Z<3;++Z){var ee=[0,0,0];Q[Z]>0?ee[Z]=I[1][Z]:ee[Z]=I[0][Z];for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.gridEnable[fe]&&this._lines.drawGrid(fe,be,this.bounds,ee,this.gridColor[fe],this.gridWidth[fe]*this.pixelRatio)}for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.zeroEnable[be]&&Math.min(I[0][be],I[1][be])<=0&&Math.max(I[0][be],I[1][be])>=0&&this._lines.drawZero(fe,be,this.bounds,ee,this.zeroLineColor[be],this.zeroLineWidth[be]*this.pixelRatio)}}for(var Z=0;Z<3;++Z){this.lineEnable[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].primalOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio),this.lineMirror[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].mirrorOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio);for(var Ae=l(y,re[Z].primalMinor),Be=l(f,re[Z].mirrorMinor),Ie=this.lineTickLength,ie=0;ie<3;++ie){var Ze=J/F[5*ie];Ae[ie]*=Ie[ie]*Ze,Be[ie]*=Ie[ie]*Ze}this.lineTickEnable[Z]&&this._lines.drawAxisTicks(Z,re[Z].primalOffset,Ae,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio),this.lineTickMirror[Z]&&this._lines.drawAxisTicks(Z,re[Z].mirrorOffset,Be,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio)}this._lines.unbind(),this._text.bind(F,B,O,this.pixelRatio);var at,it=.5,et,lt;function Me(Qe){lt=[0,0,0],lt[Qe]=1}function ge(Qe,Ct,St){var Ot=(Qe+1)%3,jt=(Qe+2)%3,ur=Ct[Ot],ar=Ct[jt],Cr=St[Ot],vr=St[jt];if(ur>0&&vr>0){Me(Ot);return}else if(ur>0&&vr<0){Me(Ot);return}else if(ur<0&&vr>0){Me(Ot);return}else if(ur<0&&vr<0){Me(Ot);return}else if(ar>0&&Cr>0){Me(jt);return}else if(ar>0&&Cr<0){Me(jt);return}else if(ar<0&&Cr>0){Me(jt);return}else if(ar<0&&Cr<0){Me(jt);return}}for(var Z=0;Z<3;++Z){for(var ce=re[Z].primalMinor,ze=re[Z].mirrorMinor,tt=l(P,re[Z].primalOffset),ie=0;ie<3;++ie)this.lineTickEnable[Z]&&(tt[ie]+=J*ce[ie]*Math.max(this.lineTickLength[ie],0)/F[5*ie]);var nt=[0,0,0];if(nt[Z]=1,this.tickEnable[Z]){this.tickAngle[Z]===-3600?(this.tickAngle[Z]=0,this.tickAlign[Z]="auto"):this.tickAlign[Z]=-1,et=1,at=[this.tickAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]),lt=[0,0,0],ge(Z,ce,ze);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.tickPad[ie]/F[5*ie];this._text.drawTicks(Z,this.tickSize[Z],this.tickAngle[Z],tt,this.tickColor[Z],nt,lt,at)}if(this.labelEnable[Z]){et=0,lt=[0,0,0],this.labels[Z].length>4&&(Me(Z),et=1),at=[this.labelAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.labelPad[ie]/F[5*ie];tt[Z]+=.5*(I[0][Z]+I[1][Z]),this._text.drawLabel(Z,this.labelSize[Z],this.labelAngle[Z],tt,this.labelColor[Z],[0,0,0],lt,at)}}this._text.unbind()},w.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function L(z,F){var B=new _(z);return B.update(F),B}},5304:function(e,t,r){"use strict";e.exports=c;var o=r(2762),a=r(8116),i=r(1879).bg;function n(h,v,p,T){this.gl=h,this.buffer=v,this.vao=p,this.shader=T}var s=n.prototype;s.draw=function(h,v,p,T,l,_){for(var w=!1,S=0;S<3;++S)w=w||l[S];if(w){var E=this.gl;E.enable(E.POLYGON_OFFSET_FILL),E.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:h,view:v,projection:p,bounds:T,enable:l,colors:_},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),E.disable(E.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function c(h){for(var v=[],p=[],T=0,l=0;l<3;++l)for(var _=(l+1)%3,w=(l+2)%3,S=[0,0,0],E=[0,0,0],m=-1;m<=1;m+=2){p.push(T,T+2,T+1,T+1,T+2,T+3),S[l]=m,E[l]=m;for(var b=-1;b<=1;b+=2){S[_]=b;for(var d=-1;d<=1;d+=2)S[w]=d,v.push(S[0],S[1],S[2],E[0],E[1],E[2]),T+=1}var u=_;_=w,w=u}var y=o(h,new Float32Array(v)),f=o(h,new Uint16Array(p),h.ELEMENT_ARRAY_BUFFER),P=a(h,[{buffer:y,type:h.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:h.FLOAT,size:3,offset:12,stride:24}],f),L=i(h);return L.attributes.position.location=0,L.attributes.normal.location=1,new n(h,y,P,L)}},6429:function(e,t,r){"use strict";e.exports=m;var o=r(8828),a=r(6760),i=r(5202),n=r(3250),s=new Array(16),c=new Array(8),h=new Array(8),v=new Array(3),p=[0,0,0];(function(){for(var b=0;b<8;++b)c[b]=[1,1,1,1],h[b]=[1,1,1]})();function T(b,d,u){for(var y=0;y<4;++y){b[y]=u[12+y];for(var f=0;f<3;++f)b[y]+=d[f]*u[4*f+y]}}var l=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function _(b){for(var d=0;d<l.length;++d)if(b=i.positive(b,l[d]),b.length<3)return 0;for(var u=b[0],y=u[0]/u[3],f=u[1]/u[3],P=0,d=1;d+1<b.length;++d){var L=b[d],z=b[d+1],F=L[0]/L[3],B=L[1]/L[3],O=z[0]/z[3],I=z[1]/z[3],N=F-y,U=B-f,W=O-y,Q=I-f;P+=Math.abs(N*Q-U*W)}return P}var w=[1,1,1],S=[0,0,0],E={cubeEdges:w,axis:S};function m(b,d,u,y,f){a(s,d,b),a(s,u,s);for(var P=0,L=0;L<2;++L){v[2]=y[L][2];for(var z=0;z<2;++z){v[1]=y[z][1];for(var F=0;F<2;++F)v[0]=y[F][0],T(c[P],v,s),P+=1}}for(var B=-1,L=0;L<8;++L){for(var O=c[L][3],I=0;I<3;++I)h[L][I]=c[L][I]/O;f&&(h[L][2]*=-1),O<0&&(B<0||h[L][2]<h[B][2])&&(B=L)}if(B<0){B=0;for(var N=0;N<3;++N){for(var U=(N+2)%3,W=(N+1)%3,Q=-1,ue=-1,se=0;se<2;++se){var he=se<<N,G=he+(se<<U)+(1-se<<W),$=he+(1-se<<U)+(se<<W);n(h[he],h[G],h[$],p)<0||(se?Q=1:ue=1)}if(Q<0||ue<0){ue>Q&&(B|=1<<N);continue}for(var se=0;se<2;++se){var he=se<<N,G=he+(se<<U)+(1-se<<W),$=he+(1-se<<U)+(se<<W),J=_([c[he],c[G],c[$],c[he+(1<<U)+(1<<W)]]);se?Q=J:ue=J}if(ue>Q){B|=1<<N;continue}}}for(var Z=7^B,re=-1,L=0;L<8;++L)L===B||L===Z||(re<0||h[re][1]>h[L][1])&&(re=L);for(var ne=-1,L=0;L<3;++L){var j=re^1<<L;if(!(j===B||j===Z)){ne<0&&(ne=j);var W=h[j];W[0]<h[ne][0]&&(ne=j)}}for(var ee=-1,L=0;L<3;++L){var j=re^1<<L;if(!(j===B||j===Z||j===ne)){ee<0&&(ee=j);var W=h[j];W[0]>h[ee][0]&&(ee=j)}}var ie=w;ie[0]=ie[1]=ie[2]=0,ie[o.log2(ne^re)]=re&ne,ie[o.log2(re^ee)]=re&ee;var fe=ee^7;fe===B||fe===Z?(fe=ne^7,ie[o.log2(ee^fe)]=fe&ee):ie[o.log2(ne^fe)]=fe&ne;for(var be=S,Ae=B,N=0;N<3;++N)Ae&1<<N?be[N]=-1:be[N]=1;return E}},501:function(e,t,r){"use strict";e.exports=w;var o=r(2762),a=r(8116),i=r(1879).n,n=[0,0,0],s=[0,0,0],c=[0,0,0],h=[0,0,0],v=[1,1];function p(S){return S[0]=S[1]=S[2]=0,S}function T(S,E){return S[0]=E[0],S[1]=E[1],S[2]=E[2],S}function l(S,E,m,b,d,u,y,f){this.gl=S,this.vertBuffer=E,this.vao=m,this.shader=b,this.tickCount=d,this.tickOffset=u,this.gridCount=y,this.gridOffset=f}var _=l.prototype;_.bind=function(S,E,m){this.shader.bind(),this.shader.uniforms.model=S,this.shader.uniforms.view=E,this.shader.uniforms.projection=m,v[0]=this.gl.drawingBufferWidth,v[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=v,this.vao.bind()},_.unbind=function(){this.vao.unbind()},_.drawAxisLine=function(S,E,m,b,d){var u=p(s);this.shader.uniforms.majorAxis=s,u[S]=E[1][S]-E[0][S],this.shader.uniforms.minorAxis=u;var y=T(h,m);y[S]+=E[0][S],this.shader.uniforms.offset=y,this.shader.uniforms.lineWidth=d,this.shader.uniforms.color=b;var f=p(c);f[(S+2)%3]=1,this.shader.uniforms.screenAxis=f,this.vao.draw(this.gl.TRIANGLES,6);var f=p(c);f[(S+1)%3]=1,this.shader.uniforms.screenAxis=f,this.vao.draw(this.gl.TRIANGLES,6)},_.drawAxisTicks=function(S,E,m,b,d){if(this.tickCount[S]){var u=p(n);u[S]=1,this.shader.uniforms.majorAxis=u,this.shader.uniforms.offset=E,this.shader.uniforms.minorAxis=m,this.shader.uniforms.color=b,this.shader.uniforms.lineWidth=d;var y=p(c);y[S]=1,this.shader.uniforms.screenAxis=y,this.vao.draw(this.gl.TRIANGLES,this.tickCount[S],this.tickOffset[S])}},_.drawGrid=function(S,E,m,b,d,u){if(this.gridCount[S]){var y=p(s);y[E]=m[1][E]-m[0][E],this.shader.uniforms.minorAxis=y;var f=T(h,b);f[E]+=m[0][E],this.shader.uniforms.offset=f;var P=p(n);P[S]=1,this.shader.uniforms.majorAxis=P;var L=p(c);L[S]=1,this.shader.uniforms.screenAxis=L,this.shader.uniforms.lineWidth=u,this.shader.uniforms.color=d,this.vao.draw(this.gl.TRIANGLES,this.gridCount[S],this.gridOffset[S])}},_.drawZero=function(S,E,m,b,d,u){var y=p(s);this.shader.uniforms.majorAxis=y,y[S]=m[1][S]-m[0][S],this.shader.uniforms.minorAxis=y;var f=T(h,b);f[S]+=m[0][S],this.shader.uniforms.offset=f;var P=p(c);P[E]=1,this.shader.uniforms.screenAxis=P,this.shader.uniforms.lineWidth=u,this.shader.uniforms.color=d,this.vao.draw(this.gl.TRIANGLES,6)},_.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()};function w(S,E,m){var b=[],d=[0,0,0],u=[0,0,0],y=[0,0,0],f=[0,0,0];b.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var P=0;P<3;++P){for(var F=b.length/3|0,L=0;L<m[P].length;++L){var z=+m[P][L].x;b.push(z,0,1,z,1,1,z,0,-1,z,0,-1,z,1,1,z,1,-1)}var O=b.length/3|0;d[P]=F,u[P]=O-F;for(var F=b.length/3|0,B=0;B<m[P].length;++B){var z=+m[P][B].x;b.push(z,0,1,z,1,1,z,0,-1,z,0,-1,z,1,1,z,1,-1)}var O=b.length/3|0;y[P]=F,f[P]=O-F}var I=o(S,new Float32Array(b)),N=a(S,[{buffer:I,type:S.FLOAT,size:3,stride:0,offset:0}]),U=i(S);return U.attributes.position.location=0,new l(S,I,N,U,u,d,f,y)}},1879:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+uniform vec3 offset, majorAxis, minorAxis, screenAxis;
+uniform float lineWidth;
+uniform vec2 screenShape;
+
+vec3 project(vec3 p) {
+ vec4 pp = projection * (view * (model * vec4(p, 1.0)));
+ return pp.xyz / max(pp.w, 0.0001);
+}
+
+void main() {
+ vec3 major = position.x * majorAxis;
+ vec3 minor = position.y * minorAxis;
+
+ vec3 vPosition = major + minor + offset;
+ vec3 pPosition = project(vPosition);
+ vec3 offset = project(vPosition + screenAxis * position.z);
+
+ vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;
+
+ gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);
+}
+`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 color;
+void main() {
+ gl_FragColor = color;
+}`]);t.n=function(p){return a(p,i,n,null,[{name:"position",type:"vec3"}])};var s=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+uniform vec3 offset, axis, alignDir, alignOpt;
+uniform float scale, angle, pixelScale;
+uniform vec2 resolution;
+
+vec3 project(vec3 p) {
+ vec4 pp = projection * (view * (model * vec4(p, 1.0)));
+ return pp.xyz / max(pp.w, 0.0001);
+}
+
+float computeViewAngle(vec3 a, vec3 b) {
+ vec3 A = project(a);
+ vec3 B = project(b);
+
+ return atan(
+ (B.y - A.y) * resolution.y,
+ (B.x - A.x) * resolution.x
+ );
+}
+
+const float PI = 3.141592;
+const float TWO_PI = 2.0 * PI;
+const float HALF_PI = 0.5 * PI;
+const float ONE_AND_HALF_PI = 1.5 * PI;
+
+int option = int(floor(alignOpt.x + 0.001));
+float hv_ratio = alignOpt.y;
+bool enableAlign = (alignOpt.z != 0.0);
+
+float mod_angle(float a) {
+ return mod(a, PI);
+}
+
+float positive_angle(float a) {
+ return mod_angle((a < 0.0) ?
+ a + TWO_PI :
+ a
+ );
+}
+
+float look_upwards(float a) {
+ float b = positive_angle(a);
+ return ((b > HALF_PI) && (b <= ONE_AND_HALF_PI)) ?
+ b - PI :
+ b;
+}
+
+float look_horizontal_or_vertical(float a, float ratio) {
+ // ratio controls the ratio between being horizontal to (vertical + horizontal)
+ // if ratio is set to 0.5 then it is 50%, 50%.
+ // when using a higher ratio e.g. 0.75 the result would
+ // likely be more horizontal than vertical.
+
+ float b = positive_angle(a);
+
+ return
+ (b < ( ratio) * HALF_PI) ? 0.0 :
+ (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :
+ (b < (2.0 + ratio) * HALF_PI) ? 0.0 :
+ (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :
+ 0.0;
+}
+
+float roundTo(float a, float b) {
+ return float(b * floor((a + 0.5 * b) / b));
+}
+
+float look_round_n_directions(float a, int n) {
+ float b = positive_angle(a);
+ float div = TWO_PI / float(n);
+ float c = roundTo(b, div);
+ return look_upwards(c);
+}
+
+float applyAlignOption(float rawAngle, float delta) {
+ return
+ (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions
+ (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical
+ (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis
+ (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards
+ (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal
+ rawAngle; // otherwise return back raw input angle
+}
+
+bool isAxisTitle = (axis.x == 0.0) &&
+ (axis.y == 0.0) &&
+ (axis.z == 0.0);
+
+void main() {
+ //Compute world offset
+ float axisDistance = position.z;
+ vec3 dataPosition = axisDistance * axis + offset;
+
+ float beta = angle; // i.e. user defined attributes for each tick
+
+ float axisAngle;
+ float clipAngle;
+ float flip;
+
+ if (enableAlign) {
+ axisAngle = (isAxisTitle) ? HALF_PI :
+ computeViewAngle(dataPosition, dataPosition + axis);
+ clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);
+
+ axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;
+ clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;
+
+ flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),
+ vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;
+
+ beta += applyAlignOption(clipAngle, flip * PI);
+ }
+
+ //Compute plane offset
+ vec2 planeCoord = position.xy * pixelScale;
+
+ mat2 planeXform = scale * mat2(
+ cos(beta), sin(beta),
+ -sin(beta), cos(beta)
+ );
+
+ vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;
+
+ //Compute clip position
+ vec3 clipPosition = project(dataPosition);
+
+ //Apply text offset in clip coordinates
+ clipPosition += vec3(viewOffset, 0.0);
+
+ //Done
+ gl_Position = vec4(clipPosition, 1.0);
+}
+`]),c=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 color;
+void main() {
+ gl_FragColor = color;
+}`]);t.Q=function(p){return a(p,s,c,null,[{name:"position",type:"vec3"}])};var h=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec3 normal;
+
+uniform mat4 model, view, projection;
+uniform vec3 enable;
+uniform vec3 bounds[2];
+
+varying vec3 colorChannel;
+
+void main() {
+
+ vec3 signAxis = sign(bounds[1] - bounds[0]);
+
+ vec3 realNormal = signAxis * normal;
+
+ if(dot(realNormal, enable) > 0.0) {
+ vec3 minRange = min(bounds[0], bounds[1]);
+ vec3 maxRange = max(bounds[0], bounds[1]);
+ vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));
+ gl_Position = projection * (view * (model * vec4(nPosition, 1.0)));
+ } else {
+ gl_Position = vec4(0,0,0,0);
+ }
+
+ colorChannel = abs(realNormal);
+}
+`]),v=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 colors[3];
+
+varying vec3 colorChannel;
+
+void main() {
+ gl_FragColor = colorChannel.x * colors[0] +
+ colorChannel.y * colors[1] +
+ colorChannel.z * colors[2];
+}`]);t.bg=function(p){return a(p,h,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(e,t,r){"use strict";e.exports=_;var o=r(2762),a=r(8116),i=r(4359),n=r(1879).Q,s=window||process.global||{},c=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};var h=3;function v(w,S,E,m){this.gl=w,this.shader=S,this.buffer=E,this.vao=m,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var p=v.prototype,T=[0,0];p.bind=function(w,S,E,m){this.vao.bind(),this.shader.bind();var b=this.shader.uniforms;b.model=w,b.view=S,b.projection=E,b.pixelScale=m,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},p.unbind=function(){this.vao.unbind()},p.update=function(w,S,E,m,b){var d=[];function u(N,U,W,Q,ue,se){var he=[W.style,W.weight,W.variant,W.family].join("_"),G=c[he];G||(G=c[he]={});var $=G[U];$||($=G[U]=l(U,{triangles:!0,font:W.family,fontStyle:W.style,fontWeight:W.weight,fontVariant:W.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ue,styletags:se}));for(var J=(Q||12)/12,Z=$.positions,re=$.cells,ne=0,j=re.length;ne<j;++ne)for(var ee=re[ne],ie=2;ie>=0;--ie){var fe=Z[ee[ie]];d.push(J*fe[0],-J*fe[1],N)}}for(var y=[0,0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0],z=1.25,F={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},B=0;B<3;++B){P[B]=d.length/h|0,u(.5*(w[0][B]+w[1][B]),S[B],E[B],12,z,F),L[B]=(d.length/h|0)-P[B],y[B]=d.length/h|0;for(var O=0;O<m[B].length;++O)if(m[B][O].text){var I={family:m[B][O].font||b[B].family,style:b[B].fontStyle||b[B].style,weight:b[B].fontWeight||b[B].weight,variant:b[B].fontVariant||b[B].variant};u(m[B][O].x,m[B][O].text,I,m[B][O].fontSize||12,z,F)}f[B]=(d.length/h|0)-y[B]}this.buffer.update(d),this.tickOffset=y,this.tickCount=f,this.labelOffset=P,this.labelCount=L},p.drawTicks=function(w,S,E,m,b,d,u,y){this.tickCount[w]&&(this.shader.uniforms.axis=d,this.shader.uniforms.color=b,this.shader.uniforms.angle=E,this.shader.uniforms.scale=S,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=u,this.shader.uniforms.alignOpt=y,this.vao.draw(this.gl.TRIANGLES,this.tickCount[w],this.tickOffset[w]))},p.drawLabel=function(w,S,E,m,b,d,u,y){this.labelCount[w]&&(this.shader.uniforms.axis=d,this.shader.uniforms.color=b,this.shader.uniforms.angle=E,this.shader.uniforms.scale=S,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=u,this.shader.uniforms.alignOpt=y,this.vao.draw(this.gl.TRIANGLES,this.labelCount[w],this.labelOffset[w]))},p.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()};function l(w,S){try{return i(w,S)}catch(E){return console.warn('error vectorizing text:"'+w+'" error:',E),{cells:[],positions:[]}}}function _(w,S,E,m,b,d){var u=o(w),y=a(w,[{buffer:u,size:3}]),f=n(w);f.attributes.position.location=0;var P=new v(w,f,u,y);return P.update(S,E,m,b,d),P}},6444:function(e,t){"use strict";t.create=o,t.equal=a;function r(i,n){var s=i+"",c=s.indexOf("."),h=0;c>=0&&(h=s.length-c-1);var v=Math.pow(10,h),p=Math.round(i*n*v),T=p+"";if(T.indexOf("e")>=0)return T;var l=p/v,_=p%v;p<0?(l=-Math.ceil(l)|0,_=-_|0):(l=Math.floor(l)|0,_=_|0);var w=""+l;if(p<0&&(w="-"+w),h){for(var S=""+_;S.length<h;)S="0"+S;return w+"."+S}else return w}function o(i,n){for(var s=[],c=0;c<3;++c){for(var h=[],v=.5*(i[0][c]+i[1][c]),p=0;p*n[c]<=i[1][c];++p)h.push({x:p*n[c],text:r(n[c],p)});for(var p=-1;p*n[c]>=i[0][c];--p)h.push({x:p*n[c],text:r(n[c],p)});s.push(h)}return s}function a(i,n){for(var s=0;s<3;++s){if(i[s].length!==n[s].length)return!1;for(var c=0;c<i[s].length;++c){var h=i[s][c],v=n[s][c];if(h.x!==v.x||h.text!==v.text||h.font!==v.font||h.fontColor!==v.fontColor||h.fontSize!==v.fontSize||h.dx!==v.dx||h.dy!==v.dy)return!1}}return!0}},5445:function(e,t,r){"use strict";e.exports=E;var o=r(5033),a=r(5202),i=r(6429),n=r(6760),s=r(5665),c=r(5352),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),v=new Float32Array(16);function p(m,b,d){this.lo=m,this.hi=b,this.pixelsPerDataUnit=d}var T=[0,0,0,1],l=[0,0,0,1];function _(m,b,d,u,y){for(var f=0;f<3;++f){for(var P=T,L=l,z=0;z<3;++z)L[z]=P[z]=d[z];L[3]=P[3]=1,L[f]+=1,c(L,L,b),L[3]<0&&(m[f]=1/0),P[f]-=1,c(P,P,b),P[3]<0&&(m[f]=1/0);var F=(P[0]/P[3]-L[0]/L[3])*u,B=(P[1]/P[3]-L[1]/L[3])*y;m[f]=.25*Math.sqrt(F*F+B*B)}return m}var w=[new p(1/0,-1/0,1/0),new p(1/0,-1/0,1/0),new p(1/0,-1/0,1/0)],S=[0,0,0];function E(m,b,d,u,B){var f=b.model||h,P=b.view||h,L=b.projection||h,z=b._ortho||!1,F=m.bounds,B=B||i(f,P,L,F,z),O=B.axis;n(v,P,f),n(v,L,v);for(var I=w,N=0;N<3;++N)I[N].lo=1/0,I[N].hi=-1/0,I[N].pixelsPerDataUnit=1/0;var U=o(s(v,v));s(v,v);for(var W=0;W<3;++W){var Q=(W+1)%3,ue=(W+2)%3,se=S;e:for(var N=0;N<2;++N){var he=[];if(O[W]<0!=!!N){se[W]=F[N][W];for(var G=0;G<2;++G){se[Q]=F[G^N][Q];for(var $=0;$<2;++$)se[ue]=F[$^G^N][ue],he.push(se.slice())}for(var J=z?5:4,G=J;G===J;++G){if(he.length===0)continue e;he=a.positive(he,U[G])}for(var G=0;G<he.length;++G)for(var ue=he[G],Z=_(S,v,ue,d,u),$=0;$<3;++$)I[$].lo=Math.min(I[$].lo,ue[$]),I[$].hi=Math.max(I[$].hi,ue[$]),$!==W&&(I[$].pixelsPerDataUnit=Math.min(I[$].pixelsPerDataUnit,Math.abs(Z[$])))}}}return I}},2762:function(e,t,r){"use strict";var o=r(1888),a=r(5298),i=r(9618),n=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function s(l,_,w,S,E){this.gl=l,this.type=_,this.handle=w,this.length=S,this.usage=E}var c=s.prototype;c.bind=function(){this.gl.bindBuffer(this.type,this.handle)},c.unbind=function(){this.gl.bindBuffer(this.type,null)},c.dispose=function(){this.gl.deleteBuffer(this.handle)};function h(l,_,w,S,E,m){var b=E.length*E.BYTES_PER_ELEMENT;if(m<0)return l.bufferData(_,E,S),b;if(b+m>w)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return l.bufferSubData(_,m,E),w}function v(l,_){for(var w=o.malloc(l.length,_),S=l.length,E=0;E<S;++E)w[E]=l[E];return w}function p(l,_){for(var w=1,S=_.length-1;S>=0;--S){if(_[S]!==w)return!1;w*=l[S]}return!0}c.update=function(l,_){if(typeof _!="number"&&(_=-1),this.bind(),typeof l=="object"&&typeof l.shape<"u"){var w=l.dtype;if(n.indexOf(w)<0&&(w="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&w!=="uint16"?w="uint32":w="uint16"}if(w===l.dtype&&p(l.shape,l.stride))l.offset===0&&l.data.length===l.shape[0]?this.length=h(this.gl,this.type,this.length,this.usage,l.data,_):this.length=h(this.gl,this.type,this.length,this.usage,l.data.subarray(l.offset,l.shape[0]),_);else{var E=o.malloc(l.size,w),m=i(E,l.shape);a.assign(m,l),_<0?this.length=h(this.gl,this.type,this.length,this.usage,E,_):this.length=h(this.gl,this.type,this.length,this.usage,E.subarray(0,l.size),_),o.free(E)}}else if(Array.isArray(l)){var b;this.type===this.gl.ELEMENT_ARRAY_BUFFER?b=v(l,"uint16"):b=v(l,"float32"),_<0?this.length=h(this.gl,this.type,this.length,this.usage,b,_):this.length=h(this.gl,this.type,this.length,this.usage,b.subarray(0,l.length),_),o.free(b)}else if(typeof l=="object"&&typeof l.length=="number")this.length=h(this.gl,this.type,this.length,this.usage,l,_);else if(typeof l=="number"||l===void 0){if(_>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");l=l|0,l<=0&&(l=1),this.gl.bufferData(this.type,l|0,this.usage),this.length=l}else throw new Error("gl-buffer: Invalid data type")};function T(l,_,w,S){if(w=w||l.ARRAY_BUFFER,S=S||l.DYNAMIC_DRAW,w!==l.ARRAY_BUFFER&&w!==l.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==l.DYNAMIC_DRAW&&S!==l.STATIC_DRAW&&S!==l.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var E=l.createBuffer(),m=new s(l,w,E,0,S);return m.update(_),m}e.exports=T},6405:function(e,t,r){"use strict";var o=r(2931);e.exports=function(i,n){var s=i.positions,c=i.vectors,h={positions:[],vertexIntensity:[],vertexIntensityBounds:i.vertexIntensityBounds,vectors:[],cells:[],coneOffset:i.coneOffset,colormap:i.colormap};if(i.positions.length===0)return n&&(n[0]=[0,0,0],n[1]=[0,0,0]),h;for(var v=0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S=-1/0,E=null,m=null,b=[],d=1/0,u=!1,y=i.coneSizemode==="raw",f=0;f<s.length;f++){var P=s[f];p=Math.min(P[0],p),T=Math.max(P[0],T),l=Math.min(P[1],l),_=Math.max(P[1],_),w=Math.min(P[2],w),S=Math.max(P[2],S);var L=c[f];if(o.length(L)>v&&(v=o.length(L)),f&&!y){var z=2*o.distance(E,P)/(o.length(m)+o.length(L));z?(d=Math.min(d,z),u=!1):u=!0}u||(E=P,m=L),b.push(L)}var F=[p,l,w],B=[T,_,S];n&&(n[0]=F,n[1]=B),v===0&&(v=1);var O=1/v;isFinite(d)||(d=1),h.vectorScale=d;var I=i.coneSize||(y?1:.5);i.absoluteConeSize&&(I=i.absoluteConeSize*O),h.coneScale=I;for(var f=0,N=0;f<s.length;f++)for(var P=s[f],U=P[0],W=P[1],Q=P[2],ue=b[f],se=o.length(ue)*O,he=0,G=8;he<G;he++){h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vertexIntensity.push(se,se,se),h.vertexIntensity.push(se,se,se);var $=h.positions.length;h.cells.push([$-6,$-5,$-4],[$-3,$-2,$-1])}return h};var a=r(614);e.exports.createMesh=r(9060),e.exports.createConeMesh=function(i,n){return e.exports.createMesh(i,n,{shaders:a,traceType:"cone"})}},9060:function(e,t,r){"use strict";var o=r(9405),a=r(2762),i=r(8116),n=r(7766),s=r(6760),c=r(7608),h=r(9618),v=r(6729),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(b,d,u,y,f,P,L,z,F,B,O){this.gl=b,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=d,this.dirty=!0,this.triShader=u,this.pickShader=y,this.trianglePositions=f,this.triangleVectors=P,this.triangleColors=z,this.triangleUVs=F,this.triangleIds=L,this.triangleVAO=B,this.triangleCount=0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.traceType=O,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=p,this._view=p,this._projection=p,this._resolution=[1,1]}var l=T.prototype;l.isOpaque=function(){return this.opacity>=1},l.isTransparent=function(){return this.opacity<1},l.pickSlots=1,l.setPickBase=function(b){this.pickId=b};function _(b){for(var d=v({colormap:b,nshades:256,format:"rgba"}),u=new Uint8Array(256*4),y=0;y<256;++y){for(var f=d[y],P=0;P<3;++P)u[4*y+P]=f[P];u[4*y+3]=f[3]*255}return h(u,[256,256,4],[4,0,1])}function w(b){for(var d=b.length,u=new Array(d),y=0;y<d;++y)u[y]=b[y][2];return u}l.update=function(b){b=b||{};var d=this.gl;this.dirty=!0,"lightPosition"in b&&(this.lightPosition=b.lightPosition),"opacity"in b&&(this.opacity=b.opacity),"ambient"in b&&(this.ambientLight=b.ambient),"diffuse"in b&&(this.diffuseLight=b.diffuse),"specular"in b&&(this.specularLight=b.specular),"roughness"in b&&(this.roughness=b.roughness),"fresnel"in b&&(this.fresnel=b.fresnel),b.tubeScale!==void 0&&(this.tubeScale=b.tubeScale),b.vectorScale!==void 0&&(this.vectorScale=b.vectorScale),b.coneScale!==void 0&&(this.coneScale=b.coneScale),b.coneOffset!==void 0&&(this.coneOffset=b.coneOffset),b.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=d.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=d.LINEAR,this.texture.setPixels(_(b.colormap)),this.texture.generateMipmap());var u=b.cells,y=b.positions,f=b.vectors;if(!(!y||!u||!f)){var P=[],L=[],z=[],F=[],B=[];this.cells=u,this.positions=y,this.vectors=f;var O=b.meshColor||[1,1,1,1],I=b.vertexIntensity,N=1/0,U=-1/0;if(I)if(b.vertexIntensityBounds)N=+b.vertexIntensityBounds[0],U=+b.vertexIntensityBounds[1];else for(var W=0;W<I.length;++W){var Q=I[W];N=Math.min(N,Q),U=Math.max(U,Q)}else for(var W=0;W<y.length;++W){var Q=y[W][2];N=Math.min(N,Q),U=Math.max(U,Q)}I?this.intensity=I:this.intensity=w(y),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var W=0;W<y.length;++W)for(var ue=y[W],se=0;se<3;++se)isNaN(ue[se])||!isFinite(ue[se])||(this.bounds[0][se]=Math.min(this.bounds[0][se],ue[se]),this.bounds[1][se]=Math.max(this.bounds[1][se],ue[se]));var he=0;e:for(var W=0;W<u.length;++W){var G=u[W];switch(G.length){case 3:for(var se=0;se<3;++se)for(var $=G[se],ue=y[$],J=0;J<3;++J)if(isNaN(ue[J])||!isFinite(ue[J]))continue e;for(var se=0;se<3;++se){var $=G[2-se],ue=y[$];P.push(ue[0],ue[1],ue[2],ue[3]);var Z=f[$];L.push(Z[0],Z[1],Z[2],Z[3]||0);var re=O;re.length===3?z.push(re[0],re[1],re[2],1):z.push(re[0],re[1],re[2],re[3]);var ne;I?ne=[(I[$]-N)/(U-N),0]:ne=[(ue[2]-N)/(U-N),0],F.push(ne[0],ne[1]),B.push(W)}he+=1;break;default:break}}this.triangleCount=he,this.trianglePositions.update(P),this.triangleVectors.update(L),this.triangleColors.update(z),this.triangleUVs.update(F),this.triangleIds.update(new Uint32Array(B))}},l.drawTransparent=l.draw=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);var z={model:u,view:y,projection:f,inverseModel:p.slice(),clipBounds:P,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};z.inverseModel=c(z.inverseModel,z.model),d.disable(d.CULL_FACE),this.texture.bind(0);var F=new Array(16);s(F,z.view,z.model),s(F,z.projection,F),c(F,F);for(var L=0;L<3;++L)z.eyePosition[L]=F[12+L]/F[15];for(var B=F[15],L=0;L<3;++L)B+=this.lightPosition[L]*F[4*L+3];for(var L=0;L<3;++L){for(var O=F[12+L],I=0;I<3;++I)O+=F[4*I+L]*this.lightPosition[I];z.lightPosition[L]=O/B}if(this.triangleCount>0){var N=this.triShader;N.bind(),N.uniforms=z,this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},l.drawPick=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);this._model=[].slice.call(u),this._view=[].slice.call(y),this._projection=[].slice.call(f),this._resolution=[d.drawingBufferWidth,d.drawingBufferHeight];var z={model:u,view:y,projection:f,clipBounds:P,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},F=this.pickShader;F.bind(),F.uniforms=z,this.triangleCount>0&&(this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},l.pick=function(b){if(!b||b.id!==this.pickId)return null;var d=b.value[0]+256*b.value[1]+65536*b.value[2],u=this.cells[d],y=this.positions[u[1]].slice(0,3),f={position:y,dataCoordinate:y,index:Math.floor(u[1]/48)};return this.traceType==="cone"?f.index=Math.floor(u[1]/48):this.traceType==="streamtube"&&(f.intensity=this.intensity[u[1]],f.velocity=this.vectors[u[1]].slice(0,3),f.divergence=this.vectors[u[1]][3],f.index=d),f},l.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(b,d){var u=o(b,d.meshShader.vertex,d.meshShader.fragment,null,d.meshShader.attributes);return u.attributes.position.location=0,u.attributes.color.location=2,u.attributes.uv.location=3,u.attributes.vector.location=4,u}function E(b,d){var u=o(b,d.pickShader.vertex,d.pickShader.fragment,null,d.pickShader.attributes);return u.attributes.position.location=0,u.attributes.id.location=1,u.attributes.vector.location=4,u}function m(b,d,u){var y=u.shaders;arguments.length===1&&(d=b,b=d.gl);var f=S(b,y),P=E(b,y),L=n(b,h(new Uint8Array([255,255,255,255]),[1,1,4]));L.generateMipmap(),L.minFilter=b.LINEAR_MIPMAP_LINEAR,L.magFilter=b.LINEAR;var z=a(b),F=a(b),B=a(b),O=a(b),I=a(b),N=i(b,[{buffer:z,type:b.FLOAT,size:4},{buffer:I,type:b.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:B,type:b.FLOAT,size:4},{buffer:O,type:b.FLOAT,size:2},{buffer:F,type:b.FLOAT,size:4}]),U=new T(b,L,f,P,z,F,I,B,O,N,u.traceType||"cone");return U.update(d),U}e.exports=m},614:function(e,t,r){var o=r(3236),a=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the cone vertex and normal at the given index.
+//
+// The returned vertex is for a cone with its top at origin and height of 1.0,
+// pointing in the direction of the vector attribute.
+//
+// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
+// These vertices are used to make up the triangles of the cone by the following:
+// segment + 0 top vertex
+// segment + 1 perimeter vertex a+1
+// segment + 2 perimeter vertex a
+// segment + 3 center base vertex
+// segment + 4 perimeter vertex a
+// segment + 5 perimeter vertex a+1
+// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
+// To go from index to segment, floor(index / 6)
+// To go from segment to angle, 2*pi * (segment/segmentCount)
+// To go from index to segment index, index - (segment*6)
+//
+vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {
+
+ const float segmentCount = 8.0;
+
+ float index = rawIndex - floor(rawIndex /
+ (segmentCount * 6.0)) *
+ (segmentCount * 6.0);
+
+ float segment = floor(0.001 + index/6.0);
+ float segmentIndex = index - (segment*6.0);
+
+ normal = -normalize(d);
+
+ if (segmentIndex > 2.99 && segmentIndex < 3.01) {
+ return mix(vec3(0.0), -d, coneOffset);
+ }
+
+ float nextAngle = (
+ (segmentIndex > 0.99 && segmentIndex < 1.01) ||
+ (segmentIndex > 4.99 && segmentIndex < 5.01)
+ ) ? 1.0 : 0.0;
+ float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);
+
+ vec3 v1 = mix(d, vec3(0.0), coneOffset);
+ vec3 v2 = v1 - d;
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d)*0.25;
+ vec3 y = v * sin(angle) * length(d)*0.25;
+ vec3 v3 = v2 + x + y;
+ if (segmentIndex < 3.0) {
+ vec3 tx = u * sin(angle);
+ vec3 ty = v * -cos(angle);
+ vec3 tangent = tx + ty;
+ normal = normalize(cross(v3 - v1, tangent));
+ }
+
+ if (segmentIndex == 0.0) {
+ return mix(d, vec3(0.0), coneOffset);
+ }
+ return v3;
+}
+
+attribute vec3 vector;
+attribute vec4 color, position;
+attribute vec2 uv;
+
+uniform float vectorScale, coneScale, coneOffset;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 eyePosition, lightPosition;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ // Scale the vector magnitude to stay constant with
+ // model & view changes.
+ vec3 normal;
+ vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);
+ vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * conePosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ // vec4 m_position = model * vec4(conePosition, 1.0);
+ vec4 t_position = view * conePosition;
+ gl_Position = projection * t_position;
+
+ f_color = color;
+ f_data = conePosition.xyz;
+ f_position = position.xyz;
+ f_uv = uv;
+}
+`]),i=o([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform sampler2D texture;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = f_color * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * opacity;
+}
+`]),n=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the cone vertex and normal at the given index.
+//
+// The returned vertex is for a cone with its top at origin and height of 1.0,
+// pointing in the direction of the vector attribute.
+//
+// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
+// These vertices are used to make up the triangles of the cone by the following:
+// segment + 0 top vertex
+// segment + 1 perimeter vertex a+1
+// segment + 2 perimeter vertex a
+// segment + 3 center base vertex
+// segment + 4 perimeter vertex a
+// segment + 5 perimeter vertex a+1
+// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
+// To go from index to segment, floor(index / 6)
+// To go from segment to angle, 2*pi * (segment/segmentCount)
+// To go from index to segment index, index - (segment*6)
+//
+vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {
+
+ const float segmentCount = 8.0;
+
+ float index = rawIndex - floor(rawIndex /
+ (segmentCount * 6.0)) *
+ (segmentCount * 6.0);
+
+ float segment = floor(0.001 + index/6.0);
+ float segmentIndex = index - (segment*6.0);
+
+ normal = -normalize(d);
+
+ if (segmentIndex > 2.99 && segmentIndex < 3.01) {
+ return mix(vec3(0.0), -d, coneOffset);
+ }
+
+ float nextAngle = (
+ (segmentIndex > 0.99 && segmentIndex < 1.01) ||
+ (segmentIndex > 4.99 && segmentIndex < 5.01)
+ ) ? 1.0 : 0.0;
+ float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);
+
+ vec3 v1 = mix(d, vec3(0.0), coneOffset);
+ vec3 v2 = v1 - d;
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d)*0.25;
+ vec3 y = v * sin(angle) * length(d)*0.25;
+ vec3 v3 = v2 + x + y;
+ if (segmentIndex < 3.0) {
+ vec3 tx = u * sin(angle);
+ vec3 ty = v * -cos(angle);
+ vec3 tangent = tx + ty;
+ normal = normalize(cross(v3 - v1, tangent));
+ }
+
+ if (segmentIndex == 0.0) {
+ return mix(d, vec3(0.0), coneOffset);
+ }
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform float vectorScale, coneScale, coneOffset;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ vec3 normal;
+ vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);
+ vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+ gl_Position = projection * (view * conePosition);
+ f_id = id;
+ f_position = position.xyz;
+}
+`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(e){e.exports={0:"NONE",1:"ONE",2:"LINE_LOOP",3:"LINE_STRIP",4:"TRIANGLES",5:"TRIANGLE_STRIP",6:"TRIANGLE_FAN",256:"DEPTH_BUFFER_BIT",512:"NEVER",513:"LESS",514:"EQUAL",515:"LEQUAL",516:"GREATER",517:"NOTEQUAL",518:"GEQUAL",519:"ALWAYS",768:"SRC_COLOR",769:"ONE_MINUS_SRC_COLOR",770:"SRC_ALPHA",771:"ONE_MINUS_SRC_ALPHA",772:"DST_ALPHA",773:"ONE_MINUS_DST_ALPHA",774:"DST_COLOR",775:"ONE_MINUS_DST_COLOR",776:"SRC_ALPHA_SATURATE",1024:"STENCIL_BUFFER_BIT",1028:"FRONT",1029:"BACK",1032:"FRONT_AND_BACK",1280:"INVALID_ENUM",1281:"INVALID_VALUE",1282:"INVALID_OPERATION",1285:"OUT_OF_MEMORY",1286:"INVALID_FRAMEBUFFER_OPERATION",2304:"CW",2305:"CCW",2849:"LINE_WIDTH",2884:"CULL_FACE",2885:"CULL_FACE_MODE",2886:"FRONT_FACE",2928:"DEPTH_RANGE",2929:"DEPTH_TEST",2930:"DEPTH_WRITEMASK",2931:"DEPTH_CLEAR_VALUE",2932:"DEPTH_FUNC",2960:"STENCIL_TEST",2961:"STENCIL_CLEAR_VALUE",2962:"STENCIL_FUNC",2963:"STENCIL_VALUE_MASK",2964:"STENCIL_FAIL",2965:"STENCIL_PASS_DEPTH_FAIL",2966:"STENCIL_PASS_DEPTH_PASS",2967:"STENCIL_REF",2968:"STENCIL_WRITEMASK",2978:"VIEWPORT",3024:"DITHER",3042:"BLEND",3088:"SCISSOR_BOX",3089:"SCISSOR_TEST",3106:"COLOR_CLEAR_VALUE",3107:"COLOR_WRITEMASK",3317:"UNPACK_ALIGNMENT",3333:"PACK_ALIGNMENT",3379:"MAX_TEXTURE_SIZE",3386:"MAX_VIEWPORT_DIMS",3408:"SUBPIXEL_BITS",3410:"RED_BITS",3411:"GREEN_BITS",3412:"BLUE_BITS",3413:"ALPHA_BITS",3414:"DEPTH_BITS",3415:"STENCIL_BITS",3553:"TEXTURE_2D",4352:"DONT_CARE",4353:"FASTEST",4354:"NICEST",5120:"BYTE",5121:"UNSIGNED_BYTE",5122:"SHORT",5123:"UNSIGNED_SHORT",5124:"INT",5125:"UNSIGNED_INT",5126:"FLOAT",5386:"INVERT",5890:"TEXTURE",6401:"STENCIL_INDEX",6402:"DEPTH_COMPONENT",6406:"ALPHA",6407:"RGB",6408:"RGBA",6409:"LUMINANCE",6410:"LUMINANCE_ALPHA",7680:"KEEP",7681:"REPLACE",7682:"INCR",7683:"DECR",7936:"VENDOR",7937:"RENDERER",7938:"VERSION",9728:"NEAREST",9729:"LINEAR",9984:"NEAREST_MIPMAP_NEAREST",9985:"LINEAR_MIPMAP_NEAREST",9986:"NEAREST_MIPMAP_LINEAR",9987:"LINEAR_MIPMAP_LINEAR",10240:"TEXTURE_MAG_FILTER",10241:"TEXTURE_MIN_FILTER",10242:"TEXTURE_WRAP_S",10243:"TEXTURE_WRAP_T",10497:"REPEAT",10752:"POLYGON_OFFSET_UNITS",16384:"COLOR_BUFFER_BIT",32769:"CONSTANT_COLOR",32770:"ONE_MINUS_CONSTANT_COLOR",32771:"CONSTANT_ALPHA",32772:"ONE_MINUS_CONSTANT_ALPHA",32773:"BLEND_COLOR",32774:"FUNC_ADD",32777:"BLEND_EQUATION_RGB",32778:"FUNC_SUBTRACT",32779:"FUNC_REVERSE_SUBTRACT",32819:"UNSIGNED_SHORT_4_4_4_4",32820:"UNSIGNED_SHORT_5_5_5_1",32823:"POLYGON_OFFSET_FILL",32824:"POLYGON_OFFSET_FACTOR",32854:"RGBA4",32855:"RGB5_A1",32873:"TEXTURE_BINDING_2D",32926:"SAMPLE_ALPHA_TO_COVERAGE",32928:"SAMPLE_COVERAGE",32936:"SAMPLE_BUFFERS",32937:"SAMPLES",32938:"SAMPLE_COVERAGE_VALUE",32939:"SAMPLE_COVERAGE_INVERT",32968:"BLEND_DST_RGB",32969:"BLEND_SRC_RGB",32970:"BLEND_DST_ALPHA",32971:"BLEND_SRC_ALPHA",33071:"CLAMP_TO_EDGE",33170:"GENERATE_MIPMAP_HINT",33189:"DEPTH_COMPONENT16",33306:"DEPTH_STENCIL_ATTACHMENT",33635:"UNSIGNED_SHORT_5_6_5",33648:"MIRRORED_REPEAT",33901:"ALIASED_POINT_SIZE_RANGE",33902:"ALIASED_LINE_WIDTH_RANGE",33984:"TEXTURE0",33985:"TEXTURE1",33986:"TEXTURE2",33987:"TEXTURE3",33988:"TEXTURE4",33989:"TEXTURE5",33990:"TEXTURE6",33991:"TEXTURE7",33992:"TEXTURE8",33993:"TEXTURE9",33994:"TEXTURE10",33995:"TEXTURE11",33996:"TEXTURE12",33997:"TEXTURE13",33998:"TEXTURE14",33999:"TEXTURE15",34e3:"TEXTURE16",34001:"TEXTURE17",34002:"TEXTURE18",34003:"TEXTURE19",34004:"TEXTURE20",34005:"TEXTURE21",34006:"TEXTURE22",34007:"TEXTURE23",34008:"TEXTURE24",34009:"TEXTURE25",34010:"TEXTURE26",34011:"TEXTURE27",34012:"TEXTURE28",34013:"TEXTURE29",34014:"TEXTURE30",34015:"TEXTURE31",34016:"ACTIVE_TEXTURE",34024:"MAX_RENDERBUFFER_SIZE",34041:"DEPTH_STENCIL",34055:"INCR_WRAP",34056:"DECR_WRAP",34067:"TEXTURE_CUBE_MAP",34068:"TEXTURE_BINDING_CUBE_MAP",34069:"TEXTURE_CUBE_MAP_POSITIVE_X",34070:"TEXTURE_CUBE_MAP_NEGATIVE_X",34071:"TEXTURE_CUBE_MAP_POSITIVE_Y",34072:"TEXTURE_CUBE_MAP_NEGATIVE_Y",34073:"TEXTURE_CUBE_MAP_POSITIVE_Z",34074:"TEXTURE_CUBE_MAP_NEGATIVE_Z",34076:"MAX_CUBE_MAP_TEXTURE_SIZE",34338:"VERTEX_ATTRIB_ARRAY_ENABLED",34339:"VERTEX_ATTRIB_ARRAY_SIZE",34340:"VERTEX_ATTRIB_ARRAY_STRIDE",34341:"VERTEX_ATTRIB_ARRAY_TYPE",34342:"CURRENT_VERTEX_ATTRIB",34373:"VERTEX_ATTRIB_ARRAY_POINTER",34466:"NUM_COMPRESSED_TEXTURE_FORMATS",34467:"COMPRESSED_TEXTURE_FORMATS",34660:"BUFFER_SIZE",34661:"BUFFER_USAGE",34816:"STENCIL_BACK_FUNC",34817:"STENCIL_BACK_FAIL",34818:"STENCIL_BACK_PASS_DEPTH_FAIL",34819:"STENCIL_BACK_PASS_DEPTH_PASS",34877:"BLEND_EQUATION_ALPHA",34921:"MAX_VERTEX_ATTRIBS",34922:"VERTEX_ATTRIB_ARRAY_NORMALIZED",34930:"MAX_TEXTURE_IMAGE_UNITS",34962:"ARRAY_BUFFER",34963:"ELEMENT_ARRAY_BUFFER",34964:"ARRAY_BUFFER_BINDING",34965:"ELEMENT_ARRAY_BUFFER_BINDING",34975:"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING",35040:"STREAM_DRAW",35044:"STATIC_DRAW",35048:"DYNAMIC_DRAW",35632:"FRAGMENT_SHADER",35633:"VERTEX_SHADER",35660:"MAX_VERTEX_TEXTURE_IMAGE_UNITS",35661:"MAX_COMBINED_TEXTURE_IMAGE_UNITS",35663:"SHADER_TYPE",35664:"FLOAT_VEC2",35665:"FLOAT_VEC3",35666:"FLOAT_VEC4",35667:"INT_VEC2",35668:"INT_VEC3",35669:"INT_VEC4",35670:"BOOL",35671:"BOOL_VEC2",35672:"BOOL_VEC3",35673:"BOOL_VEC4",35674:"FLOAT_MAT2",35675:"FLOAT_MAT3",35676:"FLOAT_MAT4",35678:"SAMPLER_2D",35680:"SAMPLER_CUBE",35712:"DELETE_STATUS",35713:"COMPILE_STATUS",35714:"LINK_STATUS",35715:"VALIDATE_STATUS",35716:"INFO_LOG_LENGTH",35717:"ATTACHED_SHADERS",35718:"ACTIVE_UNIFORMS",35719:"ACTIVE_UNIFORM_MAX_LENGTH",35720:"SHADER_SOURCE_LENGTH",35721:"ACTIVE_ATTRIBUTES",35722:"ACTIVE_ATTRIBUTE_MAX_LENGTH",35724:"SHADING_LANGUAGE_VERSION",35725:"CURRENT_PROGRAM",36003:"STENCIL_BACK_REF",36004:"STENCIL_BACK_VALUE_MASK",36005:"STENCIL_BACK_WRITEMASK",36006:"FRAMEBUFFER_BINDING",36007:"RENDERBUFFER_BINDING",36048:"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE",36049:"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME",36050:"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL",36051:"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE",36053:"FRAMEBUFFER_COMPLETE",36054:"FRAMEBUFFER_INCOMPLETE_ATTACHMENT",36055:"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT",36057:"FRAMEBUFFER_INCOMPLETE_DIMENSIONS",36061:"FRAMEBUFFER_UNSUPPORTED",36064:"COLOR_ATTACHMENT0",36096:"DEPTH_ATTACHMENT",36128:"STENCIL_ATTACHMENT",36160:"FRAMEBUFFER",36161:"RENDERBUFFER",36162:"RENDERBUFFER_WIDTH",36163:"RENDERBUFFER_HEIGHT",36164:"RENDERBUFFER_INTERNAL_FORMAT",36168:"STENCIL_INDEX8",36176:"RENDERBUFFER_RED_SIZE",36177:"RENDERBUFFER_GREEN_SIZE",36178:"RENDERBUFFER_BLUE_SIZE",36179:"RENDERBUFFER_ALPHA_SIZE",36180:"RENDERBUFFER_DEPTH_SIZE",36181:"RENDERBUFFER_STENCIL_SIZE",36194:"RGB565",36336:"LOW_FLOAT",36337:"MEDIUM_FLOAT",36338:"HIGH_FLOAT",36339:"LOW_INT",36340:"MEDIUM_INT",36341:"HIGH_INT",36346:"SHADER_COMPILER",36347:"MAX_VERTEX_UNIFORM_VECTORS",36348:"MAX_VARYING_VECTORS",36349:"MAX_FRAGMENT_UNIFORM_VECTORS",37440:"UNPACK_FLIP_Y_WEBGL",37441:"UNPACK_PREMULTIPLY_ALPHA_WEBGL",37442:"CONTEXT_LOST_WEBGL",37443:"UNPACK_COLORSPACE_CONVERSION_WEBGL",37444:"BROWSER_DEFAULT_WEBGL"}},5171:function(e,t,r){var o=r(737);e.exports=function(i){return o[i]}},9165:function(e,t,r){"use strict";e.exports=T;var o=r(2762),a=r(8116),i=r(3436),n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.shader=S,this.buffer=_,this.vao=w,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var c=s.prototype;c.isOpaque=function(){return!this.hasAlpha},c.isTransparent=function(){return this.hasAlpha},c.drawTransparent=c.draw=function(l){var _=this.gl,w=this.shader.uniforms;this.shader.bind();var S=w.view=l.view||n,E=w.projection=l.projection||n;w.model=l.model||n,w.clipBounds=this.clipBounds,w.opacity=this.opacity;var m=S[12],b=S[13],d=S[14],u=S[15],y=l._ortho||!1,f=y?2:1,P=f*this.pixelRatio*(E[3]*m+E[7]*b+E[11]*d+E[15]*u)/_.drawingBufferHeight;this.vao.bind();for(var L=0;L<3;++L)_.lineWidth(this.lineWidth[L]*this.pixelRatio),w.capSize=this.capSize[L]*P,this.lineCount[L]&&_.drawArrays(_.LINES,this.lineOffset[L],this.lineCount[L]);this.vao.unbind()};function h(l,_){for(var w=0;w<3;++w)l[0][w]=Math.min(l[0][w],_[w]),l[1][w]=Math.max(l[1][w],_[w])}var v=function(){for(var l=new Array(3),_=0;_<3;++_){for(var w=[],S=1;S<=2;++S)for(var E=-1;E<=1;E+=2){var m=(S+_)%3,b=[0,0,0];b[m]=E,w.push(b)}l[_]=w}return l}();function p(l,_,w,S){for(var E=v[S],m=0;m<E.length;++m){var b=E[m];l.push(_[0],_[1],_[2],w[0],w[1],w[2],w[3],b[0],b[1],b[2])}return E.length}c.update=function(l){l=l||{},"lineWidth"in l&&(this.lineWidth=l.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),"capSize"in l&&(this.capSize=l.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,"opacity"in l&&(this.opacity=+l.opacity,this.opacity<1&&(this.hasAlpha=!0));var _=l.color||[[0,0,0],[0,0,0],[0,0,0]],w=l.position,S=l.error;if(Array.isArray(_[0])||(_=[_,_,_]),w&&S){var E=[],m=w.length,b=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var d=0;d<3;++d){this.lineOffset[d]=b;e:for(var u=0;u<m;++u){for(var y=w[u],f=0;f<3;++f)if(isNaN(y[f])||!isFinite(y[f]))continue e;var P=S[u],L=_[d];if(Array.isArray(L[0])&&(L=_[u]),L.length===3?L=[L[0],L[1],L[2],1]:L.length===4&&(L=[L[0],L[1],L[2],L[3]],!this.hasAlpha&&L[3]<1&&(this.hasAlpha=!0)),!(isNaN(P[0][d])||isNaN(P[1][d]))){if(P[0][d]<0){var z=y.slice();z[d]+=P[0][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}if(P[1][d]>0){var z=y.slice();z[d]+=P[1][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}}}this.lineCount[d]=b-this.lineOffset[d]}this.buffer.update(E)}},c.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(l){var _=l.gl,w=o(_),S=a(_,[{buffer:w,type:_.FLOAT,size:3,offset:0,stride:40},{buffer:w,type:_.FLOAT,size:4,offset:12,stride:40},{buffer:w,type:_.FLOAT,size:3,offset:28,stride:40}]),E=i(_);E.attributes.position.location=0,E.attributes.color.location=1,E.attributes.offset.location=2;var m=new s(_,w,S,E);return m.update(l),m}},3436:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, offset;
+attribute vec4 color;
+uniform mat4 model, view, projection;
+uniform float capSize;
+varying vec4 fragColor;
+varying vec3 fragPosition;
+
+void main() {
+ vec4 worldPosition = model * vec4(position, 1.0);
+ worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);
+ gl_Position = projection * (view * worldPosition);
+ fragColor = color;
+ fragPosition = position;
+}`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float opacity;
+varying vec3 fragPosition;
+varying vec4 fragColor;
+
+void main() {
+ if (
+ outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||
+ fragColor.a * opacity == 0.
+ ) discard;
+
+ gl_FragColor = opacity * fragColor;
+}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(e,t,r){"use strict";var o=r(7766);e.exports=b;var a=null,i,n,s,c;function h(d){var u=d.getParameter(d.FRAMEBUFFER_BINDING),y=d.getParameter(d.RENDERBUFFER_BINDING),f=d.getParameter(d.TEXTURE_BINDING_2D);return[u,y,f]}function v(d,u){d.bindFramebuffer(d.FRAMEBUFFER,u[0]),d.bindRenderbuffer(d.RENDERBUFFER,u[1]),d.bindTexture(d.TEXTURE_2D,u[2])}function p(d,u){var y=d.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL);a=new Array(y+1);for(var f=0;f<=y;++f){for(var P=new Array(y),L=0;L<f;++L)P[L]=d.COLOR_ATTACHMENT0+L;for(var L=f;L<y;++L)P[L]=d.NONE;a[f]=P}}function T(d){switch(d){case i:throw new Error("gl-fbo: Framebuffer unsupported");case n:throw new Error("gl-fbo: Framebuffer incomplete attachment");case s:throw new Error("gl-fbo: Framebuffer incomplete dimensions");case c:throw new Error("gl-fbo: Framebuffer incomplete missing attachment");default:throw new Error("gl-fbo: Framebuffer failed for unspecified reason")}}function l(d,u,y,f,P,L){if(!f)return null;var z=o(d,u,y,P,f);return z.magFilter=d.NEAREST,z.minFilter=d.NEAREST,z.mipSamples=1,z.bind(),d.framebufferTexture2D(d.FRAMEBUFFER,L,d.TEXTURE_2D,z.handle,0),z}function _(d,u,y,f,P){var L=d.createRenderbuffer();return d.bindRenderbuffer(d.RENDERBUFFER,L),d.renderbufferStorage(d.RENDERBUFFER,f,u,y),d.framebufferRenderbuffer(d.FRAMEBUFFER,P,d.RENDERBUFFER,L),L}function w(d){var u=h(d.gl),y=d.gl,f=d.handle=y.createFramebuffer(),P=d._shape[0],L=d._shape[1],z=d.color.length,F=d._ext,B=d._useStencil,O=d._useDepth,I=d._colorType;y.bindFramebuffer(y.FRAMEBUFFER,f);for(var N=0;N<z;++N)d.color[N]=l(y,P,L,I,y.RGBA,y.COLOR_ATTACHMENT0+N);z===0?(d._color_rb=_(y,P,L,y.RGBA4,y.COLOR_ATTACHMENT0),F&&F.drawBuffersWEBGL(a[0])):z>1&&F.drawBuffersWEBGL(a[z]);var U=y.getExtension("WEBGL_depth_texture");U?B?d.depth=l(y,P,L,U.UNSIGNED_INT_24_8_WEBGL,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O&&(d.depth=l(y,P,L,y.UNSIGNED_SHORT,y.DEPTH_COMPONENT,y.DEPTH_ATTACHMENT)):O&&B?d._depth_rb=_(y,P,L,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O?d._depth_rb=_(y,P,L,y.DEPTH_COMPONENT16,y.DEPTH_ATTACHMENT):B&&(d._depth_rb=_(y,P,L,y.STENCIL_INDEX,y.STENCIL_ATTACHMENT));var W=y.checkFramebufferStatus(y.FRAMEBUFFER);if(W!==y.FRAMEBUFFER_COMPLETE){d._destroyed=!0,y.bindFramebuffer(y.FRAMEBUFFER,null),y.deleteFramebuffer(d.handle),d.handle=null,d.depth&&(d.depth.dispose(),d.depth=null),d._depth_rb&&(y.deleteRenderbuffer(d._depth_rb),d._depth_rb=null);for(var N=0;N<d.color.length;++N)d.color[N].dispose(),d.color[N]=null;d._color_rb&&(y.deleteRenderbuffer(d._color_rb),d._color_rb=null),v(y,u),T(W)}v(y,u)}function S(d,u,y,f,P,L,z,F){this.gl=d,this._shape=[u|0,y|0],this._destroyed=!1,this._ext=F,this.color=new Array(P);for(var B=0;B<P;++B)this.color[B]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=f,this._useDepth=L,this._useStencil=z;var O=this,I=[u|0,y|0];Object.defineProperties(I,{0:{get:function(){return O._shape[0]},set:function(N){return O.width=N}},1:{get:function(){return O._shape[1]},set:function(N){return O.height=N}}}),this._shapeVector=I,w(this)}var E=S.prototype;function m(d,u,y){if(d._destroyed)throw new Error("gl-fbo: Can't resize destroyed FBO");if(!(d._shape[0]===u&&d._shape[1]===y)){var f=d.gl,P=f.getParameter(f.MAX_RENDERBUFFER_SIZE);if(u<0||u>P||y<0||y>P)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");d._shape[0]=u,d._shape[1]=y;for(var L=h(f),z=0;z<d.color.length;++z)d.color[z].shape=d._shape;d._color_rb&&(f.bindRenderbuffer(f.RENDERBUFFER,d._color_rb),f.renderbufferStorage(f.RENDERBUFFER,f.RGBA4,d._shape[0],d._shape[1])),d.depth&&(d.depth.shape=d._shape),d._depth_rb&&(f.bindRenderbuffer(f.RENDERBUFFER,d._depth_rb),d._useDepth&&d._useStencil?f.renderbufferStorage(f.RENDERBUFFER,f.DEPTH_STENCIL,d._shape[0],d._shape[1]):d._useDepth?f.renderbufferStorage(f.RENDERBUFFER,f.DEPTH_COMPONENT16,d._shape[0],d._shape[1]):d._useStencil&&f.renderbufferStorage(f.RENDERBUFFER,f.STENCIL_INDEX,d._shape[0],d._shape[1])),f.bindFramebuffer(f.FRAMEBUFFER,d.handle);var F=f.checkFramebufferStatus(f.FRAMEBUFFER);F!==f.FRAMEBUFFER_COMPLETE&&(d.dispose(),v(f,L),T(F)),v(f,L)}}Object.defineProperties(E,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(d){if(Array.isArray(d)||(d=[d|0,d|0]),d.length!==2)throw new Error("gl-fbo: Shape vector must be length 2");var u=d[0]|0,y=d[1]|0;return m(this,u,y),[u,y]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(d){return d=d|0,m(this,d,this._shape[1]),d},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(d){return d=d|0,m(this,this._shape[0],d),d},enumerable:!1}}),E.bind=function(){if(!this._destroyed){var d=this.gl;d.bindFramebuffer(d.FRAMEBUFFER,this.handle),d.viewport(0,0,this._shape[0],this._shape[1])}},E.dispose=function(){if(!this._destroyed){this._destroyed=!0;var d=this.gl;d.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(d.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var u=0;u<this.color.length;++u)this.color[u].dispose(),this.color[u]=null;this._color_rb&&(d.deleteRenderbuffer(this._color_rb),this._color_rb=null)}};function b(d,u,y,f){i||(i=d.FRAMEBUFFER_UNSUPPORTED,n=d.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,s=d.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,c=d.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var P=d.getExtension("WEBGL_draw_buffers");if(!a&&P&&p(d,P),Array.isArray(u)&&(f=y,y=u[1]|0,u=u[0]|0),typeof u!="number")throw new Error("gl-fbo: Missing shape parameter");var L=d.getParameter(d.MAX_RENDERBUFFER_SIZE);if(u<0||u>L||y<0||y>L)throw new Error("gl-fbo: Parameters are too large for FBO");f=f||{};var z=1;if("color"in f){if(z=Math.max(f.color|0,0),z<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(z>1)if(P){if(z>d.getParameter(P.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+z+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var F=d.UNSIGNED_BYTE,B=d.getExtension("OES_texture_float");if(f.float&&z>0){if(!B)throw new Error("gl-fbo: Context does not support floating point textures");F=d.FLOAT}else f.preferFloat&&z>0&&B&&(F=d.FLOAT);var O=!0;"depth"in f&&(O=!!f.depth);var I=!1;return"stencil"in f&&(I=!!f.stencil),new S(d,u,y,F,z,O,I,P)}},2992:function(e,t,r){var o=r(3387).sprintf,a=r(5171),i=r(1848),n=r(1085);e.exports=s;function s(c,h,v){"use strict";var p=i(h)||"of unknown name (see npm glsl-shader-name)",T="unknown type";v!==void 0&&(T=v===a.FRAGMENT_SHADER?"fragment":"vertex");for(var l=o(`Error compiling %s shader %s:
+`,T,p),_=o("%s%s",l,c),w=c.split(`
+`),S={},E=0;E<w.length;E++){var m=w[E];if(!(m===""||m==="\0")){var b=parseInt(m.split(":")[2]);if(isNaN(b))throw new Error(o("Could not parse error: %s",m));S[b]=m}}for(var d=n(h).split(`
+`),E=0;E<d.length;E++)if(!(!S[E+3]&&!S[E+2]&&!S[E+1])){var u=d[E];if(l+=u+`
+`,S[E+1]){var y=S[E+1];y=y.substr(y.split(":",3).join(":").length+1).trim(),l+=o(`^^^ %s
+
+`,y)}}return{long:l.trim(),short:_.trim()}}},7319:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, nextPosition;
+attribute float arcLength, lineWidth;
+attribute vec4 color;
+
+uniform vec2 screenShape;
+uniform float pixelRatio;
+uniform mat4 model, view, projection;
+
+varying vec4 fragColor;
+varying vec3 worldPosition;
+varying float pixelArcLength;
+
+vec4 project(vec3 p) {
+ return projection * (view * (model * vec4(p, 1.0)));
+}
+
+void main() {
+ vec4 startPoint = project(position);
+ vec4 endPoint = project(nextPosition);
+
+ vec2 A = startPoint.xy / startPoint.w;
+ vec2 B = endPoint.xy / endPoint.w;
+
+ float clipAngle = atan(
+ (B.y - A.y) * screenShape.y,
+ (B.x - A.x) * screenShape.x
+ );
+
+ vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(
+ sin(clipAngle),
+ -cos(clipAngle)
+ ) / screenShape;
+
+ gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);
+
+ worldPosition = position;
+ pixelArcLength = arcLength;
+ fragColor = color;
+}
+`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform sampler2D dashTexture;
+uniform float dashScale;
+uniform float opacity;
+
+varying vec3 worldPosition;
+varying float pixelArcLength;
+varying vec4 fragColor;
+
+void main() {
+ if (
+ outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||
+ fragColor.a * opacity == 0.
+ ) discard;
+
+ float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;
+ if(dashWeight < 0.5) {
+ discard;
+ }
+ gl_FragColor = fragColor * opacity;
+}
+`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+#define FLOAT_MAX 1.70141184e38
+#define FLOAT_MIN 1.17549435e-38
+
+// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl
+vec4 packFloat(float v) {
+ float av = abs(v);
+
+ //Handle special cases
+ if(av < FLOAT_MIN) {
+ return vec4(0.0, 0.0, 0.0, 0.0);
+ } else if(v > FLOAT_MAX) {
+ return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;
+ } else if(v < -FLOAT_MAX) {
+ return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;
+ }
+
+ vec4 c = vec4(0,0,0,0);
+
+ //Compute exponent and mantissa
+ float e = floor(log2(av));
+ float m = av * pow(2.0, -e) - 1.0;
+
+ //Unpack mantissa
+ c[1] = floor(128.0 * m);
+ m -= c[1] / 128.0;
+ c[2] = floor(32768.0 * m);
+ m -= c[2] / 32768.0;
+ c[3] = floor(8388608.0 * m);
+
+ //Unpack exponent
+ float ebias = e + 127.0;
+ c[0] = floor(ebias / 2.0);
+ ebias -= c[0] * 2.0;
+ c[1] += floor(ebias) * 128.0;
+
+ //Unpack sign bit
+ c[0] += 128.0 * step(0.0, -v);
+
+ //Scale back to range
+ return c / 255.0;
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform float pickId;
+uniform vec3 clipBounds[2];
+
+varying vec3 worldPosition;
+varying float pixelArcLength;
+varying vec4 fragColor;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;
+
+ gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);
+}`]),c=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];t.createShader=function(h){return a(h,i,n,null,c)},t.createPickShader=function(h){return a(h,i,s,null,c)}},5714:function(e,t,r){"use strict";e.exports=d;var o=r(2762),a=r(8116),i=r(7766),n=new Uint8Array(4),s=new Float32Array(n.buffer);function c(u,y,f,P){return n[0]=P,n[1]=f,n[2]=y,n[3]=u,s[0]}var h=r(2478),v=r(9618),p=r(7319),T=p.createShader,l=p.createPickShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function w(u,y){for(var f=0,P=0;P<3;++P){var L=u[P]-y[P];f+=L*L}return Math.sqrt(f)}function S(u){for(var y=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],f=0;f<3;++f)y[0][f]=Math.max(u[0][f],y[0][f]),y[1][f]=Math.min(u[1][f],y[1][f]);return y}function E(u,y,f,P){this.arcLength=u,this.position=y,this.index=f,this.dataCoordinate=P}function m(u,y,f,P,L,z){this.gl=u,this.shader=y,this.pickShader=f,this.buffer=P,this.vao=L,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=z,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var b=m.prototype;b.isTransparent=function(){return this.hasAlpha},b.isOpaque=function(){return!this.hasAlpha},b.pickSlots=1,b.setPickBase=function(u){this.pickId=u},b.drawTransparent=b.draw=function(u){if(this.vertexCount){var y=this.gl,f=this.shader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,clipBounds:S(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.drawPick=function(u){if(this.vertexCount){var y=this.gl,f=this.pickShader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,pickId:this.pickId,clipBounds:S(this.clipBounds),screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.update=function(u){var y,f;this.dirty=!0;var P=!!u.connectGaps;"dashScale"in u&&(this.dashScale=u.dashScale),this.hasAlpha=!1,"opacity"in u&&(this.opacity=+u.opacity,this.opacity<1&&(this.hasAlpha=!0));var L=[],z=[],F=[],B=0,O=0,I=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],N=u.position||u.positions;if(N){var U=u.color||u.colors||[0,0,0,1],W=u.lineWidth||1,Q=!1;e:for(y=1;y<N.length;++y){var ue=N[y-1],se=N[y];for(z.push(B),F.push(ue.slice()),f=0;f<3;++f){if(isNaN(ue[f])||isNaN(se[f])||!isFinite(ue[f])||!isFinite(se[f])){if(!P&&L.length>0){for(var he=0;he<24;++he)L.push(L[L.length-12]);O+=2,Q=!0}continue e}I[0][f]=Math.min(I[0][f],ue[f],se[f]),I[1][f]=Math.max(I[1][f],ue[f],se[f])}var G,$;Array.isArray(U[0])?(G=U.length>y-1?U[y-1]:U.length>0?U[U.length-1]:[0,0,0,1],$=U.length>y?U[y]:U.length>0?U[U.length-1]:[0,0,0,1]):G=$=U,G.length===3&&(G=[G[0],G[1],G[2],1]),$.length===3&&($=[$[0],$[1],$[2],1]),!this.hasAlpha&&G[3]<1&&(this.hasAlpha=!0);var J;Array.isArray(W)?J=W.length>y-1?W[y-1]:W.length>0?W[W.length-1]:[0,0,0,1]:J=W;var Z=B;if(B+=w(ue,se),Q){for(f=0;f<2;++f)L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3]);O+=2,Q=!1}L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3],ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,-J,G[0],G[1],G[2],G[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,-J,$[0],$[1],$[2],$[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,J,$[0],$[1],$[2],$[3]),O+=4}}if(this.buffer.update(L),z.push(B),F.push(N[N.length-1].slice()),this.bounds=I,this.vertexCount=O,this.points=F,this.arcLength=z,"dashes"in u){var re=u.dashes,ne=re.slice();for(ne.unshift(0),y=1;y<ne.length;++y)ne[y]=ne[y-1]+ne[y];var j=v(new Array(256*4),[256,1,4]);for(y=0;y<256;++y){for(f=0;f<4;++f)j.set(y,0,f,0);h.le(ne,ne[ne.length-1]*y/255)&1?j.set(y,0,0,0):j.set(y,0,0,255)}this.texture.setPixels(j)}},b.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},b.pick=function(u){if(!u||u.id!==this.pickId)return null;var y=c(u.value[0],u.value[1],u.value[2],0),f=h.le(this.arcLength,y);if(f<0)return null;if(f===this.arcLength.length-1)return new E(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),f);for(var P=this.points[f],L=this.points[Math.min(f+1,this.points.length-1)],z=(y-this.arcLength[f])/(this.arcLength[f+1]-this.arcLength[f]),F=1-z,B=[0,0,0],O=0;O<3;++O)B[O]=F*P[O]+z*L[O];var I=Math.min(z<.5?f:f+1,this.points.length-1);return new E(y,B,I,this.points[I])};function d(u){var y=u.gl||u.scene&&u.scene.gl,f=T(y);f.attributes.position.location=0,f.attributes.nextPosition.location=1,f.attributes.arcLength.location=2,f.attributes.lineWidth.location=3,f.attributes.color.location=4;var P=l(y);P.attributes.position.location=0,P.attributes.nextPosition.location=1,P.attributes.arcLength.location=2,P.attributes.lineWidth.location=3,P.attributes.color.location=4;for(var L=o(y),z=a(y,[{buffer:L,size:3,offset:0,stride:48},{buffer:L,size:3,offset:12,stride:48},{buffer:L,size:1,offset:24,stride:48},{buffer:L,size:1,offset:28,stride:48},{buffer:L,size:4,offset:32,stride:48}]),F=v(new Array(256*4),[256,1,4]),B=0;B<1024;++B)F.data[B]=255;var O=i(y,F);O.wrap=y.REPEAT;var I=new m(y,f,P,L,z,O);return I.update(u),I}},1903:function(e){e.exports=t;function t(r){var o=new Float32Array(16);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o[4]=r[4],o[5]=r[5],o[6]=r[6],o[7]=r[7],o[8]=r[8],o[9]=r[9],o[10]=r[10],o[11]=r[11],o[12]=r[12],o[13]=r[13],o[14]=r[14],o[15]=r[15],o}},6864:function(e){e.exports=t;function t(){var r=new Float32Array(16);return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},9921:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3],s=r[4],c=r[5],h=r[6],v=r[7],p=r[8],T=r[9],l=r[10],_=r[11],w=r[12],S=r[13],E=r[14],m=r[15],b=o*c-a*s,d=o*h-i*s,u=o*v-n*s,y=a*h-i*c,f=a*v-n*c,P=i*v-n*h,L=p*S-T*w,z=p*E-l*w,F=p*m-_*w,B=T*E-l*S,O=T*m-_*S,I=l*m-_*E;return b*I-d*O+u*B+y*F-f*z+P*L}},7399:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a+a,h=i+i,v=n+n,p=a*c,T=i*c,l=i*h,_=n*c,w=n*h,S=n*v,E=s*c,m=s*h,b=s*v;return r[0]=1-l-S,r[1]=T+b,r[2]=_-m,r[3]=0,r[4]=T-b,r[5]=1-p-S,r[6]=w+E,r[7]=0,r[8]=_+m,r[9]=w-E,r[10]=1-p-l,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},6743:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3],h=i+i,v=n+n,p=s+s,T=i*h,l=i*v,_=i*p,w=n*v,S=n*p,E=s*p,m=c*h,b=c*v,d=c*p;return r[0]=1-(w+E),r[1]=l+d,r[2]=_-b,r[3]=0,r[4]=l-d,r[5]=1-(T+E),r[6]=S+m,r[7]=0,r[8]=_+b,r[9]=S-m,r[10]=1-(T+w),r[11]=0,r[12]=a[0],r[13]=a[1],r[14]=a[2],r[15]=1,r}},7894:function(e){e.exports=t;function t(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},7608:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=o[4],h=o[5],v=o[6],p=o[7],T=o[8],l=o[9],_=o[10],w=o[11],S=o[12],E=o[13],m=o[14],b=o[15],d=a*h-i*c,u=a*v-n*c,y=a*p-s*c,f=i*v-n*h,P=i*p-s*h,L=n*p-s*v,z=T*E-l*S,F=T*m-_*S,B=T*b-w*S,O=l*m-_*E,I=l*b-w*E,N=_*b-w*m,U=d*N-u*I+y*O+f*B-P*F+L*z;return U?(U=1/U,r[0]=(h*N-v*I+p*O)*U,r[1]=(n*I-i*N-s*O)*U,r[2]=(E*L-m*P+b*f)*U,r[3]=(_*P-l*L-w*f)*U,r[4]=(v*B-c*N-p*F)*U,r[5]=(a*N-n*B+s*F)*U,r[6]=(m*y-S*L-b*u)*U,r[7]=(T*L-_*y+w*u)*U,r[8]=(c*I-h*B+p*z)*U,r[9]=(i*B-a*I-s*z)*U,r[10]=(S*P-E*y+b*d)*U,r[11]=(l*y-T*P-w*d)*U,r[12]=(h*F-c*O-v*z)*U,r[13]=(a*O-i*F+n*z)*U,r[14]=(E*u-S*f-m*d)*U,r[15]=(T*f-l*u+_*d)*U,r):null}},6582:function(e,t,r){var o=r(7894);e.exports=a;function a(i,n,s,c){var h,v,p,T,l,_,w,S,E,m,b=n[0],d=n[1],u=n[2],y=c[0],f=c[1],P=c[2],L=s[0],z=s[1],F=s[2];return Math.abs(b-L)<1e-6&&Math.abs(d-z)<1e-6&&Math.abs(u-F)<1e-6?o(i):(w=b-L,S=d-z,E=u-F,m=1/Math.sqrt(w*w+S*S+E*E),w*=m,S*=m,E*=m,h=f*E-P*S,v=P*w-y*E,p=y*S-f*w,m=Math.sqrt(h*h+v*v+p*p),m?(m=1/m,h*=m,v*=m,p*=m):(h=0,v=0,p=0),T=S*p-E*v,l=E*h-w*p,_=w*v-S*h,m=Math.sqrt(T*T+l*l+_*_),m?(m=1/m,T*=m,l*=m,_*=m):(T=0,l=0,_=0),i[0]=h,i[1]=T,i[2]=w,i[3]=0,i[4]=v,i[5]=l,i[6]=S,i[7]=0,i[8]=p,i[9]=_,i[10]=E,i[11]=0,i[12]=-(h*b+v*d+p*u),i[13]=-(T*b+l*d+_*u),i[14]=-(w*b+S*d+E*u),i[15]=1,i)}},6760:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3],h=o[4],v=o[5],p=o[6],T=o[7],l=o[8],_=o[9],w=o[10],S=o[11],E=o[12],m=o[13],b=o[14],d=o[15],u=a[0],y=a[1],f=a[2],P=a[3];return r[0]=u*i+y*h+f*l+P*E,r[1]=u*n+y*v+f*_+P*m,r[2]=u*s+y*p+f*w+P*b,r[3]=u*c+y*T+f*S+P*d,u=a[4],y=a[5],f=a[6],P=a[7],r[4]=u*i+y*h+f*l+P*E,r[5]=u*n+y*v+f*_+P*m,r[6]=u*s+y*p+f*w+P*b,r[7]=u*c+y*T+f*S+P*d,u=a[8],y=a[9],f=a[10],P=a[11],r[8]=u*i+y*h+f*l+P*E,r[9]=u*n+y*v+f*_+P*m,r[10]=u*s+y*p+f*w+P*b,r[11]=u*c+y*T+f*S+P*d,u=a[12],y=a[13],f=a[14],P=a[15],r[12]=u*i+y*h+f*l+P*E,r[13]=u*n+y*v+f*_+P*m,r[14]=u*s+y*p+f*w+P*b,r[15]=u*c+y*T+f*S+P*d,r}},4040:function(e){e.exports=t;function t(r,o,a,i,n,s,c){var h=1/(o-a),v=1/(i-n),p=1/(s-c);return r[0]=-2*h,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*v,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=2*p,r[11]=0,r[12]=(o+a)*h,r[13]=(n+i)*v,r[14]=(c+s)*p,r[15]=1,r}},4772:function(e){e.exports=t;function t(r,o,a,i,n){var s=1/Math.tan(o/2),c=1/(i-n);return r[0]=s/a,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=s,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=(n+i)*c,r[11]=-1,r[12]=0,r[13]=0,r[14]=2*n*i*c,r[15]=0,r}},6079:function(e){e.exports=t;function t(r,o,a,i){var n=i[0],s=i[1],c=i[2],h=Math.sqrt(n*n+s*s+c*c),v,p,T,l,_,w,S,E,m,b,d,u,y,f,P,L,z,F,B,O,I,N,U,W;return Math.abs(h)<1e-6?null:(h=1/h,n*=h,s*=h,c*=h,v=Math.sin(a),p=Math.cos(a),T=1-p,l=o[0],_=o[1],w=o[2],S=o[3],E=o[4],m=o[5],b=o[6],d=o[7],u=o[8],y=o[9],f=o[10],P=o[11],L=n*n*T+p,z=s*n*T+c*v,F=c*n*T-s*v,B=n*s*T-c*v,O=s*s*T+p,I=c*s*T+n*v,N=n*c*T+s*v,U=s*c*T-n*v,W=c*c*T+p,r[0]=l*L+E*z+u*F,r[1]=_*L+m*z+y*F,r[2]=w*L+b*z+f*F,r[3]=S*L+d*z+P*F,r[4]=l*B+E*O+u*I,r[5]=_*B+m*O+y*I,r[6]=w*B+b*O+f*I,r[7]=S*B+d*O+P*I,r[8]=l*N+E*U+u*W,r[9]=_*N+m*U+y*W,r[10]=w*N+b*U+f*W,r[11]=S*N+d*U+P*W,o!==r&&(r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r)}},5567:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[4],c=o[5],h=o[6],v=o[7],p=o[8],T=o[9],l=o[10],_=o[11];return o!==r&&(r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[4]=s*n+p*i,r[5]=c*n+T*i,r[6]=h*n+l*i,r[7]=v*n+_*i,r[8]=p*n-s*i,r[9]=T*n-c*i,r[10]=l*n-h*i,r[11]=_*n-v*i,r}},2408:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[0],c=o[1],h=o[2],v=o[3],p=o[8],T=o[9],l=o[10],_=o[11];return o!==r&&(r[4]=o[4],r[5]=o[5],r[6]=o[6],r[7]=o[7],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[0]=s*n-p*i,r[1]=c*n-T*i,r[2]=h*n-l*i,r[3]=v*n-_*i,r[8]=s*i+p*n,r[9]=c*i+T*n,r[10]=h*i+l*n,r[11]=v*i+_*n,r}},7089:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[0],c=o[1],h=o[2],v=o[3],p=o[4],T=o[5],l=o[6],_=o[7];return o!==r&&(r[8]=o[8],r[9]=o[9],r[10]=o[10],r[11]=o[11],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[0]=s*n+p*i,r[1]=c*n+T*i,r[2]=h*n+l*i,r[3]=v*n+_*i,r[4]=p*n-s*i,r[5]=T*n-c*i,r[6]=l*n-h*i,r[7]=_*n-v*i,r}},2504:function(e){e.exports=t;function t(r,o,a){var i=a[0],n=a[1],s=a[2];return r[0]=o[0]*i,r[1]=o[1]*i,r[2]=o[2]*i,r[3]=o[3]*i,r[4]=o[4]*n,r[5]=o[5]*n,r[6]=o[6]*n,r[7]=o[7]*n,r[8]=o[8]*s,r[9]=o[9]*s,r[10]=o[10]*s,r[11]=o[11]*s,r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15],r}},7656:function(e){e.exports=t;function t(r,o,a){var i=a[0],n=a[1],s=a[2],c,h,v,p,T,l,_,w,S,E,m,b;return o===r?(r[12]=o[0]*i+o[4]*n+o[8]*s+o[12],r[13]=o[1]*i+o[5]*n+o[9]*s+o[13],r[14]=o[2]*i+o[6]*n+o[10]*s+o[14],r[15]=o[3]*i+o[7]*n+o[11]*s+o[15]):(c=o[0],h=o[1],v=o[2],p=o[3],T=o[4],l=o[5],_=o[6],w=o[7],S=o[8],E=o[9],m=o[10],b=o[11],r[0]=c,r[1]=h,r[2]=v,r[3]=p,r[4]=T,r[5]=l,r[6]=_,r[7]=w,r[8]=S,r[9]=E,r[10]=m,r[11]=b,r[12]=c*i+T*n+S*s+o[12],r[13]=h*i+l*n+E*s+o[13],r[14]=v*i+_*n+m*s+o[14],r[15]=p*i+w*n+b*s+o[15]),r}},5665:function(e){e.exports=t;function t(r,o){if(r===o){var a=o[1],i=o[2],n=o[3],s=o[6],c=o[7],h=o[11];r[1]=o[4],r[2]=o[8],r[3]=o[12],r[4]=a,r[6]=o[9],r[7]=o[13],r[8]=i,r[9]=s,r[11]=o[14],r[12]=n,r[13]=c,r[14]=h}else r[0]=o[0],r[1]=o[4],r[2]=o[8],r[3]=o[12],r[4]=o[1],r[5]=o[5],r[6]=o[9],r[7]=o[13],r[8]=o[2],r[9]=o[6],r[10]=o[10],r[11]=o[14],r[12]=o[3],r[13]=o[7],r[14]=o[11],r[15]=o[15];return r}},7626:function(e,t,r){"use strict";var o=r(2642),a=r(9346);e.exports=h;function i(v,p){for(var T=[0,0,0,0],l=0;l<4;++l)for(var _=0;_<4;++_)T[_]+=v[4*l+_]*p[l];return T}function n(v,p,T,l,_){for(var w=i(l,i(T,i(p,[v[0],v[1],v[2],1]))),S=0;S<3;++S)w[S]/=w[3];return[.5*_[0]*(1+w[0]),.5*_[1]*(1-w[1])]}function s(v,p){if(v.length===2){for(var T=0,l=0,_=0;_<2;++_)T+=Math.pow(p[_]-v[0][_],2),l+=Math.pow(p[_]-v[1][_],2);return T=Math.sqrt(T),l=Math.sqrt(l),T+l<1e-6?[1,0]:[l/(T+l),T/(l+T)]}else if(v.length===3){var w=[0,0];return a(v[0],v[1],v[2],p,w),o(v,w)}return[]}function c(v,p){for(var T=[0,0,0],l=0;l<v.length;++l)for(var _=v[l],w=p[l],S=0;S<3;++S)T[S]+=w*_[S];return T}function h(v,p,T,l,_,w){if(v.length===1)return[0,v[0].slice()];for(var S=new Array(v.length),E=0;E<v.length;++E)S[E]=n(v[E],T,l,_,w);for(var m=0,b=1/0,E=0;E<S.length;++E){for(var d=0,u=0;u<2;++u)d+=Math.pow(S[E][u]-p[u],2);d<b&&(b=d,m=E)}for(var y=s(S,p),f=0,E=0;E<3;++E){if(y[E]<-.001||y[E]>1.0001)return null;f+=y[E]}return Math.abs(f-1)>.001?null:[m,c(v,y),y]}},840:function(e,t,r){var o=r(3236),a=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, normal;
+attribute vec4 color;
+attribute vec2 uv;
+
+uniform mat4 model
+ , view
+ , projection
+ , inverseModel;
+uniform vec3 eyePosition
+ , lightPosition;
+
+varying vec3 f_normal
+ , f_lightDirection
+ , f_eyeDirection
+ , f_data;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+vec4 project(vec3 p) {
+ return projection * (view * (model * vec4(p, 1.0)));
+}
+
+void main() {
+ gl_Position = project(position);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * vec4(position , 1.0);
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ f_color = color;
+ f_data = position;
+ f_uv = uv;
+}
+`]),i=o([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness
+ , fresnel
+ , kambient
+ , kdiffuse
+ , kspecular;
+uniform sampler2D texture;
+
+varying vec3 f_normal
+ , f_lightDirection
+ , f_eyeDirection
+ , f_data;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (f_color.a == 0.0 ||
+ outOfRange(clipBounds[0], clipBounds[1], f_data)
+ ) discard;
+
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d
+
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * f_color.a;
+}
+`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 uv;
+
+uniform mat4 model, view, projection;
+
+varying vec4 f_color;
+varying vec3 f_data;
+varying vec2 f_uv;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ f_color = color;
+ f_data = position;
+ f_uv = uv;
+}`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform sampler2D texture;
+uniform float opacity;
+
+varying vec4 f_color;
+varying vec3 f_data;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;
+
+ gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
+}`]),c=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 uv;
+attribute float pointSize;
+
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);
+ } else {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ }
+ gl_PointSize = pointSize;
+ f_color = color;
+ f_uv = uv;
+}`]),h=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform sampler2D texture;
+uniform float opacity;
+
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);
+ if(dot(pointR, pointR) > 0.25) {
+ discard;
+ }
+ gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
+}`]),v=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ f_id = id;
+ f_position = position;
+}`]),p=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]),T=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute float pointSize;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0.0, 0.0, 0.0, 0.0);
+ } else {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ gl_PointSize = pointSize;
+ }
+ f_id = id;
+ f_position = position;
+}`]),l=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+}`]),_=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec3 contourColor;
+
+void main() {
+ gl_FragColor = vec4(contourColor, 1.0);
+}
+`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:c,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:v,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:T,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:l,fragment:_,attributes:[{name:"position",type:"vec3"}]}},7201:function(e,t,r){"use strict";var o=1e-6,a=1e-6,i=r(9405),n=r(2762),s=r(8116),c=r(7766),h=r(8406),v=r(6760),p=r(7608),T=r(9618),l=r(6729),_=r(7765),w=r(1888),S=r(840),E=r(7626),m=S.meshShader,b=S.wireShader,d=S.pointShader,u=S.pickShader,y=S.pointPickShader,f=S.contourShader,P=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function L(he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe){this.gl=he,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=G,this.dirty=!0,this.triShader=$,this.lineShader=J,this.pointShader=Z,this.pickShader=re,this.pointPickShader=ne,this.contourShader=j,this.trianglePositions=ee,this.triangleColors=fe,this.triangleNormals=Ae,this.triangleUVs=be,this.triangleIds=ie,this.triangleVAO=Be,this.triangleCount=0,this.lineWidth=1,this.edgePositions=Ie,this.edgeColors=at,this.edgeUVs=it,this.edgeIds=Ze,this.edgeVAO=et,this.edgeCount=0,this.pointPositions=lt,this.pointColors=ge,this.pointUVs=ce,this.pointSizes=ze,this.pointIds=Me,this.pointVAO=tt,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=nt,this.contourVAO=Qe,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=P,this._view=P,this._projection=P,this._resolution=[1,1]}var z=L.prototype;z.isOpaque=function(){return!this.hasAlpha},z.isTransparent=function(){return this.hasAlpha},z.pickSlots=1,z.setPickBase=function(he){this.pickId=he};function F(he,G){if(!G||!G.length)return 1;for(var $=0;$<G.length;++$){if(G.length<2)return 1;if(G[$][0]===he)return G[$][1];if(G[$][0]>he&&$>0){var J=(G[$][0]-he)/(G[$][0]-G[$-1][0]);return G[$][1]*(1-J)+J*G[$-1][1]}}return 1}function B(he,G){for(var $=l({colormap:he,nshades:256,format:"rgba"}),J=new Uint8Array(256*4),Z=0;Z<256;++Z){for(var re=$[Z],ne=0;ne<3;++ne)J[4*Z+ne]=re[ne];G?J[4*Z+3]=255*F(Z/255,G):J[4*Z+3]=255*re[3]}return T(J,[256,256,4],[4,0,1])}function O(he){for(var G=he.length,$=new Array(G),J=0;J<G;++J)$[J]=he[J][2];return $}z.highlight=function(he){if(!he||!this.contourEnable){this.contourCount=0;return}for(var G=_(this.cells,this.intensity,he.intensity),$=G.cells,J=G.vertexIds,Z=G.vertexWeights,re=$.length,ne=w.mallocFloat32(2*3*re),j=0,ee=0;ee<re;++ee)for(var ie=$[ee],fe=0;fe<2;++fe){var be=ie[0];ie.length===2&&(be=ie[fe]);for(var Ae=J[be][0],Be=J[be][1],Ie=Z[be],Ze=1-Ie,at=this.positions[Ae],it=this.positions[Be],et=0;et<3;++et)ne[j++]=Ie*at[et]+Ze*it[et]}this.contourCount=j/3|0,this.contourPositions.update(ne.subarray(0,j)),w.free(ne)},z.update=function(he){he=he||{};var G=this.gl;this.dirty=!0,"contourEnable"in he&&(this.contourEnable=he.contourEnable),"contourColor"in he&&(this.contourColor=he.contourColor),"lineWidth"in he&&(this.lineWidth=he.lineWidth),"lightPosition"in he&&(this.lightPosition=he.lightPosition),this.hasAlpha=!1,"opacity"in he&&(this.opacity=he.opacity,this.opacity<1&&(this.hasAlpha=!0)),"opacityscale"in he&&(this.opacityscale=he.opacityscale,this.hasAlpha=!0),"ambient"in he&&(this.ambientLight=he.ambient),"diffuse"in he&&(this.diffuseLight=he.diffuse),"specular"in he&&(this.specularLight=he.specular),"roughness"in he&&(this.roughness=he.roughness),"fresnel"in he&&(this.fresnel=he.fresnel),he.texture?(this.texture.dispose(),this.texture=c(G,he.texture)):he.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=G.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=G.LINEAR,this.texture.setPixels(B(he.colormap,this.opacityscale)),this.texture.generateMipmap());var $=he.cells,J=he.positions;if(!(!J||!$)){var Z=[],re=[],ne=[],j=[],ee=[],ie=[],fe=[],be=[],Ae=[],Be=[],Ie=[],Ze=[],at=[],it=[];this.cells=$,this.positions=J;var et=he.vertexNormals,lt=he.cellNormals,Me=he.vertexNormalsEpsilon===void 0?o:he.vertexNormalsEpsilon,ge=he.faceNormalsEpsilon===void 0?a:he.faceNormalsEpsilon;he.useFacetNormals&&!lt&&(lt=h.faceNormals($,J,ge)),!lt&&!et&&(et=h.vertexNormals($,J,Me));var ce=he.vertexColors,ze=he.cellColors,tt=he.meshColor||[1,1,1,1],nt=he.vertexUVs,Qe=he.vertexIntensity,Ct=he.cellUVs,St=he.cellIntensity,Ot=1/0,jt=-1/0;if(!nt&&!Ct)if(Qe)if(he.vertexIntensityBounds)Ot=+he.vertexIntensityBounds[0],jt=+he.vertexIntensityBounds[1];else for(var ur=0;ur<Qe.length;++ur){var ar=Qe[ur];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}else if(St)if(he.cellIntensityBounds)Ot=+he.cellIntensityBounds[0],jt=+he.cellIntensityBounds[1];else for(var ur=0;ur<St.length;++ur){var ar=St[ur];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}else for(var ur=0;ur<J.length;++ur){var ar=J[ur][2];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}Qe?this.intensity=Qe:St?this.intensity=St:this.intensity=O(J),this.pickVertex=!(St||ze);var Cr=he.pointSizes,vr=he.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var ur=0;ur<J.length;++ur)for(var _r=J[ur],yt=0;yt<3;++yt)isNaN(_r[yt])||!isFinite(_r[yt])||(this.bounds[0][yt]=Math.min(this.bounds[0][yt],_r[yt]),this.bounds[1][yt]=Math.max(this.bounds[1][yt],_r[yt]));var Fe=0,Ke=0,Ne=0;e:for(var ur=0;ur<$.length;++ur){var Ee=$[ur];switch(Ee.length){case 1:for(var Ve=Ee[0],_r=J[Ve],yt=0;yt<3;++yt)if(isNaN(_r[yt])||!isFinite(_r[yt]))continue e;Be.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?Ie.push(ke[0],ke[1],ke[2],this.opacity):(Ie.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0));var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],Ze.push(Te[0],Te[1]),Cr?at.push(Cr[Ve]):at.push(vr),it.push(ur),Ne+=1;break;case 2:for(var yt=0;yt<2;++yt)for(var Ve=Ee[yt],_r=J[Ve],Le=0;Le<3;++Le)if(isNaN(_r[Le])||!isFinite(_r[Le]))continue e;for(var yt=0;yt<2;++yt){var Ve=Ee[yt],_r=J[Ve];ie.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?fe.push(ke[0],ke[1],ke[2],this.opacity):(fe.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0));var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],be.push(Te[0],Te[1]),Ae.push(ur)}Ke+=1;break;case 3:for(var yt=0;yt<3;++yt)for(var Ve=Ee[yt],_r=J[Ve],Le=0;Le<3;++Le)if(isNaN(_r[Le])||!isFinite(_r[Le]))continue e;for(var yt=0;yt<3;++yt){var Ve=Ee[2-yt],_r=J[Ve];Z.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,ke?this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?re.push(ke[0],ke[1],ke[2],this.opacity):(re.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0)):re.push(.5,.5,.5,1);var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],j.push(Te[0],Te[1]);var rt;et?rt=et[Ve]:rt=lt[ur],ne.push(rt[0],rt[1],rt[2]),ee.push(ur)}Fe+=1;break;default:break}}this.pointCount=Ne,this.edgeCount=Ke,this.triangleCount=Fe,this.pointPositions.update(Be),this.pointColors.update(Ie),this.pointUVs.update(Ze),this.pointSizes.update(at),this.pointIds.update(new Uint32Array(it)),this.edgePositions.update(ie),this.edgeColors.update(fe),this.edgeUVs.update(be),this.edgeIds.update(new Uint32Array(Ae)),this.trianglePositions.update(Z),this.triangleColors.update(re),this.triangleUVs.update(j),this.triangleNormals.update(ne),this.triangleIds.update(new Uint32Array(ee))}},z.drawTransparent=z.draw=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);var j={model:$,view:J,projection:Z,inverseModel:P.slice(),clipBounds:re,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};j.inverseModel=p(j.inverseModel,j.model),G.disable(G.CULL_FACE),this.texture.bind(0);var ee=new Array(16);v(ee,j.view,j.model),v(ee,j.projection,ee),p(ee,ee);for(var ne=0;ne<3;++ne)j.eyePosition[ne]=ee[12+ne]/ee[15];for(var ie=ee[15],ne=0;ne<3;++ne)ie+=this.lightPosition[ne]*ee[4*ne+3];for(var ne=0;ne<3;++ne){for(var fe=ee[12+ne],be=0;be<3;++be)fe+=ee[4*be+ne]*this.lightPosition[be];j.lightPosition[ne]=fe/ie}if(this.triangleCount>0){var Ae=this.triShader;Ae.bind(),Ae.uniforms=j,this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var Ae=this.lineShader;Ae.bind(),Ae.uniforms=j,this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var Ae=this.pointShader;Ae.bind(),Ae.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var Ae=this.contourShader;Ae.bind(),Ae.uniforms=j,this.contourVAO.bind(),G.drawArrays(G.LINES,0,this.contourCount),this.contourVAO.unbind()}},z.drawPick=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);this._model=[].slice.call($),this._view=[].slice.call(J),this._projection=[].slice.call(Z),this._resolution=[G.drawingBufferWidth,G.drawingBufferHeight];var j={model:$,view:J,projection:Z,clipBounds:re,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=j,this.triangleCount>0&&(this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}},z.pick=function(he){if(!he||he.id!==this.pickId)return null;for(var G=he.value[0]+256*he.value[1]+65536*he.value[2],$=this.cells[G],J=this.positions,Z=new Array($.length),re=0;re<$.length;++re)Z[re]=J[$[re]];var ne=he.coord[0],j=he.coord[1];if(!this.pickVertex){var ee=this.positions[$[0]],ie=this.positions[$[1]],fe=this.positions[$[2]],be=[(ee[0]+ie[0]+fe[0])/3,(ee[1]+ie[1]+fe[1])/3,(ee[2]+ie[2]+fe[2])/3];return{_cellCenter:!0,position:[ne,j],index:G,cell:$,cellId:G,intensity:this.intensity[G],dataCoordinate:be}}var Ae=E(Z,[ne*this.pixelRatio,this._resolution[1]-j*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!Ae)return null;for(var Be=Ae[2],Ie=0,re=0;re<$.length;++re)Ie+=Be[re]*this.intensity[$[re]];return{position:Ae[1],index:$[Ae[0]],cell:$,cellId:G,intensity:Ie,dataCoordinate:this.positions[$[Ae[0]]]}},z.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()};function I(he){var G=i(he,m.vertex,m.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.normal.location=4,G}function N(he){var G=i(he,b.vertex,b.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G}function U(he){var G=i(he,d.vertex,d.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.pointSize.location=4,G}function W(he){var G=i(he,u.vertex,u.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G}function Q(he){var G=i(he,y.vertex,y.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G.attributes.pointSize.location=4,G}function ue(he){var G=i(he,f.vertex,f.fragment);return G.attributes.position.location=0,G}function se(he,G){arguments.length===1&&(G=he,he=G.gl);var $=he.getExtension("OES_standard_derivatives")||he.getExtension("MOZ_OES_standard_derivatives")||he.getExtension("WEBKIT_OES_standard_derivatives");if(!$)throw new Error("derivatives not supported");var J=I(he),Z=N(he),re=U(he),ne=W(he),j=Q(he),ee=ue(he),ie=c(he,T(new Uint8Array([255,255,255,255]),[1,1,4]));ie.generateMipmap(),ie.minFilter=he.LINEAR_MIPMAP_LINEAR,ie.magFilter=he.LINEAR;var fe=n(he),be=n(he),Ae=n(he),Be=n(he),Ie=n(he),Ze=s(he,[{buffer:fe,type:he.FLOAT,size:3},{buffer:Ie,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:be,type:he.FLOAT,size:4},{buffer:Ae,type:he.FLOAT,size:2},{buffer:Be,type:he.FLOAT,size:3}]),at=n(he),it=n(he),et=n(he),lt=n(he),Me=s(he,[{buffer:at,type:he.FLOAT,size:3},{buffer:lt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:it,type:he.FLOAT,size:4},{buffer:et,type:he.FLOAT,size:2}]),ge=n(he),ce=n(he),ze=n(he),tt=n(he),nt=n(he),Qe=s(he,[{buffer:ge,type:he.FLOAT,size:3},{buffer:nt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:ce,type:he.FLOAT,size:4},{buffer:ze,type:he.FLOAT,size:2},{buffer:tt,type:he.FLOAT,size:1}]),Ct=n(he),St=s(he,[{buffer:Ct,type:he.FLOAT,size:3}]),Ot=new L(he,ie,J,Z,re,ne,j,ee,fe,Ie,be,Ae,Be,Ze,at,lt,it,et,Me,ge,nt,ce,ze,tt,Qe,Ct,St);return Ot.update(G),Ot}e.exports=se},4437:function(e,t,r){"use strict";e.exports=h;var o=r(3025),a=r(6296),i=r(351),n=r(8512),s=r(24),c=r(7520);function h(v,p){v=v||document.body,p=p||{};var T=[.01,1/0];"distanceLimits"in p&&(T[0]=p.distanceLimits[0],T[1]=p.distanceLimits[1]),"zoomMin"in p&&(T[0]=p.zoomMin),"zoomMax"in p&&(T[1]=p.zoomMax);var l=a({center:p.center||[0,0,0],up:p.up||[0,1,0],eye:p.eye||[0,0,10],mode:p.mode||"orbit",distanceLimits:T}),_=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],w=0,S=v.clientWidth,E=v.clientHeight,m={keyBindingMode:"rotate",enableWheel:!0,view:l,element:v,delay:p.delay||16,rotateSpeed:p.rotateSpeed||1,zoomSpeed:p.zoomSpeed||1,translateSpeed:p.translateSpeed||1,flipX:!!p.flipX,flipY:!!p.flipY,modes:l.modes,_ortho:p._ortho||p.projection&&p.projection.type==="orthographic"||!1,tick:function(){var b=o(),d=this.delay,u=b-2*d;l.idle(b-d),l.recalcMatrix(u),l.flush(b-(100+d*2));for(var y=!0,f=l.computedMatrix,P=0;P<16;++P)y=y&&_[P]===f[P],_[P]=f[P];var L=v.clientWidth===S&&v.clientHeight===E;return S=v.clientWidth,E=v.clientHeight,y?!L:(w=Math.exp(l.computedRadius[0]),!0)},lookAt:function(b,d,u){l.lookAt(l.lastT(),b,d,u)},rotate:function(b,d,u){l.rotate(l.lastT(),b,d,u)},pan:function(b,d,u){l.pan(l.lastT(),b,d,u)},translate:function(b,d,u){l.translate(l.lastT(),b,d,u)}};return Object.defineProperties(m,{matrix:{get:function(){return l.computedMatrix},set:function(b){return l.setMatrix(l.lastT(),b),l.computedMatrix},enumerable:!0},mode:{get:function(){return l.getMode()},set:function(b){var d=l.computedUp.slice(),u=l.computedEye.slice(),y=l.computedCenter.slice();if(l.setMode(b),b==="turntable"){var f=o();l._active.lookAt(f,u,y,d),l._active.lookAt(f+500,u,y,[0,0,1]),l._active.flush(f)}return l.getMode()},enumerable:!0},center:{get:function(){return l.computedCenter},set:function(b){return l.lookAt(l.lastT(),null,b),l.computedCenter},enumerable:!0},eye:{get:function(){return l.computedEye},set:function(b){return l.lookAt(l.lastT(),b),l.computedEye},enumerable:!0},up:{get:function(){return l.computedUp},set:function(b){return l.lookAt(l.lastT(),null,null,b),l.computedUp},enumerable:!0},distance:{get:function(){return w},set:function(b){return l.setDistance(l.lastT(),b),b},enumerable:!0},distanceLimits:{get:function(){return l.getDistanceLimits(T)},set:function(b){return l.setDistanceLimits(b),b},enumerable:!0}}),v.addEventListener("contextmenu",function(b){return b.preventDefault(),!1}),m._lastX=-1,m._lastY=-1,m._lastMods={shift:!1,control:!1,alt:!1,meta:!1},m.enableMouseListeners=function(){m.mouseListener=i(v,b),v.addEventListener("touchstart",function(d){var u=s(d.changedTouches[0],v);b(0,u[0],u[1],m._lastMods),b(1,u[0],u[1],m._lastMods)},c?{passive:!0}:!1),v.addEventListener("touchmove",function(d){var u=s(d.changedTouches[0],v);b(1,u[0],u[1],m._lastMods),d.preventDefault()},c?{passive:!1}:!1),v.addEventListener("touchend",function(d){b(0,m._lastX,m._lastY,m._lastMods)},c?{passive:!0}:!1);function b(d,u,y,f){var P=m.keyBindingMode;if(P!==!1){var L=P==="rotate",z=P==="pan",F=P==="zoom",B=!!f.control,O=!!f.alt,I=!!f.shift,N=!!(d&1),U=!!(d&2),W=!!(d&4),Q=1/v.clientHeight,ue=Q*(u-m._lastX),se=Q*(y-m._lastY),he=m.flipX?1:-1,G=m.flipY?1:-1,$=Math.PI*m.rotateSpeed,J=o();if(m._lastX!==-1&&m._lastY!==-1&&((L&&N&&!B&&!O&&!I||N&&!B&&!O&&I)&&l.rotate(J,he*$*ue,-G*$*se,0),(z&&N&&!B&&!O&&!I||U||N&&B&&!O&&!I)&&l.pan(J,-m.translateSpeed*ue*w,m.translateSpeed*se*w,0),F&&N&&!B&&!O&&!I||W||N&&!B&&O&&!I)){var Z=-m.zoomSpeed*se/window.innerHeight*(J-l.lastT())*100;l.pan(J,0,0,w*(Math.exp(Z)-1))}return m._lastX=u,m._lastY=y,m._lastMods=f,!0}}m.wheelListener=n(v,function(d,u){if(m.keyBindingMode!==!1&&m.enableWheel){var y=m.flipX?1:-1,f=m.flipY?1:-1,P=o();if(Math.abs(d)>Math.abs(u))l.rotate(P,0,0,-d*y*Math.PI*m.rotateSpeed/window.innerWidth);else if(!m._ortho){var L=-m.zoomSpeed*f*u/window.innerHeight*(P-l.lastT())/20;l.pan(P,0,0,w*(Math.exp(L)-1))}}},!0)},m.enableMouseListeners(),m}},799:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision mediump float;
+#define GLSLIFY 1
+attribute vec2 position;
+varying vec2 uv;
+void main() {
+ uv = position;
+ gl_Position = vec4(position, 0, 1);
+}`]),n=o([`precision mediump float;
+#define GLSLIFY 1
+
+uniform sampler2D accumBuffer;
+varying vec2 uv;
+
+void main() {
+ vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));
+ gl_FragColor = min(vec4(1,1,1,1), accum);
+}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec2"}])}},4100:function(e,t,r){"use strict";var o=r(4437),a=r(3837),i=r(5445),n=r(4449),s=r(3589),c=r(2260),h=r(7169),v=r(351),p=r(4772),T=r(4040),l=r(799),_=r(9216)({tablet:!0,featureDetect:!0});e.exports={createScene:b,createCamera:o};function w(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(u,y){var f=null;try{f=u.getContext("webgl",y),f||(f=u.getContext("experimental-webgl",y))}catch{return null}return f}function E(u){var y=Math.round(Math.log(Math.abs(u))/Math.log(10));if(y<0){var f=Math.round(Math.pow(10,-y));return Math.ceil(u*f)/f}else if(y>0){var f=Math.round(Math.pow(10,y));return Math.ceil(u/f)*f}return Math.ceil(u)}function m(u){return typeof u=="boolean"?u:!0}function b(u){u=u||{},u.camera=u.camera||{};var y=u.canvas;if(!y)if(y=document.createElement("canvas"),u.container){var f=u.container;f.appendChild(y)}else document.body.appendChild(y);var P=u.gl;if(P||(u.glOptions&&(_=!!u.glOptions.preserveDrawingBuffer),P=S(y,u.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:_})),!P)throw new Error("webgl not supported");var L=u.bounds||[[-10,-10,-10],[10,10,10]],z=new w,F=c(P,P.drawingBufferWidth,P.drawingBufferHeight,{preferFloat:!_}),B=l(P),O=u.cameraObject&&u.cameraObject._ortho===!0||u.camera.projection&&u.camera.projection.type==="orthographic"||!1,I={eye:u.camera.eye||[2,0,0],center:u.camera.center||[0,0,0],up:u.camera.up||[0,1,0],zoomMin:u.camera.zoomMax||.1,zoomMax:u.camera.zoomMin||100,mode:u.camera.mode||"turntable",_ortho:O},N=u.axes||{},U=a(P,N);U.enable=!N.disable;var W=u.spikes||{},Q=n(P,W),ue=[],se=[],he=[],G=[],$=!0,ne=!0,J=new Array(16),Z=new Array(16),re={view:null,projection:J,model:Z,_ortho:!1},ne=!0,j=[P.drawingBufferWidth,P.drawingBufferHeight],ee=u.cameraObject||o(y,I),ie={gl:P,contextLost:!1,pixelRatio:u.pixelRatio||1,canvas:y,selection:z,camera:ee,axes:U,axesPixels:null,spikes:Q,bounds:L,objects:ue,shape:j,aspect:u.aspectRatio||[1,1,1],pickRadius:u.pickRadius||10,zNear:u.zNear||.01,zFar:u.zFar||1e3,fovy:u.fovy||Math.PI/4,clearColor:u.clearColor||[0,0,0,0],autoResize:m(u.autoResize),autoBounds:m(u.autoBounds),autoScale:!!u.autoScale,autoCenter:m(u.autoCenter),clipToBounds:m(u.clipToBounds),snapToData:!!u.snapToData,onselect:u.onselect||null,onrender:u.onrender||null,onclick:u.onclick||null,cameraParams:re,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(lt){this.aspect[0]=lt.x,this.aspect[1]=lt.y,this.aspect[2]=lt.z,ne=!0},setBounds:function(lt,Me){this.bounds[0][lt]=Me.min,this.bounds[1][lt]=Me.max},setClearColor:function(lt){this.clearColor=lt},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},fe=[P.drawingBufferWidth/ie.pixelRatio|0,P.drawingBufferHeight/ie.pixelRatio|0];function be(){if(!ie._stopped&&ie.autoResize){var lt=y.parentNode,Me=1,ge=1;lt&&lt!==document.body?(Me=lt.clientWidth,ge=lt.clientHeight):(Me=window.innerWidth,ge=window.innerHeight);var ce=Math.ceil(Me*ie.pixelRatio)|0,ze=Math.ceil(ge*ie.pixelRatio)|0;if(ce!==y.width||ze!==y.height){y.width=ce,y.height=ze;var tt=y.style;tt.position=tt.position||"absolute",tt.left="0px",tt.top="0px",tt.width=Me+"px",tt.height=ge+"px",$=!0}}}ie.autoResize&&be(),window.addEventListener("resize",be);function Ae(){for(var lt=ue.length,Me=G.length,ge=0;ge<Me;++ge)he[ge]=0;e:for(var ge=0;ge<lt;++ge){var ce=ue[ge],ze=ce.pickSlots;if(!ze){se[ge]=-1;continue}for(var tt=0;tt<Me;++tt)if(he[tt]+ze<255){se[ge]=tt,ce.setPickBase(he[tt]+1),he[tt]+=ze;continue e}var nt=s(P,j);se[ge]=Me,G.push(nt),he.push(ze),ce.setPickBase(1),Me+=1}for(;Me>0&&he[Me-1]===0;)he.pop(),G.pop().dispose()}ie.update=function(lt){ie._stopped||(lt=lt||{},$=!0,ne=!0)},ie.add=function(lt){ie._stopped||(lt.axes=U,ue.push(lt),se.push(-1),$=!0,ne=!0,Ae())},ie.remove=function(lt){if(!ie._stopped){var Me=ue.indexOf(lt);Me<0||(ue.splice(Me,1),se.pop(),$=!0,ne=!0,Ae())}},ie.dispose=function(){if(!ie._stopped&&(ie._stopped=!0,window.removeEventListener("resize",be),y.removeEventListener("webglcontextlost",Be),ie.mouseListener.enabled=!1,!ie.contextLost)){U.dispose(),Q.dispose();for(var lt=0;lt<ue.length;++lt)ue[lt].dispose();F.dispose();for(var lt=0;lt<G.length;++lt)G[lt].dispose();B.dispose(),P=null,U=null,Q=null,ue=[]}},ie._mouseRotating=!1,ie._prevButtons=0,ie.enableMouseListeners=function(){ie.mouseListener=v(y,function(lt,Me,ge){if(!ie._stopped){var ce=G.length,ze=ue.length,tt=z.object;z.distance=1/0,z.mouse[0]=Me,z.mouse[1]=ge,z.object=null,z.screen=null,z.dataCoordinate=z.dataPosition=null;var nt=!1;if(lt&&ie._prevButtons)ie._mouseRotating=!0;else{ie._mouseRotating&&(ne=!0),ie._mouseRotating=!1;for(var Qe=0;Qe<ce;++Qe){var Ct=G[Qe].query(Me,fe[1]-ge-1,ie.pickRadius);if(Ct){if(Ct.distance>z.distance)continue;for(var St=0;St<ze;++St){var Ot=ue[St];if(se[St]===Qe){var jt=Ot.pick(Ct);jt&&(z.buttons=lt,z.screen=Ct.coord,z.distance=Ct.distance,z.object=Ot,z.index=jt.distance,z.dataPosition=jt.position,z.dataCoordinate=jt.dataCoordinate,z.data=jt,nt=!0)}}}}}tt&&tt!==z.object&&(tt.highlight&&tt.highlight(null),$=!0),z.object&&(z.object.highlight&&z.object.highlight(z.data),$=!0),nt=nt||z.object!==tt,nt&&ie.onselect&&ie.onselect(z),lt&1&&!(ie._prevButtons&1)&&ie.onclick&&ie.onclick(z),ie._prevButtons=lt}})};function Be(){if(ie.contextLost)return!0;P.isContextLost()&&(ie.contextLost=!0,ie.mouseListener.enabled=!1,ie.selection.object=null,ie.oncontextloss&&ie.oncontextloss())}y.addEventListener("webglcontextlost",Be);function Ie(){if(!Be()){P.colorMask(!0,!0,!0,!0),P.depthMask(!0),P.disable(P.BLEND),P.enable(P.DEPTH_TEST),P.depthFunc(P.LEQUAL);for(var lt=ue.length,Me=G.length,ge=0;ge<Me;++ge){var ce=G[ge];ce.shape=fe,ce.begin();for(var ze=0;ze<lt;++ze)if(se[ze]===ge){var tt=ue[ze];tt.drawPick&&(tt.pixelRatio=1,tt.drawPick(re))}ce.end()}}}var Ze=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],at=[Ze[0].slice(),Ze[1].slice()];function it(){if(!Be()){be();var lt=ie.camera.tick();re.view=ie.camera.matrix,$=$||lt,ne=ne||lt,U.pixelRatio=ie.pixelRatio,Q.pixelRatio=ie.pixelRatio;var Me=ue.length,ge=Ze[0],ce=Ze[1];ge[0]=ge[1]=ge[2]=1/0,ce[0]=ce[1]=ce[2]=-1/0;for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.pixelRatio=ie.pixelRatio,tt.axes=ie.axes,$=$||!!tt.dirty,ne=ne||!!tt.dirty;var nt=tt.bounds;if(nt)for(var Qe=nt[0],Ct=nt[1],St=0;St<3;++St)ge[St]=Math.min(ge[St],Qe[St]),ce[St]=Math.max(ce[St],Ct[St])}var Ot=ie.bounds;if(ie.autoBounds)for(var St=0;St<3;++St){if(ce[St]<ge[St])ge[St]=-1,ce[St]=1;else{ge[St]===ce[St]&&(ge[St]-=1,ce[St]+=1);var jt=.05*(ce[St]-ge[St]);ge[St]=ge[St]-jt,ce[St]=ce[St]+jt}Ot[0][St]=ge[St],Ot[1][St]=ce[St]}for(var ur=!1,St=0;St<3;++St)ur=ur||at[0][St]!==Ot[0][St]||at[1][St]!==Ot[1][St],at[0][St]=Ot[0][St],at[1][St]=Ot[1][St];if(ne=ne||ur,$=$||ur,!!$){if(ur){for(var ar=[0,0,0],ze=0;ze<3;++ze)ar[ze]=E((Ot[1][ze]-Ot[0][ze])/10);U.autoTicks?U.update({bounds:Ot,tickSpacing:ar}):U.update({bounds:Ot})}var Cr=P.drawingBufferWidth,vr=P.drawingBufferHeight;j[0]=Cr,j[1]=vr,fe[0]=Math.max(Cr/ie.pixelRatio,1)|0,fe[1]=Math.max(vr/ie.pixelRatio,1)|0,d(ie,O);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.axesBounds=Ot,ie.clipToBounds&&(tt.clipBounds=Ot)}z.object&&(ie.snapToData?Q.position=z.dataCoordinate:Q.position=z.dataPosition,Q.bounds=Ot),ne&&(ne=!1,Ie()),ie.axesPixels=i(ie.axes,re,Cr,vr),ie.onrender&&ie.onrender(),P.bindFramebuffer(P.FRAMEBUFFER,null),P.viewport(0,0,Cr,vr),ie.clearRGBA(),P.depthMask(!0),P.colorMask(!0,!0,!0,!0),P.enable(P.DEPTH_TEST),P.depthFunc(P.LEQUAL),P.disable(P.BLEND),P.disable(P.CULL_FACE);var _r=!1;U.enable&&(_r=_r||U.isTransparent(),U.draw(re)),Q.axes=U,z.object&&Q.draw(re),P.disable(P.CULL_FACE);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.axes=U,tt.pixelRatio=ie.pixelRatio,tt.isOpaque&&tt.isOpaque()&&tt.draw(re),tt.isTransparent&&tt.isTransparent()&&(_r=!0)}if(_r){F.shape=j,F.bind(),P.clear(P.DEPTH_BUFFER_BIT),P.colorMask(!1,!1,!1,!1),P.depthMask(!0),P.depthFunc(P.LESS),U.enable&&U.isTransparent()&&U.drawTransparent(re);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.isOpaque&&tt.isOpaque()&&tt.draw(re)}P.enable(P.BLEND),P.blendEquation(P.FUNC_ADD),P.blendFunc(P.ONE,P.ONE_MINUS_SRC_ALPHA),P.colorMask(!0,!0,!0,!0),P.depthMask(!1),P.clearColor(0,0,0,0),P.clear(P.COLOR_BUFFER_BIT),U.isTransparent()&&U.drawTransparent(re);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.isTransparent&&tt.isTransparent()&&tt.drawTransparent(re)}P.bindFramebuffer(P.FRAMEBUFFER,null),P.blendFunc(P.ONE,P.ONE_MINUS_SRC_ALPHA),P.disable(P.DEPTH_TEST),B.bind(),F.color[0].bind(0),B.uniforms.accumBuffer=0,h(P),P.disable(P.BLEND)}$=!1;for(var ze=0;ze<Me;++ze)ue[ze].dirty=!1}}}function et(){ie._stopped||ie.contextLost||(it(),requestAnimationFrame(et))}return ie.enableMouseListeners(),et(),ie.redraw=function(){ie._stopped||($=!0,it())},ie}function d(u,y){var f=u.bounds,P=u.cameraParams,L=P.projection,z=P.model,F=u.gl.drawingBufferWidth,B=u.gl.drawingBufferHeight,O=u.zNear,I=u.zFar,N=u.fovy,U=F/B;y?(T(L,-U,U,-1,1,O,I),P._ortho=!0):(p(L,N,U,O,I),P._ortho=!1);for(var W=0;W<16;++W)z[W]=0;z[15]=1;for(var Q=0,W=0;W<3;++W)Q=Math.max(Q,f[1][W]-f[0][W]);for(var W=0;W<3;++W)u.autoScale?z[5*W]=u.aspect[W]/(f[1][W]-f[0][W]):z[5*W]=1/Q,u.autoCenter&&(z[12+W]=-z[5*W]*.5*(f[0][W]+f[1][W]))}},783:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3],v=a[0],p=a[1],T=a[2],l=a[3],_,w,S,E,m;return w=n*v+s*p+c*T+h*l,w<0&&(w=-w,v=-v,p=-p,T=-T,l=-l),1-w>1e-6?(_=Math.acos(w),S=Math.sin(_),E=Math.sin((1-i)*_)/S,m=Math.sin(i*_)/S):(E=1-i,m=i),r[0]=E*n+m*v,r[1]=E*s+m*p,r[2]=E*c+m*T,r[3]=E*h+m*l,r}},5964:function(e){"use strict";e.exports=function(t){return!t&&t!==0?"":t.toString()}},9366:function(e,t,r){"use strict";var o=r(4359);e.exports=i;var a={};function i(n,s,c){var h=[s.style,s.weight,s.variant,s.family].join("_"),v=a[h];if(v||(v=a[h]={}),n in v)return v[n];var p={textAlign:"center",textBaseline:"middle",lineHeight:1,font:s.family,fontStyle:s.style,fontWeight:s.weight,fontVariant:s.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};p.triangles=!0;var T=o(n,p);p.triangles=!1;var l=o(n,p),_,w;if(c&&c!==1){for(_=0;_<T.positions.length;++_)for(w=0;w<T.positions[_].length;++w)T.positions[_][w]/=c;for(_=0;_<l.positions.length;++_)for(w=0;w<l.positions[_].length;++w)l.positions[_][w]/=c}var S=[[1/0,1/0],[-1/0,-1/0]],E=l.positions.length;for(_=0;_<E;++_){var m=l.positions[_];for(w=0;w<2;++w)S[0][w]=Math.min(S[0][w],m[w]),S[1][w]=Math.max(S[1][w],m[w])}return v[n]=[T,l,S]}},1283:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform vec4 highlightId;
+uniform float highlightScale;
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float scale = 1.0;
+ if(distance(highlightId, id) < 0.0001) {
+ scale = highlightScale;
+ }
+
+ vec4 worldPosition = model * vec4(position, 1);
+ vec4 viewPosition = view * worldPosition;
+ viewPosition = viewPosition / viewPosition.w;
+ vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));
+
+ gl_Position = clipPosition;
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = position;
+ }
+}`]),n=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform vec2 screenSize;
+uniform vec3 clipBounds[2];
+uniform float highlightScale, pixelRatio;
+uniform vec4 highlightId;
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float scale = pixelRatio;
+ if(distance(highlightId.bgr, id.bgr) < 0.001) {
+ scale *= highlightScale;
+ }
+
+ vec4 worldPosition = model * vec4(position, 1.0);
+ vec4 viewPosition = view * worldPosition;
+ vec4 clipPosition = projection * viewPosition;
+ clipPosition /= clipPosition.w;
+
+ gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = position;
+ }
+}`]),s=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform float highlightScale;
+uniform vec4 highlightId;
+uniform vec3 axes[2];
+uniform mat4 model, view, projection;
+uniform vec2 screenSize;
+uniform vec3 clipBounds[2];
+uniform float scale, pixelRatio;
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float lscale = pixelRatio * scale;
+ if(distance(highlightId, id) < 0.0001) {
+ lscale *= highlightScale;
+ }
+
+ vec4 clipCenter = projection * (view * (model * vec4(position, 1)));
+ vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;
+ vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1)));
+
+ gl_Position = clipPosition;
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = dataPosition;
+ }
+}
+`]),c=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 fragClipBounds[2];
+uniform float opacity;
+
+varying vec4 interpColor;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (
+ outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||
+ interpColor.a * opacity == 0.
+ ) discard;
+ gl_FragColor = interpColor * opacity;
+}
+`]),h=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 fragClipBounds[2];
+uniform float pickGroup;
+
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;
+
+ gl_FragColor = vec4(pickGroup, pickId.bgr);
+}`]),v=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],p={vertex:i,fragment:c,attributes:v},T={vertex:n,fragment:c,attributes:v},l={vertex:s,fragment:c,attributes:v},_={vertex:i,fragment:h,attributes:v},w={vertex:n,fragment:h,attributes:v},S={vertex:s,fragment:h,attributes:v};function E(m,b){var d=o(m,b),u=d.attributes;return u.position.location=0,u.color.location=1,u.glyph.location=2,u.id.location=3,d}t.createPerspective=function(m){return E(m,p)},t.createOrtho=function(m){return E(m,T)},t.createProject=function(m){return E(m,l)},t.createPickPerspective=function(m){return E(m,_)},t.createPickOrtho=function(m){return E(m,w)},t.createPickProject=function(m){return E(m,S)}},8418:function(e,t,r){"use strict";var o=r(5219),a=r(2762),i=r(8116),n=r(1888),s=r(6760),c=r(1283),h=r(9366),v=r(5964),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,l=DataView;function _(Z){return T.isView(Z)&&!(Z instanceof l)}function w(Z){return Array.isArray(Z)||_(Z)}e.exports=J;function S(Z,re){var ne=Z[0],j=Z[1],ee=Z[2],ie=Z[3];return Z[0]=re[0]*ne+re[4]*j+re[8]*ee+re[12]*ie,Z[1]=re[1]*ne+re[5]*j+re[9]*ee+re[13]*ie,Z[2]=re[2]*ne+re[6]*j+re[10]*ee+re[14]*ie,Z[3]=re[3]*ne+re[7]*j+re[11]*ee+re[15]*ie,Z}function E(Z,re,ne,j){return S(j,j,ne),S(j,j,re),S(j,j,Z)}function m(Z,re){this.index=Z,this.dataCoordinate=this.position=re}function b(Z){return Z===!0||Z>1?1:Z}function d(Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze){this.gl=Z,this.pixelRatio=1,this.shader=re,this.orthoShader=ne,this.projectShader=j,this.pointBuffer=ee,this.colorBuffer=ie,this.glyphBuffer=fe,this.idBuffer=be,this.vao=Ae,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Be,this.pickOrthoShader=Ie,this.pickProjectShader=Ze,this.points=[],this._selectResult=new m(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var u=d.prototype;u.pickSlots=1,u.setPickBase=function(Z){this.pickId=Z},u.isTransparent=function(){if(this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&this.projectHasAlpha)return!0;return!1},u.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0,1],z=[0,0,0,1],F=p.slice(),B=[0,0,0],O=[[0,0,0],[0,0,0]];function I(Z){return Z[0]=Z[1]=Z[2]=0,Z}function N(Z,re){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[3]=1,Z}function U(Z,re,ne,j){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[ne]=j,Z}function W(Z){for(var re=O,ne=0;ne<2;++ne)for(var j=0;j<3;++j)re[ne][j]=Math.max(Math.min(Z[ne][j],1e8),-1e8);return re}function Q(Z,re,ne,j){var ee=re.axesProject,ie=re.gl,fe=Z.uniforms,be=ne.model||p,Ae=ne.view||p,Be=ne.projection||p,Ie=re.axesBounds,Ze=W(re.clipBounds),at;re.axes&&re.axes.lastCubeProps?at=re.axes.lastCubeProps.axis:at=[1,1,1],y[0]=2/ie.drawingBufferWidth,y[1]=2/ie.drawingBufferHeight,Z.bind(),fe.view=Ae,fe.projection=Be,fe.screenSize=y,fe.highlightId=re.highlightId,fe.highlightScale=re.highlightScale,fe.clipBounds=Ze,fe.pickGroup=re.pickId/255,fe.pixelRatio=j;for(var it=0;it<3;++it)if(ee[it]){fe.scale=re.projectScale[it],fe.opacity=re.projectOpacity[it];for(var et=F,lt=0;lt<16;++lt)et[lt]=0;for(var lt=0;lt<4;++lt)et[5*lt]=1;et[5*it]=0,at[it]<0?et[12+it]=Ie[0][it]:et[12+it]=Ie[1][it],s(et,be,et),fe.model=et;var Me=(it+1)%3,ge=(it+2)%3,ce=I(f),ze=I(P);ce[Me]=1,ze[ge]=1;var tt=E(Be,Ae,be,N(L,ce)),nt=E(Be,Ae,be,N(z,ze));if(Math.abs(tt[1])>Math.abs(nt[1])){var Qe=tt;tt=nt,nt=Qe,Qe=ce,ce=ze,ze=Qe;var Ct=Me;Me=ge,ge=Ct}tt[0]<0&&(ce[Me]=-1),nt[1]>0&&(ze[ge]=-1);for(var St=0,Ot=0,lt=0;lt<4;++lt)St+=Math.pow(be[4*Me+lt],2),Ot+=Math.pow(be[4*ge+lt],2);ce[Me]/=Math.sqrt(St),ze[ge]/=Math.sqrt(Ot),fe.axes[0]=ce,fe.axes[1]=ze,fe.fragClipBounds[0]=U(B,Ze[0],it,-1e8),fe.fragClipBounds[1]=U(B,Ze[1],it,1e8),re.vao.bind(),re.vao.draw(ie.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ie.lineWidth(re.lineWidth*j),re.vao.draw(ie.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}var ue=[-1e8,-1e8,-1e8],se=[1e8,1e8,1e8],he=[ue,se];function G(Z,re,ne,j,ee,ie,fe){var be=ne.gl;if((ie===ne.projectHasAlpha||fe)&&Q(re,ne,j,ee),ie===ne.hasAlpha||fe){Z.bind();var Ae=Z.uniforms;Ae.model=j.model||p,Ae.view=j.view||p,Ae.projection=j.projection||p,y[0]=2/be.drawingBufferWidth,y[1]=2/be.drawingBufferHeight,Ae.screenSize=y,Ae.highlightId=ne.highlightId,Ae.highlightScale=ne.highlightScale,Ae.fragClipBounds=he,Ae.clipBounds=ne.axes.bounds,Ae.opacity=ne.opacity,Ae.pickGroup=ne.pickId/255,Ae.pixelRatio=ee,ne.vao.bind(),ne.vao.draw(be.TRIANGLES,ne.vertexCount),ne.lineWidth>0&&(be.lineWidth(ne.lineWidth*ee),ne.vao.draw(be.LINES,ne.lineVertexCount,ne.vertexCount)),ne.vao.unbind()}}u.draw=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!1,!1)},u.drawTransparent=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!0,!1)},u.drawPick=function(Z){var re=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;G(re,this.pickProjectShader,this,Z,1,!0,!0)},u.pick=function(Z){if(!Z||Z.id!==this.pickId)return null;var re=Z.value[2]+(Z.value[1]<<8)+(Z.value[0]<<16);if(re>=this.pointCount||re<0)return null;var ne=this.points[re],j=this._selectResult;j.index=re;for(var ee=0;ee<3;++ee)j.position[ee]=j.dataCoordinate[ee]=ne[ee];return j},u.highlight=function(Z){if(!Z)this.highlightId=[1,1,1,1];else{var re=Z.index,ne=re&255,j=re>>8&255,ee=re>>16&255;this.highlightId=[ne/255,j/255,ee/255,0]}};function $(Z,re,ne,j){var ee;w(Z)?re<Z.length?ee=Z[re]:ee=void 0:ee=Z,ee=v(ee);var ie=!0;o(ee)&&(ee="\u25BC",ie=!1),ne||(ne={});var fe=ne.family;w(fe)&&(fe=fe[re]),fe||(fe="normal");var be=ne.weight;w(be)&&(be=be[re]),be||(be="normal");var Ae=ne.style;w(Ae)&&(Ae=Ae[re]),Ae||(Ae="normal");var Be=ne.variant;w(Be)&&(Be=Be[re]),Be||(Be="normal");var Ie=h(ee,{family:fe,weight:be,style:Ae,variant:Be},j),Ie=h(ee,ne,j);return{mesh:Ie[0],lines:Ie[1],bounds:Ie[2],visible:ie}}u.update=function(Z){if(Z=Z||{},"perspective"in Z&&(this.useOrtho=!Z.perspective),"orthographic"in Z&&(this.useOrtho=!!Z.orthographic),"lineWidth"in Z&&(this.lineWidth=Z.lineWidth),"project"in Z)if(w(Z.project))this.axesProject=Z.project;else{var re=!!Z.project;this.axesProject=[re,re,re]}if("projectScale"in Z)if(w(Z.projectScale))this.projectScale=Z.projectScale.slice();else{var ne=+Z.projectScale;this.projectScale=[ne,ne,ne]}if(this.projectHasAlpha=!1,"projectOpacity"in Z){if(w(Z.projectOpacity))this.projectOpacity=Z.projectOpacity.slice();else{var ne=+Z.projectOpacity;this.projectOpacity=[ne,ne,ne]}for(var j=0;j<3;++j)this.projectOpacity[j]=b(this.projectOpacity[j]),this.projectOpacity[j]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Z&&(this.opacity=b(Z.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var ee=Z.position,ie={family:Z.font||"normal",style:Z.fontStyle||"normal",weight:Z.fontWeight||"normal",variant:Z.fontVariant||"normal"},fe=Z.alignment||[0,0],be,Ae;if(fe.length===2)be=fe[0],Ae=fe[1];else{be=[],Ae=[];for(var j=0;j<fe.length;++j)be[j]=fe[j][0],Ae[j]=fe[j][1]}var Be=[1/0,1/0,1/0],Ie=[-1/0,-1/0,-1/0],Ze=Z.glyph,at=Z.color,it=Z.size,et=Z.angle,lt=Z.lineColor,Me=-1,ge=0,ce=0,ze=0;if(ee.length){ze=ee.length;e:for(var j=0;j<ze;++j){for(var tt=ee[j],nt=0;nt<3;++nt)if(isNaN(tt[nt])||!isFinite(tt[nt]))continue e;var Qe=$(Ze,j,ie,this.pixelRatio),Ct=Qe.mesh,St=Qe.lines,Ot=Qe.bounds;ge+=Ct.cells.length*3,ce+=St.edges.length*2}}var jt=ge+ce,ur=n.mallocFloat(3*jt),ar=n.mallocFloat(4*jt),Cr=n.mallocFloat(2*jt),vr=n.mallocUint32(jt);if(jt>0){var _r=0,yt=ge,Fe=[0,0,0,1],Ke=[0,0,0,1],Ne=w(at)&&w(at[0]),Ee=w(lt)&&w(lt[0]);e:for(var j=0;j<ze;++j){Me+=1;for(var tt=ee[j],nt=0;nt<3;++nt){if(isNaN(tt[nt])||!isFinite(tt[nt]))continue e;Ie[nt]=Math.max(Ie[nt],tt[nt]),Be[nt]=Math.min(Be[nt],tt[nt])}var Qe=$(Ze,j,ie,this.pixelRatio),Ct=Qe.mesh,St=Qe.lines,Ot=Qe.bounds,Ve=Qe.visible;if(!Ve)Fe=[1,1,1,0];else if(w(at)){var ke;if(Ne?j<at.length?ke=at[j]:ke=[0,0,0,0]:ke=at,ke.length===3){for(var nt=0;nt<3;++nt)Fe[nt]=ke[nt];Fe[3]=1}else if(ke.length===4){for(var nt=0;nt<4;++nt)Fe[nt]=ke[nt];!this.hasAlpha&&ke[3]<1&&(this.hasAlpha=!0)}}else Fe[0]=Fe[1]=Fe[2]=0,Fe[3]=1;if(!Ve)Ke=[1,1,1,0];else if(w(lt)){var ke;if(Ee?j<lt.length?ke=lt[j]:ke=[0,0,0,0]:ke=lt,ke.length===3){for(var nt=0;nt<3;++nt)Ke[nt]=ke[nt];Ke[nt]=1}else if(ke.length===4){for(var nt=0;nt<4;++nt)Ke[nt]=ke[nt];!this.hasAlpha&&ke[3]<1&&(this.hasAlpha=!0)}}else Ke[0]=Ke[1]=Ke[2]=0,Ke[3]=1;var Te=.5;Ve?w(it)?j<it.length?Te=+it[j]:Te=12:it?Te=+it:this.useOrtho&&(Te=12):Te=0;var Le=0;w(et)?j<et.length?Le=+et[j]:Le=0:et&&(Le=+et);for(var rt=Math.cos(Le),dt=Math.sin(Le),tt=ee[j],nt=0;nt<3;++nt)Ie[nt]=Math.max(Ie[nt],tt[nt]),Be[nt]=Math.min(Be[nt],tt[nt]);var xt=be,It=Ae,xt=0;w(be)?j<be.length?xt=be[j]:xt=0:be&&(xt=be);var It=0;w(Ae)?j<Ae.length?It=Ae[j]:It=0:Ae&&(It=Ae),xt*=xt>0?1-Ot[0][0]:xt<0?1+Ot[1][0]:1,It*=It>0?1-Ot[0][1]:It<0?1+Ot[1][1]:1;for(var Bt=[xt,It],Aa=Ct.cells||[],La=Ct.positions||[],nt=0;nt<Aa.length;++nt)for(var Gt=Aa[nt],Kt=0;Kt<3;++Kt){for(var sr=0;sr<3;++sr)ur[3*_r+sr]=tt[sr];for(var sr=0;sr<4;++sr)ar[4*_r+sr]=Fe[sr];vr[_r]=Me;var sa=La[Gt[Kt]];Cr[2*_r]=Te*(rt*sa[0]-dt*sa[1]+Bt[0]),Cr[2*_r+1]=Te*(dt*sa[0]+rt*sa[1]+Bt[1]),_r+=1}for(var Aa=St.edges,La=St.positions,nt=0;nt<Aa.length;++nt)for(var Gt=Aa[nt],Kt=0;Kt<2;++Kt){for(var sr=0;sr<3;++sr)ur[3*yt+sr]=tt[sr];for(var sr=0;sr<4;++sr)ar[4*yt+sr]=Ke[sr];vr[yt]=Me;var sa=La[Gt[Kt]];Cr[2*yt]=Te*(rt*sa[0]-dt*sa[1]+Bt[0]),Cr[2*yt+1]=Te*(dt*sa[0]+rt*sa[1]+Bt[1]),yt+=1}}}this.bounds=[Be,Ie],this.points=ee,this.pointCount=ee.length,this.vertexCount=ge,this.lineVertexCount=ce,this.pointBuffer.update(ur),this.colorBuffer.update(ar),this.glyphBuffer.update(Cr),this.idBuffer.update(vr),n.free(ur),n.free(ar),n.free(Cr),n.free(vr)},u.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()};function J(Z){var re=Z.gl,ne=c.createPerspective(re),j=c.createOrtho(re),ee=c.createProject(re),ie=c.createPickPerspective(re),fe=c.createPickOrtho(re),be=c.createPickProject(re),Ae=a(re),Be=a(re),Ie=a(re),Ze=a(re),at=i(re,[{buffer:Ae,size:3,type:re.FLOAT},{buffer:Be,size:4,type:re.FLOAT},{buffer:Ie,size:2,type:re.FLOAT},{buffer:Ze,size:4,type:re.UNSIGNED_BYTE,normalized:!0}]),it=new d(re,ne,j,ee,Ae,Be,Ie,Ze,at,ie,fe,be);return it.update(Z),it}},3589:function(e,t,r){"use strict";e.exports=p;var o=r(2260),a=r(1888),i=r(9618),n=r(8828).nextPow2,s=function(T,l,_){for(var w=1e8,S=-1,E=-1,m=T.shape[0],b=T.shape[1],d=0;d<m;d++)for(var u=0;u<b;u++){var y=T.get(d,u,0),f=T.get(d,u,1),P=T.get(d,u,2),L=T.get(d,u,3);if(y<255||f<255||P<255||L<255){var z=l-d,F=_-u,B=z*z+F*F;B<w&&(w=B,S=d,E=u)}}return[S,E,w]};function c(T,l,_,w,S){this.coord=[T,l],this.id=_,this.value=w,this.distance=S}function h(T,l,_){this.gl=T,this.fbo=l,this.buffer=_,this._readTimeout=null;var w=this;this._readCallback=function(){w.gl&&(l.bind(),T.readPixels(0,0,l.shape[0],l.shape[1],T.RGBA,T.UNSIGNED_BYTE,w.buffer),w._readTimeout=null)}}var v=h.prototype;Object.defineProperty(v,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(T){if(this.gl){this.fbo.shape=T;var l=this.fbo.shape[0],_=this.fbo.shape[1];if(_*l*4>this.buffer.length){a.free(this.buffer);for(var w=this.buffer=a.mallocUint8(n(_*l*4)),S=0;S<_*l*4;++S)w[S]=255}return T}}}),v.begin=function(){var T=this.gl,l=this.shape;T&&(this.fbo.bind(),T.clearColor(1,1,1,1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT))},v.end=function(){var T=this.gl;T&&(T.bindFramebuffer(T.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},v.query=function(T,l,_){if(!this.gl)return null;var w=this.fbo.shape.slice();T=T|0,l=l|0,typeof _!="number"&&(_=1);var S=Math.min(Math.max(T-_,0),w[0])|0,E=Math.min(Math.max(T+_,0),w[0])|0,m=Math.min(Math.max(l-_,0),w[1])|0,b=Math.min(Math.max(l+_,0),w[1])|0;if(E<=S||b<=m)return null;var d=[E-S,b-m],u=i(this.buffer,[d[0],d[1],4],[4,w[0]*4,1],4*(S+w[0]*m)),y=s(u.hi(d[0],d[1],1),_,_),f=y[0],P=y[1];if(f<0||Math.pow(this.radius,2)<y[2])return null;var L=u.get(f,P,0),z=u.get(f,P,1),F=u.get(f,P,2),B=u.get(f,P,3);return new c(f+S|0,P+m|0,L,[z,F,B],Math.sqrt(y[2]))},v.dispose=function(){this.gl&&(this.fbo.dispose(),a.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))};function p(T,l){var _=l[0],w=l[1],S={},E=o(T,_,w,S),m=a.mallocUint8(_*w*4);return new h(T,E,m)}},9405:function(e,t,r){"use strict";var o=r(3327),a=r(8731),i=r(216),n=r(5091),s=r(2145),c=r(8866);function h(l){this.gl=l,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var v=h.prototype;v.bind=function(){this.program||this._relink();var l,_=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),w=this.gl.lastAttribCount;if(_>w)for(l=w;l<_;l++)this.gl.enableVertexAttribArray(l);else if(w>_)for(l=_;l<w;l++)this.gl.disableVertexAttribArray(l);this.gl.lastAttribCount=_,this.gl.useProgram(this.program)},v.dispose=function(){for(var l=this.gl.lastAttribCount,_=0;_<l;_++)this.gl.disableVertexAttribArray(_);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null};function p(l,_){return l.name<_.name?-1:1}v.update=function(l,_,w,S){if(!_||arguments.length===1){var E=l;l=E.vertex,_=E.fragment,w=E.uniforms,S=E.attributes}var m=this,b=m.gl,d=m._vref;m._vref=n.shader(b,b.VERTEX_SHADER,l),d&&d.dispose(),m.vertShader=m._vref.shader;var u=this._fref;if(m._fref=n.shader(b,b.FRAGMENT_SHADER,_),u&&u.dispose(),m.fragShader=m._fref.shader,!w||!S){var y=b.createProgram();if(b.attachShader(y,m.fragShader),b.attachShader(y,m.vertShader),b.linkProgram(y),!b.getProgramParameter(y,b.LINK_STATUS)){var f=b.getProgramInfoLog(y);throw new c(f,"Error linking program:"+f)}w=w||s.uniforms(b,y),S=S||s.attributes(b,y),b.deleteProgram(y)}S=S.slice(),S.sort(p);var P=[],L=[],z=[],F;for(F=0;F<S.length;++F){var B=S[F];if(B.type.indexOf("mat")>=0){for(var O=B.type.charAt(B.type.length-1)|0,I=new Array(O),N=0;N<O;++N)I[N]=z.length,L.push(B.name+"["+N+"]"),typeof B.location=="number"?z.push(B.location+N):Array.isArray(B.location)&&B.location.length===O&&typeof B.location[N]=="number"?z.push(B.location[N]|0):z.push(-1);P.push({name:B.name,type:B.type,locations:I})}else P.push({name:B.name,type:B.type,locations:[z.length]}),L.push(B.name),typeof B.location=="number"?z.push(B.location|0):z.push(-1)}var U=0;for(F=0;F<z.length;++F)if(z[F]<0){for(;z.indexOf(U)>=0;)U+=1;z[F]=U}var W=new Array(w.length);function Q(){m.program=n.program(b,m._vref,m._fref,L,z);for(var ue=0;ue<w.length;++ue)W[ue]=b.getUniformLocation(m.program,w[ue].name)}Q(),m._relink=Q,m.types={uniforms:i(w),attributes:i(S)},m.attributes=a(b,m,P,z),Object.defineProperty(m,"uniforms",o(b,m,w,W))};function T(l,_,w,S,E){var m=new h(l);return m.update(_,w,S,E),m}e.exports=T},8866:function(e){function t(r,o,a){this.shortMessage=o||"",this.longMessage=a||"",this.rawError=r||"",this.message="gl-shader: "+(o||r||"")+(a?`
+`+a:""),this.stack=new Error().stack}t.prototype=new Error,t.prototype.name="GLError",t.prototype.constructor=t,e.exports=t},8731:function(e,t,r){"use strict";e.exports=h;var o=r(8866);function a(v,p,T,l,_,w){this._gl=v,this._wrapper=p,this._index=T,this._locations=l,this._dimension=_,this._constFunc=w}var i=a.prototype;i.pointer=function(p,T,l,_){var w=this,S=w._gl,E=w._locations[w._index];S.vertexAttribPointer(E,w._dimension,p||S.FLOAT,!!T,l||0,_||0),S.enableVertexAttribArray(E)},i.set=function(v,p,T,l){return this._constFunc(this._locations[this._index],v,p,T,l)},Object.defineProperty(i,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var n=[function(v,p,T){return T.length===void 0?v.vertexAttrib1f(p,T):v.vertexAttrib1fv(p,T)},function(v,p,T,l){return T.length===void 0?v.vertexAttrib2f(p,T,l):v.vertexAttrib2fv(p,T)},function(v,p,T,l,_){return T.length===void 0?v.vertexAttrib3f(p,T,l,_):v.vertexAttrib3fv(p,T)},function(v,p,T,l,_,w){return T.length===void 0?v.vertexAttrib4f(p,T,l,_,w):v.vertexAttrib4fv(p,T)}];function s(v,p,T,l,_,w,S){var E=n[_],m=new a(v,p,T,l,_,E);Object.defineProperty(w,S,{set:function(b){return v.disableVertexAttribArray(l[T]),E(v,l[T],b),b},get:function(){return m},enumerable:!0})}function c(v,p,T,l,_,w,S){for(var E=new Array(_),m=new Array(_),b=0;b<_;++b)s(v,p,T[b],l,_,E,b),m[b]=E[b];Object.defineProperty(E,"location",{set:function(y){if(Array.isArray(y))for(var f=0;f<_;++f)m[f].location=y[f];else for(var f=0;f<_;++f)m[f].location=y+f;return y},get:function(){for(var y=new Array(_),f=0;f<_;++f)y[f]=l[T[f]];return y},enumerable:!0}),E.pointer=function(y,f,P,L){y=y||v.FLOAT,f=!!f,P=P||_*_,L=L||0;for(var z=0;z<_;++z){var F=l[T[z]];v.vertexAttribPointer(F,_,y,f,P,L+z*_),v.enableVertexAttribArray(F)}};var d=new Array(_),u=v["vertexAttrib"+_+"fv"];Object.defineProperty(w,S,{set:function(y){for(var f=0;f<_;++f){var P=l[T[f]];if(v.disableVertexAttribArray(P),Array.isArray(y[0]))u.call(v,P,y[f]);else{for(var L=0;L<_;++L)d[L]=y[_*f+L];u.call(v,P,d)}}return y},get:function(){return E},enumerable:!0})}function h(v,p,T,l){for(var _={},w=0,S=T.length;w<S;++w){var E=T[w],m=E.name,b=E.type,d=E.locations;switch(b){case"bool":case"int":case"float":s(v,p,d[0],l,1,_,m);break;default:if(b.indexOf("vec")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);s(v,p,d[0],l,u,_,m)}else if(b.indexOf("mat")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);c(v,p,d,l,u,_,m)}else throw new o("","Unknown data type for attribute "+m+": "+b);break}}return _}},3327:function(e,t,r){"use strict";var o=r(216),a=r(8866);e.exports=s;function i(c){return function(){return c}}function n(c,h){for(var v=new Array(c),p=0;p<c;++p)v[p]=h;return v}function s(c,h,v,p){function T(b){return function(d,u,y){return d.getUniform(u.program,y[b])}}function l(b){return function(u){for(var y=_("",b),f=0;f<y.length;++f){var P=y[f],L=P[0],z=P[1];if(p[z]){var F=u;if(typeof L=="string"&&(L.indexOf(".")===0||L.indexOf("[")===0)){var B=L;if(L.indexOf(".")===0&&(B=L.slice(1)),B.indexOf("]")===B.length-1){var O=B.indexOf("["),I=B.slice(0,O),N=B.slice(O+1,B.length-1);F=I?u[I][N]:u[N]}else F=u[B]}var U=v[z].type,W;switch(U){case"bool":case"int":case"sampler2D":case"samplerCube":c.uniform1i(p[z],F);break;case"float":c.uniform1f(p[z],F);break;default:var Q=U.indexOf("vec");if(0<=Q&&Q<=1&&U.length===4+Q){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid data type");switch(U.charAt(0)){case"b":case"i":c["uniform"+W+"iv"](p[z],F);break;case"v":c["uniform"+W+"fv"](p[z],F);break;default:throw new a("","Unrecognized data type for vector "+name+": "+U)}}else if(U.indexOf("mat")===0&&U.length===4){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+U);c["uniformMatrix"+W+"fv"](p[z],!1,F);break}else throw new a("","Unknown uniform data type for "+name+": "+U)}}}}}function _(b,d){if(typeof d!="object")return[[b,d]];var u=[];for(var y in d){var f=d[y],P=b;parseInt(y)+""===y?P+="["+y+"]":P+="."+y,typeof f=="object"?u.push.apply(u,_(P,f)):u.push([P,f])}return u}function w(b){switch(b){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var d=b.indexOf("vec");if(0<=d&&d<=1&&b.length===4+d){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid data type");return b.charAt(0)==="b"?n(u,!1):n(u,0)}else if(b.indexOf("mat")===0&&b.length===4){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+b);return n(u*u,0)}else throw new a("","Unknown uniform data type for "+name+": "+b)}}function S(b,d,u){if(typeof u=="object"){var y=E(u);Object.defineProperty(b,d,{get:i(y),set:l(u),enumerable:!0,configurable:!1})}else p[u]?Object.defineProperty(b,d,{get:T(u),set:l(u),enumerable:!0,configurable:!1}):b[d]=w(v[u].type)}function E(b){var d;if(Array.isArray(b)){d=new Array(b.length);for(var u=0;u<b.length;++u)S(d,u,b[u])}else{d={};for(var y in b)S(d,y,b[y])}return d}var m=o(v,!0);return{get:i(E(m)),set:l(m),enumerable:!0,configurable:!0}}},216:function(e){"use strict";e.exports=t;function t(r,o){for(var a={},i=0;i<r.length;++i)for(var n=r[i].name,s=n.split("."),c=a,h=0;h<s.length;++h){var v=s[h].split("[");if(v.length>1){v[0]in c||(c[v[0]]=[]),c=c[v[0]];for(var p=1;p<v.length;++p){var T=parseInt(v[p]);p<v.length-1||h<s.length-1?(T in c||(p<v.length-1?c[T]=[]:c[T]={}),c=c[T]):o?c[T]=i:c[T]=r[i].type}}else h<s.length-1?(v[0]in c||(c[v[0]]={}),c=c[v[0]]):o?c[v[0]]=i:c[v[0]]=r[i].type}return a}},2145:function(e,t){"use strict";t.uniforms=i,t.attributes=n;var r={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},o=null;function a(s,c){if(!o){var h=Object.keys(r);o={};for(var v=0;v<h.length;++v){var p=h[v];o[s[p]]=r[p]}}return o[c]}function i(s,c){for(var h=s.getProgramParameter(c,s.ACTIVE_UNIFORMS),v=[],p=0;p<h;++p){var T=s.getActiveUniform(c,p);if(T){var l=a(s,T.type);if(T.size>1)for(var _=0;_<T.size;++_)v.push({name:T.name.replace("[0]","["+_+"]"),type:l});else v.push({name:T.name,type:l})}}return v}function n(s,c){for(var h=s.getProgramParameter(c,s.ACTIVE_ATTRIBUTES),v=[],p=0;p<h;++p){var T=s.getActiveAttrib(c,p);T&&v.push({name:T.name,type:a(s,T.type)})}return v}},5091:function(e,t,r){"use strict";t.shader=_,t.program=w;var o=r(8866),a=r(2992),i=typeof WeakMap>"u"?r(606):WeakMap,n=new i,s=0;function c(S,E,m,b,d,u,y){this.id=S,this.src=E,this.type=m,this.shader=b,this.count=u,this.programs=[],this.cache=y}c.prototype.dispose=function(){if(--this.count===0){for(var S=this.cache,E=S.gl,m=this.programs,b=0,d=m.length;b<d;++b){var u=S.programs[m[b]];u&&(delete S.programs[b],E.deleteProgram(u))}E.deleteShader(this.shader),delete S.shaders[this.type===E.FRAGMENT_SHADER|0][this.src]}};function h(S){this.gl=S,this.shaders=[{},{}],this.programs={}}var v=h.prototype;function p(S,E,m){var b=S.createShader(E);if(S.shaderSource(b,m),S.compileShader(b),!S.getShaderParameter(b,S.COMPILE_STATUS)){var d=S.getShaderInfoLog(b);try{var u=a(d,m,E)}catch(y){throw console.warn("Failed to format compiler error: "+y),new o(d,`Error compiling shader:
+`+d)}throw new o(d,u.short,u.long)}return b}v.getShaderReference=function(S,E){var m=this.gl,b=this.shaders[S===m.FRAGMENT_SHADER|0],d=b[E];if(!d||!m.isShader(d.shader)){var u=p(m,S,E);d=b[E]=new c(s++,E,S,u,[],1,this)}else d.count+=1;return d};function T(S,E,m,b,d){var u=S.createProgram();S.attachShader(u,E),S.attachShader(u,m);for(var y=0;y<b.length;++y)S.bindAttribLocation(u,d[y],b[y]);if(S.linkProgram(u),!S.getProgramParameter(u,S.LINK_STATUS)){var f=S.getProgramInfoLog(u);throw new o(f,"Error linking program: "+f)}return u}v.getProgram=function(S,E,m,b){var d=[S.id,E.id,m.join(":"),b.join(":")].join("@"),u=this.programs[d];return(!u||!this.gl.isProgram(u))&&(this.programs[d]=u=T(this.gl,S.shader,E.shader,m,b),S.programs.push(d),E.programs.push(d)),u};function l(S){var E=n.get(S);return E||(E=new h(S),n.set(S,E)),E}function _(S,E,m){return l(S).getShaderReference(E,m)}function w(S,E,m,b,d){return l(S).getProgram(E,m,b,d)}},1493:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision mediump float;
+#define GLSLIFY 1
+
+attribute vec3 position, color;
+attribute float weight;
+
+uniform mat4 model, view, projection;
+uniform vec3 coordinates[3];
+uniform vec4 colors[3];
+uniform vec2 screenShape;
+uniform float lineWidth;
+
+varying vec4 fragColor;
+
+void main() {
+ vec3 vertexPosition = mix(coordinates[0],
+ mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));
+
+ vec4 clipPos = projection * (view * (model * vec4(vertexPosition, 1.0)));
+ vec2 clipOffset = (projection * (view * (model * vec4(color, 0.0)))).xy;
+ vec2 delta = weight * clipOffset * screenShape;
+ vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;
+
+ gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);
+ fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];
+}
+`]),n=o([`precision mediump float;
+#define GLSLIFY 1
+
+varying vec4 fragColor;
+
+void main() {
+ gl_FragColor = fragColor;
+}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec3"},{name:"weight",type:"float"}])}},4449:function(e,t,r){"use strict";var o=r(2762),a=r(8116),i=r(1493);e.exports=T;var n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.buffer=_,this.vao=w,this.shader=S,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var c=s.prototype,h=[0,0,0],v=[0,0,0],p=[0,0];c.isTransparent=function(){return!1},c.drawTransparent=function(l){},c.draw=function(l){var _=this.gl,w=this.vao,S=this.shader;w.bind(),S.bind();var E=l.model||n,m=l.view||n,b=l.projection||n,d;this.axes&&(d=this.axes.lastCubeProps.axis);for(var u=h,y=v,f=0;f<3;++f)d&&d[f]<0?(u[f]=this.bounds[0][f],y[f]=this.bounds[1][f]):(u[f]=this.bounds[1][f],y[f]=this.bounds[0][f]);p[0]=_.drawingBufferWidth,p[1]=_.drawingBufferHeight,S.uniforms.model=E,S.uniforms.view=m,S.uniforms.projection=b,S.uniforms.coordinates=[this.position,u,y],S.uniforms.colors=this.colors,S.uniforms.screenShape=p;for(var f=0;f<3;++f)S.uniforms.lineWidth=this.lineWidth[f]*this.pixelRatio,this.enabled[f]&&(w.draw(_.TRIANGLES,6,6*f),this.drawSides[f]&&w.draw(_.TRIANGLES,12,18+12*f));w.unbind()},c.update=function(l){l&&("bounds"in l&&(this.bounds=l.bounds),"position"in l&&(this.position=l.position),"lineWidth"in l&&(this.lineWidth=l.lineWidth),"colors"in l&&(this.colors=l.colors),"enabled"in l&&(this.enabled=l.enabled),"drawSides"in l&&(this.drawSides=l.drawSides))},c.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function T(l,_){var w=[];function S(u,y,f,P,L,z){var F=[u,y,f,0,0,0,1];F[P+3]=1,F[P]=L,w.push.apply(w,F),F[6]=-1,w.push.apply(w,F),F[P]=z,w.push.apply(w,F),w.push.apply(w,F),F[6]=1,w.push.apply(w,F),F[P]=L,w.push.apply(w,F)}S(0,0,0,0,0,1),S(0,0,0,1,0,1),S(0,0,0,2,0,1),S(1,0,0,1,-1,1),S(1,0,0,2,-1,1),S(0,1,0,0,-1,1),S(0,1,0,2,-1,1),S(0,0,1,0,-1,1),S(0,0,1,1,-1,1);var E=o(l,w),m=a(l,[{type:l.FLOAT,buffer:E,size:3,offset:0,stride:28},{type:l.FLOAT,buffer:E,size:3,offset:12,stride:28},{type:l.FLOAT,buffer:E,size:1,offset:24,stride:28}]),b=i(l);b.attributes.position.location=0,b.attributes.color.location=1,b.attributes.weight.location=2;var d=new s(l,E,m,b);return d.update(_),d}},6740:function(e,t,r){var o=r(3236),a=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the tube vertex and normal at the given index.
+//
+// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
+//
+// Each tube segment is made up of a ring of vertices.
+// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
+// The indexes of tube segments run from 0 to 8.
+//
+vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
+ float segmentCount = 8.0;
+
+ float angle = 2.0 * 3.14159 * (index / segmentCount);
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d);
+ vec3 y = v * sin(angle) * length(d);
+ vec3 v3 = x + y;
+
+ normal = normalize(v3);
+
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 color, position;
+attribute vec2 uv;
+
+uniform float vectorScale, tubeScale;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 eyePosition, lightPosition;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ // Scale the vector magnitude to stay constant with
+ // model & view changes.
+ vec3 normal;
+ vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
+ vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * tubePosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ // vec4 m_position = model * vec4(tubePosition, 1.0);
+ vec4 t_position = view * tubePosition;
+ gl_Position = projection * t_position;
+
+ f_color = color;
+ f_data = tubePosition.xyz;
+ f_position = position.xyz;
+ f_uv = uv;
+}
+`]),i=o([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform sampler2D texture;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = f_color * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * opacity;
+}
+`]),n=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the tube vertex and normal at the given index.
+//
+// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
+//
+// Each tube segment is made up of a ring of vertices.
+// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
+// The indexes of tube segments run from 0 to 8.
+//
+vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
+ float segmentCount = 8.0;
+
+ float angle = 2.0 * 3.14159 * (index / segmentCount);
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d);
+ vec3 y = v * sin(angle) * length(d);
+ vec3 v3 = x + y;
+
+ normal = normalize(v3);
+
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform float tubeScale;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ vec3 normal;
+ vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
+ vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ gl_Position = projection * (view * tubePosition);
+ f_id = id;
+ f_position = position.xyz;
+}
+`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(e,t,r){"use strict";var o=r(2931),a=r(9970),i=["xyz","xzy","yxz","yzx","zxy","zyx"],n=function(S,E,m,b){for(var d=S.points,u=S.velocities,y=S.divergences,f=[],P=[],L=[],z=[],F=[],B=[],O=0,I=0,N=a.create(),U=a.create(),W=8,Q=0;Q<d.length;Q++){var ue=d[Q],se=u[Q],he=y[Q];E===0&&(he=m*.05),I=o.length(se)/b,N=a.create(),o.copy(N,se),N[3]=he;for(var G=0;G<W;G++)F[G]=[ue[0],ue[1],ue[2],G];if(z.length>0)for(var G=0;G<W;G++){var $=(G+1)%W;f.push(z[G],F[G],F[$],F[$],z[$],z[G]),L.push(U,N,N,N,U,U),B.push(O,I,I,I,O,O);var J=f.length;P.push([J-6,J-5,J-4],[J-3,J-2,J-1])}var Z=z;z=F,F=Z;var re=U;U=N,N=re;var ne=O;O=I,I=ne}return{positions:f,cells:P,vectors:L,vertexIntensity:B}},s=function(S,E,m,b){for(var d=0,u=0;u<S.length;u++)for(var y=S[u].velocities,f=0;f<y.length;f++)d=Math.max(d,o.length(y[f]));for(var P=S.map(function(Q){return n(Q,m,b,d)}),L=[],z=[],F=[],B=[],u=0;u<P.length;u++){var O=P[u],I=L.length;L=L.concat(O.positions),F=F.concat(O.vectors),B=B.concat(O.vertexIntensity);for(var f=0;f<O.cells.length;f++){var N=O.cells[f],U=[];z.push(U);for(var W=0;W<N.length;W++)U.push(N[W]+I)}}return{positions:L,cells:z,vectors:F,vertexIntensity:B,colormap:E}},c=function(S,E){var m=S.length,b;for(b=0;b<m;b++){var d=S[b];if(d===E)return b;if(d>E)return b-1}return b},h=function(S,E,m){return S<E?E:S>m?m:S},v=function(S,E,m){var b=E.vectors,d=E.meshgrid,u=S[0],y=S[1],f=S[2],P=d[0].length,L=d[1].length,z=d[2].length,F=c(d[0],u),B=c(d[1],y),O=c(d[2],f),I=F+1,N=B+1,U=O+1;if(F=h(F,0,P-1),I=h(I,0,P-1),B=h(B,0,L-1),N=h(N,0,L-1),O=h(O,0,z-1),U=h(U,0,z-1),F<0||B<0||O<0||I>P-1||N>L-1||U>z-1)return o.create();var W=d[0][F],Q=d[0][I],ue=d[1][B],se=d[1][N],he=d[2][O],G=d[2][U],$=(u-W)/(Q-W),J=(y-ue)/(se-ue),Z=(f-he)/(G-he);isFinite($)||($=.5),isFinite(J)||(J=.5),isFinite(Z)||(Z=.5);var re,ne,j,ee,ie,fe;switch(m.reversedX&&(F=P-1-F,I=P-1-I),m.reversedY&&(B=L-1-B,N=L-1-N),m.reversedZ&&(O=z-1-O,U=z-1-U),m.filled){case 5:ie=O,fe=U,j=B*z,ee=N*z,re=F*z*L,ne=I*z*L;break;case 4:ie=O,fe=U,re=F*z,ne=I*z,j=B*z*P,ee=N*z*P;break;case 3:j=B,ee=N,ie=O*L,fe=U*L,re=F*L*z,ne=I*L*z;break;case 2:j=B,ee=N,re=F*L,ne=I*L,ie=O*L*P,fe=U*L*P;break;case 1:re=F,ne=I,ie=O*P,fe=U*P,j=B*P*z,ee=N*P*z;break;default:re=F,ne=I,j=B*P,ee=N*P,ie=O*P*L,fe=U*P*L;break}var be=b[re+j+ie],Ae=b[re+j+fe],Be=b[re+ee+ie],Ie=b[re+ee+fe],Ze=b[ne+j+ie],at=b[ne+j+fe],it=b[ne+ee+ie],et=b[ne+ee+fe],lt=o.create(),Me=o.create(),ge=o.create(),ce=o.create();o.lerp(lt,be,Ze,$),o.lerp(Me,Ae,at,$),o.lerp(ge,Be,it,$),o.lerp(ce,Ie,et,$);var ze=o.create(),tt=o.create();o.lerp(ze,lt,ge,J),o.lerp(tt,Me,ce,J);var nt=o.create();return o.lerp(nt,ze,tt,Z),nt},p=function(S,E){var m=E[0],b=E[1],d=E[2];return S[0]=m<0?-m:m,S[1]=b<0?-b:b,S[2]=d<0?-d:d,S},T=function(S){var E=1/0;S.sort(function(u,y){return u-y});for(var m=S.length,b=1;b<m;b++){var d=Math.abs(S[b]-S[b-1]);d<E&&(E=d)}return E},l=function(S){for(var E=[],m=[],b=[],d={},u={},y={},f=S.length,P=0;P<f;P++){var L=S[P],z=L[0],F=L[1],B=L[2];d[z]||(E.push(z),d[z]=!0),u[F]||(m.push(F),u[F]=!0),y[B]||(b.push(B),y[B]=!0)}var O=T(E),I=T(m),N=T(b),U=Math.min(O,I,N);return isFinite(U)?U:1};e.exports=function(S,E){var m=S.startingPositions,b=S.maxLength||1e3,d=S.tubeSize||1,u=S.absoluteTubeSize,y=S.gridFill||"+x+y+z",f={};y.indexOf("-x")!==-1&&(f.reversedX=!0),y.indexOf("-y")!==-1&&(f.reversedY=!0),y.indexOf("-z")!==-1&&(f.reversedZ=!0),f.filled=i.indexOf(y.replace(/-/g,"").replace(/\+/g,""));var P=S.getVelocity||function(at){return v(at,S,f)},L=S.getDivergence||function(at,it){var et=o.create(),lt=1e-4;o.add(et,at,[lt,0,0]);var Me=P(et);o.subtract(Me,Me,it),o.scale(Me,Me,1/lt),o.add(et,at,[0,lt,0]);var ge=P(et);o.subtract(ge,ge,it),o.scale(ge,ge,1/lt),o.add(et,at,[0,0,lt]);var ce=P(et);return o.subtract(ce,ce,it),o.scale(ce,ce,1/lt),o.add(et,Me,ge),o.add(et,et,ce),et},z=[],F=E[0][0],B=E[0][1],O=E[0][2],I=E[1][0],N=E[1][1],U=E[1][2],W=function(at){var it=at[0],et=at[1],lt=at[2];return!(it<F||it>I||et<B||et>N||lt<O||lt>U)},Q=o.distance(E[0],E[1]),ue=10*Q/b,se=ue*ue,he=1,G=0,$=m.length;$>1&&(he=l(m));for(var J=0;J<$;J++){var Z=o.create();o.copy(Z,m[J]);var re=[Z],ne=[],j=P(Z),ee=Z;ne.push(j);var ie=[],fe=L(Z,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be),z.push({points:re,velocities:ne,divergences:ie});for(var Ae=0;Ae<b*100&&re.length<b&&W(Z);){Ae++;var Be=o.clone(j),Ie=o.squaredLength(Be);if(Ie===0)break;if(Ie>se&&o.scale(Be,Be,ue/Math.sqrt(Ie)),o.add(Be,Be,Z),j=P(Be),o.squaredDistance(ee,Be)-se>-1e-4*se){re.push(Be),ee=Be,ne.push(j);var fe=L(Be,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be)}Z=Be}}var Ze=s(z,S.colormap,G,he);return u?Ze.tubeScale=u:(G===0&&(G=1),Ze.tubeScale=d*.5*he/G),Ze};var _=r(6740),w=r(6405).createMesh;e.exports.createTubeMesh=function(S,E){return w(S,E,{shaders:_,traceType:"streamtube"})}},990:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec4 uv;
+attribute vec3 f;
+attribute vec3 normal;
+
+uniform vec3 objectOffset;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 lightPosition, eyePosition;
+uniform sampler2D colormap;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ vec3 localCoordinate = vec3(uv.zw, f.x);
+ worldCoordinate = objectOffset + localCoordinate;
+ mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
+ vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0);
+ vec4 clipPosition = projection * (view * worldPosition);
+ gl_Position = clipPosition;
+ kill = f.y;
+ value = f.z;
+ planeCoordinate = uv.xy;
+
+ vColor = texture2D(colormap, vec2(value, value));
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * worldPosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ lightDirection = lightPosition - cameraCoordinate.xyz;
+ eyeDirection = eyePosition - cameraCoordinate.xyz;
+ surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);
+}
+`]),n=a([`precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float beckmannSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness) {
+ return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 lowerBound, upperBound;
+uniform float contourTint;
+uniform vec4 contourColor;
+uniform sampler2D colormap;
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform float vertexColor;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ if (
+ kill > 0.0 ||
+ vColor.a == 0.0 ||
+ outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)
+ ) discard;
+
+ vec3 N = normalize(surfaceNormal);
+ vec3 V = normalize(eyeDirection);
+ vec3 L = normalize(lightDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = max(beckmannSpecular(L, V, N, roughness), 0.);
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ //decide how to interpolate color \u2014 in vertex or in fragment
+ vec4 surfaceColor =
+ step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +
+ step(.5, vertexColor) * vColor;
+
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;
+}
+`]),s=a([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec4 uv;
+attribute float f;
+
+uniform vec3 objectOffset;
+uniform mat3 permutation;
+uniform mat4 model, view, projection;
+uniform float height, zOffset;
+uniform sampler2D colormap;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ vec3 dataCoordinate = permutation * vec3(uv.xy, height);
+ worldCoordinate = objectOffset + dataCoordinate;
+ mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
+ vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0);
+
+ vec4 clipPosition = projection * (view * worldPosition);
+ clipPosition.z += zOffset;
+
+ gl_Position = clipPosition;
+ value = f + objectOffset.z;
+ kill = -1.0;
+ planeCoordinate = uv.zw;
+
+ vColor = texture2D(colormap, vec2(value, value));
+
+ //Don't do lighting for contours
+ surfaceNormal = vec3(1,0,0);
+ eyeDirection = vec3(0,1,0);
+ lightDirection = vec3(0,0,1);
+}
+`]),c=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec2 shape;
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 surfaceNormal;
+
+vec2 splitFloat(float v) {
+ float vh = 255.0 * v;
+ float upper = floor(vh);
+ float lower = fract(vh);
+ return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);
+}
+
+void main() {
+ if ((kill > 0.0) ||
+ (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;
+
+ vec2 ux = splitFloat(planeCoordinate.x / shape.x);
+ vec2 uy = splitFloat(planeCoordinate.y / shape.y);
+ gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));
+}
+`]);t.createShader=function(h){var v=o(h,i,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createPickShader=function(h){var v=o(h,i,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createContourShader=function(h){var v=o(h,s,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v},t.createPickContourShader=function(h){var v=o(h,s,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v}},9499:function(e,t,r){"use strict";e.exports=re;var o=r(8828),a=r(2762),i=r(8116),n=r(7766),s=r(1888),c=r(6729),h=r(5298),v=r(9994),p=r(9618),T=r(3711),l=r(6760),_=r(7608),w=r(2478),S=r(6199),E=r(990),m=E.createShader,b=E.createContourShader,d=E.createPickShader,u=E.createPickContourShader,y=4*10,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],L=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];(function(){for(var ne=0;ne<3;++ne){var j=L[ne],ee=(ne+1)%3,ie=(ne+2)%3;j[ee+0]=1,j[ie+3]=1,j[ne+6]=1}})();function z(ne,j,ee,ie,fe){this.position=ne,this.index=j,this.uv=ee,this.level=ie,this.dataCoordinate=fe}var F=256;function B(ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me){this.gl=ne,this.shape=j,this.bounds=ee,this.objectOffset=Me,this.intensityBounds=[],this._shader=ie,this._pickShader=fe,this._coordinateBuffer=be,this._vao=Ae,this._colorMap=Be,this._contourShader=Ie,this._contourPickShader=Ze,this._contourBuffer=at,this._contourVAO=it,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new z([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=et,this._dynamicVAO=lt,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var O=B.prototype;O.genColormap=function(ne,j){var ee=!1,ie=v([c({colormap:ne,nshades:F,format:"rgba"}).map(function(fe,be){var Ae=j?I(be/255,j):fe[3];return Ae<1&&(ee=!0),[fe[0],fe[1],fe[2],255*Ae]})]);return h.divseq(ie,255),this.hasAlphaScale=ee,ie},O.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},O.isOpaque=function(){return!this.isTransparent()},O.pickSlots=1,O.setPickBase=function(ne){this.pickId=ne};function I(ne,j){if(!j||!j.length)return 1;for(var ee=0;ee<j.length;++ee){if(j.length<2)return 1;if(j[ee][0]===ne)return j[ee][1];if(j[ee][0]>ne&&ee>0){var ie=(j[ee][0]-ne)/(j[ee][0]-j[ee-1][0]);return j[ee][1]*(1-ie)+ie*j[ee-1][1]}}return 1}var N=[0,0,0],U={showSurface:!1,showContour:!1,projections:[f.slice(),f.slice(),f.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function W(ne,j){var ee,ie,fe,be=j.axes&&j.axes.lastCubeProps.axis||N,Ae=j.showSurface,Be=j.showContour;for(ee=0;ee<3;++ee)for(Ae=Ae||j.surfaceProject[ee],ie=0;ie<3;++ie)Be=Be||j.contourProject[ee][ie];for(ee=0;ee<3;++ee){var Ie=U.projections[ee];for(ie=0;ie<16;++ie)Ie[ie]=0;for(ie=0;ie<4;++ie)Ie[5*ie]=1;Ie[5*ee]=0,Ie[12+ee]=j.axesBounds[+(be[ee]>0)][ee],l(Ie,ne.model,Ie);var Ze=U.clipBounds[ee];for(fe=0;fe<2;++fe)for(ie=0;ie<3;++ie)Ze[fe][ie]=ne.clipBounds[fe][ie];Ze[0][ee]=-1e8,Ze[1][ee]=1e8}return U.showSurface=Ae,U.showContour=Be,U}var Q={model:f,view:f,projection:f,inverseModel:f.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},ue=f.slice(),se=[1,0,0,0,1,0,0,0,1];function he(ne,j){ne=ne||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var ie=Q;ie.model=ne.model||f,ie.view=ne.view||f,ie.projection=ne.projection||f,ie.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ie.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ie.objectOffset=this.objectOffset,ie.contourColor=this.contourColor[0],ie.inverseModel=_(ie.inverseModel,ie.model);for(var fe=0;fe<2;++fe)for(var be=ie.clipBounds[fe],Ae=0;Ae<3;++Ae)be[Ae]=Math.min(Math.max(this.clipBounds[fe][Ae],-1e8),1e8);ie.kambient=this.ambientLight,ie.kdiffuse=this.diffuseLight,ie.kspecular=this.specularLight,ie.roughness=this.roughness,ie.fresnel=this.fresnel,ie.opacity=this.opacity,ie.height=0,ie.permutation=se,ie.vertexColor=this.vertexColor;var Be=ue;for(l(Be,ie.view,ie.model),l(Be,ie.projection,Be),_(Be,Be),fe=0;fe<3;++fe)ie.eyePosition[fe]=Be[12+fe]/Be[15];var Ie=Be[15];for(fe=0;fe<3;++fe)Ie+=this.lightPosition[fe]*Be[4*fe+3];for(fe=0;fe<3;++fe){var Ze=Be[12+fe];for(Ae=0;Ae<3;++Ae)Ze+=Be[4*Ae+fe]*this.lightPosition[Ae];ie.lightPosition[fe]=Ze/Ie}var at=W(ie,this);if(at.showSurface){for(this._shader.bind(),this._shader.uniforms=ie,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),fe=0;fe<3;++fe)!this.surfaceProject[fe]||!this.vertexCount||(this._shader.uniforms.model=at.projections[fe],this._shader.uniforms.clipBounds=at.clipBounds[fe],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(at.showContour){var it=this._contourShader;ie.kambient=1,ie.kdiffuse=0,ie.kspecular=0,ie.opacity=1,it.bind(),it.uniforms=ie;var et=this._contourVAO;for(et.bind(),fe=0;fe<3;++fe)for(it.uniforms.permutation=L[fe],ee.lineWidth(this.contourWidth[fe]*this.pixelRatio),Ae=0;Ae<this.contourLevels[fe].length;++Ae)Ae===this.highlightLevel[fe]?(it.uniforms.contourColor=this.highlightColor[fe],it.uniforms.contourTint=this.highlightTint[fe]):(Ae===0||Ae-1===this.highlightLevel[fe])&&(it.uniforms.contourColor=this.contourColor[fe],it.uniforms.contourTint=this.contourTint[fe]),this._contourCounts[fe][Ae]&&(it.uniforms.height=this.contourLevels[fe][Ae],et.draw(ee.LINES,this._contourCounts[fe][Ae],this._contourOffsets[fe][Ae]));for(fe=0;fe<3;++fe)for(it.uniforms.model=at.projections[fe],it.uniforms.clipBounds=at.clipBounds[fe],Ae=0;Ae<3;++Ae)if(this.contourProject[fe][Ae]){it.uniforms.permutation=L[Ae],ee.lineWidth(this.contourWidth[Ae]*this.pixelRatio);for(var lt=0;lt<this.contourLevels[Ae].length;++lt)lt===this.highlightLevel[Ae]?(it.uniforms.contourColor=this.highlightColor[Ae],it.uniforms.contourTint=this.highlightTint[Ae]):(lt===0||lt-1===this.highlightLevel[Ae])&&(it.uniforms.contourColor=this.contourColor[Ae],it.uniforms.contourTint=this.contourTint[Ae]),this._contourCounts[Ae][lt]&&(it.uniforms.height=this.contourLevels[Ae][lt],et.draw(ee.LINES,this._contourCounts[Ae][lt],this._contourOffsets[Ae][lt]))}for(et.unbind(),et=this._dynamicVAO,et.bind(),fe=0;fe<3;++fe)if(this._dynamicCounts[fe]!==0)for(it.uniforms.model=ie.model,it.uniforms.clipBounds=ie.clipBounds,it.uniforms.permutation=L[fe],ee.lineWidth(this.dynamicWidth[fe]*this.pixelRatio),it.uniforms.contourColor=this.dynamicColor[fe],it.uniforms.contourTint=this.dynamicTint[fe],it.uniforms.height=this.dynamicLevel[fe],et.draw(ee.LINES,this._dynamicCounts[fe],this._dynamicOffsets[fe]),Ae=0;Ae<3;++Ae)this.contourProject[Ae][fe]&&(it.uniforms.model=at.projections[Ae],it.uniforms.clipBounds=at.clipBounds[Ae],et.draw(ee.LINES,this._dynamicCounts[fe],this._dynamicOffsets[fe]));et.unbind()}}O.draw=function(ne){return he.call(this,ne,!1)},O.drawTransparent=function(ne){return he.call(this,ne,!0)};var G={model:f,view:f,projection:f,inverseModel:f,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};O.drawPick=function(ne){ne=ne||{};var j=this.gl;j.disable(j.CULL_FACE);var ee=G;ee.model=ne.model||f,ee.view=ne.view||f,ee.projection=ne.projection||f,ee.shape=this._field[2].shape,ee.pickId=this.pickId/255,ee.lowerBound=this.bounds[0],ee.upperBound=this.bounds[1],ee.objectOffset=this.objectOffset,ee.permutation=se;for(var ie=0;ie<2;++ie)for(var fe=ee.clipBounds[ie],be=0;be<3;++be)fe[be]=Math.min(Math.max(this.clipBounds[ie][be],-1e8),1e8);var Ae=W(ee,this);if(Ae.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=ee,this._vao.bind(),this._vao.draw(j.TRIANGLES,this._vertexCount),ie=0;ie<3;++ie)this.surfaceProject[ie]&&(this._pickShader.uniforms.model=Ae.projections[ie],this._pickShader.uniforms.clipBounds=Ae.clipBounds[ie],this._vao.draw(j.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ae.showContour){var Be=this._contourPickShader;Be.bind(),Be.uniforms=ee;var Ie=this._contourVAO;for(Ie.bind(),be=0;be<3;++be)for(j.lineWidth(this.contourWidth[be]*this.pixelRatio),Be.uniforms.permutation=L[be],ie=0;ie<this.contourLevels[be].length;++ie)this._contourCounts[be][ie]&&(Be.uniforms.height=this.contourLevels[be][ie],Ie.draw(j.LINES,this._contourCounts[be][ie],this._contourOffsets[be][ie]));for(ie=0;ie<3;++ie)for(Be.uniforms.model=Ae.projections[ie],Be.uniforms.clipBounds=Ae.clipBounds[ie],be=0;be<3;++be)if(this.contourProject[ie][be]){Be.uniforms.permutation=L[be],j.lineWidth(this.contourWidth[be]*this.pixelRatio);for(var Ze=0;Ze<this.contourLevels[be].length;++Ze)this._contourCounts[be][Ze]&&(Be.uniforms.height=this.contourLevels[be][Ze],Ie.draw(j.LINES,this._contourCounts[be][Ze],this._contourOffsets[be][Ze]))}Ie.unbind()}},O.pick=function(ne){if(!ne||ne.id!==this.pickId)return null;var j=this._field[2].shape,ee=this._pickResult,ie=j[0]*(ne.value[0]+(ne.value[2]>>4)/16)/255,fe=Math.floor(ie),be=ie-fe,Ae=j[1]*(ne.value[1]+(ne.value[2]&15)/16)/255,Be=Math.floor(Ae),Ie=Ae-Be;fe+=1,Be+=1;var Ze=ee.position;Ze[0]=Ze[1]=Ze[2]=0;for(var at=0;at<2;++at)for(var it=at?be:1-be,et=0;et<2;++et)for(var lt=et?Ie:1-Ie,Me=fe+at,ge=Be+et,ce=it*lt,ze=0;ze<3;++ze)Ze[ze]+=this._field[ze].get(Me,ge)*ce;for(var tt=this._pickResult.level,nt=0;nt<3;++nt)if(tt[nt]=w.le(this.contourLevels[nt],Ze[nt]),tt[nt]<0)this.contourLevels[nt].length>0&&(tt[nt]=0);else if(tt[nt]<this.contourLevels[nt].length-1){var Qe=this.contourLevels[nt][tt[nt]],Ct=this.contourLevels[nt][tt[nt]+1];Math.abs(Qe-Ze[nt])>Math.abs(Ct-Ze[nt])&&(tt[nt]+=1)}for(ee.index[0]=be<.5?fe:fe+1,ee.index[1]=Ie<.5?Be:Be+1,ee.uv[0]=ie/j[0],ee.uv[1]=Ae/j[1],ze=0;ze<3;++ze)ee.dataCoordinate[ze]=this._field[ze].get(ee.index[0],ee.index[1]);return ee},O.padField=function(ne,j){var ee=j.shape.slice(),ie=ne.shape.slice();h.assign(ne.lo(1,1).hi(ee[0],ee[1]),j),h.assign(ne.lo(1).hi(ee[0],1),j.hi(ee[0],1)),h.assign(ne.lo(1,ie[1]-1).hi(ee[0],1),j.lo(0,ee[1]-1).hi(ee[0],1)),h.assign(ne.lo(0,1).hi(1,ee[1]),j.hi(1)),h.assign(ne.lo(ie[0]-1,1).hi(1,ee[1]),j.lo(ee[0]-1)),ne.set(0,0,j.get(0,0)),ne.set(0,ie[1]-1,j.get(0,ee[1]-1)),ne.set(ie[0]-1,0,j.get(ee[0]-1,0)),ne.set(ie[0]-1,ie[1]-1,j.get(ee[0]-1,ee[1]-1))};function $(ne,j){return Array.isArray(ne)?[j(ne[0]),j(ne[1]),j(ne[2])]:[j(ne),j(ne),j(ne)]}function J(ne){return Array.isArray(ne)?ne.length===3?[ne[0],ne[1],ne[2],1]:[ne[0],ne[1],ne[2],ne[3]]:[0,0,0,1]}function Z(ne){if(Array.isArray(ne)){if(Array.isArray(ne))return[J(ne[0]),J(ne[1]),J(ne[2])];var j=J(ne);return[j.slice(),j.slice(),j.slice()]}}O.update=function(ne){ne=ne||{},this.objectOffset=ne.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in ne&&(this.contourWidth=$(ne.contourWidth,Number)),"showContour"in ne&&(this.showContour=$(ne.showContour,Boolean)),"showSurface"in ne&&(this.showSurface=!!ne.showSurface),"contourTint"in ne&&(this.contourTint=$(ne.contourTint,Boolean)),"contourColor"in ne&&(this.contourColor=Z(ne.contourColor)),"contourProject"in ne&&(this.contourProject=$(ne.contourProject,function($a){return $($a,Boolean)})),"surfaceProject"in ne&&(this.surfaceProject=ne.surfaceProject),"dynamicColor"in ne&&(this.dynamicColor=Z(ne.dynamicColor)),"dynamicTint"in ne&&(this.dynamicTint=$(ne.dynamicTint,Number)),"dynamicWidth"in ne&&(this.dynamicWidth=$(ne.dynamicWidth,Number)),"opacity"in ne&&(this.opacity=ne.opacity),"opacityscale"in ne&&(this.opacityscale=ne.opacityscale),"colorBounds"in ne&&(this.colorBounds=ne.colorBounds),"vertexColor"in ne&&(this.vertexColor=ne.vertexColor?1:0),"colormap"in ne&&this._colorMap.setPixels(this.genColormap(ne.colormap,this.opacityscale));var j=ne.field||ne.coords&&ne.coords[2]||null,ee=!1;if(j||(this._field[2].shape[0]||this._field[2].shape[2]?j=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):j=this._field[2].hi(0,0)),"field"in ne||"coords"in ne){var ie=(j.shape[0]+2)*(j.shape[1]+2);ie>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(o.nextPow2(ie))),this._field[2]=p(this._field[2].data,[j.shape[0]+2,j.shape[1]+2]),this.padField(this._field[2],j),this.shape=j.shape.slice();for(var fe=this.shape,be=0;be<2;++be)this._field[2].size>this._field[be].data.length&&(s.freeFloat(this._field[be].data),this._field[be].data=s.mallocFloat(this._field[2].size)),this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2]);if(ne.coords){var Ae=ne.coords;if(!Array.isArray(Ae)||Ae.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(be=0;be<2;++be){var Be=Ae[be];for(et=0;et<2;++et)if(Be.shape[et]!==fe[et])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[be],Be)}}else if(ne.ticks){var Ie=ne.ticks;if(!Array.isArray(Ie)||Ie.length!==2)throw new Error("gl-surface: invalid ticks");for(be=0;be<2;++be){var Ze=Ie[be];if((Array.isArray(Ze)||Ze.length)&&(Ze=p(Ze)),Ze.shape[0]!==fe[be])throw new Error("gl-surface: invalid tick length");var at=p(Ze.data,fe);at.stride[be]=Ze.stride[0],at.stride[be^1]=0,this.padField(this._field[be],at)}}else{for(be=0;be<2;++be){var it=[0,0];it[be]=1,this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2],it,0)}this._field[0].set(0,0,0);for(var et=0;et<fe[0];++et)this._field[0].set(et+1,0,et);for(this._field[0].set(fe[0]+1,0,fe[0]-1),this._field[1].set(0,0,0),et=0;et<fe[1];++et)this._field[1].set(0,et+1,et);this._field[1].set(0,fe[1]+1,fe[1]-1)}var lt=this._field,Me=p(s.mallocFloat(lt[2].size*3*2),[3,fe[0]+2,fe[1]+2,2]);for(be=0;be<3;++be)S(Me.pick(be),lt[be],"mirror");var ge=p(s.mallocFloat(lt[2].size*3),[fe[0]+2,fe[1]+2,3]);for(be=0;be<fe[0]+2;++be)for(et=0;et<fe[1]+2;++et){var ce=Me.get(0,be,et,0),ze=Me.get(0,be,et,1),tt=Me.get(1,be,et,0),nt=Me.get(1,be,et,1),Qe=Me.get(2,be,et,0),Ct=Me.get(2,be,et,1),St=tt*Ct-nt*Qe,Ot=Qe*ze-Ct*ce,jt=ce*nt-ze*tt,ur=Math.sqrt(St*St+Ot*Ot+jt*jt);ur<1e-8?(ur=Math.max(Math.abs(St),Math.abs(Ot),Math.abs(jt)),ur<1e-8?(jt=1,Ot=St=0,ur=1):ur=1/ur):ur=1/Math.sqrt(ur),ge.set(be,et,0,St*ur),ge.set(be,et,1,Ot*ur),ge.set(be,et,2,jt*ur)}s.free(Me.data);var ar=[1/0,1/0,1/0],Cr=[-1/0,-1/0,-1/0],vr=1/0,_r=-1/0,yt=(fe[0]-1)*(fe[1]-1)*6,Fe=s.mallocFloat(o.nextPow2(10*yt)),Ke=0,Ne=0;for(be=0;be<fe[0]-1;++be)e:for(et=0;et<fe[1]-1;++et){for(var Ee=0;Ee<2;++Ee)for(var Ve=0;Ve<2;++Ve)for(var ke=0;ke<3;++ke){var Te=this._field[ke].get(1+be+Ee,1+et+Ve);if(isNaN(Te)||!isFinite(Te))continue e}for(ke=0;ke<6;++ke){var Le=be+P[ke][0],rt=et+P[ke][1],dt=this._field[0].get(Le+1,rt+1),xt=this._field[1].get(Le+1,rt+1);Te=this._field[2].get(Le+1,rt+1),St=ge.get(Le+1,rt+1,0),Ot=ge.get(Le+1,rt+1,1),jt=ge.get(Le+1,rt+1,2),ne.intensity&&(It=ne.intensity.get(Le,rt));var It=ne.intensity?ne.intensity.get(Le,rt):Te+this.objectOffset[2];Fe[Ke++]=Le,Fe[Ke++]=rt,Fe[Ke++]=dt,Fe[Ke++]=xt,Fe[Ke++]=Te,Fe[Ke++]=0,Fe[Ke++]=It,Fe[Ke++]=St,Fe[Ke++]=Ot,Fe[Ke++]=jt,ar[0]=Math.min(ar[0],dt+this.objectOffset[0]),ar[1]=Math.min(ar[1],xt+this.objectOffset[1]),ar[2]=Math.min(ar[2],Te+this.objectOffset[2]),vr=Math.min(vr,It),Cr[0]=Math.max(Cr[0],dt+this.objectOffset[0]),Cr[1]=Math.max(Cr[1],xt+this.objectOffset[1]),Cr[2]=Math.max(Cr[2],Te+this.objectOffset[2]),_r=Math.max(_r,It),Ne+=1}}for(ne.intensityBounds&&(vr=+ne.intensityBounds[0],_r=+ne.intensityBounds[1]),be=6;be<Ke;be+=10)Fe[be]=(Fe[be]-vr)/(_r-vr);this._vertexCount=Ne,this._coordinateBuffer.update(Fe.subarray(0,Ke)),s.freeFloat(Fe),s.free(ge.data),this.bounds=[ar,Cr],this.intensity=ne.intensity||this._field[2],(this.intensityBounds[0]!==vr||this.intensityBounds[1]!==_r)&&(ee=!0),this.intensityBounds=[vr,_r]}if("levels"in ne){var Bt=ne.levels;for(Array.isArray(Bt[0])?Bt=Bt.slice():Bt=[[],[],Bt],be=0;be<3;++be)Bt[be]=Bt[be].slice(),Bt[be].sort(function($a,mt){return $a-mt});for(be=0;be<3;++be)for(et=0;et<Bt[be].length;++et)Bt[be][et]-=this.objectOffset[be];e:for(be=0;be<3;++be){if(Bt[be].length!==this.contourLevels[be].length){ee=!0;break}for(et=0;et<Bt[be].length;++et)if(Bt[be][et]!==this.contourLevels[be][et]){ee=!0;break e}}this.contourLevels=Bt}if(ee){lt=this._field,fe=this.shape;for(var Gt=[],Kt=0;Kt<3;++Kt){var sr=this.contourLevels[Kt],sa=[],Aa=[],La=[0,0,0];for(be=0;be<sr.length;++be){var ka=T(this._field[Kt],sr[be]);sa.push(Gt.length/5|0),Ne=0;e:for(et=0;et<ka.cells.length;++et){var Ga=ka.cells[et];for(ke=0;ke<2;++ke){var Ma=ka.positions[Ga[ke]],Ua=Ma[0],ni=Math.floor(Ua)|0,Wt=Ua-ni,zt=Ma[1],Vt=Math.floor(zt)|0,Ut=zt-Vt,xr=!1;t:for(var Zr=0;Zr<3;++Zr){La[Zr]=0;var pa=(Kt+Zr+1)%3;for(Ee=0;Ee<2;++Ee){var Xr=Ee?Wt:1-Wt;for(Le=Math.min(Math.max(ni+Ee,0),fe[0])|0,Ve=0;Ve<2;++Ve){var Ea=Ve?Ut:1-Ut;if(rt=Math.min(Math.max(Vt+Ve,0),fe[1])|0,Zr<2?Te=this._field[pa].get(Le,rt):Te=(this.intensity.get(Le,rt)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(Te)||isNaN(Te)){xr=!0;break t}var Fa=Xr*Ea;La[Zr]+=Fa*Te}}}if(!xr)Gt.push(La[0],La[1],Ma[0],Ma[1],La[2]),Ne+=1;else{if(ke>0){for(var qa=0;qa<5;++qa)Gt.pop();Ne-=1}continue e}}}Aa.push(Ne)}this._contourOffsets[Kt]=sa,this._contourCounts[Kt]=Aa}var ya=s.mallocFloat(Gt.length);for(be=0;be<Gt.length;++be)ya[be]=Gt[be];this._contourBuffer.update(ya),s.freeFloat(ya)}},O.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var ne=0;ne<3;++ne)s.freeFloat(this._field[ne].data)},O.highlight=function(ne){var j;if(!ne){this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],this.highlightLevel=[-1,-1,-1];return}for(j=0;j<3;++j)this.enableHighlight[j]?this.highlightLevel[j]=ne.level[j]:this.highlightLevel[j]=-1;var ee;for(this.snapToData?ee=ne.dataCoordinate:ee=ne.position,j=0;j<3;++j)ee[j]-=this.objectOffset[j];if(!((!this.enableDynamic[0]||ee[0]===this.dynamicLevel[0])&&(!this.enableDynamic[1]||ee[1]===this.dynamicLevel[1])&&(!this.enableDynamic[2]||ee[2]===this.dynamicLevel[2]))){for(var ie=0,fe=this.shape,be=s.mallocFloat(12*fe[0]*fe[1]),Ae=0;Ae<3;++Ae){if(!this.enableDynamic[Ae]){this.dynamicLevel[Ae]=NaN,this._dynamicCounts[Ae]=0;continue}this.dynamicLevel[Ae]=ee[Ae];var Be=(Ae+1)%3,Ie=(Ae+2)%3,Ze=this._field[Ae],at=this._field[Be],it=this._field[Ie],et=T(Ze,ee[Ae]),lt=et.cells,Me=et.positions;for(this._dynamicOffsets[Ae]=ie,j=0;j<lt.length;++j)for(var ge=lt[j],ce=0;ce<2;++ce){var ze=Me[ge[ce]],tt=+ze[0],nt=tt|0,Qe=Math.min(nt+1,fe[0])|0,Ct=tt-nt,St=1-Ct,Ot=+ze[1],jt=Ot|0,ur=Math.min(jt+1,fe[1])|0,ar=Ot-jt,Cr=1-ar,vr=St*Cr,_r=St*ar,yt=Ct*Cr,Fe=Ct*ar,Ke=vr*at.get(nt,jt)+_r*at.get(nt,ur)+yt*at.get(Qe,jt)+Fe*at.get(Qe,ur),Ne=vr*it.get(nt,jt)+_r*it.get(nt,ur)+yt*it.get(Qe,jt)+Fe*it.get(Qe,ur);if(isNaN(Ke)||isNaN(Ne)){ce&&(ie-=1);break}be[2*ie+0]=Ke,be[2*ie+1]=Ne,ie+=1}this._dynamicCounts[Ae]=ie-this._dynamicOffsets[Ae]}this._dynamicBuffer.update(be.subarray(0,2*ie)),s.freeFloat(be)}};function re(ne){var j=ne.gl,ee=m(j),ie=d(j),fe=b(j),be=u(j),Ae=a(j),Be=i(j,[{buffer:Ae,size:4,stride:y,offset:0},{buffer:Ae,size:3,stride:y,offset:16},{buffer:Ae,size:3,stride:y,offset:28}]),Ie=a(j),Ze=i(j,[{buffer:Ie,size:4,stride:20,offset:0},{buffer:Ie,size:1,stride:20,offset:16}]),at=a(j),it=i(j,[{buffer:at,size:2,type:j.FLOAT}]),et=n(j,1,F,j.RGBA,j.UNSIGNED_BYTE);et.minFilter=j.LINEAR,et.magFilter=j.LINEAR;var lt=new B(j,[0,0],[[0,0,0],[0,0,0]],ee,ie,Ae,Be,et,fe,be,Ie,Ze,at,it,[0,0,0]),Me={levels:[[],[],[]]};for(var ge in ne)Me[ge]=ne[ge];return Me.colormap=Me.colormap||"jet",lt.update(Me),lt}},7766:function(e,t,r){"use strict";var o=r(9618),a=r(5298),i=r(1888);e.exports=u;var n=null,s=null,c=null;function h(y){n=[y.LINEAR,y.NEAREST_MIPMAP_LINEAR,y.LINEAR_MIPMAP_NEAREST,y.LINEAR_MIPMAP_NEAREST],s=[y.NEAREST,y.LINEAR,y.NEAREST_MIPMAP_NEAREST,y.NEAREST_MIPMAP_LINEAR,y.LINEAR_MIPMAP_NEAREST,y.LINEAR_MIPMAP_LINEAR],c=[y.REPEAT,y.CLAMP_TO_EDGE,y.MIRRORED_REPEAT]}function v(y){return typeof HTMLCanvasElement<"u"&&y instanceof HTMLCanvasElement||typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement||typeof HTMLVideoElement<"u"&&y instanceof HTMLVideoElement||typeof ImageData<"u"&&y instanceof ImageData}var p=function(y,f){a.muls(y,f,255)};function T(y,f,P){var L=y.gl,z=L.getParameter(L.MAX_TEXTURE_SIZE);if(f<0||f>z||P<0||P>z)throw new Error("gl-texture2d: Invalid texture size");return y._shape=[f,P],y.bind(),L.texImage2D(L.TEXTURE_2D,0,y.format,f,P,0,y.format,y.type,null),y._mipLevels=[0],y}function l(y,f,P,L,z,F){this.gl=y,this.handle=f,this.format=z,this.type=F,this._shape=[P,L],this._mipLevels=[0],this._magFilter=y.NEAREST,this._minFilter=y.NEAREST,this._wrapS=y.CLAMP_TO_EDGE,this._wrapT=y.CLAMP_TO_EDGE,this._anisoSamples=1;var B=this,O=[this._wrapS,this._wrapT];Object.defineProperties(O,[{get:function(){return B._wrapS},set:function(N){return B.wrapS=N}},{get:function(){return B._wrapT},set:function(N){return B.wrapT=N}}]),this._wrapVector=O;var I=[this._shape[0],this._shape[1]];Object.defineProperties(I,[{get:function(){return B._shape[0]},set:function(N){return B.width=N}},{get:function(){return B._shape[1]},set:function(N){return B.height=N}}]),this._shapeVector=I}var _=l.prototype;Object.defineProperties(_,{minFilter:{get:function(){return this._minFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,y),this._minFilter=y}},magFilter:{get:function(){return this._magFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,y),this._magFilter=y}},mipSamples:{get:function(){return this._anisoSamples},set:function(y){var f=this._anisoSamples;if(this._anisoSamples=Math.max(y,1)|0,f!==this._anisoSamples){var P=this.gl.getExtension("EXT_texture_filter_anisotropic");P&&this.gl.texParameterf(this.gl.TEXTURE_2D,P.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,y),this._wrapS=y}},wrapT:{get:function(){return this._wrapT},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,y),this._wrapT=y}},wrap:{get:function(){return this._wrapVector},set:function(y){if(Array.isArray(y)||(y=[y,y]),y.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var f=0;f<2;++f)if(c.indexOf(y[f])<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);this._wrapS=y[0],this._wrapT=y[1];var P=this.gl;return this.bind(),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,this._wrapS),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,this._wrapT),y}},shape:{get:function(){return this._shapeVector},set:function(y){if(!Array.isArray(y))y=[y|0,y|0];else if(y.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,y[0]|0,y[1]|0),[y[0]|0,y[1]|0]}},width:{get:function(){return this._shape[0]},set:function(y){return y=y|0,T(this,y,this._shape[1]),y}},height:{get:function(){return this._shape[1]},set:function(y){return y=y|0,T(this,this._shape[0],y),y}}}),_.bind=function(y){var f=this.gl;return y!==void 0&&f.activeTexture(f.TEXTURE0+(y|0)),f.bindTexture(f.TEXTURE_2D,this.handle),y!==void 0?y|0:f.getParameter(f.ACTIVE_TEXTURE)-f.TEXTURE0},_.dispose=function(){this.gl.deleteTexture(this.handle)},_.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var y=Math.min(this._shape[0],this._shape[1]),f=0;y>0;++f,y>>>=1)this._mipLevels.indexOf(f)<0&&this._mipLevels.push(f)},_.setPixels=function(y,f,P,L){var z=this.gl;this.bind(),Array.isArray(f)?(L=P,P=f[1]|0,f=f[0]|0):(f=f||0,P=P||0),L=L||0;var F=v(y)?y:y.raw;if(F){var B=this._mipLevels.indexOf(L)<0;B?(z.texImage2D(z.TEXTURE_2D,0,this.format,this.format,this.type,F),this._mipLevels.push(L)):z.texSubImage2D(z.TEXTURE_2D,L,f,P,this.format,this.type,F)}else if(y.shape&&y.stride&&y.data){if(y.shape.length<2||f+y.shape[1]>this._shape[1]>>>L||P+y.shape[0]>this._shape[0]>>>L||f<0||P<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(z,f,P,L,this.format,this.type,this._mipLevels,y)}else throw new Error("gl-texture2d: Unsupported data type")};function w(y,f){return y.length===3?f[2]===1&&f[1]===y[0]*y[2]&&f[0]===y[2]:f[0]===1&&f[1]===y[0]}function S(y,f,P,L,z,F,B,O){var I=O.dtype,N=O.shape.slice();if(N.length<2||N.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var U=0,W=0,Q=w(N,O.stride.slice());I==="float32"?U=y.FLOAT:I==="float64"?(U=y.FLOAT,Q=!1,I="float32"):I==="uint8"?U=y.UNSIGNED_BYTE:(U=y.UNSIGNED_BYTE,Q=!1,I="uint8");var ue=1;if(N.length===2)W=y.LUMINANCE,N=[N[0],N[1],1],O=o(O.data,N,[O.stride[0],O.stride[1],1],O.offset);else if(N.length===3){if(N[2]===1)W=y.ALPHA;else if(N[2]===2)W=y.LUMINANCE_ALPHA;else if(N[2]===3)W=y.RGB;else if(N[2]===4)W=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ue=N[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((W===y.LUMINANCE||W===y.ALPHA)&&(z===y.LUMINANCE||z===y.ALPHA)&&(W=z),W!==z)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var se=O.size,he=B.indexOf(L)<0;if(he&&B.push(L),U===F&&Q)O.offset===0&&O.data.length===se?he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data):he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data.subarray(O.offset,O.offset+se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data.subarray(O.offset,O.offset+se));else{var G;F===y.FLOAT?G=i.mallocFloat32(se):G=i.mallocUint8(se);var $=o(G,N,[N[2],N[2]*N[0],1]);U===y.FLOAT&&F===y.UNSIGNED_BYTE?p($,O):a.assign($,O),he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,G.subarray(0,se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,G.subarray(0,se)),F===y.FLOAT?i.freeFloat32(G):i.freeUint8(G)}}function E(y){var f=y.createTexture();return y.bindTexture(y.TEXTURE_2D,f),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MIN_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MAG_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_S,y.CLAMP_TO_EDGE),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_T,y.CLAMP_TO_EDGE),f}function m(y,f,P,L,z){var F=y.getParameter(y.MAX_TEXTURE_SIZE);if(f<0||f>F||P<0||P>F)throw new Error("gl-texture2d: Invalid texture shape");if(z===y.FLOAT&&!y.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,L,f,P,0,L,z,null),new l(y,B,f,P,L,z)}function b(y,f,P,L,z,F){var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,z,z,F,f),new l(y,B,P,L,z,F)}function d(y,f){var P=f.dtype,L=f.shape.slice(),z=y.getParameter(y.MAX_TEXTURE_SIZE);if(L[0]<0||L[0]>z||L[1]<0||L[1]>z)throw new Error("gl-texture2d: Invalid texture size");var F=w(L,f.stride.slice()),B=0;P==="float32"?B=y.FLOAT:P==="float64"?(B=y.FLOAT,F=!1,P="float32"):P==="uint8"?B=y.UNSIGNED_BYTE:(B=y.UNSIGNED_BYTE,F=!1,P="uint8");var O=0;if(L.length===2)O=y.LUMINANCE,L=[L[0],L[1],1],f=o(f.data,L,[f.stride[0],f.stride[1],1],f.offset);else if(L.length===3)if(L[2]===1)O=y.ALPHA;else if(L[2]===2)O=y.LUMINANCE_ALPHA;else if(L[2]===3)O=y.RGB;else if(L[2]===4)O=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");B===y.FLOAT&&!y.getExtension("OES_texture_float")&&(B=y.UNSIGNED_BYTE,F=!1);var I,N,U=f.size;if(F)f.offset===0&&f.data.length===U?I=f.data:I=f.data.subarray(f.offset,f.offset+U);else{var W=[L[2],L[2]*L[0],1];N=i.malloc(U,P);var Q=o(N,L,W,0);(P==="float32"||P==="float64")&&B===y.UNSIGNED_BYTE?p(Q,f):a.assign(Q,f),I=N.subarray(0,U)}var ue=E(y);return y.texImage2D(y.TEXTURE_2D,0,O,L[0],L[1],0,O,B,I),F||i.free(N),new l(y,ue,L[0],L[1],O,B)}function u(y){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(n||h(y),typeof arguments[1]=="number")return m(y,arguments[1],arguments[2],arguments[3]||y.RGBA,arguments[4]||y.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return m(y,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var f=arguments[1],P=v(f)?f:f.raw;if(P)return b(y,P,f.width|0,f.height|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(f.shape&&f.data&&f.stride)return d(y,f)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(e){"use strict";function t(r,o,a){o?o.bind():r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null);var i=r.getParameter(r.MAX_VERTEX_ATTRIBS)|0;if(a){if(a.length>i)throw new Error("gl-vao: Too many vertex attributes");for(var n=0;n<a.length;++n){var s=a[n];if(s.buffer){var c=s.buffer,h=s.size||4,v=s.type||r.FLOAT,p=!!s.normalized,T=s.stride||0,l=s.offset||0;c.bind(),r.enableVertexAttribArray(n),r.vertexAttribPointer(n,h,v,p,T,l)}else{if(typeof s=="number")r.vertexAttrib1f(n,s);else if(s.length===1)r.vertexAttrib1f(n,s[0]);else if(s.length===2)r.vertexAttrib2f(n,s[0],s[1]);else if(s.length===3)r.vertexAttrib3f(n,s[0],s[1],s[2]);else if(s.length===4)r.vertexAttrib4f(n,s[0],s[1],s[2],s[3]);else throw new Error("gl-vao: Invalid vertex attribute");r.disableVertexAttribArray(n)}}for(;n<i;++n)r.disableVertexAttribArray(n)}else{r.bindBuffer(r.ARRAY_BUFFER,null);for(var n=0;n<i;++n)r.disableVertexAttribArray(n)}}e.exports=t},870:function(e,t,r){"use strict";var o=r(1433);function a(n){this.gl=n,this._elements=null,this._attributes=null,this._elementsType=n.UNSIGNED_SHORT}a.prototype.bind=function(){o(this.gl,this._elements,this._attributes)},a.prototype.update=function(n,s,c){this._elements=s,this._attributes=n,this._elementsType=c||this.gl.UNSIGNED_SHORT},a.prototype.dispose=function(){},a.prototype.unbind=function(){},a.prototype.draw=function(n,s,c){c=c||0;var h=this.gl;this._elements?h.drawElements(n,s,this._elementsType,c):h.drawArrays(n,c,s)};function i(n){return new a(n)}e.exports=i},7518:function(e,t,r){"use strict";var o=r(1433);function a(s,c,h,v,p,T){this.location=s,this.dimension=c,this.a=h,this.b=v,this.c=p,this.d=T}a.prototype.bind=function(s){switch(this.dimension){case 1:s.vertexAttrib1f(this.location,this.a);break;case 2:s.vertexAttrib2f(this.location,this.a,this.b);break;case 3:s.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:s.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function i(s,c,h){this.gl=s,this._ext=c,this.handle=h,this._attribs=[],this._useElements=!1,this._elementsType=s.UNSIGNED_SHORT}i.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var s=0;s<this._attribs.length;++s)this._attribs[s].bind(this.gl)},i.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},i.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},i.prototype.update=function(s,c,h){if(this.bind(),o(this.gl,c,s),this.unbind(),this._attribs.length=0,s)for(var v=0;v<s.length;++v){var p=s[v];typeof p=="number"?this._attribs.push(new a(v,1,p)):Array.isArray(p)&&this._attribs.push(new a(v,p.length,p[0],p[1],p[2],p[3]))}this._useElements=!!c,this._elementsType=h||this.gl.UNSIGNED_SHORT},i.prototype.draw=function(s,c,h){h=h||0;var v=this.gl;this._useElements?v.drawElements(s,c,this._elementsType,h):v.drawArrays(s,h,c)};function n(s,c){return new i(s,c,c.createVertexArrayOES())}e.exports=n},8116:function(e,t,r){"use strict";var o=r(7518),a=r(870);function i(s){this.bindVertexArrayOES=s.bindVertexArray.bind(s),this.createVertexArrayOES=s.createVertexArray.bind(s),this.deleteVertexArrayOES=s.deleteVertexArray.bind(s)}function n(s,c,h,v){var p=s.createVertexArray?new i(s):s.getExtension("OES_vertex_array_object"),T;return p?T=o(s,p):T=a(s),T.update(c,h,v),T}e.exports=n},5632:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r}},8192:function(e,t,r){e.exports=n;var o=r(2825),a=r(3536),i=r(244);function n(s,c){var h=o(s[0],s[1],s[2]),v=o(c[0],c[1],c[2]);a(h,h),a(v,v);var p=i(h,v);return p>1?0:Math.acos(p)}},9226:function(e){e.exports=t;function t(r,o){return r[0]=Math.ceil(o[0]),r[1]=Math.ceil(o[1]),r[2]=Math.ceil(o[2]),r}},3126:function(e){e.exports=t;function t(r){var o=new Float32Array(3);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o}},3990:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r}},1091:function(e){e.exports=t;function t(){var r=new Float32Array(3);return r[0]=0,r[1]=0,r[2]=0,r}},5911:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2];return r[0]=n*v-s*h,r[1]=s*c-i*v,r[2]=i*h-n*c,r}},5455:function(e,t,r){e.exports=r(7056)},7056:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return Math.sqrt(a*a+i*i+n*n)}},4008:function(e,t,r){e.exports=r(6690)},6690:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r}},244:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}},2613:function(e){e.exports=1e-6},9922:function(e,t,r){e.exports=a;var o=r(2613);function a(i,n){var s=i[0],c=i[1],h=i[2],v=n[0],p=n[1],T=n[2];return Math.abs(s-v)<=o*Math.max(1,Math.abs(s),Math.abs(v))&&Math.abs(c-p)<=o*Math.max(1,Math.abs(c),Math.abs(p))&&Math.abs(h-T)<=o*Math.max(1,Math.abs(h),Math.abs(T))}},9265:function(e){e.exports=t;function t(r,o){return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]}},2681:function(e){e.exports=t;function t(r,o){return r[0]=Math.floor(o[0]),r[1]=Math.floor(o[1]),r[2]=Math.floor(o[2]),r}},5137:function(e,t,r){e.exports=a;var o=r(1091)();function a(i,n,s,c,h,v){var p,T;for(n||(n=3),s||(s=0),c?T=Math.min(c*n+s,i.length):T=i.length,p=s;p<T;p+=n)o[0]=i[p],o[1]=i[p+1],o[2]=i[p+2],h(o,o,v),i[p]=o[0],i[p+1]=o[1],i[p+2]=o[2];return i}},2825:function(e){e.exports=t;function t(r,o,a){var i=new Float32Array(3);return i[0]=r,i[1]=o,i[2]=a,i}},2931:function(e,t,r){e.exports={EPSILON:r(2613),create:r(1091),clone:r(3126),angle:r(8192),fromValues:r(2825),copy:r(3990),set:r(1463),equals:r(9922),exactEquals:r(9265),add:r(5632),subtract:r(6843),sub:r(2229),multiply:r(5847),mul:r(4505),divide:r(6690),div:r(4008),min:r(8107),max:r(7417),floor:r(2681),ceil:r(9226),round:r(2447),scale:r(6621),scaleAndAdd:r(8489),distance:r(7056),dist:r(5455),squaredDistance:r(2953),sqrDist:r(6141),length:r(1387),len:r(868),squaredLength:r(3066),sqrLen:r(5486),negate:r(5093),inverse:r(811),normalize:r(3536),dot:r(244),cross:r(5911),lerp:r(6658),random:r(7636),transformMat4:r(5673),transformMat3:r(492),transformQuat:r(264),rotateX:r(6894),rotateY:r(109),rotateZ:r(8692),forEach:r(5137)}},811:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r}},868:function(e,t,r){e.exports=r(1387)},1387:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return Math.sqrt(o*o+a*a+i*i)}},6658:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r}},7417:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r}},8107:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r}},4505:function(e,t,r){e.exports=r(5847)},5847:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r}},5093:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r}},3536:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=a*a+i*i+n*n;return s>0&&(s=1/Math.sqrt(s),r[0]=o[0]*s,r[1]=o[1]*s,r[2]=o[2]*s),r}},7636:function(e){e.exports=t;function t(r,o){o=o||1;var a=Math.random()*2*Math.PI,i=Math.random()*2-1,n=Math.sqrt(1-i*i)*o;return r[0]=Math.cos(a)*n,r[1]=Math.sin(a)*n,r[2]=i*o,r}},6894:function(e){e.exports=t;function t(r,o,a,i){var n=a[1],s=a[2],c=o[1]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=o[0],r[1]=n+c*p-h*v,r[2]=s+c*v+h*p,r}},109:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[2],c=o[0]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+h*v+c*p,r[1]=o[1],r[2]=s+h*p-c*v,r}},8692:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[1],c=o[0]-n,h=o[1]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+c*p-h*v,r[1]=s+c*v+h*p,r[2]=o[2],r}},2447:function(e){e.exports=t;function t(r,o){return r[0]=Math.round(o[0]),r[1]=Math.round(o[1]),r[2]=Math.round(o[2]),r}},6621:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r}},8489:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r}},1463:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o,r[1]=a,r[2]=i,r}},6141:function(e,t,r){e.exports=r(2953)},5486:function(e,t,r){e.exports=r(3066)},2953:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return a*a+i*i+n*n}},3066:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return o*o+a*a+i*i}},2229:function(e,t,r){e.exports=r(6843)},6843:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r}},492:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2];return r[0]=i*a[0]+n*a[3]+s*a[6],r[1]=i*a[1]+n*a[4]+s*a[7],r[2]=i*a[2]+n*a[5]+s*a[8],r}},5673:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[3]*i+a[7]*n+a[11]*s+a[15];return c=c||1,r[0]=(a[0]*i+a[4]*n+a[8]*s+a[12])/c,r[1]=(a[1]*i+a[5]*n+a[9]*s+a[13])/c,r[2]=(a[2]*i+a[6]*n+a[10]*s+a[14])/c,r}},264:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r}},4361:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r[3]=o[3]+a[3],r}},2335:function(e){e.exports=t;function t(r){var o=new Float32Array(4);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o}},2933:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r}},7536:function(e){e.exports=t;function t(){var r=new Float32Array(4);return r[0]=0,r[1]=0,r[2]=0,r[3]=0,r}},4691:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return Math.sqrt(a*a+i*i+n*n+s*s)}},1373:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r[3]=o[3]/a[3],r}},3750:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]+r[3]*o[3]}},3390:function(e){e.exports=t;function t(r,o,a,i){var n=new Float32Array(4);return n[0]=r,n[1]=o,n[2]=a,n[3]=i,n}},9970:function(e,t,r){e.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r[3]=1/o[3],r}},6808:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return Math.sqrt(o*o+a*a+i*i+n*n)}},2573:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r[3]=h+i*(a[3]-h),r}},160:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r[3]=Math.max(o[3],a[3]),r}},2334:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r[3]=Math.min(o[3],a[3]),r}},3576:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r[3]=o[3]*a[3],r}},1498:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r[3]=-o[3],r}},5177:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a*a+i*i+n*n+s*s;return c>0&&(c=1/Math.sqrt(c),r[0]=a*c,r[1]=i*c,r[2]=n*c,r[3]=s*c),r}},9131:function(e,t,r){var o=r(5177),a=r(9288);e.exports=i;function i(n,s){return s=s||1,n[0]=Math.random(),n[1]=Math.random(),n[2]=Math.random(),n[3]=Math.random(),o(n,n),a(n,n,s),n}},9288:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r[3]=o[3]*a,r}},4844:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r[3]=o[3]+a[3]*i,r}},4578:function(e){e.exports=t;function t(r,o,a,i,n){return r[0]=o,r[1]=a,r[2]=i,r[3]=n,r}},7960:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return a*a+i*i+n*n+s*s}},483:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return o*o+a*a+i*i+n*n}},6860:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r[3]=o[3]-a[3],r}},5352:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3];return r[0]=a[0]*i+a[4]*n+a[8]*s+a[12]*c,r[1]=a[1]*i+a[5]*n+a[9]*s+a[13]*c,r[2]=a[2]*i+a[6]*n+a[10]*s+a[14]*c,r[3]=a[3]*i+a[7]*n+a[11]*s+a[15]*c,r}},4041:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r[3]=o[3],r}},1848:function(e,t,r){var o=r(4905),a=r(6468);e.exports=i;function i(n){for(var s=Array.isArray(n)?n:o(n),c=0;c<s.length;c++){var h=s[c];if(h.type==="preprocessor"){var v=h.data.match(/\#define\s+SHADER_NAME(_B64)?\s+(.+)$/);if(v&&v[2]){var p=v[1],T=v[2];return(p?a(T):T).trim()}}}}},5874:function(e,t,r){e.exports=f;var o=r(620),a=r(7827),i=r(6852),n=r(7932),s=r(3508),c=999,h=9999,v=0,p=1,T=2,l=3,_=4,w=5,S=6,E=7,m=8,b=9,d=10,u=11,y=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"];function f(P){var L=0,z=0,F=c,B,O,I=[],N=[],U=0,W=0,Q=1,ue=0,se=0,he=!1,G=!1,$="",J;P=P||{};var Z=i,re=o;P.version==="300 es"&&(Z=s,re=n);for(var ne={},j={},L=0;L<Z.length;L++)ne[Z[L]]=!0;for(var L=0;L<re.length;L++)j[re[L]]=!0;return function(ce){return N=[],ce!==null?ie(ce):fe()};function ee(ce){ce.length&&N.push({type:y[F],data:ce,position:se,line:Q,column:ue})}function ie(ce){L=0,ce.toString&&(ce=ce.toString()),$+=ce.replace(/\r\n/g,`
+`),J=$.length;for(var ze;B=$[L],L<J;){switch(ze=L,F){case v:L=Ze();break;case p:L=Ie();break;case T:L=Be();break;case l:L=at();break;case _:L=lt();break;case u:L=et();break;case w:L=Me();break;case h:L=ge();break;case b:L=Ae();break;case c:L=be();break}if(ze!==L)switch($[ze]){case`
+`:ue=0,++Q;break;default:++ue;break}}return z+=L,$=$.slice(L),N}function fe(ce){return I.length&&ee(I.join("")),F=d,ee("(eof)"),N}function be(){return I=I.length?[]:I,O==="/"&&B==="*"?(se=z+L-1,F=v,O=B,L+1):O==="/"&&B==="/"?(se=z+L-1,F=p,O=B,L+1):B==="#"?(F=T,se=z+L,L):/\s/.test(B)?(F=b,se=z+L,L):(he=/\d/.test(B),G=/[^\w_]/.test(B),se=z+L,F=he?_:G?l:h,L)}function Ae(){return/[^\s]/g.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Be(){return(B==="\r"||B===`
+`)&&O!=="\\"?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Ie(){return Be()}function Ze(){return B==="/"&&O==="*"?(I.push(B),ee(I.join("")),F=c,L+1):(I.push(B),O=B,L+1)}function at(){if(O==="."&&/\d/.test(B))return F=w,L;if(O==="/"&&B==="*")return F=v,L;if(O==="/"&&B==="/")return F=p,L;if(B==="."&&I.length){for(;it(I););return F=w,L}if(B===";"||B===")"||B==="("){if(I.length)for(;it(I););return ee(B),F=c,L+1}var ce=I.length===2&&B!=="=";if(/[\w_\d\s]/.test(B)||ce){for(;it(I););return F=c,L}return I.push(B),O=B,L+1}function it(ce){var ze=0,tt,nt;do{if(tt=a.indexOf(ce.slice(0,ce.length+ze).join("")),nt=a[tt],tt===-1){if(ze--+ce.length>0)continue;nt=ce.slice(0,1).join("")}return ee(nt),se+=nt.length,I=I.slice(nt.length),I.length}while(!0)}function et(){return/[^a-fA-F0-9]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function lt(){return B==="."||/[eE]/.test(B)?(I.push(B),F=w,O=B,L+1):B==="x"&&I.length===1&&I[0]==="0"?(F=u,I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Me(){return B==="f"&&(I.push(B),O=B,L+=1),/[eE]/.test(B)||(B==="-"||B==="+")&&/[eE]/.test(O)?(I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function ge(){if(/[^\d\w_]/.test(B)){var ce=I.join("");return j[ce]?F=m:ne[ce]?F=E:F=S,ee(I.join("")),F=c,L}return I.push(B),O=B,L+1}}},3508:function(e,t,r){var o=r(6852);o=o.slice().filter(function(a){return!/^(gl\_|texture)/.test(a)}),e.exports=o.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(e){e.exports=["abs","acos","all","any","asin","atan","ceil","clamp","cos","cross","dFdx","dFdy","degrees","distance","dot","equal","exp","exp2","faceforward","floor","fract","gl_BackColor","gl_BackLightModelProduct","gl_BackLightProduct","gl_BackMaterial","gl_BackSecondaryColor","gl_ClipPlane","gl_ClipVertex","gl_Color","gl_DepthRange","gl_DepthRangeParameters","gl_EyePlaneQ","gl_EyePlaneR","gl_EyePlaneS","gl_EyePlaneT","gl_Fog","gl_FogCoord","gl_FogFragCoord","gl_FogParameters","gl_FragColor","gl_FragCoord","gl_FragData","gl_FragDepth","gl_FragDepthEXT","gl_FrontColor","gl_FrontFacing","gl_FrontLightModelProduct","gl_FrontLightProduct","gl_FrontMaterial","gl_FrontSecondaryColor","gl_LightModel","gl_LightModelParameters","gl_LightModelProducts","gl_LightProducts","gl_LightSource","gl_LightSourceParameters","gl_MaterialParameters","gl_MaxClipPlanes","gl_MaxCombinedTextureImageUnits","gl_MaxDrawBuffers","gl_MaxFragmentUniformComponents","gl_MaxLights","gl_MaxTextureCoords","gl_MaxTextureImageUnits","gl_MaxTextureUnits","gl_MaxVaryingFloats","gl_MaxVertexAttribs","gl_MaxVertexTextureImageUnits","gl_MaxVertexUniformComponents","gl_ModelViewMatrix","gl_ModelViewMatrixInverse","gl_ModelViewMatrixInverseTranspose","gl_ModelViewMatrixTranspose","gl_ModelViewProjectionMatrix","gl_ModelViewProjectionMatrixInverse","gl_ModelViewProjectionMatrixInverseTranspose","gl_ModelViewProjectionMatrixTranspose","gl_MultiTexCoord0","gl_MultiTexCoord1","gl_MultiTexCoord2","gl_MultiTexCoord3","gl_MultiTexCoord4","gl_MultiTexCoord5","gl_MultiTexCoord6","gl_MultiTexCoord7","gl_Normal","gl_NormalMatrix","gl_NormalScale","gl_ObjectPlaneQ","gl_ObjectPlaneR","gl_ObjectPlaneS","gl_ObjectPlaneT","gl_Point","gl_PointCoord","gl_PointParameters","gl_PointSize","gl_Position","gl_ProjectionMatrix","gl_ProjectionMatrixInverse","gl_ProjectionMatrixInverseTranspose","gl_ProjectionMatrixTranspose","gl_SecondaryColor","gl_TexCoord","gl_TextureEnvColor","gl_TextureMatrix","gl_TextureMatrixInverse","gl_TextureMatrixInverseTranspose","gl_TextureMatrixTranspose","gl_Vertex","greaterThan","greaterThanEqual","inversesqrt","length","lessThan","lessThanEqual","log","log2","matrixCompMult","max","min","mix","mod","normalize","not","notEqual","pow","radians","reflect","refract","sign","sin","smoothstep","sqrt","step","tan","texture2D","texture2DLod","texture2DProj","texture2DProjLod","textureCube","textureCubeLod","texture2DLodEXT","texture2DProjLodEXT","textureCubeLodEXT","texture2DGradEXT","texture2DProjGradEXT","textureCubeGradEXT"]},7932:function(e,t,r){var o=r(620);e.exports=o.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(e){e.exports=["precision","highp","mediump","lowp","attribute","const","uniform","varying","break","continue","do","for","while","if","else","in","out","inout","float","int","uint","void","bool","true","false","discard","return","mat2","mat3","mat4","vec2","vec3","vec4","ivec2","ivec3","ivec4","bvec2","bvec3","bvec4","sampler1D","sampler2D","sampler3D","samplerCube","sampler1DShadow","sampler2DShadow","struct","asm","class","union","enum","typedef","template","this","packed","goto","switch","default","inline","noinline","volatile","public","static","extern","external","interface","long","short","double","half","fixed","unsigned","input","output","hvec2","hvec3","hvec4","dvec2","dvec3","dvec4","fvec2","fvec3","fvec4","sampler2DRect","sampler3DRect","sampler2DRectShadow","sizeof","cast","namespace","using"]},7827:function(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(e,t,r){var o=r(5874);e.exports=a;function a(i,n){var s=o(n),c=[];return c=c.concat(s(i)),c=c.concat(s(null)),c}},3236:function(e){e.exports=function(t){typeof t=="string"&&(t=[t]);for(var r=[].slice.call(arguments,1),o=[],a=0;a<t.length-1;a++)o.push(t[a],r[a]||"");return o.push(t[a]),o.join("")}},7520:function(e,t,r){"use strict";var o=r(9507);function a(){var i=!1;try{var n=Object.defineProperty({},"passive",{get:function(){i=!0}});window.addEventListener("test",null,n),window.removeEventListener("test",null,n)}catch{i=!1}return i}e.exports=o&&a()},3778:function(e,t){t.read=function(r,o,a,i,n){var s,c,h=n*8-i-1,v=(1<<h)-1,p=v>>1,T=-7,l=a?n-1:0,_=a?-1:1,w=r[o+l];for(l+=_,s=w&(1<<-T)-1,w>>=-T,T+=h;T>0;s=s*256+r[o+l],l+=_,T-=8);for(c=s&(1<<-T)-1,s>>=-T,T+=i;T>0;c=c*256+r[o+l],l+=_,T-=8);if(s===0)s=1-p;else{if(s===v)return c?NaN:(w?-1:1)*(1/0);c=c+Math.pow(2,i),s=s-p}return(w?-1:1)*c*Math.pow(2,s-i)},t.write=function(r,o,a,i,n,s){var c,h,v,p=s*8-n-1,T=(1<<p)-1,l=T>>1,_=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,w=i?0:s-1,S=i?1:-1,E=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(h=isNaN(o)?1:0,c=T):(c=Math.floor(Math.log(o)/Math.LN2),o*(v=Math.pow(2,-c))<1&&(c--,v*=2),c+l>=1?o+=_/v:o+=_*Math.pow(2,1-l),o*v>=2&&(c++,v/=2),c+l>=T?(h=0,c=T):c+l>=1?(h=(o*v-1)*Math.pow(2,n),c=c+l):(h=o*Math.pow(2,l-1)*Math.pow(2,n),c=0));n>=8;r[a+w]=h&255,w+=S,h/=256,n-=8);for(c=c<<n|h,p+=n;p>0;r[a+w]=c&255,w+=S,c/=256,p-=8);r[a+w-S]|=E*128}},8954:function(e,t,r){"use strict";e.exports=l;var o=r(3250),a=r(6803).Fw;function i(_,w,S){this.vertices=_,this.adjacent=w,this.boundary=S,this.lastVisited=-1}i.prototype.flip=function(){var _=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=_;var w=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=w};function n(_,w,S){this.vertices=_,this.cell=w,this.index=S}function s(_,w){return a(_.vertices,w.vertices)}function c(_){return function(){var w=this.tuple;return _.apply(this,w)}}function h(_){var w=o[_+1];return w||(w=o),c(w)}var v=[];function p(_,w,S){this.dimension=_,this.vertices=w,this.simplices=S,this.interior=S.filter(function(b){return!b.boundary}),this.tuple=new Array(_+1);for(var E=0;E<=_;++E)this.tuple[E]=this.vertices[E];var m=v[_];m||(m=v[_]=h(_)),this.orient=m}var T=p.prototype;T.handleBoundaryDegeneracy=function(_,w){var S=this.dimension,E=this.vertices.length-1,m=this.tuple,b=this.vertices,d=[_];for(_.lastVisited=-E;d.length>0;){_=d.pop();for(var u=_.adjacent,y=0;y<=S;++y){var f=u[y];if(!(!f.boundary||f.lastVisited<=-E)){for(var P=f.vertices,L=0;L<=S;++L){var z=P[L];z<0?m[L]=w:m[L]=b[z]}var F=this.orient();if(F>0)return f;f.lastVisited=-E,F===0&&d.push(f)}}}return null},T.walk=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=w?this.interior.length*Math.random()|0:this.interior.length-1,u=this.interior[d];e:for(;!u.boundary;){for(var y=u.vertices,f=u.adjacent,P=0;P<=E;++P)b[P]=m[y[P]];u.lastVisited=S;for(var P=0;P<=E;++P){var L=f[P];if(!(L.lastVisited>=S)){var z=b[P];b[P]=_;var F=this.orient();if(b[P]=z,F<0){u=L;continue e}else L.boundary?L.lastVisited=-S:L.lastVisited=S}}return}return u},T.addPeaks=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=this.interior,u=this.simplices,y=[w];w.lastVisited=S,w.vertices[w.vertices.indexOf(-1)]=S,w.boundary=!1,d.push(w);for(var f=[];y.length>0;){var w=y.pop(),P=w.vertices,L=w.adjacent,z=P.indexOf(S);if(!(z<0)){for(var F=0;F<=E;++F)if(F!==z){var B=L[F];if(!(!B.boundary||B.lastVisited>=S)){var O=B.vertices;if(B.lastVisited!==-S){for(var I=0,N=0;N<=E;++N)O[N]<0?(I=N,b[N]=_):b[N]=m[O[N]];var U=this.orient();if(U>0){O[I]=S,B.boundary=!1,d.push(B),y.push(B),B.lastVisited=S;continue}else B.lastVisited=-S}var W=B.adjacent,Q=P.slice(),ue=L.slice(),se=new i(Q,ue,!0);u.push(se);var he=W.indexOf(w);if(!(he<0)){W[he]=se,ue[z]=B,Q[F]=-1,ue[F]=w,L[F]=se,se.flip();for(var N=0;N<=E;++N){var G=Q[N];if(!(G<0||G===S)){for(var $=new Array(E-1),J=0,Z=0;Z<=E;++Z){var re=Q[Z];re<0||Z===N||($[J++]=re)}f.push(new n($,se,N))}}}}}}}f.sort(s);for(var F=0;F+1<f.length;F+=2){var ne=f[F],j=f[F+1],ee=ne.index,ie=j.index;ee<0||ie<0||(ne.cell.adjacent[ne.index]=j.cell,j.cell.adjacent[j.index]=ne.cell)}},T.insert=function(_,w){var S=this.vertices;S.push(_);var E=this.walk(_,w);if(E){for(var m=this.dimension,b=this.tuple,d=0;d<=m;++d){var u=E.vertices[d];u<0?b[d]=_:b[d]=S[u]}var y=this.orient(b);y<0||y===0&&(E=this.handleBoundaryDegeneracy(E,_),!E)||this.addPeaks(_,E)}},T.boundary=function(){for(var _=this.dimension,w=[],S=this.simplices,E=S.length,m=0;m<E;++m){var b=S[m];if(b.boundary){for(var d=new Array(_),u=b.vertices,y=0,f=0,P=0;P<=_;++P)u[P]>=0?d[y++]=u[P]:f=P&1;if(f===(_&1)){var L=d[0];d[0]=d[1],d[1]=L}w.push(d)}}return w};function l(_,w){var S=_.length;if(S===0)throw new Error("Must have at least d+1 points");var E=_[0].length;if(S<=E)throw new Error("Must input at least d+1 points");var m=_.slice(0,E+1),b=o.apply(void 0,m);if(b===0)throw new Error("Input not in general position");for(var d=new Array(E+1),u=0;u<=E;++u)d[u]=u;b<0&&(d[0]=1,d[1]=0);for(var y=new i(d,new Array(E+1),!1),f=y.adjacent,P=new Array(E+2),u=0;u<=E;++u){for(var L=d.slice(),z=0;z<=E;++z)z===u&&(L[z]=-1);var F=L[0];L[0]=L[1],L[1]=F;var B=new i(L,new Array(E+1),!0);f[u]=B,P[u]=B}P[E+1]=y;for(var u=0;u<=E;++u)for(var L=f[u].vertices,O=f[u].adjacent,z=0;z<=E;++z){var I=L[z];if(I<0){O[z]=y;continue}for(var N=0;N<=E;++N)f[N].vertices.indexOf(I)<0&&(O[z]=f[N])}for(var U=new p(E,m,P),W=!!w,u=E+1;u<S;++u)U.insert(_[u],W);return U.boundary()}},3352:function(e,t,r){"use strict";var o=r(2478),a=0,i=1,n=2;e.exports=y;function s(f,P,L,z,F){this.mid=f,this.left=P,this.right=L,this.leftPoints=z,this.rightPoints=F,this.count=(P?P.count:0)+(L?L.count:0)+z.length}var c=s.prototype;function h(f,P){f.mid=P.mid,f.left=P.left,f.right=P.right,f.leftPoints=P.leftPoints,f.rightPoints=P.rightPoints,f.count=P.count}function v(f,P){var L=b(P);f.mid=L.mid,f.left=L.left,f.right=L.right,f.leftPoints=L.leftPoints,f.rightPoints=L.rightPoints,f.count=L.count}function p(f,P){var L=f.intervals([]);L.push(P),v(f,L)}function T(f,P){var L=f.intervals([]),z=L.indexOf(P);return z<0?a:(L.splice(z,1),v(f,L),i)}c.intervals=function(f){return f.push.apply(f,this.leftPoints),this.left&&this.left.intervals(f),this.right&&this.right.intervals(f),f},c.insert=function(f){var P=this.count-this.leftPoints.length;if(this.count+=1,f[1]<this.mid)this.left?4*(this.left.count+1)>3*(P+1)?p(this,f):this.left.insert(f):this.left=b([f]);else if(f[0]>this.mid)this.right?4*(this.right.count+1)>3*(P+1)?p(this,f):this.right.insert(f):this.right=b([f]);else{var L=o.ge(this.leftPoints,f,E),z=o.ge(this.rightPoints,f,m);this.leftPoints.splice(L,0,f),this.rightPoints.splice(z,0,f)}},c.remove=function(f){var P=this.count-this.leftPoints;if(f[1]<this.mid){if(!this.left)return a;var L=this.right?this.right.count:0;if(4*L>3*(P-1))return T(this,f);var z=this.left.remove(f);return z===n?(this.left=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else if(f[0]>this.mid){if(!this.right)return a;var F=this.left?this.left.count:0;if(4*F>3*(P-1))return T(this,f);var z=this.right.remove(f);return z===n?(this.right=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else{if(this.count===1)return this.leftPoints[0]===f?n:a;if(this.leftPoints.length===1&&this.leftPoints[0]===f){if(this.left&&this.right){for(var B=this,O=this.left;O.right;)B=O,O=O.right;if(B===this)O.right=this.right;else{var I=this.left,z=this.right;B.count-=O.count,B.right=O.left,O.left=I,O.right=z}h(this,O),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?h(this,this.left):h(this,this.right);return i}for(var I=o.ge(this.leftPoints,f,E);I<this.leftPoints.length&&this.leftPoints[I][0]===f[0];++I)if(this.leftPoints[I]===f){this.count-=1,this.leftPoints.splice(I,1);for(var z=o.ge(this.rightPoints,f,m);z<this.rightPoints.length&&this.rightPoints[z][1]===f[1];++z)if(this.rightPoints[z]===f)return this.rightPoints.splice(z,1),i}return a}};function l(f,P,L){for(var z=0;z<f.length&&f[z][0]<=P;++z){var F=L(f[z]);if(F)return F}}function _(f,P,L){for(var z=f.length-1;z>=0&&f[z][1]>=P;--z){var F=L(f[z]);if(F)return F}}function w(f,P){for(var L=0;L<f.length;++L){var z=P(f[L]);if(z)return z}}c.queryPoint=function(f,P){if(f<this.mid){if(this.left){var L=this.left.queryPoint(f,P);if(L)return L}return l(this.leftPoints,f,P)}else if(f>this.mid){if(this.right){var L=this.right.queryPoint(f,P);if(L)return L}return _(this.rightPoints,f,P)}else return w(this.leftPoints,P)},c.queryInterval=function(f,P,L){if(f<this.mid&&this.left){var z=this.left.queryInterval(f,P,L);if(z)return z}if(P>this.mid&&this.right){var z=this.right.queryInterval(f,P,L);if(z)return z}return P<this.mid?l(this.leftPoints,P,L):f>this.mid?_(this.rightPoints,f,L):w(this.leftPoints,L)};function S(f,P){return f-P}function E(f,P){var L=f[0]-P[0];return L||f[1]-P[1]}function m(f,P){var L=f[1]-P[1];return L||f[0]-P[0]}function b(f){if(f.length===0)return null;for(var P=[],L=0;L<f.length;++L)P.push(f[L][0],f[L][1]);P.sort(S);for(var z=P[P.length>>1],F=[],B=[],O=[],L=0;L<f.length;++L){var I=f[L];I[1]<z?F.push(I):z<I[0]?B.push(I):O.push(I)}var N=O,U=O.slice();return N.sort(E),U.sort(m),new s(z,b(F),b(B),N,U)}function d(f){this.root=f}var u=d.prototype;u.insert=function(f){this.root?this.root.insert(f):this.root=new s(f[0],null,null,[f],[f])},u.remove=function(f){if(this.root){var P=this.root.remove(f);return P===n&&(this.root=null),P!==a}return!1},u.queryPoint=function(f,P){if(this.root)return this.root.queryPoint(f,P)},u.queryInterval=function(f,P,L){if(f<=P&&this.root)return this.root.queryInterval(f,P,L)},Object.defineProperty(u,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(u,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});function y(f){return!f||f.length===0?new d(null):new d(b(f))}},9507:function(e){e.exports=!0},7163:function(e){e.exports=function(o){return o!=null&&(t(o)||r(o)||!!o._isBuffer)};function t(o){return!!o.constructor&&typeof o.constructor.isBuffer=="function"&&o.constructor.isBuffer(o)}function r(o){return typeof o.readFloatLE=="function"&&typeof o.slice=="function"&&t(o.slice(0,0))}},5219:function(e){"use strict";e.exports=function(t){for(var r=t.length,o,a=0;a<r;a++)if(o=t.charCodeAt(a),(o<9||o>13)&&o!==32&&o!==133&&o!==160&&o!==5760&&o!==6158&&(o<8192||o>8205)&&o!==8232&&o!==8233&&o!==8239&&o!==8287&&o!==8288&&o!==12288&&o!==65279)return!1;return!0}},395:function(e){function t(r,o,a){return r*(1-a)+o*a}e.exports=t},2652:function(e,t,r){var o=r(4335),a=r(6864),i=r(1903),n=r(9921),s=r(7608),c=r(5665),h={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},v=a(),p=a(),T=[0,0,0,0],l=[[0,0,0],[0,0,0],[0,0,0]],_=[0,0,0];e.exports=function(b,d,u,y,f,P){if(d||(d=[0,0,0]),u||(u=[0,0,0]),y||(y=[0,0,0]),f||(f=[0,0,0,1]),P||(P=[0,0,0,1]),!o(v,b)||(i(p,v),p[3]=0,p[7]=0,p[11]=0,p[15]=1,Math.abs(n(p)<1e-8)))return!1;var L=v[3],z=v[7],F=v[11],B=v[12],O=v[13],I=v[14],N=v[15];if(L!==0||z!==0||F!==0){T[0]=L,T[1]=z,T[2]=F,T[3]=N;var U=s(p,p);if(!U)return!1;c(p,p),w(f,T,p)}else f[0]=f[1]=f[2]=0,f[3]=1;if(d[0]=B,d[1]=O,d[2]=I,S(l,v),u[0]=h.length(l[0]),h.normalize(l[0],l[0]),y[0]=h.dot(l[0],l[1]),E(l[1],l[1],l[0],1,-y[0]),u[1]=h.length(l[1]),h.normalize(l[1],l[1]),y[0]/=u[1],y[1]=h.dot(l[0],l[2]),E(l[2],l[2],l[0],1,-y[1]),y[2]=h.dot(l[1],l[2]),E(l[2],l[2],l[1],1,-y[2]),u[2]=h.length(l[2]),h.normalize(l[2],l[2]),y[1]/=u[2],y[2]/=u[2],h.cross(_,l[1],l[2]),h.dot(l[0],_)<0)for(var W=0;W<3;W++)u[W]*=-1,l[W][0]*=-1,l[W][1]*=-1,l[W][2]*=-1;return P[0]=.5*Math.sqrt(Math.max(1+l[0][0]-l[1][1]-l[2][2],0)),P[1]=.5*Math.sqrt(Math.max(1-l[0][0]+l[1][1]-l[2][2],0)),P[2]=.5*Math.sqrt(Math.max(1-l[0][0]-l[1][1]+l[2][2],0)),P[3]=.5*Math.sqrt(Math.max(1+l[0][0]+l[1][1]+l[2][2],0)),l[2][1]>l[1][2]&&(P[0]=-P[0]),l[0][2]>l[2][0]&&(P[1]=-P[1]),l[1][0]>l[0][1]&&(P[2]=-P[2]),!0};function w(m,b,d){var u=b[0],y=b[1],f=b[2],P=b[3];return m[0]=d[0]*u+d[4]*y+d[8]*f+d[12]*P,m[1]=d[1]*u+d[5]*y+d[9]*f+d[13]*P,m[2]=d[2]*u+d[6]*y+d[10]*f+d[14]*P,m[3]=d[3]*u+d[7]*y+d[11]*f+d[15]*P,m}function S(m,b){m[0][0]=b[0],m[0][1]=b[1],m[0][2]=b[2],m[1][0]=b[4],m[1][1]=b[5],m[1][2]=b[6],m[2][0]=b[8],m[2][1]=b[9],m[2][2]=b[10]}function E(m,b,d,u,y){m[0]=b[0]*u+d[0]*y,m[1]=b[1]*u+d[1]*y,m[2]=b[2]*u+d[2]*y}},4335:function(e){e.exports=function(r,o){var a=o[15];if(a===0)return!1;for(var i=1/a,n=0;n<16;n++)r[n]=o[n]*i;return!0}},7442:function(e,t,r){var o=r(6658),a=r(7182),i=r(2652),n=r(9921),s=r(8648),c=T(),h=T(),v=T();e.exports=p;function p(w,S,E,m){if(n(S)===0||n(E)===0)return!1;var b=i(S,c.translate,c.scale,c.skew,c.perspective,c.quaternion),d=i(E,h.translate,h.scale,h.skew,h.perspective,h.quaternion);return!b||!d?!1:(o(v.translate,c.translate,h.translate,m),o(v.skew,c.skew,h.skew,m),o(v.scale,c.scale,h.scale,m),o(v.perspective,c.perspective,h.perspective,m),s(v.quaternion,c.quaternion,h.quaternion,m),a(w,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function T(){return{translate:l(),scale:l(1),skew:l(),perspective:_(),quaternion:_()}}function l(w){return[w||0,w||0,w||0]}function _(){return[0,0,0,1]}},7182:function(e,t,r){var o={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},a=o.create(),i=o.create();e.exports=function(s,c,h,v,p,T){return o.identity(s),o.fromRotationTranslation(s,T,c),s[3]=p[0],s[7]=p[1],s[11]=p[2],s[15]=p[3],o.identity(i),v[2]!==0&&(i[9]=v[2],o.multiply(s,s,i)),v[1]!==0&&(i[9]=0,i[8]=v[1],o.multiply(s,s,i)),v[0]!==0&&(i[8]=0,i[4]=v[0],o.multiply(s,s,i)),o.scale(s,s,h),s}},1811:function(e,t,r){"use strict";var o=r(2478),a=r(7442),i=r(7608),n=r(5567),s=r(2408),c=r(7089),h=r(6582),v=r(7656),p=r(2504),T=r(3536),l=[0,0,0];e.exports=E;function _(m){this._components=m.slice(),this._time=[0],this.prevMatrix=m.slice(),this.nextMatrix=m.slice(),this.computedMatrix=m.slice(),this.computedInverse=m.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}var w=_.prototype;w.recalcMatrix=function(m){var b=this._time,d=o.le(b,m),u=this.computedMatrix;if(!(d<0)){var y=this._components;if(d===b.length-1)for(var f=16*d,P=0;P<16;++P)u[P]=y[f++];else{for(var L=b[d+1]-b[d],f=16*d,z=this.prevMatrix,F=!0,P=0;P<16;++P)z[P]=y[f++];for(var B=this.nextMatrix,P=0;P<16;++P)B[P]=y[f++],F=F&&z[P]===B[P];if(L<1e-6||F)for(var P=0;P<16;++P)u[P]=z[P];else a(u,z,B,(m-b[d])/L)}var O=this.computedUp;O[0]=u[1],O[1]=u[5],O[2]=u[9],T(O,O);var I=this.computedInverse;i(I,u);var N=this.computedEye,U=I[15];N[0]=I[12]/U,N[1]=I[13]/U,N[2]=I[14]/U;for(var W=this.computedCenter,Q=Math.exp(this.computedRadius[0]),P=0;P<3;++P)W[P]=N[P]-u[2+4*P]*Q}},w.idle=function(m){if(!(m<this.lastT())){for(var b=this._components,d=b.length-16,u=0;u<16;++u)b.push(b[d++]);this._time.push(m)}},w.flush=function(m){var b=o.gt(this._time,m)-2;b<0||(this._time.splice(0,b),this._components.splice(0,16*b))},w.lastT=function(){return this._time[this._time.length-1]},w.lookAt=function(m,b,d,u){this.recalcMatrix(m),b=b||this.computedEye,d=d||l,u=u||this.computedUp,this.setMatrix(m,h(this.computedMatrix,b,d,u));for(var y=0,f=0;f<3;++f)y+=Math.pow(d[f]-b[f],2);y=Math.log(Math.sqrt(y)),this.computedRadius[0]=y},w.rotate=function(m,b,d,u){this.recalcMatrix(m);var y=this.computedInverse;b&&s(y,y,b),d&&n(y,y,d),u&&c(y,y,u),this.setMatrix(m,i(this.computedMatrix,y))};var S=[0,0,0];w.pan=function(m,b,d,u){S[0]=-(b||0),S[1]=-(d||0),S[2]=-(u||0),this.recalcMatrix(m);var y=this.computedInverse;v(y,y,S),this.setMatrix(m,i(y,y))},w.translate=function(m,b,d,u){S[0]=b||0,S[1]=d||0,S[2]=u||0,this.recalcMatrix(m);var y=this.computedMatrix;v(y,y,S),this.setMatrix(m,y)},w.setMatrix=function(m,b){if(!(m<this.lastT())){this._time.push(m);for(var d=0;d<16;++d)this._components.push(b[d])}},w.setDistance=function(m,b){this.computedRadius[0]=b},w.setDistanceLimits=function(m,b){var d=this._limits;d[0]=m,d[1]=b},w.getDistanceLimits=function(m){var b=this._limits;return m?(m[0]=b[0],m[1]=b[1],m):b};function E(m){m=m||{};var b=m.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new _(b)}},3090:function(e,t,r){"use strict";e.exports=a;var o=r(3250)[3];function a(i){var n=i.length;if(n<3){for(var _=new Array(n),s=0;s<n;++s)_[s]=s;return n===2&&i[0][0]===i[1][0]&&i[0][1]===i[1][1]?[0]:_}for(var c=new Array(n),s=0;s<n;++s)c[s]=s;c.sort(function(m,b){var d=i[m][0]-i[b][0];return d||i[m][1]-i[b][1]});for(var h=[c[0],c[1]],v=[c[0],c[1]],s=2;s<n;++s){for(var p=c[s],T=i[p],l=h.length;l>1&&o(i[h[l-2]],i[h[l-1]],T)<=0;)l-=1,h.pop();for(h.push(p),l=v.length;l>1&&o(i[v[l-2]],i[v[l-1]],T)>=0;)l-=1,v.pop();v.push(p)}for(var _=new Array(v.length+h.length-2),w=0,s=0,S=h.length;s<S;++s)_[w++]=h[s];for(var E=v.length-2;E>0;--E)_[w++]=v[E];return _}},351:function(e,t,r){"use strict";e.exports=a;var o=r(4687);function a(i,n){n||(n=i,i=window);var s=0,c=0,h=0,v={shift:!1,alt:!1,control:!1,meta:!1},p=!1;function T(f){var P=!1;return"altKey"in f&&(P=P||f.altKey!==v.alt,v.alt=!!f.altKey),"shiftKey"in f&&(P=P||f.shiftKey!==v.shift,v.shift=!!f.shiftKey),"ctrlKey"in f&&(P=P||f.ctrlKey!==v.control,v.control=!!f.ctrlKey),"metaKey"in f&&(P=P||f.metaKey!==v.meta,v.meta=!!f.metaKey),P}function l(f,P){var L=o.x(P),z=o.y(P);"buttons"in P&&(f=P.buttons|0),(f!==s||L!==c||z!==h||T(P))&&(s=f|0,c=L||0,h=z||0,n&&n(s,c,h,v))}function _(f){l(0,f)}function w(){(s||c||h||v.shift||v.alt||v.meta||v.control)&&(c=h=0,s=0,v.shift=v.alt=v.control=v.meta=!1,n&&n(0,0,0,v))}function S(f){T(f)&&n&&n(s,c,h,v)}function E(f){o.buttons(f)===0?l(0,f):l(s,f)}function m(f){l(s|o.buttons(f),f)}function b(f){l(s&~o.buttons(f),f)}function d(){p||(p=!0,i.addEventListener("mousemove",E),i.addEventListener("mousedown",m),i.addEventListener("mouseup",b),i.addEventListener("mouseleave",_),i.addEventListener("mouseenter",_),i.addEventListener("mouseout",_),i.addEventListener("mouseover",_),i.addEventListener("blur",w),i.addEventListener("keyup",S),i.addEventListener("keydown",S),i.addEventListener("keypress",S),i!==window&&(window.addEventListener("blur",w),window.addEventListener("keyup",S),window.addEventListener("keydown",S),window.addEventListener("keypress",S)))}function u(){p&&(p=!1,i.removeEventListener("mousemove",E),i.removeEventListener("mousedown",m),i.removeEventListener("mouseup",b),i.removeEventListener("mouseleave",_),i.removeEventListener("mouseenter",_),i.removeEventListener("mouseout",_),i.removeEventListener("mouseover",_),i.removeEventListener("blur",w),i.removeEventListener("keyup",S),i.removeEventListener("keydown",S),i.removeEventListener("keypress",S),i!==window&&(window.removeEventListener("blur",w),window.removeEventListener("keyup",S),window.removeEventListener("keydown",S),window.removeEventListener("keypress",S)))}d();var y={element:i};return Object.defineProperties(y,{enabled:{get:function(){return p},set:function(f){f?d():u()},enumerable:!0},buttons:{get:function(){return s},enumerable:!0},x:{get:function(){return c},enumerable:!0},y:{get:function(){return h},enumerable:!0},mods:{get:function(){return v},enumerable:!0}}),y}},24:function(e){var t={left:0,top:0};e.exports=r;function r(a,i,n){i=i||a.currentTarget||a.srcElement,Array.isArray(n)||(n=[0,0]);var s=a.clientX||0,c=a.clientY||0,h=o(i);return n[0]=s-h.left,n[1]=c-h.top,n}function o(a){return a===window||a===document||a===document.body?t:a.getBoundingClientRect()}},4687:function(e,t){"use strict";function r(n){if(typeof n=="object"){if("buttons"in n)return n.buttons;if("which"in n){var s=n.which;if(s===2)return 4;if(s===3)return 2;if(s>0)return 1<<s-1}else if("button"in n){var s=n.button;if(s===1)return 4;if(s===2)return 2;if(s>=0)return 1<<s}}return 0}t.buttons=r;function o(n){return n.target||n.srcElement||window}t.element=o;function a(n){if(typeof n=="object"){if("offsetX"in n)return n.offsetX;var s=o(n),c=s.getBoundingClientRect();return n.clientX-c.left}return 0}t.x=a;function i(n){if(typeof n=="object"){if("offsetY"in n)return n.offsetY;var s=o(n),c=s.getBoundingClientRect();return n.clientY-c.top}return 0}t.y=i},8512:function(e,t,r){"use strict";var o=r(665);e.exports=a;function a(i,n,s){typeof i=="function"&&(s=!!n,n=i,i=window);var c=o("ex",i),h=function(v){s&&v.preventDefault();var p=v.deltaX||0,T=v.deltaY||0,l=v.deltaZ||0,_=v.deltaMode,w=1;switch(_){case 1:w=c;break;case 2:w=window.innerHeight;break}if(p*=w,T*=w,l*=w,p||T||l)return n(p,T,l,v)};return i.addEventListener("wheel",h),h}},2640:function(e,t,r){"use strict";var o=r(1888);e.exports=n;var a={"false,0,1":function(c,h,v,p,T){return function(_,w,S,E){var m=_.shape[0]|0,b=_.shape[1]|0,d=_.data,u=_.offset|0,y=_.stride[0]|0,f=_.stride[1]|0,P=u,L,z=-y|0,F=0,B=-f|0,O=0,I=-y-f|0,N=0,U=y|0,W=f-y*m|0,Q=0,ue=0,se=0,he=2*m|0,G=p(he),$=p(he),J=0,Z=0,re=-1,ne=-1,j=0,ee=-m|0,ie=m|0,fe=0,be=-m-1|0,Ae=m-1|0,Be=0,Ie=0,Ze=0;for(Q=0;Q<m;++Q)G[J++]=v(d[P],w,S,E),P+=U;if(P+=W,b>0){if(ue=1,G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,Q=2;Q<m;++Q)L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,N,F,Be,j,w,S,E)),J+=1,P+=U;for(P+=W,J=0,Ze=re,re=ne,ne=Ze,Ze=ee,ee=ie,ie=Ze,Ze=be,be=Ae,Ae=Ze,ue=2;ue<b;++ue){if(G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E)),J+=1,P+=U,Q=2;Q<m;++Q)L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E),Be!==j&&h($[J+re],Ie,N,F,Be,j,w,S,E)),J+=1,P+=U;ue&1&&(J=0),Ze=re,re=ne,ne=Ze,Ze=ee,ee=ie,ie=Ze,Ze=be,be=Ae,Ae=Ze,P+=W}}T($),T(G)}},"false,1,0":function(c,h,v,p,T){return function(_,w,S,E){var m=_.shape[0]|0,b=_.shape[1]|0,d=_.data,u=_.offset|0,y=_.stride[0]|0,f=_.stride[1]|0,P=u,L,z=-y|0,F=0,B=-f|0,O=0,I=-y-f|0,N=0,U=f|0,W=y-f*b|0,Q=0,ue=0,se=0,he=2*b|0,G=p(he),$=p(he),J=0,Z=0,re=-1,ne=-1,j=0,ee=-b|0,ie=b|0,fe=0,be=-b-1|0,Ae=b-1|0,Be=0,Ie=0,Ze=0;for(ue=0;ue<b;++ue)G[J++]=v(d[P],w,S,E),P+=U;if(P+=W,m>0){if(Q=1,G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,ue=2;ue<b;++ue)L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,O,N,j,Be,w,S,E)),J+=1,P+=U;for(P+=W,J=0,Ze=ee,ee=ie,ie=Ze,Ze=re,re=ne,ne=Ze,Ze=be,be=Ae,Ae=Ze,Q=2;Q<m;++Q){if(G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U,ue=2;ue<b;++ue)L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,O,N,j,Be,w,S,E),Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U;Q&1&&(J=0),Ze=ee,ee=ie,ie=Ze,Ze=re,re=ne,ne=Ze,Ze=be,be=Ae,Ae=Ze,P+=W}}T($),T(G)}}};function i(s,c,h,v,p,T){var l=[T,p].join(","),_=a[l];return _(s,c,h,o.mallocUint32,o.freeUint32)}function n(s){function c(w){throw new Error("ndarray-extract-contour: "+w)}typeof s!="object"&&c("Must specify arguments");var h=s.order;Array.isArray(h)||c("Must specify order");var v=s.arrayArguments||1;v<1&&c("Must have at least one array argument");var p=s.scalarArguments||0;p<0&&c("Scalar arg count must be > 0"),typeof s.vertex!="function"&&c("Must specify vertex creation function"),typeof s.cell!="function"&&c("Must specify cell creation function"),typeof s.phase!="function"&&c("Must specify phase function");for(var T=s.getters||[],l=new Array(v),_=0;_<v;++_)T.indexOf(_)>=0?l[_]=!0:l[_]=!1;return i(s.vertex,s.cell,s.phase,p,h,l)}},6199:function(e,t,r){"use strict";var o=r(1338),a={zero:function(E,m,b,d){var u=E[0],y=b[0];d|=0;var f=0,P=y;for(f=0;f<u;++f)m[d]=0,d+=P},fdTemplate1:function(E,m,b,d,u,y,f){var P=E[0],L=b[0],z=y[0],F=-1*L,B=L;d|=0,f|=0;var O=0,I=L,N=z;for(O=0;O<P;++O)u[f]=.5*(m[d+F]-m[d+B]),d+=I,f+=N},fdTemplate2:function(E,m,b,d,u,y,f,P,L,z){var F=E[0],B=E[1],O=b[0],I=b[1],N=y[0],U=y[1],W=L[0],Q=L[1],ue=-1*O,se=O,he=-1*I,G=I;d|=0,f|=0,z|=0;var $=0,J=0,Z=I,re=O-B*I,ne=U,j=N-B*U,ee=Q,ie=W-B*Q;for(J=0;J<F;++J){for($=0;$<B;++$)u[f]=.5*(m[d+ue]-m[d+se]),P[z]=.5*(m[d+he]-m[d+G]),d+=Z,f+=ne,z+=ee;d+=re,f+=j,z+=ie}}},i={cdiff:function(E){var m={};return function(d,u,y){var f=d.dtype,P=d.order,L=u.dtype,z=u.order,F=y.dtype,B=y.order,O=[f,P.join(),L,z.join(),F,B.join()].join(),I=m[O];return I||(m[O]=I=E([f,P,L,z,F,B])),I(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0,y.data,y.stride,y.offset|0)}},zero:function(E){var m={};return function(d){var u=d.dtype,y=d.order,f=[u,y.join()].join(),P=m[f];return P||(m[f]=P=E([u,y])),P(d.shape.slice(0),d.data,d.stride,d.offset|0)}},fdTemplate1:function(E){var m={};return function(d,u){var y=d.dtype,f=d.order,P=u.dtype,L=u.order,z=[y,f.join(),P,L.join()].join(),F=m[z];return F||(m[z]=F=E([y,f,P,L])),F(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0)}},fdTemplate2:function(E){var m={};return function(d,u,y){var f=d.dtype,P=d.order,L=u.dtype,z=u.order,F=y.dtype,B=y.order,O=[f,P.join(),L,z.join(),F,B.join()].join(),I=m[O];return I||(m[O]=I=E([f,P,L,z,F,B])),I(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0,y.data,y.stride,y.offset|0)}}};function n(E){var m=i[E.funcName];return m(s.bind(void 0,E))}function s(E){return a[E.funcName]}function c(E){return n({funcName:E.funcName})}var h={},v={},p={body:"",args:[],thisVars:[],localVars:[]},T=c({funcName:"cdiff"}),l=c({funcName:"zero"});function _(E){return E in h?h[E]:h[E]=c({funcName:"fdTemplate"+E})}function w(E,m,b,d){return function(u,y){var f=y.shape.slice();return f[0]>2&&f[1]>2&&d(y.pick(-1,-1).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,0).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,1).lo(1,1).hi(f[0]-2,f[1]-2)),f[1]>2&&(b(y.pick(0,-1).lo(1).hi(f[1]-2),u.pick(0,-1,1).lo(1).hi(f[1]-2)),m(u.pick(0,-1,0).lo(1).hi(f[1]-2))),f[1]>2&&(b(y.pick(f[0]-1,-1).lo(1).hi(f[1]-2),u.pick(f[0]-1,-1,1).lo(1).hi(f[1]-2)),m(u.pick(f[0]-1,-1,0).lo(1).hi(f[1]-2))),f[0]>2&&(b(y.pick(-1,0).lo(1).hi(f[0]-2),u.pick(-1,0,0).lo(1).hi(f[0]-2)),m(u.pick(-1,0,1).lo(1).hi(f[0]-2))),f[0]>2&&(b(y.pick(-1,f[1]-1).lo(1).hi(f[0]-2),u.pick(-1,f[1]-1,0).lo(1).hi(f[0]-2)),m(u.pick(-1,f[1]-1,1).lo(1).hi(f[0]-2))),u.set(0,0,0,0),u.set(0,0,1,0),u.set(f[0]-1,0,0,0),u.set(f[0]-1,0,1,0),u.set(0,f[1]-1,0,0),u.set(0,f[1]-1,1,0),u.set(f[0]-1,f[1]-1,0,0),u.set(f[0]-1,f[1]-1,1,0),u}}function S(E){var m=E.join(),f=v[m];if(f)return f;for(var b=E.length,d=[T,l],u=1;u<=b;++u)d.push(_(u));var y=w,f=y.apply(void 0,d);return v[m]=f,f}e.exports=function(m,b,d){if(Array.isArray(d)||(typeof d=="string"?d=o(b.dimension,d):d=o(b.dimension,"clamp")),b.size===0)return m;if(b.dimension===0)return m.set(0),m;var u=S(d);return u(m,b)}},4317:function(e){"use strict";function t(n,s){var c=Math.floor(s),h=s-c,v=0<=c&&c<n.shape[0],p=0<=c+1&&c+1<n.shape[0],T=v?+n.get(c):0,l=p?+n.get(c+1):0;return(1-h)*T+h*l}function r(n,s,c){var h=Math.floor(s),v=s-h,p=0<=h&&h<n.shape[0],T=0<=h+1&&h+1<n.shape[0],l=Math.floor(c),_=c-l,w=0<=l&&l<n.shape[1],S=0<=l+1&&l+1<n.shape[1],E=p&&w?n.get(h,l):0,m=p&&S?n.get(h,l+1):0,b=T&&w?n.get(h+1,l):0,d=T&&S?n.get(h+1,l+1):0;return(1-_)*((1-v)*E+v*b)+_*((1-v)*m+v*d)}function o(n,s,c,h){var v=Math.floor(s),p=s-v,T=0<=v&&v<n.shape[0],l=0<=v+1&&v+1<n.shape[0],_=Math.floor(c),w=c-_,S=0<=_&&_<n.shape[1],E=0<=_+1&&_+1<n.shape[1],m=Math.floor(h),b=h-m,d=0<=m&&m<n.shape[2],u=0<=m+1&&m+1<n.shape[2],y=T&&S&&d?n.get(v,_,m):0,f=T&&E&&d?n.get(v,_+1,m):0,P=l&&S&&d?n.get(v+1,_,m):0,L=l&&E&&d?n.get(v+1,_+1,m):0,z=T&&S&&u?n.get(v,_,m+1):0,F=T&&E&&u?n.get(v,_+1,m+1):0,B=l&&S&&u?n.get(v+1,_,m+1):0,O=l&&E&&u?n.get(v+1,_+1,m+1):0;return(1-b)*((1-w)*((1-p)*y+p*P)+w*((1-p)*f+p*L))+b*((1-w)*((1-p)*z+p*B)+w*((1-p)*F+p*O))}function a(n){var s=n.shape.length|0,c=new Array(s),h=new Array(s),v=new Array(s),p=new Array(s),T,l;for(T=0;T<s;++T)l=+arguments[T+1],c[T]=Math.floor(l),h[T]=l-c[T],v[T]=0<=c[T]&&c[T]<n.shape[T],p[T]=0<=c[T]+1&&c[T]+1<n.shape[T];var _=0,w,S,E;e:for(T=0;T<1<<s;++T){for(S=1,E=n.offset,w=0;w<s;++w)if(T&1<<w){if(!p[w])continue e;S*=h[w],E+=n.stride[w]*(c[w]+1)}else{if(!v[w])continue e;S*=1-h[w],E+=n.stride[w]*c[w]}_+=S*n.data[E]}return _}function i(n,s,c,h){switch(n.shape.length){case 0:return 0;case 1:return t(n,s);case 2:return r(n,s,c);case 3:return o(n,s,c,h);default:return a.apply(void 0,arguments)}}e.exports=i,e.exports.d1=t,e.exports.d2=r,e.exports.d3=o},5298:function(e,t){"use strict";var r={"float64,2,1,0":function(){return function(v,p,T,l,_){var w=v[0],S=v[1],E=v[2],m=T[0],b=T[1],d=T[2];l|=0;var u=0,y=0,f=0,P=d,L=b-E*d,z=m-S*b;for(f=0;f<w;++f){for(y=0;y<S;++y){for(u=0;u<E;++u)p[l]/=_,l+=P;l+=L}l+=z}}},"uint8,2,0,1,float64,2,1,0":function(){return function(v,p,T,l,_,w,S,E){var m=v[0],b=v[1],d=v[2],u=T[0],y=T[1],f=T[2],P=w[0],L=w[1],z=w[2];l|=0,S|=0;for(var F=l,B=S,O=v[0]|0;O>0;){O<64?(m=O,O=0):(m=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(b=I,I=0):(b=64,I-=64),l=F+O*u+I*y,S=B+O*P+I*L;var N=0,U=0,W=0,Q=f,ue=u-d*f,se=y-m*u,he=z,G=P-d*z,$=L-m*P;for(W=0;W<b;++W){for(U=0;U<m;++U){for(N=0;N<d;++N)p[l]=_[S]*E,l+=Q,S+=he;l+=ue,S+=G}l+=se,S+=$}}}}},"float32,1,0,float32,1,0":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=T[0],d=T[1],u=w[0],y=w[1];l|=0,S|=0;var f=0,P=0,L=d,z=b-m*d,F=y,B=u-m*y;for(P=0;P<E;++P){for(f=0;f<m;++f)p[l]=_[S],l+=L,S+=F;l+=z,S+=B}}},"float32,1,0,float32,0,1":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=T[0],d=T[1],u=w[0],y=w[1];l|=0,S|=0;for(var f=l,P=S,L=v[1]|0;L>0;){L<64?(m=L,L=0):(m=64,L-=64);for(var z=v[0]|0;z>0;){z<64?(E=z,z=0):(E=64,z-=64),l=f+L*d+z*b,S=P+L*y+z*u;var F=0,B=0,O=d,I=b-m*d,N=y,U=u-m*y;for(B=0;B<E;++B){for(F=0;F<m;++F)p[l]=_[S],l+=O,S+=N;l+=I,S+=U}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=v[2],d=T[0],u=T[1],y=T[2],f=w[0],P=w[1],L=w[2];l|=0,S|=0;for(var z=l,F=S,B=v[2]|0;B>0;){B<64?(b=B,B=0):(b=64,B-=64);for(var O=v[0]|0;O>0;){O<64?(E=O,O=0):(E=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(m=I,I=0):(m=64,I-=64),l=z+B*y+O*d+I*u,S=F+B*L+O*f+I*P;var N=0,U=0,W=0,Q=y,ue=d-b*y,se=u-E*d,he=L,G=f-b*L,$=P-E*f;for(W=0;W<m;++W){for(U=0;U<E;++U){for(N=0;N<b;++N)p[l]=_[S],l+=Q,S+=he;l+=ue,S+=G}l+=se,S+=$}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=v[2],d=T[0],u=T[1],y=T[2],f=w[0],P=w[1],L=w[2];l|=0,S|=0;var z=0,F=0,B=0,O=y,I=d-b*y,N=u-E*d,U=L,W=f-b*L,Q=P-E*f;for(B=0;B<m;++B){for(F=0;F<E;++F){for(z=0;z<b;++z)p[l]=_[S],l+=O,S+=U;l+=I,S+=W}l+=N,S+=Q}}}};function o(h,v){var p=v.join(","),T=r[p];return T()}var a=o,i={mul:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=_.dtype,d=_.order,u=[w,S.join(),E,m.join(),b,d.join()].join(),y=v[u];return y||(v[u]=y=h([w,S,E,m,b,d])),y(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_.data,_.stride,_.offset|0)}},muls:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=[w,S.join(),E,m.join()].join(),d=v[b];return d||(v[b]=d=h([w,S,E,m])),d(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_)}},mulseq:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=[_,w.join()].join(),E=v[S];return E||(v[S]=E=h([_,w])),E(T.shape.slice(0),T.data,T.stride,T.offset|0,l)}},div:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=_.dtype,d=_.order,u=[w,S.join(),E,m.join(),b,d.join()].join(),y=v[u];return y||(v[u]=y=h([w,S,E,m,b,d])),y(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_.data,_.stride,_.offset|0)}},divs:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=[w,S.join(),E,m.join()].join(),d=v[b];return d||(v[b]=d=h([w,S,E,m])),d(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_)}},divseq:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=[_,w.join()].join(),E=v[S];return E||(v[S]=E=h([_,w])),E(T.shape.slice(0),T.data,T.stride,T.offset|0,l)}},assign:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=l.dtype,E=l.order,m=[_,w.join(),S,E.join()].join(),b=v[m];return b||(v[m]=b=h([_,w,S,E])),b(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0)}}};function n(h){var v=i[h.funcName];return v(a.bind(void 0,h))}function s(h){return n({funcName:h.funcName})}var c={mul:"*",div:"/"};(function(){for(var h in c)t[h]=s({funcName:h}),t[h+"s"]=s({funcName:h+"s"}),t[h+"seq"]=s({funcName:h+"seq"})})(),t.assign=s({funcName:"assign"})},9994:function(e,t,r){"use strict";var o=r(9618),a=r(8277);e.exports=function(n,s){for(var c=[],h=n,v=1;Array.isArray(h);)c.push(h.length),v*=h.length,h=h[0];return c.length===0?o():(s||(s=o(new Float64Array(v),c)),a(s,n),s)}},8277:function(e){"use strict";function t(){return function(s,c,h,v,p){var T=s[0],l=s[1],_=s[2],w=h[0],S=h[1],E=h[2],m=[0,0,0];v|=0;var b=0,d=0,u=0,y=E,f=S-_*E,P=w-l*S;for(u=0;u<T;++u){for(d=0;d<l;++d){for(b=0;b<_;++b){{var L=p,z;for(z=0;z<m.length-1;++z)L=L[m[z]];c[v]=L[m[m.length-1]]}v+=y,++m[2]}v+=f,m[2]-=_,++m[1]}v+=P,m[1]-=l,++m[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p){var T=v.dtype,l=v.order,_=[T,l.join()].join(),w=c[_];return w||(c[_]=w=s([T,l])),w(v.shape.slice(0),v.data,v.stride,v.offset|0,p)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"convert"})},7640:function(e,t,r){"use strict";var o=r(1888);function a(p){switch(p){case"uint32":return[o.mallocUint32,o.freeUint32];default:return null}}var i={"uint32,1,0":function(p,T){return function(_,w,S,E,m,b,d,u,y,f,P){var L,z,F,B=_*m+E,O,I=p(u),N,U,W,Q;for(L=_+1;L<=w;++L){for(z=L,B+=m,F=B,N=0,U=B,O=0;O<u;++O)I[N++]=S[U],U+=y;e:for(;z-- >_;){N=0,U=F-m;t:for(O=0;O<u;++O){if(W=S[U],Q=I[N],W<Q)break e;if(W>Q)break t;U+=f,N+=P}for(N=F,U=F-m,O=0;O<u;++O)S[N]=S[U],N+=y,U+=y;F-=m}for(N=F,U=0,O=0;O<u;++O)S[N]=I[U++],N+=y}T(I)}}};function n(p,T){var l=a(T),_=[T,p].join(","),w=i[_];return l?w(l[0],l[1]):w()}var s={"uint32,1,0":function(p,T,l){return function _(w,S,E,m,b,d,u,y,f,P,L){var z=(S-w+1)/6|0,F=w+z,B=S-z,O=w+S>>1,I=O-z,N=O+z,U=F,W=I,Q=O,ue=N,se=B,he=w+1,G=S-1,$=!0,J,Z,re,ne,j,ee,ie,fe,be,Ae=0,Be=0,Ie=0,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur=y,ar=T(ur),Cr=T(ur);at=b*U,it=b*W,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=W,W=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*ue,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*Q,it=b*ue,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=Q,Q=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}for(at=b*U,it=b*W,et=b*Q,lt=b*ue,Me=b*se,ge=b*F,ce=b*O,ze=b*B,Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,tt=lt+jt,nt=Me+jt,Qe=ge+jt,Ct=ce+jt,St=ze+jt,ar[Ot]=E[fe],Cr[Ot]=E[tt],$=$&&ar[Ot]===Cr[Ot],re=E[ie],ne=E[be],j=E[nt],E[Qe]=re,E[Ct]=ne,E[St]=j,++Ot,jt+=f;for(at=b*I,it=b*w,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],jt+=f;for(at=b*N,it=b*S,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],jt+=f;if($)for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie!==0)if(Ie<0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie>0)G--;else if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G;break}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G;break}}}else for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ae=E[ie]-ar[Ot],Ae!==0)break e;Ot+=L,ie+=P}if(Ae<0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else{ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Be=E[ie]-Cr[Ot],Be!==0)break e;Ot+=L,ie+=P}if(Be>0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-Cr[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie>0){if(--G<ee)break;continue}else{ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G}break}}}}for(at=b*w,it=b*(he-1),Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],E[fe]=ar[Ot],++Ot,jt+=f;for(at=b*S,it=b*(G+1),Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],E[fe]=Cr[Ot],++Ot,jt+=f;if(he-2-w<=32?p(w,he-2,E,m,b,d,u,y,f,P,L):_(w,he-2,E,m,b,d,u,y,f,P,L),S-(G+2)<=32?p(G+2,S,E,m,b,d,u,y,f,P,L):_(G+2,S,E,m,b,d,u,y,f,P,L),$){l(ar),l(Cr);return}if(he<F&&G>B){e:for(;;){for(ie=m+he*b,Ot=0,jt=m,Ze=0;Ze<y;++Ze){if(E[ie]!==ar[Ot])break e;++Ot,ie+=f}++he}e:for(;;){for(ie=m+G*b,Ot=0,jt=m,Ze=0;Ze<y;++Ze){if(E[ie]!==Cr[Ot])break e;++Ot,ie+=f}--G}for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ae=E[ie]-ar[Ot],Ae!==0)break e;Ot+=L,ie+=P}if(Ae===0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else{ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Be=E[ie]-Cr[Ot],Be!==0)break e;Ot+=L,ie+=P}if(Be===0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-Cr[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie===0){if(--G<ee)break;continue}else{ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G}break}}}}}l(ar),l(Cr),G-he<=32?p(he,G,E,m,b,d,u,y,f,P,L):_(he,G,E,m,b,d,u,y,f,P,L)}}};function c(p,T,l){var _=a(T),w=[T,p].join(","),S=s[w];return p.length>1&&_?S(l,_[0],_[1]):S(l)}var h={"uint32,1,0":function(p,T){return function(l){var _=l.data,w=l.offset|0,S=l.shape,E=l.stride,m=E[0]|0,b=S[0]|0,d=E[1]|0,u=S[1]|0,y=d,f=d,P=1;b<=32?p(0,b-1,_,w,m,d,b,u,y,f,P):T(0,b-1,_,w,m,d,b,u,y,f,P)}}};function v(p,T){var l=[T,p].join(","),_=h[l],w=n(p,T),S=c(p,T,w);return _(w,S)}e.exports=v},446:function(e,t,r){"use strict";var o=r(7640),a={};function i(n){var s=n.order,c=n.dtype,h=[s,c],v=h.join(":"),p=a[v];return p||(a[v]=p=o(s,c)),p(n),n}e.exports=i},9618:function(e,t,r){var o=r(7163),a=typeof Float64Array<"u";function i(T,l){return T[0]-l[0]}function n(){var T=this.stride,l=new Array(T.length),_;for(_=0;_<l.length;++_)l[_]=[Math.abs(T[_]),_];l.sort(i);var w=new Array(l.length);for(_=0;_<w.length;++_)w[_]=l[_][1];return w}var s={T:function(T){function l(w){this.data=w}var _=l.prototype;return _.dtype=T,_.index=function(){return-1},_.size=0,_.dimension=-1,_.shape=_.stride=_.order=[],_.lo=_.hi=_.transpose=_.step=function(){return new l(this.data)},_.get=_.set=function(){},_.pick=function(){return null},function(S){return new l(S)}},0:function(T,l){function _(S,E){this.data=S,this.offset=E}var w=_.prototype;return w.dtype=T,w.index=function(){return this.offset},w.dimension=0,w.size=1,w.shape=w.stride=w.order=[],w.lo=w.hi=w.transpose=w.step=function(){return new _(this.data,this.offset)},w.pick=function(){return l(this.data)},w.valueOf=w.get=function(){return T==="generic"?this.data.get(this.offset):this.data[this.offset]},w.set=function(E){return T==="generic"?this.data.set(this.offset,E):this.data[this.offset]=E},function(E,m,b,d){return new _(E,d)}},1:function(T,l,_){function w(E,m,b,d){this.data=E,this.shape=[m],this.stride=[b],this.offset=d|0}var S=w.prototype;return S.dtype=T,S.dimension=1,Object.defineProperty(S,"size",{get:function(){return this.shape[0]}}),S.order=[0],S.set=function(m,b){return T==="generic"?this.data.set(this.offset+this.stride[0]*m,b):this.data[this.offset+this.stride[0]*m]=b},S.get=function(m){return T==="generic"?this.data.get(this.offset+this.stride[0]*m):this.data[this.offset+this.stride[0]*m]},S.index=function(m){return this.offset+this.stride[0]*m},S.hi=function(m){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,this.stride[0],this.offset)},S.lo=function(m){var b=this.offset,d=0,u=this.shape[0],y=this.stride[0];return typeof m=="number"&&m>=0&&(d=m|0,b+=y*d,u-=d),new w(this.data,u,y,b)},S.step=function(m){var b=this.shape[0],d=this.stride[0],u=this.offset,y=0,f=Math.ceil;return typeof m=="number"&&(y=m|0,y<0?(u+=d*(b-1),b=f(-b/y)):b=f(b/y),d*=y),new w(this.data,b,d,u)},S.transpose=function(m){m=m===void 0?0:m|0;var b=this.shape,d=this.stride;return new w(this.data,b[m],d[m],this.offset)},S.pick=function(m){var b=[],d=[],u=this.offset;typeof m=="number"&&m>=0?u=u+this.stride[0]*m|0:(b.push(this.shape[0]),d.push(this.stride[0]));var y=l[b.length+1];return y(this.data,b,d,u)},function(m,b,d,u){return new w(m,b[0],d[0],u)}},2:function(T,l,_){function w(E,m,b,d,u,y){this.data=E,this.shape=[m,b],this.stride=[d,u],this.offset=y|0}var S=w.prototype;return S.dtype=T,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(m,b,d){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b,d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]=d},S.get=function(m,b){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]},S.index=function(m,b){return this.offset+this.stride[0]*m+this.stride[1]*b},S.hi=function(m,b){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(m,b){var d=this.offset,u=0,y=this.shape[0],f=this.shape[1],P=this.stride[0],L=this.stride[1];return typeof m=="number"&&m>=0&&(u=m|0,d+=P*u,y-=u),typeof b=="number"&&b>=0&&(u=b|0,d+=L*u,f-=u),new w(this.data,y,f,P,L,d)},S.step=function(m,b){var d=this.shape[0],u=this.shape[1],y=this.stride[0],f=this.stride[1],P=this.offset,L=0,z=Math.ceil;return typeof m=="number"&&(L=m|0,L<0?(P+=y*(d-1),d=z(-d/L)):d=z(d/L),y*=L),typeof b=="number"&&(L=b|0,L<0?(P+=f*(u-1),u=z(-u/L)):u=z(u/L),f*=L),new w(this.data,d,u,y,f,P)},S.transpose=function(m,b){m=m===void 0?0:m|0,b=b===void 0?1:b|0;var d=this.shape,u=this.stride;return new w(this.data,d[m],d[b],u[m],u[b],this.offset)},S.pick=function(m,b){var d=[],u=[],y=this.offset;typeof m=="number"&&m>=0?y=y+this.stride[0]*m|0:(d.push(this.shape[0]),u.push(this.stride[0])),typeof b=="number"&&b>=0?y=y+this.stride[1]*b|0:(d.push(this.shape[1]),u.push(this.stride[1]));var f=l[d.length+1];return f(this.data,d,u,y)},function(m,b,d,u){return new w(m,b[0],b[1],d[0],d[1],u)}},3:function(T,l,_){function w(E,m,b,d,u,y,f,P){this.data=E,this.shape=[m,b,d],this.stride=[u,y,f],this.offset=P|0}var S=w.prototype;return S.dtype=T,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var m=Math.abs(this.stride[0]),b=Math.abs(this.stride[1]),d=Math.abs(this.stride[2]);return m>b?b>d?[2,1,0]:m>d?[1,2,0]:[1,0,2]:m>d?[2,0,1]:d>b?[0,1,2]:[0,2,1]}}),S.set=function(m,b,d,u){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d,u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]=u},S.get=function(m,b,d){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]},S.index=function(m,b,d){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d},S.hi=function(m,b,d){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(m,b,d){var u=this.offset,y=0,f=this.shape[0],P=this.shape[1],L=this.shape[2],z=this.stride[0],F=this.stride[1],B=this.stride[2];return typeof m=="number"&&m>=0&&(y=m|0,u+=z*y,f-=y),typeof b=="number"&&b>=0&&(y=b|0,u+=F*y,P-=y),typeof d=="number"&&d>=0&&(y=d|0,u+=B*y,L-=y),new w(this.data,f,P,L,z,F,B,u)},S.step=function(m,b,d){var u=this.shape[0],y=this.shape[1],f=this.shape[2],P=this.stride[0],L=this.stride[1],z=this.stride[2],F=this.offset,B=0,O=Math.ceil;return typeof m=="number"&&(B=m|0,B<0?(F+=P*(u-1),u=O(-u/B)):u=O(u/B),P*=B),typeof b=="number"&&(B=b|0,B<0?(F+=L*(y-1),y=O(-y/B)):y=O(y/B),L*=B),typeof d=="number"&&(B=d|0,B<0?(F+=z*(f-1),f=O(-f/B)):f=O(f/B),z*=B),new w(this.data,u,y,f,P,L,z,F)},S.transpose=function(m,b,d){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0;var u=this.shape,y=this.stride;return new w(this.data,u[m],u[b],u[d],y[m],y[b],y[d],this.offset)},S.pick=function(m,b,d){var u=[],y=[],f=this.offset;typeof m=="number"&&m>=0?f=f+this.stride[0]*m|0:(u.push(this.shape[0]),y.push(this.stride[0])),typeof b=="number"&&b>=0?f=f+this.stride[1]*b|0:(u.push(this.shape[1]),y.push(this.stride[1])),typeof d=="number"&&d>=0?f=f+this.stride[2]*d|0:(u.push(this.shape[2]),y.push(this.stride[2]));var P=l[u.length+1];return P(this.data,u,y,f)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],d[0],d[1],d[2],u)}},4:function(T,l,_){function w(E,m,b,d,u,y,f,P,L,z){this.data=E,this.shape=[m,b,d,u],this.stride=[y,f,P,L],this.offset=z|0}var S=w.prototype;return S.dtype=T,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:_}),S.set=function(m,b,d,u,y){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u,y):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]=y},S.get=function(m,b,d,u){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]},S.index=function(m,b,d,u){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u},S.hi=function(m,b,d,u){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,typeof u!="number"||u<0?this.shape[3]:u|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(m,b,d,u){var y=this.offset,f=0,P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.stride[0],O=this.stride[1],I=this.stride[2],N=this.stride[3];return typeof m=="number"&&m>=0&&(f=m|0,y+=B*f,P-=f),typeof b=="number"&&b>=0&&(f=b|0,y+=O*f,L-=f),typeof d=="number"&&d>=0&&(f=d|0,y+=I*f,z-=f),typeof u=="number"&&u>=0&&(f=u|0,y+=N*f,F-=f),new w(this.data,P,L,z,F,B,O,I,N,y)},S.step=function(m,b,d,u){var y=this.shape[0],f=this.shape[1],P=this.shape[2],L=this.shape[3],z=this.stride[0],F=this.stride[1],B=this.stride[2],O=this.stride[3],I=this.offset,N=0,U=Math.ceil;return typeof m=="number"&&(N=m|0,N<0?(I+=z*(y-1),y=U(-y/N)):y=U(y/N),z*=N),typeof b=="number"&&(N=b|0,N<0?(I+=F*(f-1),f=U(-f/N)):f=U(f/N),F*=N),typeof d=="number"&&(N=d|0,N<0?(I+=B*(P-1),P=U(-P/N)):P=U(P/N),B*=N),typeof u=="number"&&(N=u|0,N<0?(I+=O*(L-1),L=U(-L/N)):L=U(L/N),O*=N),new w(this.data,y,f,P,L,z,F,B,O,I)},S.transpose=function(m,b,d,u){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0,u=u===void 0?3:u|0;var y=this.shape,f=this.stride;return new w(this.data,y[m],y[b],y[d],y[u],f[m],f[b],f[d],f[u],this.offset)},S.pick=function(m,b,d,u){var y=[],f=[],P=this.offset;typeof m=="number"&&m>=0?P=P+this.stride[0]*m|0:(y.push(this.shape[0]),f.push(this.stride[0])),typeof b=="number"&&b>=0?P=P+this.stride[1]*b|0:(y.push(this.shape[1]),f.push(this.stride[1])),typeof d=="number"&&d>=0?P=P+this.stride[2]*d|0:(y.push(this.shape[2]),f.push(this.stride[2])),typeof u=="number"&&u>=0?P=P+this.stride[3]*u|0:(y.push(this.shape[3]),f.push(this.stride[3]));var L=l[y.length+1];return L(this.data,y,f,P)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],b[3],d[0],d[1],d[2],d[3],u)}},5:function(l,_,w){function S(m,b,d,u,y,f,P,L,z,F,B,O){this.data=m,this.shape=[b,d,u,y,f],this.stride=[P,L,z,F,B],this.offset=O|0}var E=S.prototype;return E.dtype=l,E.dimension=5,Object.defineProperty(E,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(E,"order",{get:w}),E.set=function(b,d,u,y,f,P){return l==="generic"?this.data.set(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f,P):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]=P},E.get=function(b,d,u,y,f){return l==="generic"?this.data.get(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]},E.index=function(b,d,u,y,f){return this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f},E.hi=function(b,d,u,y,f){return new S(this.data,typeof b!="number"||b<0?this.shape[0]:b|0,typeof d!="number"||d<0?this.shape[1]:d|0,typeof u!="number"||u<0?this.shape[2]:u|0,typeof y!="number"||y<0?this.shape[3]:y|0,typeof f!="number"||f<0?this.shape[4]:f|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},E.lo=function(b,d,u,y,f){var P=this.offset,L=0,z=this.shape[0],F=this.shape[1],B=this.shape[2],O=this.shape[3],I=this.shape[4],N=this.stride[0],U=this.stride[1],W=this.stride[2],Q=this.stride[3],ue=this.stride[4];return typeof b=="number"&&b>=0&&(L=b|0,P+=N*L,z-=L),typeof d=="number"&&d>=0&&(L=d|0,P+=U*L,F-=L),typeof u=="number"&&u>=0&&(L=u|0,P+=W*L,B-=L),typeof y=="number"&&y>=0&&(L=y|0,P+=Q*L,O-=L),typeof f=="number"&&f>=0&&(L=f|0,P+=ue*L,I-=L),new S(this.data,z,F,B,O,I,N,U,W,Q,ue,P)},E.step=function(b,d,u,y,f){var P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.shape[4],O=this.stride[0],I=this.stride[1],N=this.stride[2],U=this.stride[3],W=this.stride[4],Q=this.offset,ue=0,se=Math.ceil;return typeof b=="number"&&(ue=b|0,ue<0?(Q+=O*(P-1),P=se(-P/ue)):P=se(P/ue),O*=ue),typeof d=="number"&&(ue=d|0,ue<0?(Q+=I*(L-1),L=se(-L/ue)):L=se(L/ue),I*=ue),typeof u=="number"&&(ue=u|0,ue<0?(Q+=N*(z-1),z=se(-z/ue)):z=se(z/ue),N*=ue),typeof y=="number"&&(ue=y|0,ue<0?(Q+=U*(F-1),F=se(-F/ue)):F=se(F/ue),U*=ue),typeof f=="number"&&(ue=f|0,ue<0?(Q+=W*(B-1),B=se(-B/ue)):B=se(B/ue),W*=ue),new S(this.data,P,L,z,F,B,O,I,N,U,W,Q)},E.transpose=function(b,d,u,y,f){b=b===void 0?0:b|0,d=d===void 0?1:d|0,u=u===void 0?2:u|0,y=y===void 0?3:y|0,f=f===void 0?4:f|0;var P=this.shape,L=this.stride;return new S(this.data,P[b],P[d],P[u],P[y],P[f],L[b],L[d],L[u],L[y],L[f],this.offset)},E.pick=function(b,d,u,y,f){var P=[],L=[],z=this.offset;typeof b=="number"&&b>=0?z=z+this.stride[0]*b|0:(P.push(this.shape[0]),L.push(this.stride[0])),typeof d=="number"&&d>=0?z=z+this.stride[1]*d|0:(P.push(this.shape[1]),L.push(this.stride[1])),typeof u=="number"&&u>=0?z=z+this.stride[2]*u|0:(P.push(this.shape[2]),L.push(this.stride[2])),typeof y=="number"&&y>=0?z=z+this.stride[3]*y|0:(P.push(this.shape[3]),L.push(this.stride[3])),typeof f=="number"&&f>=0?z=z+this.stride[4]*f|0:(P.push(this.shape[4]),L.push(this.stride[4]));var F=_[P.length+1];return F(this.data,P,L,z)},function(b,d,u,y){return new S(b,d[0],d[1],d[2],d[3],d[4],u[0],u[1],u[2],u[3],u[4],y)}}};function c(T,l){var _=l===-1?"T":String(l),w=s[_];return l===-1?w(T):l===0?w(T,v[T][0]):w(T,v[T],n)}function h(T){if(o(T))return"buffer";if(a)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function p(T,l,_,w){if(T===void 0){var u=v.array[0];return u([])}else typeof T=="number"&&(T=[T]);l===void 0&&(l=[T.length]);var S=l.length;if(_===void 0){_=new Array(S);for(var E=S-1,m=1;E>=0;--E)_[E]=m,m*=l[E]}if(w===void 0){w=0;for(var E=0;E<S;++E)_[E]<0&&(w-=(l[E]-1)*_[E])}for(var b=h(T),d=v[b];d.length<=S+1;)d.push(c(b,d.length-1));var u=d[S+1];return u(T,l,_,w)}e.exports=p},1278:function(e,t,r){"use strict";var o=r(2361),a=Math.pow(2,-1074),i=-1>>>0;e.exports=n;function n(s,c){if(isNaN(s)||isNaN(c))return NaN;if(s===c)return s;if(s===0)return c<0?-a:a;var h=o.hi(s),v=o.lo(s);return c>s==s>0?v===i?(h+=1,v=0):v+=1:v===0?(v=i,h-=1):v-=1,o.pack(v,h)}},8406:function(e,t){var r=1e-6,o=1e-6;t.vertexNormals=function(a,i,n){for(var s=i.length,c=new Array(s),h=n===void 0?r:n,v=0;v<s;++v)c[v]=[0,0,0];for(var v=0;v<a.length;++v)for(var p=a[v],T=0,l=p[p.length-1],_=p[0],w=0;w<p.length;++w){T=l,l=_,_=p[(w+1)%p.length];for(var S=i[T],E=i[l],m=i[_],b=new Array(3),d=0,u=new Array(3),y=0,f=0;f<3;++f)b[f]=S[f]-E[f],d+=b[f]*b[f],u[f]=m[f]-E[f],y+=u[f]*u[f];if(d*y>h)for(var P=c[l],L=1/Math.sqrt(d*y),f=0;f<3;++f){var z=(f+1)%3,F=(f+2)%3;P[f]+=L*(u[z]*b[F]-u[F]*b[z])}}for(var v=0;v<s;++v){for(var P=c[v],B=0,f=0;f<3;++f)B+=P[f]*P[f];if(B>h)for(var L=1/Math.sqrt(B),f=0;f<3;++f)P[f]*=L;else for(var f=0;f<3;++f)P[f]=0}return c},t.faceNormals=function(a,i,n){for(var s=a.length,c=new Array(s),h=n===void 0?o:n,v=0;v<s;++v){for(var p=a[v],T=new Array(3),l=0;l<3;++l)T[l]=i[p[l]];for(var _=new Array(3),w=new Array(3),l=0;l<3;++l)_[l]=T[1][l]-T[0][l],w[l]=T[2][l]-T[0][l];for(var S=new Array(3),E=0,l=0;l<3;++l){var m=(l+1)%3,b=(l+2)%3;S[l]=_[m]*w[b]-_[b]*w[m],E+=S[l]*S[l]}E>h?E=1/Math.sqrt(E):E=0;for(var l=0;l<3;++l)S[l]*=E;c[v]=S}return c}},4081:function(e){"use strict";e.exports=t;function t(r,o,a,i,n,s,c,h,v,p){var T=o+s+p;if(l>0){var l=Math.sqrt(T+1);r[0]=.5*(c-v)/l,r[1]=.5*(h-i)/l,r[2]=.5*(a-s)/l,r[3]=.5*l}else{var _=Math.max(o,s,p),l=Math.sqrt(2*_-T+1);o>=_?(r[0]=.5*l,r[1]=.5*(n+a)/l,r[2]=.5*(h+i)/l,r[3]=.5*(c-v)/l):s>=_?(r[0]=.5*(a+n)/l,r[1]=.5*l,r[2]=.5*(v+c)/l,r[3]=.5*(h-i)/l):(r[0]=.5*(i+h)/l,r[1]=.5*(c+v)/l,r[2]=.5*l,r[3]=.5*(a-n)/l)}return r}},9977:function(e,t,r){"use strict";e.exports=l;var o=r(9215),a=r(6582),i=r(7399),n=r(7608),s=r(4081);function c(_,w,S){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2))}function h(_,w,S,E){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2)+Math.pow(E,2))}function v(_,w){var S=w[0],E=w[1],m=w[2],b=w[3],d=h(S,E,m,b);d>1e-6?(_[0]=S/d,_[1]=E/d,_[2]=m/d,_[3]=b/d):(_[0]=_[1]=_[2]=0,_[3]=1)}function p(_,w,S){this.radius=o([S]),this.center=o(w),this.rotation=o(_),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=p.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(_){this.radius.curve(_),this.center.curve(_),this.rotation.curve(_);var w=this.computedRotation;v(w,w);var S=this.computedMatrix;i(S,w);var E=this.computedCenter,m=this.computedEye,b=this.computedUp,d=Math.exp(this.computedRadius[0]);m[0]=E[0]+d*S[2],m[1]=E[1]+d*S[6],m[2]=E[2]+d*S[10],b[0]=S[1],b[1]=S[5],b[2]=S[9];for(var u=0;u<3;++u){for(var y=0,f=0;f<3;++f)y+=S[u+4*f]*m[f];S[12+u]=-y}},T.getMatrix=function(_,w){this.recalcMatrix(_);var S=this.computedMatrix;if(w){for(var E=0;E<16;++E)w[E]=S[E];return w}return S},T.idle=function(_){this.center.idle(_),this.radius.idle(_),this.rotation.idle(_)},T.flush=function(_){this.center.flush(_),this.radius.flush(_),this.rotation.flush(_)},T.pan=function(_,w,S,E){w=w||0,S=S||0,E=E||0,this.recalcMatrix(_);var m=this.computedMatrix,b=m[1],d=m[5],u=m[9],y=c(b,d,u);b/=y,d/=y,u/=y;var f=m[0],P=m[4],L=m[8],z=f*b+P*d+L*u;f-=b*z,P-=d*z,L-=u*z;var F=c(f,P,L);f/=F,P/=F,L/=F;var B=m[2],O=m[6],I=m[10],N=B*b+O*d+I*u,U=B*f+O*P+I*L;B-=N*b+U*f,O-=N*d+U*P,I-=N*u+U*L;var W=c(B,O,I);B/=W,O/=W,I/=W;var Q=f*w+b*S,ue=P*w+d*S,se=L*w+u*S;this.center.move(_,Q,ue,se);var he=Math.exp(this.computedRadius[0]);he=Math.max(1e-4,he+E),this.radius.set(_,Math.log(he))},T.rotate=function(_,w,S,E){this.recalcMatrix(_),w=w||0,S=S||0;var m=this.computedMatrix,b=m[0],d=m[4],u=m[8],y=m[1],f=m[5],P=m[9],L=m[2],z=m[6],F=m[10],B=w*b+S*y,O=w*d+S*f,I=w*u+S*P,N=-(z*I-F*O),U=-(F*B-L*I),W=-(L*O-z*B),Q=Math.sqrt(Math.max(0,1-Math.pow(N,2)-Math.pow(U,2)-Math.pow(W,2))),ue=h(N,U,W,Q);ue>1e-6?(N/=ue,U/=ue,W/=ue,Q/=ue):(N=U=W=0,Q=1);var se=this.computedRotation,he=se[0],G=se[1],$=se[2],J=se[3],Z=he*Q+J*N+G*W-$*U,re=G*Q+J*U+$*N-he*W,ne=$*Q+J*W+he*U-G*N,j=J*Q-he*N-G*U-$*W;if(E){N=L,U=z,W=F;var ee=Math.sin(E)/c(N,U,W);N*=ee,U*=ee,W*=ee,Q=Math.cos(w),Z=Z*Q+j*N+re*W-ne*U,re=re*Q+j*U+ne*N-Z*W,ne=ne*Q+j*W+Z*U-re*N,j=j*Q-Z*N-re*U-ne*W}var ie=h(Z,re,ne,j);ie>1e-6?(Z/=ie,re/=ie,ne/=ie,j/=ie):(Z=re=ne=0,j=1),this.rotation.set(_,Z,re,ne,j)},T.lookAt=function(_,w,S,E){this.recalcMatrix(_),S=S||this.computedCenter,w=w||this.computedEye,E=E||this.computedUp;var m=this.computedMatrix;a(m,w,S,E);var b=this.computedRotation;s(b,m[0],m[1],m[2],m[4],m[5],m[6],m[8],m[9],m[10]),v(b,b),this.rotation.set(_,b[0],b[1],b[2],b[3]);for(var d=0,u=0;u<3;++u)d+=Math.pow(S[u]-w[u],2);this.radius.set(_,.5*Math.log(Math.max(d,1e-6))),this.center.set(_,S[0],S[1],S[2])},T.translate=function(_,w,S,E){this.center.move(_,w||0,S||0,E||0)},T.setMatrix=function(_,w){var S=this.computedRotation;s(S,w[0],w[1],w[2],w[4],w[5],w[6],w[8],w[9],w[10]),v(S,S),this.rotation.set(_,S[0],S[1],S[2],S[3]);var E=this.computedMatrix;n(E,w);var m=E[15];if(Math.abs(m)>1e-6){var b=E[12]/m,d=E[13]/m,u=E[14]/m;this.recalcMatrix(_);var y=Math.exp(this.computedRadius[0]);this.center.set(_,b-E[2]*y,d-E[6]*y,u-E[10]*y),this.radius.idle(_)}else this.center.idle(_),this.radius.idle(_)},T.setDistance=function(_,w){w>0&&this.radius.set(_,Math.log(w))},T.setDistanceLimits=function(_,w){_>0?_=Math.log(_):_=-1/0,w>0?w=Math.log(w):w=1/0,w=Math.max(w,_),this.radius.bounds[0][0]=_,this.radius.bounds[1][0]=w},T.getDistanceLimits=function(_){var w=this.radius.bounds;return _?(_[0]=Math.exp(w[0][0]),_[1]=Math.exp(w[1][0]),_):[Math.exp(w[0][0]),Math.exp(w[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(_){var w=this.lastT(),S=_.center;S&&this.center.set(w,S[0],S[1],S[2]);var E=_.rotation;E&&this.rotation.set(w,E[0],E[1],E[2],E[3]);var m=_.distance;m&&m>0&&this.radius.set(w,Math.log(m)),this.setDistanceLimits(_.zoomMin,_.zoomMax)};function l(_){_=_||{};var w=_.center||[0,0,0],S=_.rotation||[0,0,0,1],E=_.radius||1;w=[].slice.call(w,0,3),S=[].slice.call(S,0,4),v(S,S);var m=new p(S,w,Math.log(E));return m.setDistanceLimits(_.zoomMin,_.zoomMax),("eye"in _||"up"in _)&&m.lookAt(0,_.eye,_.center,_.up),m}},1371:function(e,t,r){"use strict";var o=r(3233);e.exports=function(i,n,s){return s=typeof s<"u"?s+"":" ",o(s,n)+i}},3202:function(e){e.exports=function(r,o){o||(o=[0,""]),r=String(r);var a=parseFloat(r,10);return o[0]=a,o[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",o}},3088:function(e,t,r){"use strict";e.exports=a;var o=r(3140);function a(i,n){for(var s=n.length|0,c=i.length,h=[new Array(s),new Array(s)],v=0;v<s;++v)h[0][v]=[],h[1][v]=[];for(var v=0;v<c;++v){var p=i[v];h[0][p[0]].push(p),h[1][p[1]].push(p)}for(var T=[],v=0;v<s;++v)h[0][v].length+h[1][v].length===0&&T.push([v]);function l(u,y){var f=h[y][u[y]];f.splice(f.indexOf(u),1)}function _(u,y,f){for(var P,L,z,F=0;F<2;++F)if(h[F][y].length>0){P=h[F][y][0],z=F;break}L=P[z^1];for(var B=0;B<2;++B)for(var O=h[B][y],I=0;I<O.length;++I){var N=O[I],U=N[B^1],W=o(n[u],n[y],n[L],n[U]);W>0&&(P=N,L=U,z=B)}return f||P&&l(P,z),L}function w(u,y){var f=h[y][u][0],P=[u];l(f,y);for(var L=f[y^1],z=y;;){for(;L!==u;)P.push(L),L=_(P[P.length-2],L,!1);if(h[0][u].length+h[1][u].length===0)break;var F=P[P.length-1],B=u,O=P[1],I=_(F,B,!0);if(o(n[F],n[B],n[O],n[I])<0)break;P.push(u),L=_(F,B)}return P}function S(u,y){return y[1]===y[y.length-1]}for(var v=0;v<s;++v)for(var E=0;E<2;++E){for(var m=[];h[E][v].length>0;){var b=h[0][v].length,d=w(v,E);S(m,d)?m.push.apply(m,d):(m.length>0&&T.push(m),m=d)}m.length>0&&T.push(m)}return T}},5609:function(e,t,r){"use strict";e.exports=a;var o=r(3134);function a(i,n){for(var s=o(i,n.length),c=new Array(n.length),h=new Array(n.length),v=[],p=0;p<n.length;++p){var T=s[p].length;h[p]=T,c[p]=!0,T<=1&&v.push(p)}for(;v.length>0;){var l=v.pop();c[l]=!1;for(var _=s[l],p=0;p<_.length;++p){var w=_[p];--h[w]===0&&v.push(w)}}for(var S=new Array(n.length),E=[],p=0;p<n.length;++p)if(c[p]){var l=E.length;S[p]=l,E.push(n[p])}else S[p]=-1;for(var m=[],p=0;p<i.length;++p){var b=i[p];c[b[0]]&&c[b[1]]&&m.push([S[b[0]],S[b[1]]])}return[m,E]}},2095:function(e,t,r){"use strict";e.exports=T;var o=r(3134),a=r(3088),i=r(5085),n=r(5250),s=r(8210),c=r(1682),h=r(5609);function v(l,_){for(var w=new Array(l),S=0;S<l;++S)w[S]=_;return w}function p(l){for(var _=new Array(l),w=0;w<l;++w)_[w]=[];return _}function T(l,_){var ee=h(l,_);l=ee[0],_=ee[1];for(var w=_.length,S=l.length,E=o(l,_.length),m=0;m<w;++m)if(E[m].length%2===1)throw new Error("planar-graph-to-polyline: graph must be manifold");var b=a(l,_);function d(Ze){for(var at=Ze.length,it=[0],et=0;et<at;++et){var lt=_[Ze[et]],Me=_[Ze[(et+1)%at]],ge=n(-lt[0],lt[1]),ce=n(-lt[0],Me[1]),ze=n(Me[0],lt[1]),tt=n(Me[0],Me[1]);it=s(it,s(s(ge,ce),s(ze,tt)))}return it[it.length-1]>0}b=b.filter(d);for(var u=b.length,y=new Array(u),f=new Array(u),m=0;m<u;++m){y[m]=m;var P=new Array(u),L=b[m].map(function(at){return _[at]}),z=i([L]),F=0;e:for(var B=0;B<u;++B)if(P[B]=0,m!==B){for(var O=b[B],I=O.length,N=0;N<I;++N){var U=z(_[O[N]]);if(U!==0){U<0&&(P[B]=1,F+=1);continue e}}P[B]=1,F+=1}f[m]=[F,m,P]}f.sort(function(Ze,at){return at[0]-Ze[0]});for(var m=0;m<u;++m)for(var P=f[m],W=P[1],Q=P[2],B=0;B<u;++B)Q[B]&&(y[B]=W);for(var ue=p(u),m=0;m<u;++m)ue[m].push(y[m]),ue[y[m]].push(m);for(var se={},he=v(w,!1),m=0;m<u;++m)for(var O=b[m],I=O.length,B=0;B<I;++B){var G=O[B],$=O[(B+1)%I],J=Math.min(G,$)+":"+Math.max(G,$);if(J in se){var Z=se[J];ue[Z].push(m),ue[m].push(Z),he[G]=he[$]=!0}else se[J]=m}function re(Ze){for(var at=Ze.length,it=0;it<at;++it)if(!he[Ze[it]])return!1;return!0}for(var ne=[],j=v(u,-1),m=0;m<u;++m)y[m]===m&&!re(b[m])?(ne.push(m),j[m]=0):j[m]=-1;for(var ee=[];ne.length>0;){var ie=ne.pop(),fe=ue[ie];c(fe,function(Ze,at){return Ze-at});var be=fe.length,Ae=j[ie],Be;if(Ae===0){var O=b[ie];Be=[O]}for(var m=0;m<be;++m){var Ie=fe[m];if(!(j[Ie]>=0)&&(j[Ie]=Ae^1,ne.push(Ie),Ae===0)){var O=b[Ie];re(O)||(O.reverse(),Be.push(O))}}Ae===0&&ee.push(Be)}return ee}},5085:function(e,t,r){e.exports=_;var o=r(3250)[3],a=r(4209),i=r(3352),n=r(2478);function s(){return!0}function c(w){return function(S,E){var m=w[S];return m?!!m.queryPoint(E,s):!1}}function h(w){for(var S={},E=0;E<w.length;++E){var m=w[E],b=m[0][0],d=m[0][1],u=m[1][1],y=[Math.min(d,u),Math.max(d,u)];b in S?S[b].push(y):S[b]=[y]}for(var f={},P=Object.keys(S),E=0;E<P.length;++E){var L=S[P[E]];f[P[E]]=i(L)}return c(f)}function v(w,S){return function(E){var m=n.le(S,E[0]);if(m<0)return 1;var b=w[m];if(!b)if(m>0&&S[m]===E[0])b=w[m-1];else return 1;for(var d=1;b;){var u=b.key,y=o(E,u[0],u[1]);if(u[0][0]<u[1][0])if(y<0)b=b.left;else if(y>0)d=-1,b=b.right;else return 0;else if(y>0)b=b.left;else if(y<0)d=1,b=b.right;else return 0}return d}}function p(w){return 1}function T(w){return function(E){return w(E[0],E[1])?0:1}}function l(w,S){return function(m){return w(m[0],m[1])?0:S(m)}}function _(w){for(var S=w.length,E=[],m=[],b=0,d=0;d<S;++d)for(var u=w[d],y=u.length,f=y-1,P=0;P<y;f=P++){var L=u[f],z=u[P];L[0]===z[0]?m.push([L,z]):E.push([L,z])}if(E.length===0)return m.length===0?p:T(h(m));var F=a(E),B=v(F.slabs,F.coordinates);return m.length===0?B:l(h(m),B)}},9346:function(e){"use strict";var t=new Float64Array(4),r=new Float64Array(4),o=new Float64Array(4);function a(i,n,s,c,h){t.length<c.length&&(t=new Float64Array(c.length),r=new Float64Array(c.length),o=new Float64Array(c.length));for(var v=0;v<c.length;++v)t[v]=i[v]-c[v],r[v]=n[v]-i[v],o[v]=s[v]-i[v];for(var p=0,T=0,l=0,_=0,w=0,S=0,v=0;v<c.length;++v){var E=r[v],m=o[v],b=t[v];p+=E*E,T+=E*m,l+=m*m,_+=b*E,w+=b*m,S+=b*b}var d=Math.abs(p*l-T*T),u=T*w-l*_,y=T*_-p*w,f;if(u+y<=d)if(u<0)y<0&&_<0?(y=0,-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S)):(u=0,w>=0?(y=0,f=S):-w>=l?(y=1,f=l+2*w+S):(y=-w/l,f=w*y+S));else if(y<0)y=0,_>=0?(u=0,f=S):-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S);else{var P=1/d;u*=P,y*=P,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S}else{var L,z,F,B;u<0?(L=T+_,z=l+w,z>L?(F=z-L,B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(u=0,z<=0?(y=1,f=l+2*w+S):w>=0?(y=0,f=S):(y=-w/l,f=w*y+S))):y<0?(L=T+w,z=p+_,z>L?(F=z-L,B=p-2*T+l,F>=B?(y=1,u=0,f=l+2*w+S):(y=F/B,u=1-y,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(y=0,z<=0?(u=1,f=p+2*_+S):_>=0?(u=0,f=S):(u=-_/p,f=_*u+S))):(F=l+w-T-_,F<=0?(u=0,y=1,f=l+2*w+S):(B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)))}for(var O=1-u-y,v=0;v<c.length;++v)h[v]=O*i[v]+u*n[v]+y*s[v];return f<0?0:f}e.exports=a},8648:function(e,t,r){e.exports=r(783)},2653:function(e,t,r){"use strict";var o=r(3865);e.exports=a;function a(i,n){for(var s=i.length,c=new Array(s),h=0;h<s;++h)c[h]=o(i[h],n[h]);return c}},5838:function(e,t,r){"use strict";e.exports=a;var o=r(7842);function a(i){for(var n=new Array(i.length),s=0;s<i.length;++s)n[s]=o(i[s]);return n}},8987:function(e,t,r){"use strict";var o=r(7842),a=r(6504);e.exports=i;function i(n,s){for(var c=o(s),h=n.length,v=new Array(h),p=0;p<h;++p)v[p]=a(n[p],c);return v}},544:function(e,t,r){"use strict";var o=r(5572);e.exports=a;function a(i,n){for(var s=i.length,c=new Array(s),h=0;h<s;++h)c[h]=o(i[h],n[h]);return c}},5771:function(e,t,r){"use strict";var o=r(8507),a=r(3788),i=r(2419);e.exports=n;function n(s){s.sort(a);for(var c=s.length,h=0,v=0;v<c;++v){var p=s[v],T=i(p);if(T!==0){if(h>0){var l=s[h-1];if(o(p,l)===0&&i(l)!==T){h-=1;continue}}s[h++]=p}}return s.length=h,s}},3233:function(e){"use strict";var t="",r;e.exports=o;function o(a,i){if(typeof a!="string")throw new TypeError("expected a string");if(i===1)return a;if(i===2)return a+a;var n=a.length*i;if(r!==a||typeof r>"u")r=a,t="";else if(t.length>=n)return t.substr(0,n);for(;n>t.length&&i>1;)i&1&&(t+=a),i>>=1,a+=a;return t+=a,t=t.substr(0,n),t}},3025:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(e){"use strict";e.exports=t;function t(r){for(var o=r.length,a=r[r.length-1],i=o,n=o-2;n>=0;--n){var s=a,c=r[n];a=s+c;var h=a-s,v=c-h;v&&(r[--i]=a,a=v)}for(var p=0,n=i;n<o;++n){var s=r[n],c=a;a=s+c;var h=a-s,v=c-h;v&&(r[p++]=v)}return r[p++]=a,r.length=p,r}},2962:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(3012),n=r(7004),s=6;function c(S,E,m,b){return function(u){return b(S(m(u[0][0],u[1][1]),m(-u[0][1],u[1][0])))}}function h(S,E,m,b){return function(u){return b(S(E(S(m(u[1][1],u[2][2]),m(-u[1][2],u[2][1])),u[0][0]),S(E(S(m(u[1][0],u[2][2]),m(-u[1][2],u[2][0])),-u[0][1]),E(S(m(u[1][0],u[2][1]),m(-u[1][1],u[2][0])),u[0][2]))))}}function v(S,E,m,b){return function(u){return b(S(S(E(S(E(S(m(u[2][2],u[3][3]),m(-u[2][3],u[3][2])),u[1][1]),S(E(S(m(u[2][1],u[3][3]),m(-u[2][3],u[3][1])),-u[1][2]),E(S(m(u[2][1],u[3][2]),m(-u[2][2],u[3][1])),u[1][3]))),u[0][0]),E(S(E(S(m(u[2][2],u[3][3]),m(-u[2][3],u[3][2])),u[1][0]),S(E(S(m(u[2][0],u[3][3]),m(-u[2][3],u[3][0])),-u[1][2]),E(S(m(u[2][0],u[3][2]),m(-u[2][2],u[3][0])),u[1][3]))),-u[0][1])),S(E(S(E(S(m(u[2][1],u[3][3]),m(-u[2][3],u[3][1])),u[1][0]),S(E(S(m(u[2][0],u[3][3]),m(-u[2][3],u[3][0])),-u[1][1]),E(S(m(u[2][0],u[3][1]),m(-u[2][1],u[3][0])),u[1][3]))),u[0][2]),E(S(E(S(m(u[2][1],u[3][2]),m(-u[2][2],u[3][1])),u[1][0]),S(E(S(m(u[2][0],u[3][2]),m(-u[2][2],u[3][0])),-u[1][1]),E(S(m(u[2][0],u[3][1]),m(-u[2][1],u[3][0])),u[1][2]))),-u[0][3]))))}}function p(S,E,m,b){return function(u){return b(S(S(E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][2]),S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),-u[2][3]),E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][4]))),u[1][1]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][3]),E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][4]))),-u[1][2])),S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][3]))),-u[1][4]))),u[0][0]),E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][2]),S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),-u[2][3]),E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][3]),E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),u[2][4]))),-u[1][2])),S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][3]))),-u[1][4]))),-u[0][1])),S(E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][3]),E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][3]),E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),u[2][4]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][3]))),-u[1][4]))),u[0][2]),S(E(S(S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][4]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][4]))),u[1][2]),E(S(E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][2]))),-u[1][4]))),-u[0][3]),E(S(S(E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][3]))),u[1][0]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][3]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][3]))),u[1][2]),E(S(E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][2]))),-u[1][3]))),u[0][4])))))}}function T(S){var E=S===2?c:S===3?h:S===4?v:S===5?p:void 0;return E(a,i,o,n)}var l=[function(){return[0]},function(E){return[E[0][0]]}];function _(S,E,m,b,d,u,y,f){return function(L){switch(L.length){case 0:return S(L);case 1:return E(L);case 2:return m(L);case 3:return b(L);case 4:return d(L);case 5:return u(L)}var z=y[L.length];return z||(z=y[L.length]=f(L.length)),z(L)}}function w(){for(;l.length<s;)l.push(T(l.length));e.exports=_.apply(void 0,l.concat([l,T]));for(var S=0;S<l.length;++S)e.exports[S]=l[S]}w()},1944:function(e,t,r){"use strict";var o=r(5250),a=r(8210);e.exports=i;function i(n,s){for(var c=o(n[0],s[0]),h=1;h<n.length;++h)c=a(c,o(n[h],s[h]));return c}},2646:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(8545),n=r(3012),s=6;function c(d){var u=d===3?T:d===4?l:d===5?_:w;return u(a,i,o,n)}function h(){return 0}function v(){return 0}function p(){return 0}function T(d,u,y,f){function P(L,z,F){var B=y(L[0],L[0]),O=f(B,z[0]),I=f(B,F[0]),N=y(z[0],z[0]),U=f(N,L[0]),W=f(N,F[0]),Q=y(F[0],F[0]),ue=f(Q,L[0]),se=f(Q,z[0]),he=d(u(se,W),u(U,O)),G=u(ue,I),$=u(he,G);return $[$.length-1]}return P}function l(d,u,y,f){function P(L,z,F,B){var O=d(y(L[0],L[0]),y(L[1],L[1])),I=f(O,z[0]),N=f(O,F[0]),U=f(O,B[0]),W=d(y(z[0],z[0]),y(z[1],z[1])),Q=f(W,L[0]),ue=f(W,F[0]),se=f(W,B[0]),he=d(y(F[0],F[0]),y(F[1],F[1])),G=f(he,L[0]),$=f(he,z[0]),J=f(he,B[0]),Z=d(y(B[0],B[0]),y(B[1],B[1])),re=f(Z,L[0]),ne=f(Z,z[0]),j=f(Z,F[0]),ee=d(d(f(u(j,J),z[1]),d(f(u(ne,se),-F[1]),f(u($,ue),B[1]))),d(f(u(ne,se),L[1]),d(f(u(re,U),-z[1]),f(u(Q,I),B[1])))),ie=d(d(f(u(j,J),L[1]),d(f(u(re,U),-F[1]),f(u(G,N),B[1]))),d(f(u($,ue),L[1]),d(f(u(G,N),-z[1]),f(u(Q,I),F[1])))),fe=u(ee,ie);return fe[fe.length-1]}return P}function _(d,u,y,f){function P(L,z,F,B,O){var I=d(y(L[0],L[0]),d(y(L[1],L[1]),y(L[2],L[2]))),N=f(I,z[0]),U=f(I,F[0]),W=f(I,B[0]),Q=f(I,O[0]),ue=d(y(z[0],z[0]),d(y(z[1],z[1]),y(z[2],z[2]))),se=f(ue,L[0]),he=f(ue,F[0]),G=f(ue,B[0]),$=f(ue,O[0]),J=d(y(F[0],F[0]),d(y(F[1],F[1]),y(F[2],F[2]))),Z=f(J,L[0]),re=f(J,z[0]),ne=f(J,B[0]),j=f(J,O[0]),ee=d(y(B[0],B[0]),d(y(B[1],B[1]),y(B[2],B[2]))),ie=f(ee,L[0]),fe=f(ee,z[0]),be=f(ee,F[0]),Ae=f(ee,O[0]),Be=d(y(O[0],O[0]),d(y(O[1],O[1]),y(O[2],O[2]))),Ie=f(Be,L[0]),Ze=f(Be,z[0]),at=f(Be,F[0]),it=f(Be,B[0]),et=d(d(d(f(d(f(u(it,Ae),F[1]),d(f(u(at,j),-B[1]),f(u(be,ne),O[1]))),z[2]),d(f(d(f(u(it,Ae),z[1]),d(f(u(Ze,$),-B[1]),f(u(fe,G),O[1]))),-F[2]),f(d(f(u(at,j),z[1]),d(f(u(Ze,$),-F[1]),f(u(re,he),O[1]))),B[2]))),d(f(d(f(u(be,ne),z[1]),d(f(u(fe,G),-F[1]),f(u(re,he),B[1]))),-O[2]),d(f(d(f(u(it,Ae),z[1]),d(f(u(Ze,$),-B[1]),f(u(fe,G),O[1]))),L[2]),f(d(f(u(it,Ae),L[1]),d(f(u(Ie,Q),-B[1]),f(u(ie,W),O[1]))),-z[2])))),d(d(f(d(f(u(Ze,$),L[1]),d(f(u(Ie,Q),-z[1]),f(u(se,N),O[1]))),B[2]),d(f(d(f(u(fe,G),L[1]),d(f(u(ie,W),-z[1]),f(u(se,N),B[1]))),-O[2]),f(d(f(u(be,ne),z[1]),d(f(u(fe,G),-F[1]),f(u(re,he),B[1]))),L[2]))),d(f(d(f(u(be,ne),L[1]),d(f(u(ie,W),-F[1]),f(u(Z,U),B[1]))),-z[2]),d(f(d(f(u(fe,G),L[1]),d(f(u(ie,W),-z[1]),f(u(se,N),B[1]))),F[2]),f(d(f(u(re,he),L[1]),d(f(u(Z,U),-z[1]),f(u(se,N),F[1]))),-B[2]))))),lt=d(d(d(f(d(f(u(it,Ae),F[1]),d(f(u(at,j),-B[1]),f(u(be,ne),O[1]))),L[2]),f(d(f(u(it,Ae),L[1]),d(f(u(Ie,Q),-B[1]),f(u(ie,W),O[1]))),-F[2])),d(f(d(f(u(at,j),L[1]),d(f(u(Ie,Q),-F[1]),f(u(Z,U),O[1]))),B[2]),f(d(f(u(be,ne),L[1]),d(f(u(ie,W),-F[1]),f(u(Z,U),B[1]))),-O[2]))),d(d(f(d(f(u(at,j),z[1]),d(f(u(Ze,$),-F[1]),f(u(re,he),O[1]))),L[2]),f(d(f(u(at,j),L[1]),d(f(u(Ie,Q),-F[1]),f(u(Z,U),O[1]))),-z[2])),d(f(d(f(u(Ze,$),L[1]),d(f(u(Ie,Q),-z[1]),f(u(se,N),O[1]))),F[2]),f(d(f(u(re,he),L[1]),d(f(u(Z,U),-z[1]),f(u(se,N),F[1]))),-O[2])))),Me=u(et,lt);return Me[Me.length-1]}return P}function w(d,u,y,f){function P(L,z,F,B,O,I){var N=d(d(y(L[0],L[0]),y(L[1],L[1])),d(y(L[2],L[2]),y(L[3],L[3]))),U=f(N,z[0]),W=f(N,F[0]),Q=f(N,B[0]),ue=f(N,O[0]),se=f(N,I[0]),he=d(d(y(z[0],z[0]),y(z[1],z[1])),d(y(z[2],z[2]),y(z[3],z[3]))),G=f(he,L[0]),$=f(he,F[0]),J=f(he,B[0]),Z=f(he,O[0]),re=f(he,I[0]),ne=d(d(y(F[0],F[0]),y(F[1],F[1])),d(y(F[2],F[2]),y(F[3],F[3]))),j=f(ne,L[0]),ee=f(ne,z[0]),ie=f(ne,B[0]),fe=f(ne,O[0]),be=f(ne,I[0]),Ae=d(d(y(B[0],B[0]),y(B[1],B[1])),d(y(B[2],B[2]),y(B[3],B[3]))),Be=f(Ae,L[0]),Ie=f(Ae,z[0]),Ze=f(Ae,F[0]),at=f(Ae,O[0]),it=f(Ae,I[0]),et=d(d(y(O[0],O[0]),y(O[1],O[1])),d(y(O[2],O[2]),y(O[3],O[3]))),lt=f(et,L[0]),Me=f(et,z[0]),ge=f(et,F[0]),ce=f(et,B[0]),ze=f(et,I[0]),tt=d(d(y(I[0],I[0]),y(I[1],I[1])),d(y(I[2],I[2]),y(I[3],I[3]))),nt=f(tt,L[0]),Qe=f(tt,z[0]),Ct=f(tt,F[0]),St=f(tt,B[0]),Ot=f(tt,O[0]),jt=d(d(d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),F[2]),f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),-B[2])),d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),O[2]),f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),-I[2]))),z[3]),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-B[2])),d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),O[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-I[2]))),-F[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),O[2]),f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),-I[2]))),B[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),z[2]),f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-I[2]))),-O[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),z[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-F[2])),d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-O[2]))),I[3])),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-B[2])),d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),O[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-I[2]))),L[3]),f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-B[2])),d(f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),O[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-I[2]))),-z[3])))),d(d(d(f(d(d(f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),O[2]),f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),-I[2]))),B[3]),f(d(d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-I[2]))),-O[3])),d(f(d(d(f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-O[2]))),I[3]),f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),z[2]),f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-I[2]))),L[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-I[2]))),-z[3]),f(d(d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-I[2]))),F[3])),d(f(d(d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),L[2]),f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-I[2]))),-B[3]),f(d(d(f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),L[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-z[2])),d(f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-B[2]))),I[3]))))),ur=d(d(d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),F[2]),f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),-B[2])),d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),O[2]),f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),-I[2]))),L[3]),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-B[2])),d(f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),O[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-I[2]))),-F[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),O[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-I[2]))),B[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-I[2]))),-O[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-F[2])),d(f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-O[2]))),I[3])),d(f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),O[2]),f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),-I[2]))),L[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),O[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-I[2]))),-z[3])))),d(d(d(f(d(d(f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),O[2]),f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),-I[2]))),F[3]),f(d(d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),L[2]),f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-I[2]))),-O[3])),d(f(d(d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),L[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-O[2]))),I[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),z[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-F[2])),d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-O[2]))),L[3]))),d(d(f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-F[2])),d(f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-O[2]))),-z[3]),f(d(d(f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-O[2]))),F[3])),d(f(d(d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),L[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-O[2]))),-B[3]),f(d(d(f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),L[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-z[2])),d(f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-B[2]))),O[3]))))),ar=u(jt,ur);return ar[ar.length-1]}return P}var S=[h,v,p];function E(d){var u=S[d.length];return u||(u=S[d.length]=c(d.length)),u.apply(void 0,d)}function m(d,u,y,f,P,L,z,F){function B(O,I,N,U,W,Q){switch(arguments.length){case 0:case 1:return 0;case 2:return f(O,I);case 3:return P(O,I,N);case 4:return L(O,I,N,U);case 5:return z(O,I,N,U,W);case 6:return F(O,I,N,U,W,Q)}for(var ue=new Array(arguments.length),se=0;se<arguments.length;++se)ue[se]=arguments[se];return d(ue)}return B}function b(){for(;S.length<=s;)S.push(c(S.length));e.exports=m.apply(void 0,[E].concat(S));for(var d=0;d<=s;++d)e.exports[d]=S[d]}b()},727:function(e,t,r){"use strict";var o=r(2962),a=6;function i(S){var E=S===2?c:S===3?h:S===4?v:S===5?p:T;return S<6?E(o[S]):E(o)}function n(){return[[0]]}function s(S,E){return[[E[0]],[S[0][0]]]}function c(S){return function(m,b){return[S([[+b[0],+m[0][1]],[+b[1],+m[1][1]]]),S([[+m[0][0],+b[0]],[+m[1][0],+b[1]]]),S(m)]}}function h(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2]],[+b[1],+m[1][1],+m[1][2]],[+b[2],+m[2][1],+m[2][2]]]),S([[+m[0][0],+b[0],+m[0][2]],[+m[1][0],+b[1],+m[1][2]],[+m[2][0],+b[2],+m[2][2]]]),S([[+m[0][0],+m[0][1],+b[0]],[+m[1][0],+m[1][1],+b[1]],[+m[2][0],+m[2][1],+b[2]]]),S(m)]}}function v(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3]],[+b[1],+m[1][1],+m[1][2],+m[1][3]],[+b[2],+m[2][1],+m[2][2],+m[2][3]],[+b[3],+m[3][1],+m[3][2],+m[3][3]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3]],[+m[1][0],+b[1],+m[1][2],+m[1][3]],[+m[2][0],+b[2],+m[2][2],+m[2][3]],[+m[3][0],+b[3],+m[3][2],+m[3][3]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3]],[+m[1][0],+m[1][1],+b[1],+m[1][3]],[+m[2][0],+m[2][1],+b[2],+m[2][3]],[+m[3][0],+m[3][1],+b[3],+m[3][3]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+b[3]]]),S(m)]}}function p(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3],+m[0][4]],[+b[1],+m[1][1],+m[1][2],+m[1][3],+m[1][4]],[+b[2],+m[2][1],+m[2][2],+m[2][3],+m[2][4]],[+b[3],+m[3][1],+m[3][2],+m[3][3],+m[3][4]],[+b[4],+m[4][1],+m[4][2],+m[4][3],+m[4][4]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3],+m[0][4]],[+m[1][0],+b[1],+m[1][2],+m[1][3],+m[1][4]],[+m[2][0],+b[2],+m[2][2],+m[2][3],+m[2][4]],[+m[3][0],+b[3],+m[3][2],+m[3][3],+m[3][4]],[+m[4][0],+b[4],+m[4][2],+m[4][3],+m[4][4]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3],+m[0][4]],[+m[1][0],+m[1][1],+b[1],+m[1][3],+m[1][4]],[+m[2][0],+m[2][1],+b[2],+m[2][3],+m[2][4]],[+m[3][0],+m[3][1],+b[3],+m[3][3],+m[3][4]],[+m[4][0],+m[4][1],+b[4],+m[4][3],+m[4][4]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0],+m[0][4]],[+m[1][0],+m[1][1],+m[1][2],+b[1],+m[1][4]],[+m[2][0],+m[2][1],+m[2][2],+b[2],+m[2][4]],[+m[3][0],+m[3][1],+m[3][2],+b[3],+m[3][4]],[+m[4][0],+m[4][1],+m[4][2],+b[4],+m[4][4]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+b[3]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+b[4]]]),S(m)]}}function T(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3],+m[0][4],+m[0][5]],[+b[1],+m[1][1],+m[1][2],+m[1][3],+m[1][4],+m[1][5]],[+b[2],+m[2][1],+m[2][2],+m[2][3],+m[2][4],+m[2][5]],[+b[3],+m[3][1],+m[3][2],+m[3][3],+m[3][4],+m[3][5]],[+b[4],+m[4][1],+m[4][2],+m[4][3],+m[4][4],+m[4][5]],[+b[5],+m[5][1],+m[5][2],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3],+m[0][4],+m[0][5]],[+m[1][0],+b[1],+m[1][2],+m[1][3],+m[1][4],+m[1][5]],[+m[2][0],+b[2],+m[2][2],+m[2][3],+m[2][4],+m[2][5]],[+m[3][0],+b[3],+m[3][2],+m[3][3],+m[3][4],+m[3][5]],[+m[4][0],+b[4],+m[4][2],+m[4][3],+m[4][4],+m[4][5]],[+m[5][0],+b[5],+m[5][2],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3],+m[0][4],+m[0][5]],[+m[1][0],+m[1][1],+b[1],+m[1][3],+m[1][4],+m[1][5]],[+m[2][0],+m[2][1],+b[2],+m[2][3],+m[2][4],+m[2][5]],[+m[3][0],+m[3][1],+b[3],+m[3][3],+m[3][4],+m[3][5]],[+m[4][0],+m[4][1],+b[4],+m[4][3],+m[4][4],+m[4][5]],[+m[5][0],+m[5][1],+b[5],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0],+m[0][4],+m[0][5]],[+m[1][0],+m[1][1],+m[1][2],+b[1],+m[1][4],+m[1][5]],[+m[2][0],+m[2][1],+m[2][2],+b[2],+m[2][4],+m[2][5]],[+m[3][0],+m[3][1],+m[3][2],+b[3],+m[3][4],+m[3][5]],[+m[4][0],+m[4][1],+m[4][2],+b[4],+m[4][4],+m[4][5]],[+m[5][0],+m[5][1],+m[5][2],+b[5],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+b[0],+m[0][5]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+b[1],+m[1][5]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+b[2],+m[2][5]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+b[3],+m[3][5]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+b[4],+m[4][5]],[+m[5][0],+m[5][1],+m[5][2],+m[5][3],+b[5],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+m[0][4],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+m[1][4],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+m[2][4],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+m[3][4],+b[3]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+m[4][4],+b[4]],[+m[5][0],+m[5][1],+m[5][2],+m[5][3],+m[5][4],+b[5]]]),S(m)]}}var l=[n,s];function _(S,E,m,b,d,u,y,f){return function(L,z){switch(L.length){case 0:return S(L,z);case 1:return E(L,z);case 2:return m(L,z);case 3:return b(L,z);case 4:return d(L,z);case 5:return u(L,z)}var F=y[L.length];return F||(F=y[L.length]=f(L.length)),F(L,z)}}function w(){for(;l.length<a;)l.push(i(l.length));e.exports=_.apply(void 0,l.concat([l,i]));for(var S=0;S<a;++S)e.exports[S]=l[S]}w()},3250:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(3012),n=r(8545),s=5,c=11102230246251565e-32,h=(3+16*c)*c,v=(7+56*c)*c;function p(u,y,f,P){return function(z,F,B){var O=u(u(y(F[1],B[0]),y(-B[1],F[0])),u(y(z[1],F[0]),y(-F[1],z[0]))),I=u(y(z[1],B[0]),y(-B[1],z[0])),N=P(O,I);return N[N.length-1]}}function T(u,y,f,P){return function(z,F,B,O){var I=u(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2])))),N=u(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2])))),U=P(I,N);return U[U.length-1]}}function l(u,y,f,P){return function(z,F,B,O,I){var N=u(u(u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),B[2]),u(f(u(y(B[1],I[0]),y(-I[1],B[0])),-O[2]),f(u(y(B[1],O[0]),y(-O[1],B[0])),I[2]))),F[3]),u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-O[2]),f(u(y(F[1],O[0]),y(-O[1],F[0])),I[2]))),-B[3]),f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),I[2]))),O[3]))),u(f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),-I[3]),u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-O[2]),f(u(y(F[1],O[0]),y(-O[1],F[0])),I[2]))),z[3]),f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-O[2]),f(u(y(z[1],O[0]),y(-O[1],z[0])),I[2]))),-F[3])))),u(u(f(u(f(u(y(F[1],I[0]),y(-I[1],F[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),I[2]))),O[3]),u(f(u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2]))),-I[3]),f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),z[3]))),u(f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),-F[3]),u(f(u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2]))),B[3]),f(u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2]))),-O[3]))))),U=u(u(u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),B[2]),u(f(u(y(B[1],I[0]),y(-I[1],B[0])),-O[2]),f(u(y(B[1],O[0]),y(-O[1],B[0])),I[2]))),z[3]),f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-O[2]),f(u(y(z[1],O[0]),y(-O[1],z[0])),I[2]))),-B[3])),u(f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),I[2]))),O[3]),f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),-I[3]))),u(u(f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),I[2]))),z[3]),f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),I[2]))),-F[3])),u(f(u(f(u(y(F[1],I[0]),y(-I[1],F[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),I[2]))),B[3]),f(u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2]))),-I[3])))),W=P(N,U);return W[W.length-1]}}function _(u){var y=u===3?p:u===4?T:l;return y(a,o,i,n)}var w=_(3),S=_(4),E=[function(){return 0},function(){return 0},function(y,f){return f[0]-y[0]},function(y,f,P){var L=(y[1]-P[1])*(f[0]-P[0]),z=(y[0]-P[0])*(f[1]-P[1]),F=L-z,B;if(L>0){if(z<=0)return F;B=L+z}else if(L<0){if(z>=0)return F;B=-(L+z)}else return F;var O=h*B;return F>=O||F<=-O?F:w(y,f,P)},function(y,f,P,L){var z=y[0]-L[0],F=f[0]-L[0],B=P[0]-L[0],O=y[1]-L[1],I=f[1]-L[1],N=P[1]-L[1],U=y[2]-L[2],W=f[2]-L[2],Q=P[2]-L[2],ue=F*N,se=B*I,he=B*O,G=z*N,$=z*I,J=F*O,Z=U*(ue-se)+W*(he-G)+Q*($-J),re=(Math.abs(ue)+Math.abs(se))*Math.abs(U)+(Math.abs(he)+Math.abs(G))*Math.abs(W)+(Math.abs($)+Math.abs(J))*Math.abs(Q),ne=v*re;return Z>ne||-Z>ne?Z:S(y,f,P,L)}];function m(u){var y=E[u.length];return y||(y=E[u.length]=_(u.length)),y.apply(void 0,u)}function b(u,y,f,P,L,z,F){return function(O,I,N,U,W){switch(arguments.length){case 0:case 1:return 0;case 2:return P(O,I);case 3:return L(O,I,N);case 4:return z(O,I,N,U);case 5:return F(O,I,N,U,W)}for(var Q=new Array(arguments.length),ue=0;ue<arguments.length;++ue)Q[ue]=arguments[ue];return u(Q)}}function d(){for(;E.length<=s;)E.push(_(E.length));e.exports=b.apply(void 0,[m].concat(E));for(var u=0;u<=s;++u)e.exports[u]=E[u]}d()},5382:function(e,t,r){"use strict";var o=r(8210),a=r(3012);e.exports=i;function i(n,s){if(n.length===1)return a(s,n[0]);if(s.length===1)return a(n,s[0]);if(n.length===0||s.length===0)return[0];var c=[0];if(n.length<s.length)for(var h=0;h<n.length;++h)c=o(c,a(s,n[h]));else for(var h=0;h<s.length;++h)c=o(c,a(n,s[h]));return c}},3012:function(e,t,r){"use strict";var o=r(5250),a=r(9362);e.exports=i;function i(n,s){var c=n.length;if(c===1){var h=o(n[0],s);return h[0]?h:[h[1]]}var v=new Array(2*c),p=[.1,.1],T=[.1,.1],l=0;o(n[0],s,p),p[0]&&(v[l++]=p[0]);for(var _=1;_<c;++_){o(n[_],s,T);var w=p[1];a(w,T[0],p),p[0]&&(v[l++]=p[0]);var S=T[1],E=p[1],m=S+E,b=m-S,d=E-b;p[1]=m,d&&(v[l++]=d)}return p[1]&&(v[l++]=p[1]),l===0&&(v[l++]=0),v.length=l,v}},1125:function(e,t,r){"use strict";e.exports=i;var o=r(3250)[3];function a(n,s,c,h){for(var v=0;v<2;++v){var p=n[v],T=s[v],l=Math.min(p,T),_=Math.max(p,T),w=c[v],S=h[v],E=Math.min(w,S),m=Math.max(w,S);if(m<l||_<E)return!1}return!0}function i(n,s,c,h){var v=o(n,c,h),p=o(s,c,h);if(v>0&&p>0||v<0&&p<0)return!1;var T=o(c,n,s),l=o(h,n,s);return T>0&&l>0||T<0&&l<0?!1:v===0&&p===0&&T===0&&l===0?a(n,s,c,h):!0}},8545:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],-a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=-a[p],S=T(w),E,m;_<S?(m=l,v+=1,v<i&&(l=o[v],_=T(l))):(m=w,p+=1,p<n&&(w=-a[p],S=T(w))),v<i&&_<S||p>=n?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=-a[p],S=T(w)));for(var b=E+m,d=b-E,u=m-d,y=u,f=b,P,L,z,F,B;v<i&&p<n;)_<S?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=-a[p],S=T(w))),m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P;for(;v<i;)E=l,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,v+=1,v<i&&(l=o[v]);for(;p<n;)E=w,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,p+=1,p<n&&(w=-a[p]);return y&&(c[h++]=y),f&&(c[h++]=f),h||(c[h++]=0),c.length=h,c}},8210:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=a[p],S=T(w),E,m;_<S?(m=l,v+=1,v<i&&(l=o[v],_=T(l))):(m=w,p+=1,p<n&&(w=a[p],S=T(w))),v<i&&_<S||p>=n?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=a[p],S=T(w)));for(var b=E+m,d=b-E,u=m-d,y=u,f=b,P,L,z,F,B;v<i&&p<n;)_<S?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=a[p],S=T(w))),m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P;for(;v<i;)E=l,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,v+=1,v<i&&(l=o[v]);for(;p<n;)E=w,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,p+=1,p<n&&(w=a[p]);return y&&(c[h++]=y),f&&(c[h++]=f),h||(c[h++]=0),c.length=h,c}},9127:function(e,t,r){"use strict";e.exports=i;var o=r(6204),a=r(5771);function i(n){return a(o(n))}},7765:function(e,t,r){"use strict";e.exports=l;var o=r(9618),a=r(1888),i=r(446),n=r(1570);function s(_){for(var w=_.length,S=0,E=0;E<w;++E)S=Math.max(S,_[E].length)|0;return S-1}function c(_,w){for(var S=_.length,E=a.mallocUint8(S),m=0;m<S;++m)E[m]=_[m]<w|0;return E}function h(_,w){for(var S=_.length,E=w*(w+1)/2*S|0,m=a.mallocUint32(E*2),b=0,d=0;d<S;++d)for(var u=_[d],w=u.length,y=0;y<w;++y)for(var f=0;f<y;++f){var P=u[f],L=u[y];m[b++]=Math.min(P,L)|0,m[b++]=Math.max(P,L)|0}var z=b/2|0;i(o(m,[z,2]));for(var F=2,d=2;d<b;d+=2)m[d-2]===m[d]&&m[d-1]===m[d+1]||(m[F++]=m[d],m[F++]=m[d+1]);return o(m,[F/2|0,2])}function v(_,w,S,E){for(var m=_.data,b=_.shape[0],d=a.mallocDouble(b),u=0,y=0;y<b;++y){var f=m[2*y],P=m[2*y+1];if(S[f]!==S[P]){var L=w[f],z=w[P];m[2*u]=f,m[2*u+1]=P,d[u++]=(z-E)/(z-L)}}return _.shape[0]=u,o(d,[u])}function p(_,w){var S=a.mallocInt32(w*2),E=_.shape[0],m=_.data;S[0]=0;for(var b=0,d=0;d<E;++d){var u=m[2*d];if(u!==b){for(S[2*b+1]=d;++b<u;)S[2*b]=d,S[2*b+1]=d;S[2*b]=d}}for(S[2*b+1]=E;++b<w;)S[2*b]=S[2*b+1]=E;return S}function T(_){for(var w=_.shape[0]|0,S=_.data,E=new Array(w),m=0;m<w;++m)E[m]=[S[2*m],S[2*m+1]];return E}function l(_,w,S,E){S=S||0,typeof E>"u"&&(E=s(_));var m=_.length;if(m===0||E<1)return{cells:[],vertexIds:[],vertexWeights:[]};var b=c(w,+S),d=h(_,E),u=v(d,w,b,+S),y=p(d,w.length|0),f=n(E)(_,d.data,y,b),P=T(d),L=[].slice.call(u.data,0,u.shape[0]);return a.free(b),a.free(d.data),a.free(u.data),a.free(y),{cells:f,vertexIds:P,vertexWeights:L}}},1570:function(e){"use strict";e.exports=r;var t=[function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T)var l=n[T],_=l.length;return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===3){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2);if(w===0||w===7)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[2]),a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0]),a(c,s,l[1],l[2])]);break;case 3:p.push([a(c,s,l[0],l[2]),a(c,s,l[1],l[2])]);break;case 4:p.push([a(c,s,l[2],l[1]),a(c,s,l[2],l[0])]);break;case 5:p.push([a(c,s,l[2],l[1]),a(c,s,l[0],l[1])]);break;case 6:p.push([a(c,s,l[1],l[0]),a(c,s,l[2],l[0])]);break;case 7:break}}else if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===4){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2)+(h[l[3]]<<3);if(w===0||w===15)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1]),a(c,s,l[0],l[2]),a(c,s,l[0],l[3])]);break;case 2:p.push([a(c,s,l[1],l[2]),a(c,s,l[1],l[0]),a(c,s,l[1],l[3])]);break;case 3:p.push([a(c,s,l[1],l[2]),a(c,s,l[0],l[2]),a(c,s,l[0],l[3])],[a(c,s,l[1],l[3]),a(c,s,l[1],l[2]),a(c,s,l[0],l[3])]);break;case 4:p.push([a(c,s,l[2],l[0]),a(c,s,l[2],l[1]),a(c,s,l[2],l[3])]);break;case 5:p.push([a(c,s,l[0],l[1]),a(c,s,l[2],l[1]),a(c,s,l[0],l[3])],[a(c,s,l[2],l[1]),a(c,s,l[2],l[3]),a(c,s,l[0],l[3])]);break;case 6:p.push([a(c,s,l[2],l[0]),a(c,s,l[1],l[0]),a(c,s,l[1],l[3])],[a(c,s,l[2],l[3]),a(c,s,l[2],l[0]),a(c,s,l[1],l[3])]);break;case 7:p.push([a(c,s,l[0],l[3]),a(c,s,l[1],l[3]),a(c,s,l[2],l[3])]);break;case 8:p.push([a(c,s,l[3],l[1]),a(c,s,l[3],l[0]),a(c,s,l[3],l[2])]);break;case 9:p.push([a(c,s,l[3],l[1]),a(c,s,l[0],l[1]),a(c,s,l[0],l[2])],[a(c,s,l[3],l[2]),a(c,s,l[3],l[1]),a(c,s,l[0],l[2])]);break;case 10:p.push([a(c,s,l[1],l[0]),a(c,s,l[3],l[0]),a(c,s,l[1],l[2])],[a(c,s,l[3],l[0]),a(c,s,l[3],l[2]),a(c,s,l[1],l[2])]);break;case 11:p.push([a(c,s,l[1],l[2]),a(c,s,l[0],l[2]),a(c,s,l[3],l[2])]);break;case 12:p.push([a(c,s,l[3],l[0]),a(c,s,l[2],l[0]),a(c,s,l[2],l[1])],[a(c,s,l[3],l[1]),a(c,s,l[3],l[0]),a(c,s,l[2],l[1])]);break;case 13:p.push([a(c,s,l[0],l[1]),a(c,s,l[2],l[1]),a(c,s,l[3],l[1])]);break;case 14:p.push([a(c,s,l[2],l[0]),a(c,s,l[1],l[0]),a(c,s,l[3],l[0])]);break;case 15:break}}else if(_===3){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2);if(w===0||w===7)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[2]),a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0]),a(c,s,l[1],l[2])]);break;case 3:p.push([a(c,s,l[0],l[2]),a(c,s,l[1],l[2])]);break;case 4:p.push([a(c,s,l[2],l[1]),a(c,s,l[2],l[0])]);break;case 5:p.push([a(c,s,l[2],l[1]),a(c,s,l[0],l[1])]);break;case 6:p.push([a(c,s,l[1],l[0]),a(c,s,l[2],l[0])]);break;case 7:break}}else if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i}];function r(o){return t[o]()}},6803:function(e,t,r){"use strict";var o,a=r(8828),i=r(1755);function n(y){for(var f=0,P=Math.max,L=0,z=y.length;L<z;++L)f=P(f,y[L].length);return f-1}o=n;function s(y){for(var f=-1,P=Math.max,L=0,z=y.length;L<z;++L)for(var F=y[L],B=0,O=F.length;B<O;++B)f=P(f,F[B]);return f+1}o=s;function c(y){for(var f=new Array(y.length),P=0,L=y.length;P<L;++P)f[P]=y[P].slice(0);return f}o=c;function h(y,f){var P=y.length,L=y.length-f.length,z=Math.min;if(L)return L;switch(P){case 0:return 0;case 1:return y[0]-f[0];case 2:var N=y[0]+y[1]-f[0]-f[1];return N||z(y[0],y[1])-z(f[0],f[1]);case 3:var F=y[0]+y[1],B=f[0]+f[1];if(N=F+y[2]-(B+f[2]),N)return N;var O=z(y[0],y[1]),I=z(f[0],f[1]),N=z(O,y[2])-z(I,f[2]);return N||z(O+y[2],F)-z(I+f[2],B);default:var U=y.slice(0);U.sort();var W=f.slice(0);W.sort();for(var Q=0;Q<P;++Q)if(L=U[Q]-W[Q],L)return L;return 0}}t.Fw=h;function v(y,f){return h(y[0],f[0])}function p(y,f){if(f){for(var P=y.length,L=new Array(P),z=0;z<P;++z)L[z]=[y[z],f[z]];L.sort(v);for(var z=0;z<P;++z)y[z]=L[z][0],f[z]=L[z][1];return y}else return y.sort(h),y}o=p;function T(y){if(y.length===0)return[];for(var f=1,P=y.length,L=1;L<P;++L){var z=y[L];if(h(z,y[L-1])){if(L===f){f++;continue}y[f++]=z}}return y.length=f,y}o=T;function l(y,f){for(var P=0,L=y.length-1,z=-1;P<=L;){var F=P+L>>1,B=h(y[F],f);B<=0?(B===0&&(z=F),P=F+1):B>0&&(L=F-1)}return z}o=l;function _(y,f){for(var P=new Array(y.length),L=0,z=P.length;L<z;++L)P[L]=[];for(var F=[],L=0,B=f.length;L<B;++L)for(var O=f[L],I=O.length,N=1,U=1<<I;N<U;++N){F.length=a.popCount(N);for(var W=0,Q=0;Q<I;++Q)N&1<<Q&&(F[W++]=O[Q]);var ue=l(y,F);if(!(ue<0))for(;P[ue++].push(L),!(ue>=y.length||h(y[ue],F)!==0););}return P}o=_;function w(y,f){if(!f)return _(T(E(y,0)),y,0);for(var P=new Array(f),L=0;L<f;++L)P[L]=[];for(var L=0,z=y.length;L<z;++L)for(var F=y[L],B=0,O=F.length;B<O;++B)P[F[B]].push(L);return P}o=w;function S(y){for(var f=[],P=0,L=y.length;P<L;++P)for(var z=y[P],F=z.length|0,B=1,O=1<<F;B<O;++B){for(var I=[],N=0;N<F;++N)B>>>N&1&&I.push(z[N]);f.push(I)}return p(f)}o=S;function E(y,f){if(f<0)return[];for(var P=[],L=(1<<f+1)-1,z=0;z<y.length;++z)for(var F=y[z],B=L;B<1<<F.length;B=a.nextCombination(B)){for(var O=new Array(f+1),I=0,N=0;N<F.length;++N)B&1<<N&&(O[I++]=F[N]);P.push(O)}return p(P)}o=E;function m(y){for(var f=[],P=0,L=y.length;P<L;++P)for(var z=y[P],F=0,B=z.length;F<B;++F){for(var O=new Array(z.length-1),I=0,N=0;I<B;++I)I!==F&&(O[N++]=z[I]);f.push(O)}return p(f)}o=m;function b(y,f){for(var P=new i(f),L=0;L<y.length;++L)for(var z=y[L],F=0;F<z.length;++F)for(var B=F+1;B<z.length;++B)P.link(z[F],z[B]);for(var O=[],I=P.ranks,L=0;L<I.length;++L)I[L]=-1;for(var L=0;L<y.length;++L){var N=P.find(y[L][0]);I[N]<0?(I[N]=O.length,O.push([y[L].slice(0)])):O[I[N]].push(y[L].slice(0))}return O}function d(y){for(var f=T(p(E(y,0))),P=new i(f.length),L=0;L<y.length;++L)for(var z=y[L],F=0;F<z.length;++F)for(var B=l(f,[z[F]]),O=F+1;O<z.length;++O)P.link(B,l(f,[z[O]]));for(var I=[],N=P.ranks,L=0;L<N.length;++L)N[L]=-1;for(var L=0;L<y.length;++L){var U=P.find(l(f,[y[L][0]]));N[U]<0?(N[U]=I.length,I.push([y[L].slice(0)])):I[N[U]].push(y[L].slice(0))}return I}function u(y,f){return f?b(y,f):d(y)}o=u},3105:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<<r-1,t.sign=function(i){return(i>0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i<n)},t.max=function(i,n){return i^(i^n)&-(i<n)},t.isPow2=function(i){return!(i&i-1)&&!!i},t.log2=function(i){var n,s;return n=(i>65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<<h&255}})(a),t.reverse=function(i){return a[i&255]<<24|a[i>>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},2014:function(e,t,r){"use strict";"use restrict";var o=r(3105),a=r(4623);function i(u){for(var y=0,f=Math.max,P=0,L=u.length;P<L;++P)y=f(y,u[P].length);return y-1}t.dimension=i;function n(u){for(var y=-1,f=Math.max,P=0,L=u.length;P<L;++P)for(var z=u[P],F=0,B=z.length;F<B;++F)y=f(y,z[F]);return y+1}t.countVertices=n;function s(u){for(var y=new Array(u.length),f=0,P=u.length;f<P;++f)y[f]=u[f].slice(0);return y}t.cloneCells=s;function c(u,y){var f=u.length,P=u.length-y.length,L=Math.min;if(P)return P;switch(f){case 0:return 0;case 1:return u[0]-y[0];case 2:var I=u[0]+u[1]-y[0]-y[1];return I||L(u[0],u[1])-L(y[0],y[1]);case 3:var z=u[0]+u[1],F=y[0]+y[1];if(I=z+u[2]-(F+y[2]),I)return I;var B=L(u[0],u[1]),O=L(y[0],y[1]),I=L(B,u[2])-L(O,y[2]);return I||L(B+u[2],z)-L(O+y[2],F);default:var N=u.slice(0);N.sort();var U=y.slice(0);U.sort();for(var W=0;W<f;++W)if(P=N[W]-U[W],P)return P;return 0}}t.compareCells=c;function h(u,y){return c(u[0],y[0])}function v(u,y){if(y){for(var f=u.length,P=new Array(f),L=0;L<f;++L)P[L]=[u[L],y[L]];P.sort(h);for(var L=0;L<f;++L)u[L]=P[L][0],y[L]=P[L][1];return u}else return u.sort(c),u}t.normalize=v;function p(u){if(u.length===0)return[];for(var y=1,f=u.length,P=1;P<f;++P){var L=u[P];if(c(L,u[P-1])){if(P===y){y++;continue}u[y++]=L}}return u.length=y,u}t.unique=p;function T(u,y){for(var f=0,P=u.length-1,L=-1;f<=P;){var z=f+P>>1,F=c(u[z],y);F<=0?(F===0&&(L=z),f=z+1):F>0&&(P=z-1)}return L}t.findCell=T;function l(u,y){for(var f=new Array(u.length),P=0,L=f.length;P<L;++P)f[P]=[];for(var z=[],P=0,F=y.length;P<F;++P)for(var B=y[P],O=B.length,I=1,N=1<<O;I<N;++I){z.length=o.popCount(I);for(var U=0,W=0;W<O;++W)I&1<<W&&(z[U++]=B[W]);var Q=T(u,z);if(!(Q<0))for(;f[Q++].push(P),!(Q>=u.length||c(u[Q],z)!==0););}return f}t.incidence=l;function _(u,y){if(!y)return l(p(S(u,0)),u,0);for(var f=new Array(y),P=0;P<y;++P)f[P]=[];for(var P=0,L=u.length;P<L;++P)for(var z=u[P],F=0,B=z.length;F<B;++F)f[z[F]].push(P);return f}t.dual=_;function w(u){for(var y=[],f=0,P=u.length;f<P;++f)for(var L=u[f],z=L.length|0,F=1,B=1<<z;F<B;++F){for(var O=[],I=0;I<z;++I)F>>>I&1&&O.push(L[I]);y.push(O)}return v(y)}t.explode=w;function S(u,y){if(y<0)return[];for(var f=[],P=(1<<y+1)-1,L=0;L<u.length;++L)for(var z=u[L],F=P;F<1<<z.length;F=o.nextCombination(F)){for(var B=new Array(y+1),O=0,I=0;I<z.length;++I)F&1<<I&&(B[O++]=z[I]);f.push(B)}return v(f)}t.skeleton=S;function E(u){for(var y=[],f=0,P=u.length;f<P;++f)for(var L=u[f],z=0,F=L.length;z<F;++z){for(var B=new Array(L.length-1),O=0,I=0;O<F;++O)O!==z&&(B[I++]=L[O]);y.push(B)}return v(y)}t.boundary=E;function m(u,y){for(var f=new a(y),P=0;P<u.length;++P)for(var L=u[P],z=0;z<L.length;++z)for(var F=z+1;F<L.length;++F)f.link(L[z],L[F]);for(var B=[],O=f.ranks,P=0;P<O.length;++P)O[P]=-1;for(var P=0;P<u.length;++P){var I=f.find(u[P][0]);O[I]<0?(O[I]=B.length,B.push([u[P].slice(0)])):B[O[I]].push(u[P].slice(0))}return B}function b(u){for(var y=p(v(S(u,0))),f=new a(y.length),P=0;P<u.length;++P)for(var L=u[P],z=0;z<L.length;++z)for(var F=T(y,[L[z]]),B=z+1;B<L.length;++B)f.link(F,T(y,[L[B]]));for(var O=[],I=f.ranks,P=0;P<I.length;++P)I[P]=-1;for(var P=0;P<u.length;++P){var N=f.find(T(y,[u[P][0]]));I[N]<0?(I[N]=O.length,O.push([u[P].slice(0)])):O[I[N]].push(u[P].slice(0))}return O}function d(u,y){return y?m(u,y):b(u)}t.connectedComponents=d},4623:function(e){"use strict";"use restrict";e.exports=t;function t(r){this.roots=new Array(r),this.ranks=new Array(r);for(var o=0;o<r;++o)this.roots[o]=o,this.ranks[o]=0}t.prototype.length=function(){return this.roots.length},t.prototype.makeSet=function(){var r=this.roots.length;return this.roots.push(r),this.ranks.push(0),r},t.prototype.find=function(r){for(var o=this.roots;o[r]!==r;){var a=o[r];o[r]=o[a],r=a}return r},t.prototype.link=function(r,o){var a=this.find(r),i=this.find(o);if(a!==i){var n=this.ranks,s=this.roots,c=n[a],h=n[i];c<h?s[a]=i:h<c?s[i]=a:(s[i]=a,++n[a])}}},5878:function(e,t,r){"use strict";e.exports=n;var o=r(3250),a=r(2014);function i(s,c,h){var v=Math.abs(o(s,c,h)),p=Math.sqrt(Math.pow(c[0]-h[0],2)+Math.pow(c[1]-h[1],2));return v/p}function n(s,c,h){for(var v=c.length,p=s.length,T=new Array(v),l=new Array(v),_=new Array(v),w=new Array(v),S=0;S<v;++S)T[S]=l[S]=-1,_[S]=1/0,w[S]=!1;for(var S=0;S<p;++S){var E=s[S];if(E.length!==2)throw new Error("Input must be a graph");var m=E[1],b=E[0];l[b]!==-1?l[b]=-2:l[b]=m,T[m]!==-1?T[m]=-2:T[m]=b}function d(G){if(w[G])return 1/0;var $=T[G],J=l[G];return $<0||J<0?1/0:i(c[G],c[$],c[J])}function u(G,$){var J=O[G],Z=O[$];O[G]=Z,O[$]=J,I[J]=$,I[Z]=G}function y(G){return _[O[G]]}function f(G){return G&1?G-1>>1:(G>>1)-1}function P(G){for(var $=y(G);;){var J=$,Z=2*G+1,re=2*(G+1),ne=G;if(Z<U){var j=y(Z);j<J&&(ne=Z,J=j)}if(re<U){var ee=y(re);ee<J&&(ne=re)}if(ne===G)return G;u(G,ne),G=ne}}function L(G){for(var $=y(G);G>0;){var J=f(G);if(J>=0){var Z=y(J);if($<Z){u(G,J),G=J;continue}}return G}}function z(){if(U>0){var G=O[0];return u(0,U-1),U-=1,P(0),G}return-1}function F(G,$){var J=O[G];return _[J]===$?G:(_[J]=-1/0,L(G),z(),_[J]=$,U+=1,L(U-1))}function B(G){if(!w[G]){w[G]=!0;var $=T[G],J=l[G];T[J]>=0&&(T[J]=$),l[$]>=0&&(l[$]=J),I[$]>=0&&F(I[$],d($)),I[J]>=0&&F(I[J],d(J))}}for(var O=[],I=new Array(v),S=0;S<v;++S){var N=_[S]=d(S);N<1/0?(I[S]=O.length,O.push(S)):I[S]=-1}for(var U=O.length,S=U>>1;S>=0;--S)P(S);for(;;){var W=z();if(W<0||_[W]>h)break;B(W)}for(var Q=[],S=0;S<v;++S)w[S]||(I[S]=Q.length,Q.push(c[S].slice()));var ue=Q.length;function se(G,$){if(G[$]<0)return $;var J=$,Z=$;do{var re=G[Z];if(!w[Z]||re<0||re===Z||(Z=re,re=G[Z],!w[Z]||re<0||re===Z))break;Z=re,J=G[J]}while(J!==Z);for(var ne=$;ne!==Z;ne=G[ne])G[ne]=Z;return Z}var he=[];return s.forEach(function(G){var $=se(T,G[0]),J=se(l,G[1]);if($>=0&&J>=0&&$!==J){var Z=I[$],re=I[J];Z!==re&&he.push([Z,re])}}),a.unique(a.normalize(he)),{positions:Q,edges:he}}},1303:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){var c,h;if(s[0][0]<s[1][0])c=s[0],h=s[1];else if(s[0][0]>s[1][0])c=s[1],h=s[0];else{var v=Math.min(n[0][1],n[1][1]),p=Math.max(n[0][1],n[1][1]),T=Math.min(s[0][1],s[1][1]),l=Math.max(s[0][1],s[1][1]);return p<T?p-T:v>l?v-l:p-l}var _,w;n[0][1]<n[1][1]?(_=n[0],w=n[1]):(_=n[1],w=n[0]);var S=o(h,c,_);return S||(S=o(h,c,w),S)?S:w-h}function i(n,s){var c,h;if(s[0][0]<s[1][0])c=s[0],h=s[1];else if(s[0][0]>s[1][0])c=s[1],h=s[0];else return a(s,n);var v,p;if(n[0][0]<n[1][0])v=n[0],p=n[1];else if(n[0][0]>n[1][0])v=n[1],p=n[0];else return-a(n,s);var T=o(c,h,p),l=o(c,h,v);if(T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;if(T=o(p,v,h),l=o(p,v,c),T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;return h[0]-p[0]}},4209:function(e,t,r){"use strict";e.exports=l;var o=r(2478),a=r(3840),i=r(3250),n=r(1303);function s(_,w,S){this.slabs=_,this.coordinates=w,this.horizontal=S}var c=s.prototype;function h(_,w){return _.y-w}function v(_,w){for(var S=null;_;){var E=_.key,m,b;E[0][0]<E[1][0]?(m=E[0],b=E[1]):(m=E[1],b=E[0]);var d=i(m,b,w);if(d<0)_=_.left;else if(d>0)if(w[0]!==E[1][0])S=_,_=_.right;else{var u=v(_.right,w);if(u)return u;_=_.left}else{if(w[0]!==E[1][0])return _;var u=v(_.right,w);if(u)return u;_=_.left}}return S}c.castUp=function(_){var w=o.le(this.coordinates,_[0]);if(w<0)return-1;var S=this.slabs[w],E=v(this.slabs[w],_),m=-1;if(E&&(m=E.value),this.coordinates[w]===_[0]){var b=null;if(E&&(b=E.key),w>0){var d=v(this.slabs[w-1],_);d&&(b?n(d.key,b)>0&&(b=d.key,m=d.value):(m=d.value,b=d.key))}var u=this.horizontal[w];if(u.length>0){var y=o.ge(u,_[1],h);if(y<u.length){var f=u[y];if(_[1]===f.y){if(f.closed)return f.index;for(;y<u.length-1&&u[y+1].y===_[1];)if(y=y+1,f=u[y],f.closed)return f.index;if(f.y===_[1]&&!f.start){if(y=y+1,y>=u.length)return m;f=u[y]}}if(f.start)if(b){var P=i(b[0],b[1],[_[0],f.y]);b[0][0]>b[1][0]&&(P=-P),P>0&&(m=f.index)}else m=f.index;else f.y!==_[1]&&(m=f.index)}}}return m};function p(_,w,S,E){this.y=_,this.index=w,this.start=S,this.closed=E}function T(_,w,S,E){this.x=_,this.segment=w,this.create=S,this.index=E}function l(_){for(var w=_.length,S=2*w,E=new Array(S),m=0;m<w;++m){var b=_[m],d=b[0][0]<b[1][0];E[2*m]=new T(b[0][0],b,d,m),E[2*m+1]=new T(b[1][0],b,!d,m)}E.sort(function(O,I){var N=O.x-I.x;return N||(N=O.create-I.create,N)?N:Math.min(O.segment[0][1],O.segment[1][1])-Math.min(I.segment[0][1],I.segment[1][1])});for(var u=a(n),y=[],f=[],P=[],L=-1/0,m=0;m<S;){for(var z=E[m].x,F=[];m<S;){var B=E[m];if(B.x!==z)break;m+=1,B.segment[0][0]===B.x&&B.segment[1][0]===B.x?B.create&&(B.segment[0][1]<B.segment[1][1]?(F.push(new p(B.segment[0][1],B.index,!0,!0)),F.push(new p(B.segment[1][1],B.index,!1,!1))):(F.push(new p(B.segment[1][1],B.index,!0,!1)),F.push(new p(B.segment[0][1],B.index,!1,!0)))):B.create?u=u.insert(B.segment,B.index):u=u.remove(B.segment)}y.push(u.root),f.push(z),P.push(F)}return new s(y,f,P)}},5202:function(e,t,r){"use strict";var o=r(1944),a=r(8210);e.exports=s,e.exports.positive=c,e.exports.negative=h;function i(v,p){var T=a(o(v,p),[p[p.length-1]]);return T[T.length-1]}function n(v,p,T,l){var _=l-p,w=-p/_;w<0?w=0:w>1&&(w=1);for(var S=1-w,E=v.length,m=new Array(E),b=0;b<E;++b)m[b]=w*v[b]+S*T[b];return m}function s(v,p){for(var T=[],l=[],_=i(v[v.length-1],p),w=v[v.length-1],S=v[0],E=0;E<v.length;++E,w=S){S=v[E];var m=i(S,p);if(_<0&&m>0||_>0&&m<0){var b=n(w,m,S,_);T.push(b),l.push(b.slice())}m<0?l.push(S.slice()):m>0?T.push(S.slice()):(T.push(S.slice()),l.push(S.slice())),_=m}return{positive:T,negative:l}}function c(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S<v.length;++S,_=w){w=v[S];var E=i(w,p);(l<0&&E>0||l>0&&E<0)&&T.push(n(_,E,w,l)),E>=0&&T.push(w.slice()),l=E}return T}function h(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S<v.length;++S,_=w){w=v[S];var E=i(w,p);(l<0&&E>0||l>0&&E<0)&&T.push(n(_,E,w,l)),E<=0&&T.push(w.slice()),l=E}return T}},3387:function(e,t,r){var o;(function(){"use strict";var a={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function i(v){return s(h(v),arguments)}function n(v,p){return i.apply(null,[v].concat(p||[]))}function s(v,p){var T=1,l=v.length,_,w="",S,E,m,b,d,u,y,f;for(S=0;S<l;S++)if(typeof v[S]=="string")w+=v[S];else if(typeof v[S]=="object"){if(m=v[S],m.keys)for(_=p[T],E=0;E<m.keys.length;E++){if(_==null)throw new Error(i('[sprintf] Cannot access property "%s" of undefined value "%s"',m.keys[E],m.keys[E-1]));_=_[m.keys[E]]}else m.param_no?_=p[m.param_no]:_=p[T++];if(a.not_type.test(m.type)&&a.not_primitive.test(m.type)&&_ instanceof Function&&(_=_()),a.numeric_arg.test(m.type)&&typeof _!="number"&&isNaN(_))throw new TypeError(i("[sprintf] expecting number but found %T",_));switch(a.number.test(m.type)&&(y=_>=0),m.type){case"b":_=parseInt(_,10).toString(2);break;case"c":_=String.fromCharCode(parseInt(_,10));break;case"d":case"i":_=parseInt(_,10);break;case"j":_=JSON.stringify(_,null,m.width?parseInt(m.width):0);break;case"e":_=m.precision?parseFloat(_).toExponential(m.precision):parseFloat(_).toExponential();break;case"f":_=m.precision?parseFloat(_).toFixed(m.precision):parseFloat(_);break;case"g":_=m.precision?String(Number(_.toPrecision(m.precision))):parseFloat(_);break;case"o":_=(parseInt(_,10)>>>0).toString(8);break;case"s":_=String(_),_=m.precision?_.substring(0,m.precision):_;break;case"t":_=String(!!_),_=m.precision?_.substring(0,m.precision):_;break;case"T":_=Object.prototype.toString.call(_).slice(8,-1).toLowerCase(),_=m.precision?_.substring(0,m.precision):_;break;case"u":_=parseInt(_,10)>>>0;break;case"v":_=_.valueOf(),_=m.precision?_.substring(0,m.precision):_;break;case"x":_=(parseInt(_,10)>>>0).toString(16);break;case"X":_=(parseInt(_,10)>>>0).toString(16).toUpperCase();break}a.json.test(m.type)?w+=_:(a.number.test(m.type)&&(!y||m.sign)?(f=y?"+":"-",_=_.toString().replace(a.sign,"")):f="",d=m.pad_char?m.pad_char==="0"?"0":m.pad_char.charAt(1):" ",u=m.width-(f+_).length,b=m.width&&u>0?d.repeat(u):"",w+=m.align?f+_+b:d==="0"?f+b+_:b+f+_)}return w}var c=Object.create(null);function h(v){if(c[v])return c[v];for(var p=v,T,l=[],_=0;p;){if((T=a.text.exec(p))!==null)l.push(T[0]);else if((T=a.modulo.exec(p))!==null)l.push("%");else if((T=a.placeholder.exec(p))!==null){if(T[2]){_|=1;var w=[],S=T[2],E=[];if((E=a.key.exec(S))!==null)for(w.push(E[1]);(S=S.substring(E[0].length))!=="";)if((E=a.key_access.exec(S))!==null)w.push(E[1]);else if((E=a.index_access.exec(S))!==null)w.push(E[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=w}else _|=2;if(_===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");l.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");p=p.substring(T[0].length)}return c[v]=l}t.sprintf=i,t.vsprintf=n,typeof window<"u"&&(window.sprintf=i,window.vsprintf=n,o=function(){return{sprintf:i,vsprintf:n}}.call(t,r,t,e),o!==void 0&&(e.exports=o))})()},3711:function(e,t,r){"use strict";e.exports=h;var o=r(2640),a=r(781),i={"2d":function(v,p,T){var l=v({order:p,scalarArguments:3,getters:T==="generic"?[0]:void 0,phase:function(w,S,E,m){return w>m|0},vertex:function(w,S,E,m,b,d,u,y,f,P,L,z,F){var B=(u<<0)+(y<<1)+(f<<2)+(P<<3)|0;if(!(B===0||B===15))switch(B){case 0:L.push([w-.5,S-.5]);break;case 1:L.push([w-.25-.25*(m+E-2*F)/(E-m),S-.25-.25*(b+E-2*F)/(E-b)]);break;case 2:L.push([w-.75-.25*(-m-E+2*F)/(m-E),S-.25-.25*(d+m-2*F)/(m-d)]);break;case 3:L.push([w-.5,S-.5-.5*(b+E+d+m-4*F)/(E-b+m-d)]);break;case 4:L.push([w-.25-.25*(d+b-2*F)/(b-d),S-.75-.25*(-b-E+2*F)/(b-E)]);break;case 5:L.push([w-.5-.5*(m+E+d+b-4*F)/(E-m+b-d),S-.5]);break;case 6:L.push([w-.5-.25*(-m-E+d+b)/(m-E+b-d),S-.5-.25*(-b-E+d+m)/(b-E+m-d)]);break;case 7:L.push([w-.75-.25*(d+b-2*F)/(b-d),S-.75-.25*(d+m-2*F)/(m-d)]);break;case 8:L.push([w-.75-.25*(-d-b+2*F)/(d-b),S-.75-.25*(-d-m+2*F)/(d-m)]);break;case 9:L.push([w-.5-.25*(m+E+-d-b)/(E-m+d-b),S-.5-.25*(b+E+-d-m)/(E-b+d-m)]);break;case 10:L.push([w-.5-.5*(-m-E+-d-b+4*F)/(m-E+d-b),S-.5]);break;case 11:L.push([w-.25-.25*(-d-b+2*F)/(d-b),S-.75-.25*(b+E-2*F)/(E-b)]);break;case 12:L.push([w-.5,S-.5-.5*(-b-E+-d-m+4*F)/(b-E+d-m)]);break;case 13:L.push([w-.75-.25*(m+E-2*F)/(E-m),S-.25-.25*(-d-m+2*F)/(d-m)]);break;case 14:L.push([w-.25-.25*(-m-E+2*F)/(m-E),S-.25-.25*(-b-E+2*F)/(b-E)]);break;case 15:L.push([w-.5,S-.5]);break}},cell:function(w,S,E,m,b,d,u,y,f){b?y.push([w,S]):y.push([S,w])}});return function(_,w){var S=[],E=[];return l(_,S,E,w),{positions:S,cells:E}}}};function n(v,p){var T=v.length+"d",l=i[T];if(l)return l(o,v,p)}function s(v,p){for(var T=a(v,p),l=T.length,_=new Array(l),w=new Array(l),S=0;S<l;++S)_[S]=[T[S]],w[S]=[S];return{positions:_,cells:w}}var c={};function h(v,_){if(v.dimension<=0)return{positions:[],cells:[]};if(v.dimension===1)return s(v,_);var T=v.order.join()+"-"+v.dtype,l=c[T],_=+_||0;return l||(l=c[T]=n(v.order,v.dtype)),l(v,_)}},665:function(e,t,r){"use strict";var o=r(3202);e.exports=s;var a=96;function i(c,h){var v=o(getComputedStyle(c).getPropertyValue(h));return v[0]*s(v[1],c)}function n(c,h){var v=document.createElement("div");v.style["font-size"]="128"+c,h.appendChild(v);var p=i(v,"font-size")/128;return h.removeChild(v),p}function s(c,h){switch(h=h||document.body,c=(c||"px").trim().toLowerCase(),(h===window||h===document)&&(h=document.body),c){case"%":return h.clientHeight/100;case"ch":case"ex":return n(c,h);case"em":return i(h,"font-size");case"rem":return i(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return a;case"cm":return a/2.54;case"mm":return a/25.4;case"pt":return a/72;case"pc":return a/6}return 1}},7261:function(e,t,r){"use strict";e.exports=w;var o=r(9215),a=r(7608),i=r(6079),n=r(5911),s=r(3536),c=r(244);function h(S,E,m){return Math.sqrt(Math.pow(S,2)+Math.pow(E,2)+Math.pow(m,2))}function v(S){return Math.min(1,Math.max(-1,S))}function p(S){var E=Math.abs(S[0]),m=Math.abs(S[1]),b=Math.abs(S[2]),d=[0,0,0];E>Math.max(m,b)?d[2]=1:m>Math.max(E,b)?d[0]=1:d[1]=1;for(var u=0,y=0,f=0;f<3;++f)u+=S[f]*S[f],y+=d[f]*S[f];for(var f=0;f<3;++f)d[f]-=y/u*S[f];return s(d,d),d}function T(S,E,m,b,d,u,y,f){this.center=o(m),this.up=o(b),this.right=o(d),this.radius=o([u]),this.angle=o([y,f]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,E),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var P=0;P<16;++P)this.computedMatrix[P]=.5;this.recalcMatrix(0)}var l=T.prototype;l.setDistanceLimits=function(S,E){S>0?S=Math.log(S):S=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=E},l.getDistanceLimits=function(S){var E=this.radius.bounds[0];return S?(S[0]=Math.exp(E[0][0]),S[1]=Math.exp(E[1][0]),S):[Math.exp(E[0][0]),Math.exp(E[1][0])]},l.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var E=this.computedUp,m=this.computedRight,b=0,d=0,u=0;u<3;++u)d+=E[u]*m[u],b+=E[u]*E[u];for(var y=Math.sqrt(b),f=0,u=0;u<3;++u)m[u]-=E[u]*d/b,f+=m[u]*m[u],E[u]/=y;for(var P=Math.sqrt(f),u=0;u<3;++u)m[u]/=P;var L=this.computedToward;n(L,E,m),s(L,L);for(var z=Math.exp(this.computedRadius[0]),F=this.computedAngle[0],B=this.computedAngle[1],O=Math.cos(F),I=Math.sin(F),N=Math.cos(B),U=Math.sin(B),W=this.computedCenter,Q=O*N,ue=I*N,se=U,he=-O*U,G=-I*U,$=N,J=this.computedEye,Z=this.computedMatrix,u=0;u<3;++u){var re=Q*m[u]+ue*L[u]+se*E[u];Z[4*u+1]=he*m[u]+G*L[u]+$*E[u],Z[4*u+2]=re,Z[4*u+3]=0}var ne=Z[1],j=Z[5],ee=Z[9],ie=Z[2],fe=Z[6],be=Z[10],Ae=j*be-ee*fe,Be=ee*ie-ne*be,Ie=ne*fe-j*ie,Ze=h(Ae,Be,Ie);Ae/=Ze,Be/=Ze,Ie/=Ze,Z[0]=Ae,Z[4]=Be,Z[8]=Ie;for(var u=0;u<3;++u)J[u]=W[u]+Z[2+4*u]*z;for(var u=0;u<3;++u){for(var f=0,at=0;at<3;++at)f+=Z[u+4*at]*J[at];Z[12+u]=-f}Z[15]=1},l.getMatrix=function(S,E){this.recalcMatrix(S);var m=this.computedMatrix;if(E){for(var b=0;b<16;++b)E[b]=m[b];return E}return m};var _=[0,0,0];l.rotate=function(S,E,m,b){if(this.angle.move(S,E,m),b){this.recalcMatrix(S);var d=this.computedMatrix;_[0]=d[2],_[1]=d[6],_[2]=d[10];for(var u=this.computedUp,y=this.computedRight,f=this.computedToward,P=0;P<3;++P)d[4*P]=u[P],d[4*P+1]=y[P],d[4*P+2]=f[P];i(d,d,b,_);for(var P=0;P<3;++P)u[P]=d[4*P],y[P]=d[4*P+1];this.up.set(S,u[0],u[1],u[2]),this.right.set(S,y[0],y[1],y[2])}},l.pan=function(S,E,m,b){E=E||0,m=m||0,b=b||0,this.recalcMatrix(S);var d=this.computedMatrix,u=Math.exp(this.computedRadius[0]),y=d[1],f=d[5],P=d[9],L=h(y,f,P);y/=L,f/=L,P/=L;var z=d[0],F=d[4],B=d[8],O=z*y+F*f+B*P;z-=y*O,F-=f*O,B-=P*O;var I=h(z,F,B);z/=I,F/=I,B/=I;var N=z*E+y*m,U=F*E+f*m,W=B*E+P*m;this.center.move(S,N,U,W);var Q=Math.exp(this.computedRadius[0]);Q=Math.max(1e-4,Q+b),this.radius.set(S,Math.log(Q))},l.translate=function(S,E,m,b){this.center.move(S,E||0,m||0,b||0)},l.setMatrix=function(S,E,m,b){var d=1;typeof m=="number"&&(d=m|0),(d<0||d>3)&&(d=1);var u=(d+2)%3,y=(d+1)%3;E||(this.recalcMatrix(S),E=this.computedMatrix);var f=E[d],P=E[d+4],L=E[d+8];if(b){var F=Math.abs(f),B=Math.abs(P),O=Math.abs(L),I=Math.max(F,B,O);F===I?(f=f<0?-1:1,P=L=0):O===I?(L=L<0?-1:1,f=P=0):(P=P<0?-1:1,f=L=0)}else{var z=h(f,P,L);f/=z,P/=z,L/=z}var N=E[u],U=E[u+4],W=E[u+8],Q=N*f+U*P+W*L;N-=f*Q,U-=P*Q,W-=L*Q;var ue=h(N,U,W);N/=ue,U/=ue,W/=ue;var se=P*W-L*U,he=L*N-f*W,G=f*U-P*N,$=h(se,he,G);se/=$,he/=$,G/=$,this.center.jump(S,ge,ce,ze),this.radius.idle(S),this.up.jump(S,f,P,L),this.right.jump(S,N,U,W);var J,Z;if(d===2){var re=E[1],ne=E[5],j=E[9],ee=re*N+ne*U+j*W,ie=re*se+ne*he+j*G;Be<0?J=-Math.PI/2:J=Math.PI/2,Z=Math.atan2(ie,ee)}else{var fe=E[2],be=E[6],Ae=E[10],Be=fe*f+be*P+Ae*L,Ie=fe*N+be*U+Ae*W,Ze=fe*se+be*he+Ae*G;J=Math.asin(v(Be)),Z=Math.atan2(Ze,Ie)}this.angle.jump(S,Z,J),this.recalcMatrix(S);var at=E[2],it=E[6],et=E[10],lt=this.computedMatrix;a(lt,E);var Me=lt[15],ge=lt[12]/Me,ce=lt[13]/Me,ze=lt[14]/Me,tt=Math.exp(this.computedRadius[0]);this.center.jump(S,ge-at*tt,ce-it*tt,ze-et*tt)},l.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},l.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},l.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},l.setDistance=function(S,E){E>0&&this.radius.set(S,Math.log(E))},l.lookAt=function(S,E,m,b){this.recalcMatrix(S),E=E||this.computedEye,m=m||this.computedCenter,b=b||this.computedUp;var d=b[0],u=b[1],y=b[2],f=h(d,u,y);if(!(f<1e-6)){d/=f,u/=f,y/=f;var P=E[0]-m[0],L=E[1]-m[1],z=E[2]-m[2],F=h(P,L,z);if(!(F<1e-6)){P/=F,L/=F,z/=F;var B=this.computedRight,O=B[0],I=B[1],N=B[2],U=d*O+u*I+y*N;O-=U*d,I-=U*u,N-=U*y;var W=h(O,I,N);if(!(W<.01&&(O=u*z-y*L,I=y*P-d*z,N=d*L-u*P,W=h(O,I,N),W<1e-6))){O/=W,I/=W,N/=W,this.up.set(S,d,u,y),this.right.set(S,O,I,N),this.center.set(S,m[0],m[1],m[2]),this.radius.set(S,Math.log(F));var Q=u*N-y*I,ue=y*O-d*N,se=d*I-u*O,he=h(Q,ue,se);Q/=he,ue/=he,se/=he;var G=d*P+u*L+y*z,$=O*P+I*L+N*z,J=Q*P+ue*L+se*z,Z=Math.asin(v(G)),re=Math.atan2(J,$),ne=this.angle._state,j=ne[ne.length-1],ee=ne[ne.length-2];j=j%(2*Math.PI);var ie=Math.abs(j+2*Math.PI-re),fe=Math.abs(j-re),be=Math.abs(j-2*Math.PI-re);ie<fe&&(j+=2*Math.PI),be<fe&&(j-=2*Math.PI),this.angle.jump(this.angle.lastT(),j,ee),this.angle.set(S,re,Z)}}}};function w(S){S=S||{};var E=S.center||[0,0,0],m=S.up||[0,1,0],b=S.right||p(m),d=S.radius||1,u=S.theta||0,y=S.phi||0;if(E=[].slice.call(E,0,3),m=[].slice.call(m,0,3),s(m,m),b=[].slice.call(b,0,3),s(b,b),"eye"in S){var f=S.eye,P=[f[0]-E[0],f[1]-E[1],f[2]-E[2]];n(b,P,m),h(b[0],b[1],b[2])<1e-6?b=p(m):s(b,b),d=h(P[0],P[1],P[2]);var L=c(m,P)/d,z=c(b,P)/d;y=Math.acos(L),u=Math.acos(z)}return d=Math.log(d),new T(S.zoomMin,S.zoomMax,E,m,b,d,u,y)}},5250:function(e){"use strict";e.exports=r;var t=+(Math.pow(2,27)+1);function r(o,a,i){var n=o*a,s=t*o,c=s-o,h=s-c,v=o-h,p=t*a,T=p-a,l=p-T,_=a-l,w=n-h*l,S=w-v*l,E=S-h*_,m=v*_-E;return i?(i[0]=m,i[1]=n,i):[m,n]}},9362:function(e){"use strict";e.exports=t;function t(r,o,a){var i=r+o,n=i-r,s=i-n,c=o-n,h=r-s;return a?(a[0]=h+c,a[1]=i,a):[h+c,i]}},1888:function(e,t,r){"use strict";var o=r(8828),a=r(1338),i=r(4793).hp;r.g.__TYPEDARRAY_POOL||(r.g.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),BIGUINT64:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),BIGINT64:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var n=typeof Uint8ClampedArray<"u",s=typeof BigUint64Array<"u",c=typeof BigInt64Array<"u",h=r.g.__TYPEDARRAY_POOL;h.UINT8C||(h.UINT8C=a([32,0])),h.BIGUINT64||(h.BIGUINT64=a([32,0])),h.BIGINT64||(h.BIGINT64=a([32,0])),h.BUFFER||(h.BUFFER=a([32,0]));var v=h.DATA,p=h.BUFFER;t.free=function(O){if(i.isBuffer(O))p[o.log2(O.length)].push(O);else{if(Object.prototype.toString.call(O)!=="[object ArrayBuffer]"&&(O=O.buffer),!O)return;var I=O.length||O.byteLength,N=o.log2(I)|0;v[N].push(O)}};function T(B){if(B){var O=B.length||B.byteLength,I=o.log2(O);v[I].push(B)}}function l(B){T(B.buffer)}t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=l,t.freeArrayBuffer=T,t.freeBuffer=function(O){p[o.log2(O.length)].push(O)},t.malloc=function(O,I){if(I===void 0||I==="arraybuffer")return _(O);switch(I){case"uint8":return w(O);case"uint16":return S(O);case"uint32":return E(O);case"int8":return m(O);case"int16":return b(O);case"int32":return d(O);case"float":case"float32":return u(O);case"double":case"float64":return y(O);case"uint8_clamped":return f(O);case"bigint64":return L(O);case"biguint64":return P(O);case"buffer":return F(O);case"data":case"dataview":return z(O);default:return null}return null};function _(O){var O=o.nextPow2(O),I=o.log2(O),N=v[I];return N.length>0?N.pop():new ArrayBuffer(O)}t.mallocArrayBuffer=_;function w(B){return new Uint8Array(_(B),0,B)}t.mallocUint8=w;function S(B){return new Uint16Array(_(2*B),0,B)}t.mallocUint16=S;function E(B){return new Uint32Array(_(4*B),0,B)}t.mallocUint32=E;function m(B){return new Int8Array(_(B),0,B)}t.mallocInt8=m;function b(B){return new Int16Array(_(2*B),0,B)}t.mallocInt16=b;function d(B){return new Int32Array(_(4*B),0,B)}t.mallocInt32=d;function u(B){return new Float32Array(_(4*B),0,B)}t.mallocFloat32=t.mallocFloat=u;function y(B){return new Float64Array(_(8*B),0,B)}t.mallocFloat64=t.mallocDouble=y;function f(B){return n?new Uint8ClampedArray(_(B),0,B):w(B)}t.mallocUint8Clamped=f;function P(B){return s?new BigUint64Array(_(8*B),0,B):null}t.mallocBigUint64=P;function L(B){return c?new BigInt64Array(_(8*B),0,B):null}t.mallocBigInt64=L;function z(B){return new DataView(_(B),0,B)}t.mallocDataView=z;function F(B){B=o.nextPow2(B);var O=o.log2(B),I=p[O];return I.length>0?I.pop():new i(B)}t.mallocBuffer=F,t.clearCache=function(){for(var O=0;O<32;++O)h.UINT8[O].length=0,h.UINT16[O].length=0,h.UINT32[O].length=0,h.INT8[O].length=0,h.INT16[O].length=0,h.INT32[O].length=0,h.FLOAT[O].length=0,h.DOUBLE[O].length=0,h.BIGUINT64[O].length=0,h.BIGINT64[O].length=0,h.UINT8C[O].length=0,v[O].length=0,p[O].length=0}},1755:function(e){"use strict";"use restrict";e.exports=t;function t(o){this.roots=new Array(o),this.ranks=new Array(o);for(var a=0;a<o;++a)this.roots[a]=a,this.ranks[a]=0}var r=t.prototype;Object.defineProperty(r,"length",{get:function(){return this.roots.length}}),r.makeSet=function(){var o=this.roots.length;return this.roots.push(o),this.ranks.push(0),o},r.find=function(o){for(var a=o,i=this.roots;i[o]!==o;)o=i[o];for(;i[a]!==o;){var n=i[a];i[a]=o,a=n}return o},r.link=function(o,a){var i=this.find(o),n=this.find(a);if(i!==n){var s=this.ranks,c=this.roots,h=s[i],v=s[n];h<v?c[i]=n:v<h?c[n]=i:(c[n]=i,++s[i])}}},1682:function(e){"use strict";function t(a,i){for(var n=1,s=a.length,c=a[0],h=a[0],v=1;v<s;++v)if(h=c,c=a[v],i(c,h)){if(v===n){n++;continue}a[n++]=c}return a.length=n,a}function r(a){for(var i=1,n=a.length,s=a[0],c=a[0],h=1;h<n;++h,c=s)if(c=s,s=a[h],s!==c){if(h===i){i++;continue}a[i++]=s}return a.length=i,a}function o(a,i,n){return a.length===0?a:i?(n||a.sort(i),t(a,i)):(n||a.sort(),r(a))}e.exports=o},4359:function(e,t,r){"use strict";e.exports=n;var o=r(7718),a=null,i=null;typeof document<"u"&&(a=document.createElement("canvas"),a.width=8192,a.height=1024,i=a.getContext("2d"));function n(s,c){return(typeof c!="object"||c===null)&&(c={}),o(s,c.canvas||a,c.context||i,c)}},7718:function(e,t,r){e.exports=L,e.exports.processPixels=P;var o=r(3711),a=r(9618),i=r(5878),n=r(332),s=r(2538),c=r(2095),h="b",v="b|",p="i",T="i|",l="sup",_="+",w="+1",S="sub",E="-",m="-1";function b(z,F,B,O){for(var I="<"+z+">",N="</"+z+">",U=I.length,W=N.length,Q=F[0]===_||F[0]===E,ue=0,se=-W;ue>-1&&(ue=B.indexOf(I,ue),!(ue===-1||(se=B.indexOf(N,ue+U),se===-1)||se<=ue));){for(var he=ue;he<se+W;++he)if(he<ue+U||he>=se)O[he]=null,B=B.substr(0,he)+" "+B.substr(he+1);else if(O[he]!==null){var G=O[he].indexOf(F[0]);G===-1?O[he]+=F:Q&&(O[he]=O[he].substr(0,G+1)+(1+parseInt(O[he][G+1]))+O[he].substr(G+2))}var $=ue+U,J=B.substr($,se-$),Z=J.indexOf(I);Z!==-1?ue=Z:ue=se+W}return O}function d(z,F,B){for(var O=F.textAlign||"start",I=F.textBaseline||"alphabetic",N=[1<<30,1<<30],U=[0,0],W=z.length,Q=0;Q<W;++Q)for(var ue=z[Q],se=0;se<2;++se)N[se]=Math.min(N[se],ue[se])|0,U[se]=Math.max(U[se],ue[se])|0;var he=0;switch(O){case"center":he=-.5*(N[0]+U[0]);break;case"right":case"end":he=-U[0];break;case"left":case"start":he=-N[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+O+"'")}var G=0;switch(I){case"hanging":case"top":G=-N[1];break;case"middle":G=-.5*(N[1]+U[1]);break;case"alphabetic":case"ideographic":G=-3*B;break;case"bottom":G=-U[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+I+"'")}var $=1/B;return"lineHeight"in F?$*=+F.lineHeight:"width"in F?$=F.width/(U[0]-N[0]):"height"in F&&($=F.height/(U[1]-N[1])),z.map(function(J){return[$*(J[0]+he),$*(J[1]+G)]})}function u(z,F,B,O,I,N){B=B.replace(/\n/g,""),N.breaklines===!0?B=B.replace(/\<br\>/g,`
+`):B=B.replace(/\<br\>/g," ");var U="",W=[];for(j=0;j<B.length;++j)W[j]=U;N.bolds===!0&&(W=b(h,v,B,W)),N.italics===!0&&(W=b(p,T,B,W)),N.superscripts===!0&&(W=b(l,w,B,W)),N.subscripts===!0&&(W=b(S,m,B,W));var Q=[],ue="";for(j=0;j<B.length;++j)W[j]!==null&&(ue+=B[j],Q.push(W[j]));var se=ue.split(`
+`),he=se.length,G=Math.round(I*O),$=O,J=O*2,Z=0,re=he*G+J;z.height<re&&(z.height=re),F.fillStyle="#000",F.fillRect(0,0,z.width,z.height),F.fillStyle="#fff";var ne,j,ee,ie,fe,be=0,Ae="";function Be(){if(Ae!==""){var ce=F.measureText(Ae).width;F.fillText(Ae,$+ee,J+ie),ee+=ce}}function Ie(){return""+Math.round(fe)+"px "}function Ze(ce,ze){var tt=""+F.font;if(N.subscripts===!0){var nt=ce.indexOf(E),Qe=ze.indexOf(E),Ct=nt>-1?parseInt(ce[1+nt]):0,St=Qe>-1?parseInt(ze[1+Qe]):0;Ct!==St&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,St-Ct),tt=tt.replace("?px ",Ie())),ie+=.25*G*(St-Ct)}if(N.superscripts===!0){var Ot=ce.indexOf(_),jt=ze.indexOf(_),ur=Ot>-1?parseInt(ce[1+Ot]):0,ar=jt>-1?parseInt(ze[1+jt]):0;ur!==ar&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,ar-ur),tt=tt.replace("?px ",Ie())),ie-=.25*G*(ar-ur)}if(N.bolds===!0){var Cr=ce.indexOf(v)>-1,vr=ze.indexOf(v)>-1;!Cr&&vr&&(_r?tt=tt.replace("italic ","italic bold "):tt="bold "+tt),Cr&&!vr&&(tt=tt.replace("bold ",""))}if(N.italics===!0){var _r=ce.indexOf(T)>-1,yt=ze.indexOf(T)>-1;!_r&&yt&&(tt="italic "+tt),_r&&!yt&&(tt=tt.replace("italic ",""))}F.font=tt}for(ne=0;ne<he;++ne){var at=se[ne]+`
+`;for(ee=0,ie=ne*G,fe=O,Ae="",j=0;j<at.length;++j){var it=j+be<Q.length?Q[j+be]:Q[Q.length-1];U===it?Ae+=at[j]:(Be(),Ae=at[j],it!==void 0&&(Ze(U,it),U=it))}Be(),be+=at.length;var et=Math.round(ee+2*$)|0;Z<et&&(Z=et)}var lt=Z,Me=J+G*he,ge=a(F.getImageData(0,0,lt,Me).data,[Me,lt,4]);return ge.pick(-1,-1,0).transpose(1,0)}function y(z,F){var B=o(z,128);return F?i(B.cells,B.positions,.25):{edges:B.cells,positions:B.positions}}function f(z,F,B,O){var I=y(z,O),N=d(I.positions,F,B),U=I.edges,W=F.orientation==="ccw";if(n(N,U),F.polygons||F.polygon||F.polyline){for(var Q=c(U,N),ue=new Array(Q.length),se=0;se<Q.length;++se){for(var he=Q[se],G=new Array(he.length),$=0;$<he.length;++$){for(var J=he[$],Z=new Array(J.length),re=0;re<J.length;++re)Z[re]=N[J[re]].slice();W&&Z.reverse(),G[$]=Z}ue[se]=G}return ue}else return F.triangles||F.triangulate||F.triangle?{cells:s(N,U,{delaunay:!1,exterior:!1,interior:!0}),positions:N}:{edges:U,positions:N}}function P(z,F,B){try{return f(z,F,B,!0)}catch{}try{return f(z,F,B,!1)}catch{}return F.polygons||F.polyline||F.polygon?[]:F.triangles||F.triangulate||F.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function L(z,F,B,O){var I=64,N=1.25,U={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};O&&(O.size&&O.size>0&&(I=O.size),O.lineSpacing&&O.lineSpacing>0&&(N=O.lineSpacing),O.styletags&&O.styletags.breaklines&&(U.breaklines=!!O.styletags.breaklines),O.styletags&&O.styletags.bolds&&(U.bolds=!!O.styletags.bolds),O.styletags&&O.styletags.italics&&(U.italics=!!O.styletags.italics),O.styletags&&O.styletags.subscripts&&(U.subscripts=!!O.styletags.subscripts),O.styletags&&O.styletags.superscripts&&(U.superscripts=!!O.styletags.superscripts)),B.font=[O.fontStyle,O.fontVariant,O.fontWeight,I+"px",O.font].filter(function(Q){return Q}).join(" "),B.textAlign="start",B.textBaseline="alphabetic",B.direction="ltr";var W=u(F,B,z,I,N,U);return P(W,O,I)}},1538:function(e){(function(){"use strict";if(typeof ses<"u"&&ses.ok&&!ses.ok())return;function r(f){f.permitHostObjects___&&f.permitHostObjects___(r)}typeof ses<"u"&&(ses.weakMapPermitHostObjects=r);var o=!1;if(typeof WeakMap=="function"){var a=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var i=new a,n=Object.freeze({});if(i.set(n,1),i.get(n)!==1)o=!0;else{e.exports=WeakMap;return}}}var s=Object.prototype.hasOwnProperty,c=Object.getOwnPropertyNames,h=Object.defineProperty,v=Object.isExtensible,p="weakmap:",T=p+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var l=new ArrayBuffer(25),_=new Uint8Array(l);crypto.getRandomValues(_),T=p+"rand:"+Array.prototype.map.call(_,function(f){return(f%36).toString(36)}).join("")+"___"}function w(f){return!(f.substr(0,p.length)==p&&f.substr(f.length-3)==="___")}if(h(Object,"getOwnPropertyNames",{value:function(P){return c(P).filter(w)}}),"getPropertyNames"in Object){var S=Object.getPropertyNames;h(Object,"getPropertyNames",{value:function(P){return S(P).filter(w)}})}function E(f){if(f!==Object(f))throw new TypeError("Not an object: "+f);var P=f[T];if(P&&P.key===f)return P;if(v(f)){P={key:f};try{return h(f,T,{value:P,writable:!1,enumerable:!1,configurable:!1}),P}catch{return}}}(function(){var f=Object.freeze;h(Object,"freeze",{value:function(F){return E(F),f(F)}});var P=Object.seal;h(Object,"seal",{value:function(F){return E(F),P(F)}});var L=Object.preventExtensions;h(Object,"preventExtensions",{value:function(F){return E(F),L(F)}})})();function m(f){return f.prototype=null,Object.freeze(f)}var b=!1;function d(){!b&&typeof console<"u"&&(b=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var u=0,y=function(){this instanceof y||d();var f=[],P=[],L=u++;function z(I,N){var U,W=E(I);return W?L in W?W[L]:N:(U=f.indexOf(I),U>=0?P[U]:N)}function F(I){var N=E(I);return N?L in N:f.indexOf(I)>=0}function B(I,N){var U,W=E(I);return W?W[L]=N:(U=f.indexOf(I),U>=0?P[U]=N:(U=f.length,P[U]=N,f[U]=I)),this}function O(I){var N=E(I),U,W;return N?L in N&&delete N[L]:(U=f.indexOf(I),U<0?!1:(W=f.length-1,f[U]=void 0,P[U]=P[W],f[U]=f[W],f.length=W,P.length=W,!0))}return Object.create(y.prototype,{get___:{value:m(z)},has___:{value:m(F)},set___:{value:m(B)},delete___:{value:m(O)}})};y.prototype=Object.create(Object.prototype,{get:{value:function(P,L){return this.get___(P,L)},writable:!0,configurable:!0},has:{value:function(P){return this.has___(P)},writable:!0,configurable:!0},set:{value:function(P,L){return this.set___(P,L)},writable:!0,configurable:!0},delete:{value:function(P){return this.delete___(P)},writable:!0,configurable:!0}}),typeof a=="function"?function(){o&&typeof Proxy<"u"&&(Proxy=void 0);function f(){this instanceof y||d();var P=new a,L=void 0,z=!1;function F(N,U){return L?P.has(N)?P.get(N):L.get___(N,U):P.get(N,U)}function B(N){return P.has(N)||(L?L.has___(N):!1)}var O;o?O=function(N,U){return P.set(N,U),P.has(N)||(L||(L=new y),L.set(N,U)),this}:O=function(N,U){if(z)try{P.set(N,U)}catch{L||(L=new y),L.set___(N,U)}else P.set(N,U);return this};function I(N){var U=!!P.delete(N);return L&&L.delete___(N)||U}return Object.create(y.prototype,{get___:{value:m(F)},has___:{value:m(B)},set___:{value:m(O)},delete___:{value:m(I)},permitHostObjects___:{value:m(function(N){if(N===r)z=!0;else throw new Error("bogus call to permitHostObjects___")})}})}f.prototype=y.prototype,e.exports=f,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),e.exports=y)})()},236:function(e,t,r){var o=r(8284);e.exports=a;function a(){var i={};return function(n){if((typeof n!="object"||n===null)&&typeof n!="function")throw new Error("Weakmap-shim: Key must be object");var s=n.valueOf(i);return s&&s.identity===i?s:o(n,i)}}},8284:function(e){e.exports=t;function t(r,o){var a={identity:o},i=r.valueOf;return Object.defineProperty(r,"valueOf",{value:function(n){return n!==o?i.apply(this,arguments):a},writable:!0}),a}},606:function(e,t,r){var o=r(236);e.exports=a;function a(){var i=o();return{get:function(n,s){var c=i(n);return c.hasOwnProperty("value")?c.value:s},set:function(n,s){return i(n).value=s,this},has:function(n){return"value"in i(n)},delete:function(n){return delete i(n).value}}}},3349:function(e){"use strict";function t(){return function(s,c,h,v,p,T){var l=s[0],_=h[0],w=[0],S=_;v|=0;var E=0,m=_;for(E=0;E<l;++E){{var b=c[v]-T,d=c[v+S]-T;b>=0!=d>=0&&p.push(w[0]+.5+.5*(b+d)/(b-d))}v+=m,++w[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p,T){var l=v.dtype,_=v.order,w=[l,_.join()].join(),S=c[w];return S||(c[w]=S=s([l,_])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,p,T)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"zeroCrossings"})},781:function(e,t,r){"use strict";e.exports=a;var o=r(3349);function a(i,n){var s=[];return n=+n||0,o(i.hi(i.shape[0]-1),s,n),s}},7790:function(){}},x={};function A(e){var t=x[e];if(t!==void 0)return t.exports;var r=x[e]={id:e,loaded:!1,exports:{}};return g[e].call(r.exports,r,r.exports,A),r.loaded=!0,r.exports}(function(){A.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()})(),function(){A.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e}}();var M=A(1964);H.exports=M})()}}),d5=Ye({"node_modules/color-name/index.js"(X,H){"use strict";H.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),EN=Ye({"node_modules/color-normalize/node_modules/color-parse/index.js"(X,H){"use strict";var g=d5();H.exports=A;var x={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function A(M){var e,t=[],r=1,o;if(typeof M=="string")if(M=M.toLowerCase(),g[M])t=g[M].slice(),o="rgb";else if(M==="transparent")r=0,o="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(M)){var a=M.slice(1),i=a.length,n=i<=4;r=1,n?(t=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],i===4&&(r=parseInt(a[3]+a[3],16)/255)):(t=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],i===8&&(r=parseInt(a[6]+a[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),o="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(M)){var s=e[1],c=s==="rgb",a=s.replace(/a$/,"");o=a;var i=a==="cmyk"?4:a==="gray"?1:3;t=e[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(p,T){if(/%$/.test(p))return T===i?parseFloat(p)/100:a==="rgb"?parseFloat(p)*255/100:parseFloat(p);if(a[T]==="h"){if(/deg$/.test(p))return parseFloat(p);if(x[p]!==void 0)return x[p]}return parseFloat(p)}),s===a&&t.push(1),r=c||t[i]===void 0?1:t[i],t=t.slice(0,i)}else M.length>10&&/[0-9](?:\s|\/)/.test(M)&&(t=M.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),o=M.match(/([a-z])/ig).join("").toLowerCase());else isNaN(M)?Array.isArray(M)||M.length?(t=[M[0],M[1],M[2]],o="rgb",r=M.length===4?M[3]:1):M instanceof Object&&(M.r!=null||M.red!=null||M.R!=null?(o="rgb",t=[M.r||M.red||M.R||0,M.g||M.green||M.G||0,M.b||M.blue||M.B||0]):(o="hsl",t=[M.h||M.hue||M.H||0,M.s||M.saturation||M.S||0,M.l||M.lightness||M.L||M.b||M.brightness]),r=M.a||M.alpha||M.opacity||1,M.opacity!=null&&(r/=100)):(o="rgb",t=[M>>>16,(M&65280)>>>8,M&255]);return{space:o,values:t,alpha:r}}}}),kN=Ye({"node_modules/color-normalize/node_modules/color-rgba/index.js"(X,H){"use strict";var g=EN();H.exports=function(M){Array.isArray(M)&&M.raw&&(M=String.raw.apply(null,arguments));var e,t,r,o=g(M);if(!o.space)return[];var a=[0,0,0],i=o.space[0]==="h"?[360,100,100]:[255,255,255];return e=Array(3),e[0]=Math.min(Math.max(o.values[0],a[0]),i[0]),e[1]=Math.min(Math.max(o.values[1],a[1]),i[1]),e[2]=Math.min(Math.max(o.values[2],a[2]),i[2]),o.space[0]==="h"&&(e=x(e)),e.push(Math.min(Math.max(o.alpha,0),1)),e};function x(A){var M=A[0]/360,e=A[1]/100,t=A[2]/100,r,o,a,i,n,s=0;if(e===0)return n=t*255,[n,n,n];for(o=t<.5?t*(1+e):t+e-t*e,r=2*t-o,i=[0,0,0];s<3;)a=M+1/3*-(s-1),a<0?a++:a>1&&a--,n=6*a<1?r+(o-r)*6*a:2*a<1?o:3*a<2?r+(o-r)*(2/3-a)*6:r,i[s++]=n*255;return i}}}),dx=Ye({"node_modules/clamp/index.js"(X,H){H.exports=g;function g(x,A,M){return A<M?x<A?A:x>M?M:x:x<M?M:x>A?A:x}}}),$3=Ye({"node_modules/dtype/index.js"(X,H){H.exports=function(g){switch(g){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}}}),hg=Ye({"node_modules/color-normalize/index.js"(X,H){"use strict";var g=kN(),x=dx(),A=$3();H.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var o=A(r),a=new o(4),i=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=g(t),t[0]/=255,t[1]/=255,t[2]/=255),M(t)?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:255,i&&(a[0]/=255,a[1]/=255,a[2]/=255,a[3]/=255),a):(i?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:1):(a[0]=x(Math.floor(t[0]*255),0,255),a[1]=x(Math.floor(t[1]*255),0,255),a[2]=x(Math.floor(t[2]*255),0,255),a[3]=t[3]==null?255:x(Math.floor(t[3]*255),0,255)),a)};function M(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}}}),Qv=Ye({"src/lib/str2rgbarray.js"(X,H){"use strict";var g=hg();function x(A){return A?g(A):[0,0,0,1]}H.exports=x}}),em=Ye({"src/lib/gl_format_color.js"(X,H){"use strict";var g=jo(),x=bh(),A=hg(),M=Su(),e=Gf().defaultLine,t=xp().isArrayOrTypedArray,r=A(e),o=1;function a(h,v){var p=h;return p[3]*=v,p}function i(h){if(g(h))return r;var v=A(h);return v.length?v:r}function n(h){return g(h)?h:o}function s(h,v,p){var T=h.color;T&&T._inputArray&&(T=T._inputArray);var l=t(T),_=t(v),w=M.extractOpts(h),S=[],E,m,b,d,u;if(w.colorscale!==void 0?E=M.makeColorScaleFuncFromTrace(h):E=i,l?m=function(f,P){return f[P]===void 0?r:A(E(f[P]))}:m=i,_?b=function(f,P){return f[P]===void 0?o:n(f[P])}:b=n,l||_)for(var y=0;y<p;y++)d=m(T,y),u=b(v,y),S[y]=a(d,u);else S=a(A(T),v);return S}function c(h){var v=M.extractOpts(h),p=v.colorscale;return v.reversescale&&(p=M.flipScale(v.colorscale)),p.map(function(T){var l=T[0],_=x(T[1]),w=_.toRgb();return{index:l,rgb:[w.r,w.g,w.b,w.a]}})}H.exports={formatColor:s,parseColorScale:c}}}),v5=Ye({"src/constants/gl3d_dashes.js"(X,H){"use strict";H.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}}}),Q3=Ye({"src/constants/gl3d_markers.js"(X,H){"use strict";H.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}}}),CN=Ye({"src/traces/scatter3d/calc_errors.js"(X,H){"use strict";var g=Hn();function x(e,t,r,o){if(!t||!t.visible)return null;for(var a=g.getComponentMethod("errorbars","makeComputeError")(t),i=new Array(e.length),n=0;n<e.length;n++){var s=a(+e[n],n);if(o.type==="log"){var c=o.c2l(e[n]),h=e[n]-s[0],v=e[n]+s[1];if(i[n]=[(o.c2l(h,!0)-c)*r,(o.c2l(v,!0)-c)*r],h>0){var p=o.c2l(h);o._lowerLogErrorBound||(o._lowerLogErrorBound=p),o._lowerErrorBound=Math.min(o._lowerLogErrorBound,p)}}else i[n]=[-s[0]*r,s[1]*r]}return i}function A(e){for(var t=0;t<e.length;t++)if(e[t])return e[t].length;return 0}function M(e,t,r){var o=[x(e.x,e.error_x,t[0],r.xaxis),x(e.y,e.error_y,t[1],r.yaxis),x(e.z,e.error_z,t[2],r.zaxis)],a=A(o);if(a===0)return null;for(var i=new Array(a),n=0;n<a;n++){for(var s=[[0,0,0],[0,0,0]],c=0;c<3;c++)if(o[c])for(var h=0;h<2;h++)s[h][c]=o[c][n][h];i[n]=s}return i}H.exports=M}}),LN=Ye({"src/traces/scatter3d/convert.js"(X,H){"use strict";var g=Gh().gl_line3d,x=Gh().gl_scatter3d,A=Gh().gl_error3d,M=Gh().gl_mesh3d,e=Gh().delaunay_triangulate,t=ta(),r=Qv(),o=em().formatColor,a=t1(),i=v5(),n=Q3(),s=Co(),c=Qp().appendArrayPointValue,h=CN();function v(P,L){this.scene=P,this.uid=L,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var p=v.prototype;p.handlePick=function(P){if(P.object&&(P.object===this.linePlot||P.object===this.delaunayMesh||P.object===this.textMarkers||P.object===this.scatterPlot)){var L=P.index=P.data.index;return P.object.highlight&&P.object.highlight(null),this.scatterPlot&&(P.object=this.scatterPlot,this.scatterPlot.highlight(P.data)),P.textLabel="",this.textLabels&&(t.isArrayOrTypedArray(this.textLabels)?(this.textLabels[L]||this.textLabels[L]===0)&&(P.textLabel=this.textLabels[L]):P.textLabel=this.textLabels),P.traceCoordinate=[this.data.x[L],this.data.y[L],this.data.z[L]],!0}};function T(P,L,z){var F=(z+1)%3,B=(z+2)%3,O=[],I=[],N;for(N=0;N<P.length;++N){var U=P[N];isNaN(U[F])||!isFinite(U[F])||isNaN(U[B])||!isFinite(U[B])||(O.push([U[F],U[B]]),I.push(N))}var W=e(O);for(N=0;N<W.length;++N)for(var Q=W[N],ue=0;ue<Q.length;++ue)Q[ue]=I[Q[ue]];return{positions:P,cells:W,meshColor:L}}function l(P){for(var L=[0,0,0],z=[[0,0,0],[0,0,0],[0,0,0]],F=[1,1,1],B=0;B<3;B++){var O=P[B];O&&O.copy_zstyle!==!1&&P[2].visible!==!1&&(O=P[2]),!(!O||!O.visible)&&(L[B]=O.width/2,z[B]=r(O.color),F[B]=O.thickness)}return{capSize:L,color:z,lineWidth:F}}function _(P){return P==null?0:P.indexOf("left")>-1?-1:P.indexOf("right")>-1?1:0}function w(P){return P==null?0:P.indexOf("top")>-1?-1:P.indexOf("bottom")>-1?1:0}function S(P){var L=0,z=0,F=[L,z];if(Array.isArray(P))for(var B=0;B<P.length;B++)F[B]=[L,z],P[B]&&(F[B][0]=_(P[B]),F[B][1]=w(P[B]));else F[0]=_(P),F[1]=w(P);return F}function E(P,L){return L(P*4)}function m(P){return n[P]}function b(P,L,z,F,B){var O=null;if(t.isArrayOrTypedArray(P)){O=[];for(var I=0;I<L;I++)P[I]===void 0?O[I]=F:O[I]=z(P[I],B)}else O=z(P,t.identity);return O}function d(P,L){var z=[],F=P.fullSceneLayout,B=P.dataScale,O=F.xaxis,I=F.yaxis,N=F.zaxis,U=L.marker,W=L.line,Q=L.x||[],ue=L.y||[],se=L.z||[],he=Q.length,G=L.xcalendar,$=L.ycalendar,J=L.zcalendar,Z,re,ne,j,ee,ie;for(ee=0;ee<he;ee++)Z=O.d2l(Q[ee],0,G)*B[0],re=I.d2l(ue[ee],0,$)*B[1],ne=N.d2l(se[ee],0,J)*B[2],z[ee]=[Z,re,ne];if(Array.isArray(L.text))ie=L.text;else if(t.isTypedArray(L.text))ie=Array.from(L.text);else if(L.text!==void 0)for(ie=new Array(he),ee=0;ee<he;ee++)ie[ee]=L.text;function fe(nt,Qe){var Ct=F[nt];return s.tickText(Ct,Ct.d2l(Qe),!0).text}var be=L.texttemplate;if(be){var Ae=P.fullLayout,Be=Ae._d3locale,Ie=Array.isArray(be),Ze=Ie?Math.min(be.length,he):he,at=Ie?function(nt){return be[nt]}:function(){return be};for(ie=new Array(Ze),ee=0;ee<Ze;ee++){var it={x:Q[ee],y:ue[ee],z:se[ee]},et={xLabel:fe("xaxis",Q[ee]),yLabel:fe("yaxis",ue[ee]),zLabel:fe("zaxis",se[ee])},lt={};c(lt,L,ee);var Me=L._meta||{};ie[ee]=t.texttemplateString(at(ee),et,Be,lt,it,Me)}}if(j={position:z,mode:L.mode,text:ie},"line"in L&&(j.lineColor=o(W,1,he),j.lineWidth=W.width,j.lineDashes=W.dash),"marker"in L){var ge=a(L);j.scatterColor=o(U,1,he),j.scatterSize=b(U.size,he,E,20,ge),j.scatterMarker=b(U.symbol,he,m,"\u25CF"),j.scatterLineWidth=U.line.width,j.scatterLineColor=o(U.line,1,he),j.scatterAngle=0}"textposition"in L&&(j.textOffset=S(L.textposition),j.textColor=o(L.textfont,1,he),j.textSize=b(L.textfont.size,he,t.identity,12),j.textFontFamily=L.textfont.family,j.textFontWeight=L.textfont.weight,j.textFontStyle=L.textfont.style,j.textFontVariant=L.textfont.variant,j.textAngle=0);var ce=["x","y","z"];for(j.project=[!1,!1,!1],j.projectScale=[1,1,1],j.projectOpacity=[1,1,1],ee=0;ee<3;++ee){var ze=L.projection[ce[ee]];(j.project[ee]=ze.show)&&(j.projectOpacity[ee]=ze.opacity,j.projectScale[ee]=ze.scale)}j.errorBounds=h(L,B,F);var tt=l([L.error_x,L.error_y,L.error_z]);return j.errorColor=tt.color,j.errorLineWidth=tt.lineWidth,j.errorCapSize=tt.capSize,j.delaunayAxis=L.surfaceaxis,j.delaunayColor=r(L.surfacecolor),j}function u(P){if(t.isArrayOrTypedArray(P)){var L=P[0];return t.isArrayOrTypedArray(L)&&(P=L),"rgb("+P.slice(0,3).map(function(z){return Math.round(z*255)})+")"}return null}function y(P){return t.isArrayOrTypedArray(P)?P.length===4&&typeof P[0]=="number"?u(P):P.map(u):null}p.update=function(P){var L=this.scene.glplot.gl,z,F,B,O,I=i.solid;this.data=P;var N=d(this.scene,P);"mode"in N&&(this.mode=N.mode),"lineDashes"in N&&N.lineDashes in i&&(I=i[N.lineDashes]),this.color=y(N.scatterColor)||y(N.lineColor),this.dataPoints=N.position,z={gl:this.scene.glplot.gl,position:N.position,color:N.lineColor,lineWidth:N.lineWidth||1,dashes:I[0],dashScale:I[1],opacity:P.opacity,connectGaps:P.connectgaps},this.mode.indexOf("lines")!==-1?this.linePlot?this.linePlot.update(z):(this.linePlot=g(z),this.linePlot._trace=this,this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var U=P.opacity;if(P.marker&&P.marker.opacity!==void 0&&(U*=P.marker.opacity),F={gl:this.scene.glplot.gl,position:N.position,color:N.scatterColor,size:N.scatterSize,glyph:N.scatterMarker,opacity:U,orthographic:!0,lineWidth:N.scatterLineWidth,lineColor:N.scatterLineColor,project:N.project,projectScale:N.projectScale,projectOpacity:N.projectOpacity},this.mode.indexOf("markers")!==-1?this.scatterPlot?this.scatterPlot.update(F):(this.scatterPlot=x(F),this.scatterPlot._trace=this,this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),O={gl:this.scene.glplot.gl,position:N.position,glyph:N.text,color:N.textColor,size:N.textSize,angle:N.textAngle,alignment:N.textOffset,font:N.textFontFamily,fontWeight:N.textFontWeight,fontStyle:N.textFontStyle,fontVariant:N.textFontVariant,orthographic:!0,lineWidth:0,project:!1,opacity:P.opacity},this.textLabels=P.hovertext||P.text,this.mode.indexOf("text")!==-1?this.textMarkers?this.textMarkers.update(O):(this.textMarkers=x(O),this.textMarkers._trace=this,this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),B={gl:this.scene.glplot.gl,position:N.position,color:N.errorColor,error:N.errorBounds,lineWidth:N.errorLineWidth,capSize:N.errorCapSize,opacity:P.opacity},this.errorBars?N.errorBounds?this.errorBars.update(B):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):N.errorBounds&&(this.errorBars=A(B),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),N.delaunayAxis>=0){var W=T(N.position,N.delaunayColor,N.delaunayAxis);W.opacity=P.opacity,this.delaunayMesh?this.delaunayMesh.update(W):(W.gl=L,this.delaunayMesh=M(W),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},p.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function f(P,L){var z=new v(P,L.uid);return z.update(L),z}H.exports=f}}),m5=Ye({"src/traces/scatter3d/attributes.js"(X,H){"use strict";var g=Pc(),x=Au(),A=tu(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Pl(),o=v5(),a=Q3(),i=Oo().extendFlat,n=Ou().overrideAll,s=Km(),c=g.line,h=g.marker,v=h.line,p=i({width:c.width,dash:{valType:"enumerated",values:s(o),dflt:"solid"}},A("line"));function T(_){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var l=H.exports=n({x:g.x,y:g.y,z:{valType:"data_array"},text:i({},g.text,{}),texttemplate:t({},{}),hovertext:i({},g.hovertext,{}),hovertemplate:e(),xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z"),mode:i({},g.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:T("x"),y:T("y"),z:T("z")},connectgaps:g.connectgaps,line:p,marker:i({symbol:{valType:"enumerated",values:s(a),dflt:"circle",arrayOk:!0},size:i({},h.size,{dflt:8}),sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,opacity:i({},h.opacity,{arrayOk:!1}),colorbar:h.colorbar,line:i({width:i({},v.width,{arrayOk:!1})},A("marker.line"))},A("marker")),textposition:i({},g.textposition,{dflt:"top center"}),textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:r.opacity,hoverinfo:i({},r.hoverinfo)},"calc","nested");l.x.editType=l.y.editType=l.z.editType="calc+clearAxisTypes"}}),PN=Ye({"src/traces/scatter3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=uu(),M=md(),e=Dd(),t=zd(),r=m5();H.exports=function(i,n,s,c){function h(E,m){return x.coerce(i,n,r,E,m)}var v=o(i,n,h,c);if(!v){n.visible=!1;return}h("text"),h("hovertext"),h("hovertemplate"),h("xhoverformat"),h("yhoverformat"),h("zhoverformat"),h("mode"),A.hasMarkers(n)&&M(i,n,s,c,h,{noSelect:!0,noAngle:!0}),A.hasLines(n)&&(h("connectgaps"),e(i,n,s,c,h)),A.hasText(n)&&(h("texttemplate"),t(i,n,c,h,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var p=(n.line||{}).color,T=(n.marker||{}).color;h("surfaceaxis")>=0&&h("surfacecolor",p||T);for(var l=["x","y","z"],_=0;_<3;++_){var w="projection."+l[_];h(w+".show")&&(h(w+".opacity"),h(w+".scale"))}var S=g.getComponentMethod("errorbars","supplyDefaults");S(i,n,p||T||s,{axis:"z"}),S(i,n,p||T||s,{axis:"y",inherit:"z"}),S(i,n,p||T||s,{axis:"x",inherit:"z"})};function o(a,i,n,s){var c=0,h=n("x"),v=n("y"),p=n("z"),T=g.getComponentMethod("calendars","handleTraceDefaults");return T(a,i,["x","y","z"],s),h&&v&&p&&(c=Math.min(h.length,v.length,p.length),i._length=i._xlength=i._ylength=i._zlength=c),c}}}),IN=Ye({"src/traces/scatter3d/calc.js"(X,H){"use strict";var g=Av(),x=Fd();H.exports=function(M,e){var t=[{x:!1,y:!1,trace:e,t:{}}];return g(t,e),x(M,e),t}}}),RN=Ye({"node_modules/get-canvas-context/index.js"(X,H){H.exports=g;function g(x,A){if(typeof x!="string")throw new TypeError("must specify type string");if(A=A||{},typeof document>"u"&&!A.canvas)return null;var M=A.canvas||document.createElement("canvas");typeof A.width=="number"&&(M.width=A.width),typeof A.height=="number"&&(M.height=A.height);var e=A,t;try{var r=[x];x.indexOf("webgl")===0&&r.push("experimental-"+x);for(var o=0;o<r.length;o++)if(t=M.getContext(r[o],e),t)return t}catch{t=null}return t||null}}}),DN=Ye({"node_modules/webgl-context/index.js"(X,H){var g=RN();H.exports=function(A){return g("webgl",A)}}}),g5=Ye({"src/lib/show_no_webgl_msg.js"(X,H){"use strict";var g=Fn(),x=function(){};H.exports=function(M){for(var e in M)typeof M[e]=="function"&&(M[e]=x);M.destroy=function(){M.container.parentNode.removeChild(M.container)};var t=document.createElement("div");t.className="no-webgl",t.style.cursor="pointer",t.style.fontSize="24px",t.style.color=g.defaults[0],t.style.position="absolute",t.style.left=t.style.top="0px",t.style.width=t.style.height="100%",t.style["background-color"]=g.lightLine,t.style["z-index"]=30;var r=document.createElement("p");return r.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",r.style.position="relative",r.style.top="50%",r.style.left="50%",r.style.height="30%",r.style.width="50%",r.style.margin="-15% 0 0 -25%",t.appendChild(r),M.container.appendChild(t),M.container.style.background="#FFFFFF",M.container.onclick=function(){window.open("https://get.webgl.org")},!1}}}),zN=Ye({"src/plots/gl3d/layout/convert.js"(X,H){"use strict";var g=Qv(),x=ta(),A=["xaxis","yaxis","zaxis"];function M(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var e=M.prototype;e.merge=function(r,o){for(var a=this,i=0;i<3;++i){var n=o[A[i]];if(!n.visible){a.tickEnable[i]=!1,a.labelEnable[i]=!1,a.lineEnable[i]=!1,a.lineTickEnable[i]=!1,a.gridEnable[i]=!1,a.zeroEnable[i]=!1,a.backgroundEnable[i]=!1;continue}a.labels[i]=r._meta?x.templateString(n.title.text,r._meta):n.title.text,"font"in n.title&&(n.title.font.color&&(a.labelColor[i]=g(n.title.font.color)),n.title.font.family&&(a.labelFont[i]=n.title.font.family),n.title.font.size&&(a.labelSize[i]=n.title.font.size),n.title.font.weight&&(a.labelFontWeight[i]=n.title.font.weight),n.title.font.style&&(a.labelFontStyle[i]=n.title.font.style),n.title.font.variant&&(a.labelFontVariant[i]=n.title.font.variant)),"showline"in n&&(a.lineEnable[i]=n.showline),"linecolor"in n&&(a.lineColor[i]=g(n.linecolor)),"linewidth"in n&&(a.lineWidth[i]=n.linewidth),"showgrid"in n&&(a.gridEnable[i]=n.showgrid),"gridcolor"in n&&(a.gridColor[i]=g(n.gridcolor)),"gridwidth"in n&&(a.gridWidth[i]=n.gridwidth),n.type==="log"?a.zeroEnable[i]=!1:"zeroline"in n&&(a.zeroEnable[i]=n.zeroline),"zerolinecolor"in n&&(a.zeroLineColor[i]=g(n.zerolinecolor)),"zerolinewidth"in n&&(a.zeroLineWidth[i]=n.zerolinewidth),"ticks"in n&&n.ticks?a.lineTickEnable[i]=!0:a.lineTickEnable[i]=!1,"ticklen"in n&&(a.lineTickLength[i]=a._defaultLineTickLength[i]=n.ticklen),"tickcolor"in n&&(a.lineTickColor[i]=g(n.tickcolor)),"tickwidth"in n&&(a.lineTickWidth[i]=n.tickwidth),"tickangle"in n&&(a.tickAngle[i]=n.tickangle==="auto"?-3600:Math.PI*-n.tickangle/180),"showticklabels"in n&&(a.tickEnable[i]=n.showticklabels),"tickfont"in n&&(n.tickfont.color&&(a.tickColor[i]=g(n.tickfont.color)),n.tickfont.family&&(a.tickFont[i]=n.tickfont.family),n.tickfont.size&&(a.tickSize[i]=n.tickfont.size),n.tickfont.weight&&(a.tickFontWeight[i]=n.tickfont.weight),n.tickfont.style&&(a.tickFontStyle[i]=n.tickfont.style),n.tickfont.variant&&(a.tickFontVariant[i]=n.tickfont.variant)),"mirror"in n?["ticks","all","allticks"].indexOf(n.mirror)!==-1?(a.lineTickMirror[i]=!0,a.lineMirror[i]=!0):n.mirror===!0?(a.lineTickMirror[i]=!1,a.lineMirror[i]=!0):(a.lineTickMirror[i]=!1,a.lineMirror[i]=!1):a.lineMirror[i]=!1,"showbackground"in n&&n.showbackground!==!1?(a.backgroundEnable[i]=!0,a.backgroundColor[i]=g(n.backgroundcolor)):a.backgroundEnable[i]=!1}};function t(r,o){var a=new M;return a.merge(r,o),a}H.exports=t}}),FN=Ye({"src/plots/gl3d/layout/spikes.js"(X,H){"use strict";var g=Qv(),x=["xaxis","yaxis","zaxis"];function A(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var M=A.prototype;M.merge=function(t){for(var r=0;r<3;++r){var o=t[x[r]];if(!o.visible){this.enabled[r]=!1,this.drawSides[r]=!1;continue}this.enabled[r]=o.showspikes,this.colors[r]=g(o.spikecolor),this.drawSides[r]=o.spikesides,this.lineWidth[r]=o.spikethickness}};function e(t){var r=new A;return r.merge(t),r}H.exports=e}}),ON=Ye({"src/plots/gl3d/layout/tick_marks.js"(X,H){"use strict";H.exports=t;var g=Co(),x=ta(),A=["xaxis","yaxis","zaxis"],M=[0,0,0];function e(r){for(var o=new Array(3),a=0;a<3;++a){for(var i=r[a],n=new Array(i.length),s=0;s<i.length;++s)n[s]=i[s].x;o[a]=n}return o}function t(r){for(var o=r.axesOptions,a=r.glplot.axesPixels,i=r.fullSceneLayout,n=[[],[],[]],s=0;s<3;++s){var c=i[A[s]];if(c._length=(a[s].hi-a[s].lo)*a[s].pixelsPerDataUnit/r.dataScale[s],Math.abs(c._length)===1/0||isNaN(c._length))n[s]=[];else{c._input_range=c.range.slice(),c.range[0]=a[s].lo/r.dataScale[s],c.range[1]=a[s].hi/r.dataScale[s],c._m=1/(r.dataScale[s]*a[s].pixelsPerDataUnit),c.range[0]===c.range[1]&&(c.range[0]-=1,c.range[1]+=1);var h=c.tickmode;if(c.tickmode==="auto"){c.tickmode="linear";var v=c.nticks||x.constrain(c._length/40,4,9);g.autoTicks(c,Math.abs(c.range[1]-c.range[0])/v)}for(var p=g.calcTicks(c,{msUTC:!0}),T=0;T<p.length;++T)p[T].x=p[T].x*r.dataScale[s],c.type==="date"&&(p[T].text=p[T].text.replace(/\<br\>/g," "));n[s]=p,c.tickmode=h}}o.ticks=n;for(var s=0;s<3;++s){M[s]=.5*(r.glplot.bounds[0][s]+r.glplot.bounds[1][s]);for(var T=0;T<2;++T)o.bounds[T][s]=r.glplot.bounds[T][s]}r.contourLevels=e(n)}}}),BN=Ye({"src/plots/gl3d/scene.js"(X,H){"use strict";var g=Gh().gl_plot3d,x=g.createCamera,A=g.createScene,M=DN(),e=_2(),t=Hn(),r=ta(),o=r.preserveDrawingBuffer(),a=Co(),i=Lc(),n=Qv(),s=g5(),c=BS(),h=zN(),v=FN(),p=ON(),T=Yd().applyAutorangeOptions,l,_,w=!1;function S(z,F){var B=document.createElement("div"),O=z.container;this.graphDiv=z.graphDiv;var I=document.createElementNS("http://www.w3.org/2000/svg","svg");I.style.position="absolute",I.style.top=I.style.left="0px",I.style.width=I.style.height="100%",I.style["z-index"]=20,I.style["pointer-events"]="none",B.appendChild(I),this.svgContainer=I,B.id=z.id,B.style.position="absolute",B.style.top=B.style.left="0px",B.style.width=B.style.height="100%",O.appendChild(B),this.fullLayout=F,this.id=z.id||"scene",this.fullSceneLayout=F[this.id],this.plotArgs=[[],{},{}],this.axesOptions=h(F,F[this.id]),this.spikeOptions=v(F[this.id]),this.container=B,this.staticMode=!!z.staticPlot,this.pixelRatio=this.pixelRatio||z.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=t.getComponentMethod("annotations3d","convert"),this.drawAnnotations=t.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var E=S.prototype;E.prepareOptions=function(){var z=this,F={canvas:z.canvas,gl:z.gl,glOptions:{preserveDrawingBuffer:o,premultipliedAlpha:!0,antialias:!0},container:z.container,axes:z.axesOptions,spikes:z.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:z.camera,pixelRatio:z.pixelRatio};if(z.staticMode){if(!_&&(l=document.createElement("canvas"),_=M({canvas:l,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!_))throw new Error("error creating static canvas/context for image server");F.gl=_,F.canvas=l}return F};var m=!0;E.tryCreatePlot=function(){var z=this,F=z.prepareOptions(),B=!0;try{z.glplot=A(F)}catch{if(z.staticMode||!m||o)B=!1;else{r.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{o=F.glOptions.preserveDrawingBuffer=!0,z.glplot=A(F)}catch{o=F.glOptions.preserveDrawingBuffer=!1,B=!1}}}return m=!1,B},E.initializeGLCamera=function(){var z=this,F=z.fullSceneLayout.camera,B=F.projection.type==="orthographic";z.camera=x(z.container,{center:[F.center.x,F.center.y,F.center.z],eye:[F.eye.x,F.eye.y,F.eye.z],up:[F.up.x,F.up.y,F.up.z],_ortho:B,zoomMin:.01,zoomMax:100,mode:"orbit"})},E.initializeGLPlot=function(){var z=this;z.initializeGLCamera();var F=z.tryCreatePlot();if(!F)return s(z);z.traces={},z.make4thDimension();var B=z.graphDiv,O=B.layout,I=function(){var U={};return z.isCameraChanged(O)&&(U[z.id+".camera"]=z.getCamera()),z.isAspectChanged(O)&&(U[z.id+".aspectratio"]=z.glplot.getAspectratio(),O[z.id].aspectmode!=="manual"&&(z.fullSceneLayout.aspectmode=O[z.id].aspectmode=U[z.id+".aspectmode"]="manual")),U},N=function(U){if(U.fullSceneLayout.dragmode!==!1){var W=I();U.saveLayout(O),U.graphDiv.emit("plotly_relayout",W)}};return z.glplot.canvas&&(z.glplot.canvas.addEventListener("mouseup",function(){N(z)}),z.glplot.canvas.addEventListener("touchstart",function(){w=!0}),z.glplot.canvas.addEventListener("wheel",function(U){if(B._context._scrollZoom.gl3d){if(z.camera._ortho){var W=U.deltaX>U.deltaY?1.1:.9090909090909091,Q=z.glplot.getAspectratio();z.glplot.setAspectratio({x:W*Q.x,y:W*Q.y,z:W*Q.z})}N(z)}},e?{passive:!1}:!1),z.glplot.canvas.addEventListener("mousemove",function(){if(z.fullSceneLayout.dragmode!==!1&&z.camera.mouseListener.buttons!==0){var U=I();z.graphDiv.emit("plotly_relayouting",U)}}),z.staticMode||z.glplot.canvas.addEventListener("webglcontextlost",function(U){B&&B.emit&&B.emit("plotly_webglcontextlost",{event:U,layer:z.id})},!1)),z.glplot.oncontextloss=function(){z.recoverContext()},z.glplot.onrender=function(){z.render()},!0},E.render=function(){var z=this,F=z.graphDiv,B,O=z.svgContainer,I=z.container.getBoundingClientRect();F._fullLayout._calcInverseTransform(F);var N=F._fullLayout._invScaleX,U=F._fullLayout._invScaleY,W=I.width*N,Q=I.height*U;O.setAttributeNS(null,"viewBox","0 0 "+W+" "+Q),O.setAttributeNS(null,"width",W),O.setAttributeNS(null,"height",Q),p(z),z.glplot.axes.update(z.axesOptions);for(var ue=Object.keys(z.traces),se=null,he=z.glplot.selection,G=0;G<ue.length;++G)B=z.traces[ue[G]],B.data.hoverinfo!=="skip"&&B.handlePick(he)&&(se=B),B.setContourLevels&&B.setContourLevels();function $(Ze,at,it){var et=z.fullSceneLayout[Ze+"axis"];return et.type!=="log"&&(at=et.d2l(at)),a.hoverLabelText(et,at,it)}if(se!==null){var J=c(z.glplot.cameraParams,he.dataCoordinate);B=se.data;var Z=F._fullData[B.index],re=he.index,ne={xLabel:$("x",he.traceCoordinate[0],B.xhoverformat),yLabel:$("y",he.traceCoordinate[1],B.yhoverformat),zLabel:$("z",he.traceCoordinate[2],B.zhoverformat)},j=i.castHoverinfo(Z,z.fullLayout,re),ee=(j||"").split("+"),ie=j&&j==="all";!Z.hovertemplate&&!ie&&(ee.indexOf("x")===-1&&(ne.xLabel=void 0),ee.indexOf("y")===-1&&(ne.yLabel=void 0),ee.indexOf("z")===-1&&(ne.zLabel=void 0),ee.indexOf("text")===-1&&(he.textLabel=void 0),ee.indexOf("name")===-1&&(se.name=void 0));var fe,be=[];B.type==="cone"||B.type==="streamtube"?(ne.uLabel=$("x",he.traceCoordinate[3],B.uhoverformat),(ie||ee.indexOf("u")!==-1)&&be.push("u: "+ne.uLabel),ne.vLabel=$("y",he.traceCoordinate[4],B.vhoverformat),(ie||ee.indexOf("v")!==-1)&&be.push("v: "+ne.vLabel),ne.wLabel=$("z",he.traceCoordinate[5],B.whoverformat),(ie||ee.indexOf("w")!==-1)&&be.push("w: "+ne.wLabel),ne.normLabel=he.traceCoordinate[6].toPrecision(3),(ie||ee.indexOf("norm")!==-1)&&be.push("norm: "+ne.normLabel),B.type==="streamtube"&&(ne.divergenceLabel=he.traceCoordinate[7].toPrecision(3),(ie||ee.indexOf("divergence")!==-1)&&be.push("divergence: "+ne.divergenceLabel)),he.textLabel&&be.push(he.textLabel),fe=be.join("<br>")):B.type==="isosurface"||B.type==="volume"?(ne.valueLabel=a.hoverLabelText(z._mockAxis,z._mockAxis.d2l(he.traceCoordinate[3]),B.valuehoverformat),be.push("value: "+ne.valueLabel),he.textLabel&&be.push(he.textLabel),fe=be.join("<br>")):fe=he.textLabel;var Ae={x:he.traceCoordinate[0],y:he.traceCoordinate[1],z:he.traceCoordinate[2],data:Z._input,fullData:Z,curveNumber:Z.index,pointNumber:re};i.appendArrayPointValue(Ae,Z,re),B._module.eventData&&(Ae=Z._module.eventData(Ae,he,Z,{},re));var Be={points:[Ae]};if(z.fullSceneLayout.hovermode){var Ie=[];i.loneHover({trace:Z,x:(.5+.5*J[0]/J[3])*W,y:(.5-.5*J[1]/J[3])*Q,xLabel:ne.xLabel,yLabel:ne.yLabel,zLabel:ne.zLabel,text:fe,name:se.name,color:i.castHoverOption(Z,re,"bgcolor")||se.color,borderColor:i.castHoverOption(Z,re,"bordercolor"),fontFamily:i.castHoverOption(Z,re,"font.family"),fontSize:i.castHoverOption(Z,re,"font.size"),fontColor:i.castHoverOption(Z,re,"font.color"),nameLength:i.castHoverOption(Z,re,"namelength"),textAlign:i.castHoverOption(Z,re,"align"),hovertemplate:r.castOption(Z,re,"hovertemplate"),hovertemplateLabels:r.extendFlat({},Ae,ne),eventData:[Ae]},{container:O,gd:F,inOut_bbox:Ie}),Ae.bbox=Ie[0]}he.distance<5&&(he.buttons||w)?F.emit("plotly_click",Be):F.emit("plotly_hover",Be),this.oldEventData=Be}else i.loneUnhover(O),this.oldEventData&&F.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;z.drawAnnotations(z)},E.recoverContext=function(){var z=this;z.glplot.dispose();var F=function(){if(z.glplot.gl.isContextLost()){requestAnimationFrame(F);return}if(!z.initializeGLPlot()){r.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}z.plot.apply(z,z.plotArgs)};requestAnimationFrame(F)};var b=["xaxis","yaxis","zaxis"];function d(z,F,B){for(var O=z.fullSceneLayout,I=0;I<3;I++){var N=b[I],U=N.charAt(0),W=O[N],Q=F[U],ue=F[U+"calendar"],se=F["_"+U+"length"];if(!r.isArrayOrTypedArray(Q))B[0][I]=Math.min(B[0][I],0),B[1][I]=Math.max(B[1][I],se-1);else for(var he,G=0;G<(se||Q.length);G++)if(r.isArrayOrTypedArray(Q[G]))for(var $=0;$<Q[G].length;++$)he=W.d2l(Q[G][$],0,ue),!isNaN(he)&&isFinite(he)&&(B[0][I]=Math.min(B[0][I],he),B[1][I]=Math.max(B[1][I],he));else he=W.d2l(Q[G],0,ue),!isNaN(he)&&isFinite(he)&&(B[0][I]=Math.min(B[0][I],he),B[1][I]=Math.max(B[1][I],he))}}function u(z,F){for(var B=z.fullSceneLayout,O=B.annotations||[],I=0;I<3;I++)for(var N=b[I],U=N.charAt(0),W=B[N],Q=0;Q<O.length;Q++){var ue=O[Q];if(ue.visible){var se=W.r2l(ue[U]);!isNaN(se)&&isFinite(se)&&(F[0][I]=Math.min(F[0][I],se),F[1][I]=Math.max(F[1][I],se))}}}E.plot=function(z,F,B){var O=this;if(O.plotArgs=[z,F,B],!O.glplot.contextLost){var I,N,U,W,Q,ue,se=F[O.id],he=B[O.id];O.fullLayout=F,O.fullSceneLayout=se,O.axesOptions.merge(F,se),O.spikeOptions.merge(se),O.setViewport(se),O.updateFx(se.dragmode,se.hovermode),O.camera.enableWheel=O.graphDiv._context._scrollZoom.gl3d,O.glplot.setClearColor(n(se.bgcolor)),O.setConvert(Q),z?Array.isArray(z)||(z=[z]):z=[];var G=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(U=0;U<z.length;++U)I=z[U],!(I.visible!==!0||I._length===0)&&d(this,I,G);u(this,G);var $=[1,1,1];for(W=0;W<3;++W)G[1][W]===G[0][W]?$[W]=1:$[W]=1/(G[1][W]-G[0][W]);for(O.dataScale=$,O.convertAnnotations(this),U=0;U<z.length;++U)I=z[U],!(I.visible!==!0||I._length===0)&&(N=O.traces[I.uid],N?N.data.type===I.type?N.update(I):(N.dispose(),N=I._module.plot(this,I),O.traces[I.uid]=N):(N=I._module.plot(this,I),O.traces[I.uid]=N),N.name=I.name);var J=Object.keys(O.traces);e:for(U=0;U<J.length;++U){for(W=0;W<z.length;++W)if(z[W].uid===J[U]&&z[W].visible===!0&&z[W]._length!==0)continue e;N=O.traces[J[U]],N.dispose(),delete O.traces[J[U]]}O.glplot.objects.sort(function(Qe,Ct){return Qe._trace.data.index-Ct._trace.data.index});var Z=[[0,0,0],[0,0,0]],re=[],ne={};for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type,ue in ne?(ne[ue].acc*=$[U],ne[ue].count+=1):ne[ue]={acc:$[U],count:1};var j;if(Q.autorange){Z[0][U]=1/0,Z[1][U]=-1/0;var ee=O.glplot.objects,ie=O.fullSceneLayout.annotations||[],fe=Q._name.charAt(0);for(W=0;W<ee.length;W++){var be=ee[W],Ae=be.bounds,Be=be._trace.data._pad||0;be.constructor.name==="ErrorBars"&&Q._lowerLogErrorBound?Z[0][U]=Math.min(Z[0][U],Q._lowerLogErrorBound):Z[0][U]=Math.min(Z[0][U],Ae[0][U]/$[U]-Be),Z[1][U]=Math.max(Z[1][U],Ae[1][U]/$[U]+Be)}for(W=0;W<ie.length;W++){var Ie=ie[W];if(Ie.visible){var Ze=Q.r2l(Ie[fe]);Z[0][U]=Math.min(Z[0][U],Ze),Z[1][U]=Math.max(Z[1][U],Ze)}}if("rangemode"in Q&&Q.rangemode==="tozero"&&(Z[0][U]=Math.min(Z[0][U],0),Z[1][U]=Math.max(Z[1][U],0)),Z[0][U]>Z[1][U])Z[0][U]=-1,Z[1][U]=1;else{var at=Z[1][U]-Z[0][U];Z[0][U]-=at/32,Z[1][U]+=at/32}if(j=[Z[0][U],Z[1][U]],j=T(j,Q),Z[0][U]=j[0],Z[1][U]=j[1],Q.isReversed()){var it=Z[0][U];Z[0][U]=Z[1][U],Z[1][U]=it}}else j=Q.range,Z[0][U]=Q.r2l(j[0]),Z[1][U]=Q.r2l(j[1]);Z[0][U]===Z[1][U]&&(Z[0][U]-=1,Z[1][U]+=1),re[U]=Z[1][U]-Z[0][U],Q.range=[Z[0][U],Z[1][U]],Q.limitRange(),O.glplot.setBounds(U,{min:Q.range[0]*$[U],max:Q.range[1]*$[U]})}var et,lt=se.aspectmode;if(lt==="cube")et=[1,1,1];else if(lt==="manual"){var Me=se.aspectratio;et=[Me.x,Me.y,Me.z]}else if(lt==="auto"||lt==="data"){var ge=[1,1,1];for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type;var ce=ne[ue];ge[U]=Math.pow(ce.acc,1/ce.count)/$[U]}lt==="data"||Math.max.apply(null,ge)/Math.min.apply(null,ge)<=4?et=ge:et=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");se.aspectratio.x=he.aspectratio.x=et[0],se.aspectratio.y=he.aspectratio.y=et[1],se.aspectratio.z=he.aspectratio.z=et[2],O.glplot.setAspectratio(se.aspectratio),O.viewInitial.aspectratio||(O.viewInitial.aspectratio={x:se.aspectratio.x,y:se.aspectratio.y,z:se.aspectratio.z}),O.viewInitial.aspectmode||(O.viewInitial.aspectmode=se.aspectmode);var ze=se.domain||null,tt=F._size||null;if(ze&&tt){var nt=O.container.style;nt.position="absolute",nt.left=tt.l+ze.x[0]*tt.w+"px",nt.top=tt.t+(1-ze.y[1])*tt.h+"px",nt.width=tt.w*(ze.x[1]-ze.x[0])+"px",nt.height=tt.h*(ze.y[1]-ze.y[0])+"px"}O.glplot.redraw()}},E.destroy=function(){var z=this;z.glplot&&(z.camera.mouseListener.enabled=!1,z.container.removeEventListener("wheel",z.camera.wheelListener),z.camera=null,z.glplot.dispose(),z.container.parentNode.removeChild(z.container),z.glplot=null)};function y(z){return[[z.eye.x,z.eye.y,z.eye.z],[z.center.x,z.center.y,z.center.z],[z.up.x,z.up.y,z.up.z]]}function f(z){return{up:{x:z.up[0],y:z.up[1],z:z.up[2]},center:{x:z.center[0],y:z.center[1],z:z.center[2]},eye:{x:z.eye[0],y:z.eye[1],z:z.eye[2]},projection:{type:z._ortho===!0?"orthographic":"perspective"}}}E.getCamera=function(){var z=this;return z.camera.view.recalcMatrix(z.camera.view.lastT()),f(z.camera)},E.setViewport=function(z){var F=this,B=z.camera;F.camera.lookAt.apply(this,y(B)),F.glplot.setAspectratio(z.aspectratio);var O=B.projection.type==="orthographic",I=F.camera._ortho;O!==I&&(F.glplot.redraw(),F.glplot.clearRGBA(),F.glplot.dispose(),F.initializeGLPlot())},E.isCameraChanged=function(z){var F=this,B=F.getCamera(),O=r.nestedProperty(z,F.id+".camera"),I=O.get();function N(ue,se,he,G){var $=["up","center","eye"],J=["x","y","z"];return se[$[he]]&&ue[$[he]][J[G]]===se[$[he]][J[G]]}var U=!1;if(I===void 0)U=!0;else{for(var W=0;W<3;W++)for(var Q=0;Q<3;Q++)if(!N(B,I,W,Q)){U=!0;break}(!I.projection||B.projection&&B.projection.type!==I.projection.type)&&(U=!0)}return U},E.isAspectChanged=function(z){var F=this,B=F.glplot.getAspectratio(),O=r.nestedProperty(z,F.id+".aspectratio"),I=O.get();return I===void 0||I.x!==B.x||I.y!==B.y||I.z!==B.z},E.saveLayout=function(z){var F=this,B=F.fullLayout,O,I,N,U,W,Q,ue=F.isCameraChanged(z),se=F.isAspectChanged(z),he=ue||se;if(he){var G={};if(ue&&(O=F.getCamera(),I=r.nestedProperty(z,F.id+".camera"),N=I.get(),G[F.id+".camera"]=N),se&&(U=F.glplot.getAspectratio(),W=r.nestedProperty(z,F.id+".aspectratio"),Q=W.get(),G[F.id+".aspectratio"]=Q),t.call("_storeDirectGUIEdit",z,B._preGUI,G),ue){I.set(O);var $=r.nestedProperty(B,F.id+".camera");$.set(O)}if(se){W.set(U);var J=r.nestedProperty(B,F.id+".aspectratio");J.set(U),F.glplot.redraw()}}return he},E.updateFx=function(z,F){var B=this,O=B.camera;if(O)if(z==="orbit")O.mode="orbit",O.keyBindingMode="rotate";else if(z==="turntable"){O.up=[0,0,1],O.mode="turntable",O.keyBindingMode="rotate";var I=B.graphDiv,N=I._fullLayout,U=B.fullSceneLayout.camera,W=U.up.x,Q=U.up.y,ue=U.up.z;if(ue/Math.sqrt(W*W+Q*Q+ue*ue)<.999){var se=B.id+".camera.up",he={x:0,y:0,z:1},G={};G[se]=he;var $=I.layout;t.call("_storeDirectGUIEdit",$,N._preGUI,G),U.up=he,r.nestedProperty($,se).set(he)}}else O.keyBindingMode=z;B.fullSceneLayout.hovermode=F};function P(z,F,B){for(var O=0,I=B-1;O<I;++O,--I)for(var N=0;N<F;++N)for(var U=0;U<4;++U){var W=4*(F*O+N)+U,Q=4*(F*I+N)+U,ue=z[W];z[W]=z[Q],z[Q]=ue}}function L(z,F,B){for(var O=0;O<B;++O)for(var I=0;I<F;++I){var N=4*(F*O+I),U=z[N+3];if(U>0)for(var W=255/U,Q=0;Q<3;++Q)z[N+Q]=Math.min(W*z[N+Q],255)}}E.toImage=function(z){var F=this;z||(z="png"),F.staticMode&&F.container.appendChild(l),F.glplot.redraw();var B=F.glplot.gl,O=B.drawingBufferWidth,I=B.drawingBufferHeight;B.bindFramebuffer(B.FRAMEBUFFER,null);var N=new Uint8Array(O*I*4);B.readPixels(0,0,O,I,B.RGBA,B.UNSIGNED_BYTE,N),P(N,O,I),L(N,O,I);var U=document.createElement("canvas");U.width=O,U.height=I;var W=U.getContext("2d",{willReadFrequently:!0}),Q=W.createImageData(O,I);Q.data.set(N),W.putImageData(Q,0,0);var ue;switch(z){case"jpeg":ue=U.toDataURL("image/jpeg");break;case"webp":ue=U.toDataURL("image/webp");break;default:ue=U.toDataURL("image/png")}return F.staticMode&&F.container.removeChild(l),ue},E.setConvert=function(){for(var z=this,F=0;F<3;F++){var B=z.fullSceneLayout[b[F]];a.setConvert(B,z.fullLayout),B.setScale=r.noop}},E.make4thDimension=function(){var z=this,F=z.graphDiv,B=F._fullLayout;z._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},a.setConvert(z._mockAxis,B)},H.exports=S}}),NN=Ye({"src/plots/gl3d/layout/attributes.js"(X,H){"use strict";H.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}}}),y5=Ye({"src/plots/gl3d/layout/axis_attributes.js"(X,H){"use strict";var g=Fn(),x=Vh(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({visible:x.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:g.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:x.color,categoryorder:x.categoryorder,categoryarray:x.categoryarray,title:{text:x.title.text,font:x.title.font},type:A({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorange:x.autorange,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},rangemode:x.rangemode,minallowed:x.minallowed,maxallowed:x.maxallowed,range:A({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,mirror:x.mirror,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,tickfont:x.tickfont,tickangle:x.tickangle,tickprefix:x.tickprefix,showtickprefix:x.showtickprefix,ticksuffix:x.ticksuffix,showticksuffix:x.showticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickformat:x.tickformat,tickformatstops:x.tickformatstops,hoverformat:x.hoverformat,showline:x.showline,linecolor:x.linecolor,linewidth:x.linewidth,showgrid:x.showgrid,gridcolor:A({},x.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:x.gridwidth,zeroline:x.zeroline,zerolinecolor:x.zerolinecolor,zerolinewidth:x.zerolinewidth},"plot","from-root")}}),_5=Ye({"src/plots/gl3d/layout/layout_attributes.js"(X,H){"use strict";var g=y5(),x=Wu().attributes,A=Oo().extendFlat,M=ta().counterRegex;function e(t,r,o){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:o,editType:"camera"},editType:"camera"}}H.exports={_arrayAttrRegexps:[M("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:A(e(0,0,1),{}),center:A(e(0,0,0),{}),eye:A(e(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:x({name:"scene",editType:"plot"}),aspectmode:{valType:"enumerated",values:["auto","cube","data","manual"],dflt:"auto",editType:"plot",impliedEdits:{"aspectratio.x":void 0,"aspectratio.y":void 0,"aspectratio.z":void 0}},aspectratio:{x:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},y:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},z:{valType:"number",min:0,editType:"plot",impliedEdits:{"^aspectmode":"manual"}},editType:"plot",impliedEdits:{aspectmode:"manual"}},xaxis:g,yaxis:g,zaxis:g,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}}}),UN=Ye({"src/plots/gl3d/layout/axis_defaults.js"(X,H){"use strict";var g=bh().mix,x=ta(),A=cl(),M=y5(),e=FS(),t=R_(),r=["xaxis","yaxis","zaxis"],o=100*136/187;H.exports=function(i,n,s){var c,h;function v(l,_){return x.coerce(c,h,M,l,_)}for(var p=0;p<r.length;p++){var T=r[p];c=i[T]||{},h=A.newContainer(n,T),h._id=T[0]+s.scene,h._name=T,e(c,h,v,s),t(c,h,v,{font:s.font,letter:T[0],data:s.data,showGrid:!0,noAutotickangles:!0,noTicklabelindex:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,noInsiderange:!0,bgColor:s.bgColor,calendar:s.calendar},s.fullLayout),v("gridcolor",g(h.color,s.bgColor,o).toRgbString()),v("title.text",T[0]),h.setScale=x.noop,v("showspikes")&&(v("spikesides"),v("spikethickness"),v("spikecolor",h.color)),v("showaxeslabels"),v("showbackground")&&v("backgroundcolor")}}}}),jN=Ye({"src/plots/gl3d/layout/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Hn(),M=ig(),e=UN(),t=_5(),r=jh().getSubplotData,o="gl3d";H.exports=function(n,s,c){var h=s._basePlotModules.length>1;function v(p){if(!h){var T=g.validate(n[p],t[p]);if(T)return n[p]}}M(n,s,c,{type:o,attributes:t,handleDefaults:a,fullLayout:s,font:s.font,fullData:c,getDfltFromLayout:v,autotypenumbersDflt:s.autotypenumbers,paper_bgcolor:s.paper_bgcolor,calendar:s.calendar})};function a(i,n,s,c){for(var h=s("bgcolor"),v=x.combine(h,c.paper_bgcolor),p=["up","center","eye"],T=0;T<p.length;T++)s("camera."+p[T]+".x"),s("camera."+p[T]+".y"),s("camera."+p[T]+".z");s("camera.projection.type");var l=!!s("aspectratio.x")&&!!s("aspectratio.y")&&!!s("aspectratio.z"),_=l?"manual":"auto",w=s("aspectmode",_);l||(i.aspectratio=n.aspectratio={x:1,y:1,z:1},w==="manual"&&(n.aspectmode="auto"),i.aspectmode=n.aspectmode);var S=r(c.fullData,o,c.id);e(i,n,{font:c.font,scene:c.id,data:S,bgColor:v,calendar:c.calendar,autotypenumbersDflt:c.autotypenumbersDflt,fullLayout:c.fullLayout}),A.getComponentMethod("annotations3d","handleDefaults")(i,n,c);var E=c.getDfltFromLayout("dragmode");if(E!==!1&&!E)if(E="orbit",i.camera&&i.camera.up){var m=i.camera.up.x,b=i.camera.up.y,d=i.camera.up.z;d!==0&&(!m||!b||!d||d/Math.sqrt(m*m+b*b+d*d)>.999)&&(E="turntable")}else E="turntable";s("dragmode",E),s("hovermode",c.getDfltFromLayout("hovermode"))}}}),pg=Ye({"src/plots/gl3d/index.js"(X){"use strict";var H=Ou().overrideAll,g=Zm(),x=BN(),A=jh().getSubplotData,M=ta(),e=vd(),t="gl3d",r="scene";X.name=t,X.attr=r,X.idRoot=r,X.idRegex=X.attrRegex=M.counterRegex("scene"),X.attributes=NN(),X.layoutAttributes=_5(),X.baseLayoutAttrOverrides=H({hoverlabel:g.hoverlabel},"plot","nested"),X.supplyLayoutDefaults=jN(),X.plot=function(a){for(var i=a._fullLayout,n=a._fullData,s=i._subplots[t],c=0;c<s.length;c++){var h=s[c],v=A(n,t,h),p=i[h],T=p.camera,l=p._scene;l||(l=new x({id:h,graphDiv:a,container:a.querySelector(".gl-container"),staticPlot:a._context.staticPlot,plotGlPixelRatio:a._context.plotGlPixelRatio,camera:T},i),p._scene=l),l.viewInitial||(l.viewInitial={up:{x:T.up.x,y:T.up.y,z:T.up.z},eye:{x:T.eye.x,y:T.eye.y,z:T.eye.z},center:{x:T.center.x,y:T.center.y,z:T.center.z}}),l.plot(v,i,a.layout)}},X.clean=function(o,a,i,n){for(var s=n._subplots[t]||[],c=0;c<s.length;c++){var h=s[c];!a[h]&&n[h]._scene&&(n[h]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(".annotation-"+h).remove())}},X.toSVG=function(o){for(var a=o._fullLayout,i=a._subplots[t],n=a._size,s=0;s<i.length;s++){var c=a[i[s]],h=c.domain,v=c._scene,p=v.toImage("png"),T=a._glimages.append("svg:image");T.attr({xmlns:e.svg,"xlink:href":p,x:n.l+n.w*h.x[0],y:n.t+n.h*(1-h.y[1]),width:n.w*(h.x[1]-h.x[0]),height:n.h*(h.y[1]-h.y[0]),preserveAspectRatio:"none"}),v.destroy()}},X.cleanId=function(a){if(a.match(/^scene[0-9]*$/)){var i=a.substr(5);return i==="1"&&(i=""),r+i}},X.updateFx=function(o){for(var a=o._fullLayout,i=a._subplots[t],n=0;n<i.length;n++){var s=a[i[n]]._scene;s.updateFx(a.dragmode,a.hovermode)}}}}),VN=Ye({"src/traces/scatter3d/index.js"(X,H){"use strict";H.exports={plot:LN(),attributes:m5(),markerSymbols:Q3(),supplyDefaults:PN(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:IN(),moduleType:"trace",name:"scatter3d",basePlotModule:pg(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}}}),qN=Ye({"lib/scatter3d.js"(X,H){"use strict";H.exports=VN()}}),vx=Ye({"src/traces/surface/attributes.js"(X,H){"use strict";var g=Fn(),x=tu(),A=Cc().axisHoverFormat,M=xs().hovertemplateAttrs,e=Pl(),t=Oo().extendFlat,r=Ou().overrideAll;function o(n){return{valType:"boolean",dflt:!1}}function a(n){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:o("x"),y:o("y"),z:o("z")},color:{valType:"color",dflt:g.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:g.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var i=H.exports=r(t({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:M(),xhoverformat:A("x"),yhoverformat:A("y"),zhoverformat:A("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},x("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:a("x"),y:a("y"),z:a("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05},roughness:{valType:"number",min:0,max:1,dflt:.5},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},hoverinfo:t({},e.hoverinfo),showlegend:t({},e.showlegend,{dflt:!1})}),"calc","nested");i.x.editType=i.y.editType=i.z.editType="calc+clearAxisTypes"}}),x5=Ye({"src/traces/surface/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=vx(),e=.1;function t(i,n){for(var s=[],c=32,h=0;h<c;h++){var v=h/(c-1),p=n+(1-n)*(1-Math.pow(Math.sin(i*v*Math.PI),2));s.push([v,Math.max(0,Math.min(1,p))])}return s}function r(i){var n=0;if(!Array.isArray(i)||i.length<2||!i[0]||!i[i.length-1]||+i[0][0]!=0||+i[i.length-1][0]!=1)return!1;for(var s=0;s<i.length;s++){var c=i[s];if(c.length!==2||+c[0]<n)return!1;n=+c[0]}return!0}function o(i,n,s,c){var h,v;function p(u,y){return x.coerce(i,n,M,u,y)}var T=p("x"),l=p("y"),_=p("z");if(!_||!_.length||T&&T.length<1||l&&l.length<1){n.visible=!1;return}n._xlength=Array.isArray(T)&&x.isArrayOrTypedArray(T[0])?_.length:_[0].length,n._ylength=_.length;var w=g.getComponentMethod("calendars","handleTraceDefaults");w(i,n,["x","y","z"],c),p("text"),p("hovertext"),p("hovertemplate"),p("xhoverformat"),p("yhoverformat"),p("zhoverformat"),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lightposition.x","lightposition.y","lightposition.z","hidesurface","connectgaps","opacity"].forEach(function(u){p(u)});var S=p("surfacecolor"),E=["x","y","z"];for(h=0;h<3;++h){var m="contours."+E[h],b=p(m+".show"),d=p(m+".highlight");if(b||d)for(v=0;v<3;++v)p(m+".project."+E[v]);b&&(p(m+".color"),p(m+".width"),p(m+".usecolormap")),d&&(p(m+".highlightcolor"),p(m+".highlightwidth")),p(m+".start"),p(m+".end"),p(m+".size")}A(i,n,c,p,{prefix:"",cLetter:"c"}),a(i,n,c,p),n._length=null}function a(i,n,s,c){var h=c("opacityscale");h==="max"?n.opacityscale=[[0,e],[1,1]]:h==="min"?n.opacityscale=[[0,1],[1,e]]:h==="extremes"?n.opacityscale=t(1,e):r(h)||(n.opacityscale=void 0)}H.exports={supplyDefaults:o,opacityscaleDefaults:a}}}),HN=Ye({"src/traces/surface/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.surfacecolor?g(A,M,{vals:M.surfacecolor,containerStr:"",cLetter:"c"}):g(A,M,{vals:M.z,containerStr:"",cLetter:"c"})}}}),GN=Ye({"src/traces/surface/convert.js"(X,H){"use strict";var g=Gh().gl_surface3d,x=Gh().ndarray,A=Gh().ndarray_linear_interpolate.d2,M=Y2(),e=K2(),t=ta().isArrayOrTypedArray,r=em().parseColorScale,o=Qv(),a=Su().extractOpts;function i(y,f,P){this.scene=y,this.uid=P,this.surface=f,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var n=i.prototype;n.getXat=function(y,f,P,L){var z=t(this.data.x)?t(this.data.x[0])?this.data.x[f][y]:this.data.x[y]:y;return P===void 0?z:L.d2l(z,0,P)},n.getYat=function(y,f,P,L){var z=t(this.data.y)?t(this.data.y[0])?this.data.y[f][y]:this.data.y[f]:f;return P===void 0?z:L.d2l(z,0,P)},n.getZat=function(y,f,P,L){var z=this.data.z[f][y];return z===null&&this.data.connectgaps&&this.data._interpolatedZ&&(z=this.data._interpolatedZ[f][y]),P===void 0?z:L.d2l(z,0,P)},n.handlePick=function(y){if(y.object===this.surface){var f=(y.data.index[0]-1)/this.dataScaleX-1,P=(y.data.index[1]-1)/this.dataScaleY-1,L=Math.max(Math.min(Math.round(f),this.data.z[0].length-1),0),z=Math.max(Math.min(Math.round(P),this.data._ylength-1),0);y.index=[L,z],y.traceCoordinate=[this.getXat(L,z),this.getYat(L,z),this.getZat(L,z)],y.dataCoordinate=[this.getXat(L,z,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(L,z,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(L,z,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var F=0;F<3;F++){var B=y.dataCoordinate[F];B!=null&&(y.dataCoordinate[F]*=this.scene.dataScale[F])}var O=this.data.hovertext||this.data.text;return t(O)&&O[z]&&O[z][L]!==void 0?y.textLabel=O[z][L]:O?y.textLabel=O:y.textLabel="",y.data.dataCoordinate=y.dataCoordinate.slice(),this.surface.highlight(y.data),this.scene.glplot.spikes.position=y.dataCoordinate,!0}};function s(y){var f=y[0].rgb,P=y[y.length-1].rgb;return f[0]===P[0]&&f[1]===P[1]&&f[2]===P[2]&&f[3]===P[3]}var c=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999];function h(y,f){if(y<f)return 0;for(var P=0;Math.floor(y%f)===0;)y/=f,P++;return P}function v(y){for(var f=[],P=0;P<c.length;P++){var L=c[P];f.push(h(y,L))}return f}function p(y){for(var f=v(y),P=y,L=0;L<c.length;L++)if(f[L]>0){P=c[L];break}return P}function T(y,f){if(!(y<1||f<1)){for(var P=v(y),L=v(f),z=1,F=0;F<c.length;F++)z*=Math.pow(c[F],Math.max(P[F],L[F]));return z}}function l(y){if(y.length!==0){for(var f=1,P=0;P<y.length;P++)f=T(f,y[P]);return f}}n.calcXnums=function(y){var f,P=[];for(f=1;f<y;f++){var L=this.getXat(f-1,0),z=this.getXat(f,0);z!==L&&L!==void 0&&L!==null&&z!==void 0&&z!==null?P[f-1]=Math.abs(z-L):P[f-1]=0}var F=0;for(f=1;f<y;f++)F+=P[f-1];for(f=1;f<y;f++)P[f-1]===0?P[f-1]=1:P[f-1]=Math.round(F/P[f-1]);return P},n.calcYnums=function(y){var f,P=[];for(f=1;f<y;f++){var L=this.getYat(0,f-1),z=this.getYat(0,f);z!==L&&L!==void 0&&L!==null&&z!==void 0&&z!==null?P[f-1]=Math.abs(z-L):P[f-1]=0}var F=0;for(f=1;f<y;f++)F+=P[f-1];for(f=1;f<y;f++)P[f-1]===0?P[f-1]=1:P[f-1]=Math.round(F/P[f-1]);return P};var _=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],w=_[9],S=_[13];n.estimateScale=function(y,f){for(var P=f===0?this.calcXnums(y):this.calcYnums(y),L=1+l(P);L<w;)L*=2;for(;L>S;)L--,L/=p(L),L++,L<w&&(L=S);var z=Math.round(L/y);return z>1?z:1};function E(y,f,P){var L=P[8]+P[2]*f[0]+P[5]*f[1];return y[0]=(P[6]+P[0]*f[0]+P[3]*f[1])/L,y[1]=(P[7]+P[1]*f[0]+P[4]*f[1])/L,y}function m(y,f,P){return b(y,f,E,P),y}function b(y,f,P,L){for(var z=[0,0],F=y.shape[0],B=y.shape[1],O=0;O<F;O++)for(var I=0;I<B;I++)P(z,[O,I],L),y.set(O,I,A(f,z[0],z[1]));return y}n.refineCoords=function(y){for(var f=this.dataScaleX,P=this.dataScaleY,L=y[0].shape[0],z=y[0].shape[1],F=Math.floor(y[0].shape[0]*f+1)|0,B=Math.floor(y[0].shape[1]*P+1)|0,O=1+L+1,I=1+z+1,N=x(new Float32Array(O*I),[O,I]),U=[1/f,0,0,0,1/P,0,0,0,1],W=0;W<y.length;++W){this.surface.padField(N,y[W]);var Q=x(new Float32Array(F*B),[F,B]);m(Q,N,U),y[W]=Q}};function d(y,f){for(var P=!1,L=0;L<y.length;L++)if(f===y[L]){P=!0;break}P===!1&&y.push(f)}n.setContourLevels=function(){var y=[[],[],[]],f=[!1,!1,!1],P=!1,L,z,F;for(L=0;L<3;++L)if(this.showContour[L]&&(P=!0,this.contourSize[L]>0&&this.contourStart[L]!==null&&this.contourEnd[L]!==null&&this.contourEnd[L]>this.contourStart[L]))for(f[L]=!0,z=this.contourStart[L];z<this.contourEnd[L];z+=this.contourSize[L])F=z*this.scene.dataScale[L],d(y[L],F);if(P){var B=[[],[],[]];for(L=0;L<3;++L)this.showContour[L]&&(B[L]=f[L]?y[L]:this.scene.contourLevels[L]);this.surface.update({levels:B})}},n.update=function(y){var f=this.scene,P=f.fullSceneLayout,L=this.surface,z=r(y),F=f.dataScale,B=y.z[0].length,O=y._ylength,I=f.contourLevels;this.data=y;var N,U,W,Q,ue=[];for(N=0;N<3;N++)for(ue[N]=[],U=0;U<B;U++)ue[N][U]=[];for(U=0;U<B;U++)for(W=0;W<O;W++)ue[0][U][W]=this.getXat(U,W,y.xcalendar,P.xaxis),ue[1][U][W]=this.getYat(U,W,y.ycalendar,P.yaxis),ue[2][U][W]=this.getZat(U,W,y.zcalendar,P.zaxis);if(y.connectgaps)for(y._emptypoints=e(ue[2]),M(ue[2],y._emptypoints),y._interpolatedZ=[],U=0;U<B;U++)for(y._interpolatedZ[U]=[],W=0;W<O;W++)y._interpolatedZ[U][W]=ue[2][U][W];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q==null?ue[N][U][W]=NaN:Q=ue[N][U][W]*=F[N];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q!=null&&(this.minValues[N]>Q&&(this.minValues[N]=Q),this.maxValues[N]<Q&&(this.maxValues[N]=Q));for(N=0;N<3;N++)this.objectOffset[N]=.5*(this.minValues[N]+this.maxValues[N]);for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q!=null&&(ue[N][U][W]-=this.objectOffset[N]);var se=[x(new Float32Array(B*O),[B,O]),x(new Float32Array(B*O),[B,O]),x(new Float32Array(B*O),[B,O])];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)se[N].set(U,W,ue[N][U][W]);ue=[];var he={colormap:z,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!y.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacityscale:y.opacityscale,opacity:y.opacity},G=a(y);if(he.intensityBounds=[G.min,G.max],y.surfacecolor){var $=x(new Float32Array(B*O),[B,O]);for(U=0;U<B;U++)for(W=0;W<O;W++)$.set(U,W,y.surfacecolor[W][U]);se.push($)}else he.intensityBounds[0]*=F[2],he.intensityBounds[1]*=F[2];(S<se[0].shape[0]||S<se[0].shape[1])&&(this.refineData=!1),this.refineData===!0&&(this.dataScaleX=this.estimateScale(se[0].shape[0],0),this.dataScaleY=this.estimateScale(se[0].shape[1],1),(this.dataScaleX!==1||this.dataScaleY!==1)&&this.refineCoords(se)),y.surfacecolor&&(he.intensity=se.pop());var J=[!0,!0,!0],Z=["x","y","z"];for(N=0;N<3;++N){var re=y.contours[Z[N]];J[N]=re.highlight,he.showContour[N]=re.show||re.highlight,he.showContour[N]&&(he.contourProject[N]=[re.project.x,re.project.y,re.project.z],re.show?(this.showContour[N]=!0,he.levels[N]=I[N],L.highlightColor[N]=he.contourColor[N]=o(re.color),re.usecolormap?L.highlightTint[N]=he.contourTint[N]=0:L.highlightTint[N]=he.contourTint[N]=1,he.contourWidth[N]=re.width,this.contourStart[N]=re.start,this.contourEnd[N]=re.end,this.contourSize[N]=re.size):(this.showContour[N]=!1,this.contourStart[N]=null,this.contourEnd[N]=null,this.contourSize[N]=0),re.highlight&&(he.dynamicColor[N]=o(re.highlightcolor),he.dynamicWidth[N]=re.highlightwidth))}s(z)&&(he.vertexColor=!0),he.objectOffset=this.objectOffset,he.coords=se,L.update(he),L.visible=y.visible,L.enableDynamic=J,L.enableHighlight=J,L.snapToData=!0,"lighting"in y&&(L.ambientLight=y.lighting.ambient,L.diffuseLight=y.lighting.diffuse,L.specularLight=y.lighting.specular,L.roughness=y.lighting.roughness,L.fresnel=y.lighting.fresnel),"lightposition"in y&&(L.lightPosition=[y.lightposition.x,y.lightposition.y,y.lightposition.z])},n.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()};function u(y,f){var P=y.glplot.gl,L=g({gl:P}),z=new i(y,L,f.uid);return L._trace=z,z.update(f),y.glplot.add(L),z}H.exports=u}}),WN=Ye({"src/traces/surface/index.js"(X,H){"use strict";H.exports={attributes:vx(),supplyDefaults:x5().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:HN(),plot:GN(),moduleType:"trace",name:"surface",basePlotModule:pg(),categories:["gl3d","2dMap","showLegend"],meta:{}}}}),ZN=Ye({"lib/surface.js"(X,H){"use strict";H.exports=WN()}}),A1=Ye({"src/traces/mesh3d/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=vx(),e=Pl(),t=Oo().extendFlat;H.exports=t({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"}),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},g("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:M.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:t({},M.contours.x.show,{}),color:M.contours.x.color,width:M.contours.x.width,editType:"calc"},lightposition:{x:t({},M.lightposition.x,{dflt:1e5}),y:t({},M.lightposition.y,{dflt:1e5}),z:t({},M.lightposition.z,{dflt:0}),editType:"calc"},lighting:t({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc"},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc"},editType:"calc"},M.lighting),hoverinfo:t({},e.hoverinfo,{editType:"calc"}),showlegend:t({},e.showlegend,{dflt:!1})})}}),eT=Ye({"src/traces/isosurface/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r=Ou().overrideAll;function o(n){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function a(n){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var i=H.exports=r(t({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:o("x"),y:o("y"),z:o("z")},caps:{x:a("x"),y:a("y"),z:a("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:A(),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),valuehoverformat:x("value",1),showlegend:t({},e.showlegend,{dflt:!1})},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:M.opacity,lightposition:M.lightposition,lighting:M.lighting,flatshading:M.flatshading,contour:M.contour,hoverinfo:t({},e.hoverinfo)}),"calc","nested");i.flatshading.dflt=!0,i.lighting.facenormalsepsilon.dflt=0,i.x.editType=i.y.editType=i.z.editType=i.value.editType="calc+clearAxisTypes"}}),b5=Ye({"src/traces/isosurface/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=eT(),M=sh();function e(r,o,a,i){function n(s,c){return g.coerce(r,o,A,s,c)}t(r,o,a,i,n)}function t(r,o,a,i,n){var s=n("isomin"),c=n("isomax");c!=null&&s!==void 0&&s!==null&&s>c&&(o.isomin=null,o.isomax=null);var h=n("x"),v=n("y"),p=n("z"),T=n("value");if(!h||!h.length||!v||!v.length||!p||!p.length||!T||!T.length){o.visible=!1;return}var l=x.getComponentMethod("calendars","handleTraceDefaults");l(r,o,["x","y","z"],i),n("valuehoverformat"),["x","y","z"].forEach(function(E){n(E+"hoverformat");var m="caps."+E,b=n(m+".show");b&&n(m+".fill");var d="slices."+E,u=n(d+".show");u&&(n(d+".fill"),n(d+".locations"))});var _=n("spaceframe.show");_&&n("spaceframe.fill");var w=n("surface.show");w&&(n("surface.count"),n("surface.fill"),n("surface.pattern"));var S=n("contour.show");S&&(n("contour.color"),n("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(E){n(E)}),M(r,o,i,n,{prefix:"",cLetter:"c"}),o._length=null}H.exports={supplyDefaults:e,supplyIsoDefaults:t}}}),tT=Ye({"src/traces/streamtube/calc.js"(X,H){"use strict";var g=ta(),x=jp();function A(r,o){o._len=Math.min(o.u.length,o.v.length,o.w.length,o.x.length,o.y.length,o.z.length),o._u=t(o.u,o._len),o._v=t(o.v,o._len),o._w=t(o.w,o._len),o._x=t(o.x,o._len),o._y=t(o.y,o._len),o._z=t(o.z,o._len);var a=M(o);o._gridFill=a.fill,o._Xs=a.Xs,o._Ys=a.Ys,o._Zs=a.Zs,o._len=a.len;var i=0,n,s,c;o.starts&&(n=t(o.starts.x||[]),s=t(o.starts.y||[]),c=t(o.starts.z||[]),i=Math.min(n.length,s.length,c.length)),o._startsX=n||[],o._startsY=s||[],o._startsZ=c||[];var h=0,v=1/0,p;for(p=0;p<o._len;p++){var T=o._u[p],l=o._v[p],_=o._w[p],w=Math.sqrt(T*T+l*l+_*_);h=Math.max(h,w),v=Math.min(v,w)}for(x(r,o,{vals:[v,h],containerStr:"",cLetter:"c"}),p=0;p<i;p++){var S=n[p];a.xMax=Math.max(a.xMax,S),a.xMin=Math.min(a.xMin,S);var E=s[p];a.yMax=Math.max(a.yMax,E),a.yMin=Math.min(a.yMin,E);var m=c[p];a.zMax=Math.max(a.zMax,m),a.zMin=Math.min(a.zMin,m)}o._slen=i,o._normMax=h,o._xbnds=[a.xMin,a.xMax],o._ybnds=[a.yMin,a.yMax],o._zbnds=[a.zMin,a.zMax]}function M(r){var o=r._x,a=r._y,i=r._z,n=r._len,s,c,h,v=-1/0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S="",E,m,b,d,u,y,f,P,L;for(n&&(d=o[0],y=a[0],P=i[0]),n>1&&(u=o[n-1],f=a[n-1],L=i[n-1]),s=0;s<n;s++)v=Math.max(v,o[s]),p=Math.min(p,o[s]),T=Math.max(T,a[s]),l=Math.min(l,a[s]),_=Math.max(_,i[s]),w=Math.min(w,i[s]),!E&&o[s]!==d&&(E=!0,S+="x"),!m&&a[s]!==y&&(m=!0,S+="y"),!b&&i[s]!==P&&(b=!0,S+="z");E||(S+="x"),m||(S+="y"),b||(S+="z");var z=e(r._x),F=e(r._y),B=e(r._z);S=S.replace("x",(d>u?"-":"+")+"x"),S=S.replace("y",(y>f?"-":"+")+"y"),S=S.replace("z",(P>L?"-":"+")+"z");var O=function(){n=0,z=[],F=[],B=[]};(!n||n<z.length*F.length*B.length)&&O();var I=function(be){return be==="x"?o:be==="y"?a:i},N=function(be){return be==="x"?z:be==="y"?F:B},U=function(be){return be[n-1]<be[0]?-1:1},W=I(S[1]),Q=I(S[3]),ue=I(S[5]),se=N(S[1]).length,he=N(S[3]).length,G=N(S[5]).length,$=!1,J=function(be,Ae,Be){return se*(he*be+Ae)+Be},Z=U(I(S[1])),re=U(I(S[3])),ne=U(I(S[5]));for(s=0;s<G-1;s++){for(c=0;c<he-1;c++){for(h=0;h<se-1;h++){var j=J(s,c,h),ee=J(s,c,h+1),ie=J(s,c+1,h),fe=J(s+1,c,h);if((!(W[j]*Z<W[ee]*Z)||!(Q[j]*re<Q[ie]*re)||!(ue[j]*ne<ue[fe]*ne))&&($=!0),$)break}if($)break}if($)break}return $&&(g.warn("Encountered arbitrary coordinates! Unable to input data grid."),O()),{xMin:p,yMin:l,zMin:w,xMax:v,yMax:T,zMax:_,Xs:z,Ys:F,Zs:B,len:n,fill:S}}function e(r){return g.distinctVals(r).vals}function t(r,o){if(o===void 0&&(o=r.length),g.isTypedArray(r))return r.subarray(0,o);for(var a=[],i=0;i<o;i++)a[i]=+r[i];return a}H.exports={calc:A,filter:t,processGrid:M}}}),w5=Ye({"src/traces/isosurface/calc.js"(X,H){"use strict";var g=jp(),x=tT().processGrid,A=tT().filter;H.exports=function(e,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=A(t.x,t._len),t._y=A(t.y,t._len),t._z=A(t.z,t._len),t._value=A(t.value,t._len);var r=x(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;for(var o=1/0,a=-1/0,i=0;i<t._len;i++){var n=t._value[i];o=Math.min(o,n),a=Math.max(a,n)}t._minValues=o,t._maxValues=a,t._vMin=t.isomin===void 0||t.isomin===null?o:t.isomin,t._vMax=t.isomax===void 0||t.isomax===null?a:t.isomax,g(e,t,{vals:[t._vMin,t._vMax],containerStr:"",cLetter:"c"})}}}),S1=Ye({"src/plots/gl3d/zip3.js"(X,H){"use strict";H.exports=function(x,A,M,e){e=e||x.length;for(var t=new Array(e),r=0;r<e;r++)t[r]=[x[r],A[r],M[r]];return t}}}),rT=Ye({"src/traces/isosurface/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=function(c,h){for(var v=h.length-1;v>0;v--){var p=Math.min(h[v],h[v-1]),T=Math.max(h[v],h[v-1]);if(T>p&&p<c&&c<=T)return{id:v,distRatio:(T-c)/(T-p)}}return{id:0,distRatio:0}};function o(c,h,v){this.scene=c,this.uid=v,this.mesh=h,this.name="",this.data=null,this.showContour=!1}var a=o.prototype;a.handlePick=function(c){if(c.object===this.mesh){var h=c.data.index,v=this.data._meshX[h],p=this.data._meshY[h],T=this.data._meshZ[h],l=this.data._Ys.length,_=this.data._Zs.length,w=r(v,this.data._Xs).id,S=r(p,this.data._Ys).id,E=r(T,this.data._Zs).id,m=c.index=E+_*S+_*l*w;c.traceCoordinate=[this.data._meshX[m],this.data._meshY[m],this.data._meshZ[m],this.data._value[m]];var b=this.data.hovertext||this.data.text;return A(b)&&b[m]!==void 0?c.textLabel=b[m]:b&&(c.textLabel=b),!0}},a.update=function(c){var h=this.scene,v=h.fullSceneLayout;this.data=n(c);function p(S,E,m,b){return E.map(function(d){return S.d2l(d,0,b)*m})}var T=t(p(v.xaxis,c._meshX,h.dataScale[0],c.xcalendar),p(v.yaxis,c._meshY,h.dataScale[1],c.ycalendar),p(v.zaxis,c._meshZ,h.dataScale[2],c.zcalendar)),l=t(c._meshI,c._meshJ,c._meshK),_={positions:T,cells:l,lightPosition:[c.lightposition.x,c.lightposition.y,c.lightposition.z],ambient:c.lighting.ambient,diffuse:c.lighting.diffuse,specular:c.lighting.specular,roughness:c.lighting.roughness,fresnel:c.lighting.fresnel,vertexNormalsEpsilon:c.lighting.vertexnormalsepsilon,faceNormalsEpsilon:c.lighting.facenormalsepsilon,opacity:c.opacity,contourEnable:c.contour.show,contourColor:M(c.contour.color).slice(0,3),contourWidth:c.contour.width,useFacetNormals:c.flatshading},w=e(c);_.vertexIntensity=c._meshIntensity,_.vertexIntensityBounds=[w.min,w.max],_.colormap=x(c),this.mesh.update(_)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var i=["xyz","xzy","yxz","yzx","zxy","zyx"];function n(c){c._meshI=[],c._meshJ=[],c._meshK=[];var h=c.surface.show,v=c.spaceframe.show,p=c.surface.fill,T=c.spaceframe.fill,l=!1,_=!1,w=0,S,E,m=c._Xs,b=c._Ys,d=c._Zs,u=m.length,y=b.length,f=d.length,P=i.indexOf(c._gridFill.replace(/-/g,"").replace(/\+/g,"")),L=function(yt,Fe,Ke){switch(P){case 5:return Ke+f*Fe+f*y*yt;case 4:return Ke+f*yt+f*u*Fe;case 3:return Fe+y*Ke+y*f*yt;case 2:return Fe+y*yt+y*u*Ke;case 1:return yt+u*Ke+u*f*Fe;default:return yt+u*Fe+u*y*Ke}},z=c._minValues,F=c._maxValues,B=c._vMin,O=c._vMax,I,N,U,W;function Q(yt,Fe,Ke){for(var Ne=W.length,Ee=E;Ee<Ne;Ee++)if(yt===I[Ee]&&Fe===N[Ee]&&Ke===U[Ee])return Ee;return-1}function ue(){E=S}function se(){I=[],N=[],U=[],W=[],S=0,ue()}function he(yt,Fe,Ke,Ne){return I.push(yt),N.push(Fe),U.push(Ke),W.push(Ne),S++,S-1}function G(yt,Fe,Ke){return c._meshI.push(yt),c._meshJ.push(Fe),c._meshK.push(Ke),w++,w-1}function $(yt,Fe,Ke){for(var Ne=[],Ee=0;Ee<yt.length;Ee++)Ne[Ee]=(yt[Ee]+Fe[Ee]+Ke[Ee])/3;return Ne}function J(yt,Fe,Ke){for(var Ne=[],Ee=0;Ee<yt.length;Ee++)Ne[Ee]=yt[Ee]*(1-Ke)+Ke*Fe[Ee];return Ne}var Z;function re(yt){Z=yt}function ne(yt,Fe){var Ke=yt[0],Ne=yt[1],Ee=yt[2],Ve=$(Ke,Ne,Ee),ke=Math.sqrt(1-Z),Te=J(Ve,Ke,ke),Le=J(Ve,Ne,ke),rt=J(Ve,Ee,ke),dt=Fe[0],xt=Fe[1],It=Fe[2];return{xyzv:[[Ke,Ne,Le],[Le,Te,Ke],[Ne,Ee,rt],[rt,Le,Ne],[Ee,Ke,Te],[Te,rt,Ee]],abc:[[dt,xt,-1],[-1,-1,dt],[xt,It,-1],[-1,-1,xt],[It,dt,-1],[-1,-1,It]]}}function j(yt,Fe){return yt==="all"||yt===null?!0:yt.indexOf(Fe)>-1}function ee(yt,Fe){return yt===null?Fe:yt}function ie(yt,Fe,Ke){ue();var Ne=[Fe],Ee=[Ke];if(Z>=1)Ne=[Fe],Ee=[Ke];else if(Z>0){var Ve=ne(Fe,Ke);Ne=Ve.xyzv,Ee=Ve.abc}for(var ke=0;ke<Ne.length;ke++){Fe=Ne[ke],Ke=Ee[ke];for(var Te=[],Le=0;Le<3;Le++){var rt=Fe[Le][0],dt=Fe[Le][1],xt=Fe[Le][2],It=Fe[Le][3],Bt=Ke[Le]>-1?Ke[Le]:Q(rt,dt,xt);Bt>-1?Te[Le]=Bt:Te[Le]=he(rt,dt,xt,ee(yt,It))}G(Te[0],Te[1],Te[2])}}function fe(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(2,3,0)}function be(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(3,0,1),Ne(2,3,0),Ne(1,2,3)}function Ae(yt,Fe,Ke,Ne){var Ee=yt[3];Ee<Ke&&(Ee=Ke),Ee>Ne&&(Ee=Ne);for(var Ve=(yt[3]-Ee)/(yt[3]-Fe[3]+1e-9),ke=[],Te=0;Te<4;Te++)ke[Te]=(1-Ve)*yt[Te]+Ve*Fe[Te];return ke}function Be(yt,Fe,Ke){return yt>=Fe&&yt<=Ke}function Ie(yt){var Fe=.001*(O-B);return yt>=B-Fe&&yt<=O+Fe}function Ze(yt){for(var Fe=[],Ke=0;Ke<4;Ke++){var Ne=yt[Ke];Fe.push([c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne]])}return Fe}var at=3;function it(yt,Fe,Ke,Ne,Ee,Ve){Ve||(Ve=1),Ke=[-1,-1,-1];var ke=!1,Te=[Be(Fe[0][3],Ne,Ee),Be(Fe[1][3],Ne,Ee),Be(Fe[2][3],Ne,Ee)];if(!Te[0]&&!Te[1]&&!Te[2])return!1;var Le=function(dt,xt,It){return Ie(xt[0][3])&&Ie(xt[1][3])&&Ie(xt[2][3])?(ie(dt,xt,It),!0):Ve<at?it(dt,xt,It,B,O,++Ve):!1};if(Te[0]&&Te[1]&&Te[2])return Le(yt,Fe,Ke)||ke;var rt=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(dt){if(Te[dt[0]]&&Te[dt[1]]&&!Te[dt[2]]){var xt=Fe[dt[0]],It=Fe[dt[1]],Bt=Fe[dt[2]],Gt=Ae(Bt,xt,Ne,Ee),Kt=Ae(Bt,It,Ne,Ee);ke=Le(yt,[Kt,Gt,xt],[-1,-1,Ke[dt[0]]])||ke,ke=Le(yt,[xt,It,Kt],[Ke[dt[0]],Ke[dt[1]],-1])||ke,rt=!0}}),rt||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(dt){if(Te[dt[0]]&&!Te[dt[1]]&&!Te[dt[2]]){var xt=Fe[dt[0]],It=Fe[dt[1]],Bt=Fe[dt[2]],Gt=Ae(It,xt,Ne,Ee),Kt=Ae(Bt,xt,Ne,Ee);ke=Le(yt,[Kt,Gt,xt],[-1,-1,Ke[dt[0]]])||ke,rt=!0}}),ke}function et(yt,Fe,Ke,Ne){var Ee=!1,Ve=Ze(Fe),ke=[Be(Ve[0][3],Ke,Ne),Be(Ve[1][3],Ke,Ne),Be(Ve[2][3],Ke,Ne),Be(Ve[3][3],Ke,Ne)];if(!ke[0]&&!ke[1]&&!ke[2]&&!ke[3])return Ee;if(ke[0]&&ke[1]&&ke[2]&&ke[3])return _&&(Ee=be(yt,Ve,Fe)||Ee),Ee;var Te=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(Le){if(ke[Le[0]]&&ke[Le[1]]&&ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]];if(_)Ee=ie(yt,[rt,dt,xt],[Fe[Le[0]],Fe[Le[1]],Fe[Le[2]]])||Ee;else{var Bt=Ae(It,rt,Ke,Ne),Gt=Ae(It,dt,Ke,Ne),Kt=Ae(It,xt,Ke,Ne);Ee=ie(null,[Bt,Gt,Kt],[-1,-1,-1])||Ee}Te=!0}}),Te||([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach(function(Le){if(ke[Le[0]]&&ke[Le[1]]&&!ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]],Bt=Ae(xt,rt,Ke,Ne),Gt=Ae(xt,dt,Ke,Ne),Kt=Ae(It,dt,Ke,Ne),sr=Ae(It,rt,Ke,Ne);_?(Ee=ie(yt,[rt,sr,Bt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[dt,Gt,Kt],[Fe[Le[1]],-1,-1])||Ee):Ee=fe(null,[Bt,Gt,Kt,sr],[-1,-1,-1,-1])||Ee,Te=!0}}),Te)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(Le){if(ke[Le[0]]&&!ke[Le[1]]&&!ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]],Bt=Ae(dt,rt,Ke,Ne),Gt=Ae(xt,rt,Ke,Ne),Kt=Ae(It,rt,Ke,Ne);_?(Ee=ie(yt,[rt,Bt,Gt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[rt,Gt,Kt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[rt,Kt,Bt],[Fe[Le[0]],-1,-1])||Ee):Ee=ie(null,[Bt,Gt,Kt],[-1,-1,-1])||Ee,Te=!0}}),Ee}function lt(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt){var xt=!1;return l&&(j(yt,"A")&&(xt=et(null,[Fe,Ke,Ne,Ve],rt,dt)||xt),j(yt,"B")&&(xt=et(null,[Ke,Ne,Ee,Le],rt,dt)||xt),j(yt,"C")&&(xt=et(null,[Ke,Ve,ke,Le],rt,dt)||xt),j(yt,"D")&&(xt=et(null,[Ne,Ve,Te,Le],rt,dt)||xt),j(yt,"E")&&(xt=et(null,[Ke,Ne,Ve,Le],rt,dt)||xt)),_&&(xt=et(yt,[Ke,Ne,Ve,Le],rt,dt)||xt),xt}function Me(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){return[Te[0]===!0?!0:it(yt,Ze([Fe,Ke,Ne]),[Fe,Ke,Ne],Ve,ke),Te[1]===!0?!0:it(yt,Ze([Ne,Ee,Fe]),[Ne,Ee,Fe],Ve,ke)]}function ge(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le){return Te?Me(yt,Fe,Ke,Ee,Ne,Ve,ke,Le):Me(yt,Ke,Ee,Ne,Fe,Ve,ke,Le)}function ce(yt,Fe,Ke,Ne,Ee,Ve,ke){var Te=!1,Le,rt,dt,xt,It=function(){Te=it(yt,[Le,rt,dt],[-1,-1,-1],Ee,Ve)||Te,Te=it(yt,[dt,xt,Le],[-1,-1,-1],Ee,Ve)||Te},Bt=ke[0],Gt=ke[1],Kt=ke[2];return Bt&&(Le=J(Ze([L(Fe,Ke-0,Ne-0)])[0],Ze([L(Fe-1,Ke-0,Ne-0)])[0],Bt),rt=J(Ze([L(Fe,Ke-0,Ne-1)])[0],Ze([L(Fe-1,Ke-0,Ne-1)])[0],Bt),dt=J(Ze([L(Fe,Ke-1,Ne-1)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Bt),xt=J(Ze([L(Fe,Ke-1,Ne-0)])[0],Ze([L(Fe-1,Ke-1,Ne-0)])[0],Bt),It()),Gt&&(Le=J(Ze([L(Fe-0,Ke,Ne-0)])[0],Ze([L(Fe-0,Ke-1,Ne-0)])[0],Gt),rt=J(Ze([L(Fe-0,Ke,Ne-1)])[0],Ze([L(Fe-0,Ke-1,Ne-1)])[0],Gt),dt=J(Ze([L(Fe-1,Ke,Ne-1)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Gt),xt=J(Ze([L(Fe-1,Ke,Ne-0)])[0],Ze([L(Fe-1,Ke-1,Ne-0)])[0],Gt),It()),Kt&&(Le=J(Ze([L(Fe-0,Ke-0,Ne)])[0],Ze([L(Fe-0,Ke-0,Ne-1)])[0],Kt),rt=J(Ze([L(Fe-0,Ke-1,Ne)])[0],Ze([L(Fe-0,Ke-1,Ne-1)])[0],Kt),dt=J(Ze([L(Fe-1,Ke-1,Ne)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Kt),xt=J(Ze([L(Fe-1,Ke-0,Ne)])[0],Ze([L(Fe-1,Ke-0,Ne-1)])[0],Kt),It()),Te}function ze(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt){var It=yt;return xt?(l&&yt==="even"&&(It=null),lt(It,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt)):(l&&yt==="odd"&&(It=null),lt(It,Le,Te,ke,Ve,Ee,Ne,Ke,Fe,rt,dt))}function tt(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<f;rt++)for(var dt=1;dt<y;dt++)Ve.push(ge(yt,L(Le,dt-1,rt-1),L(Le,dt-1,rt),L(Le,dt,rt-1),L(Le,dt,rt),Ke,Ne,(Le+dt+rt)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function nt(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<u;rt++)for(var dt=1;dt<f;dt++)Ve.push(ge(yt,L(rt-1,Le,dt-1),L(rt,Le,dt-1),L(rt-1,Le,dt),L(rt,Le,dt),Ke,Ne,(rt+Le+dt)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function Qe(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<y;rt++)for(var dt=1;dt<u;dt++)Ve.push(ge(yt,L(dt-1,rt-1,Le),L(dt-1,rt,Le),L(dt,rt-1,Le),L(dt,rt,Le),Ke,Ne,(dt+rt+Le)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function Ct(yt,Fe,Ke){for(var Ne=1;Ne<f;Ne++)for(var Ee=1;Ee<y;Ee++)for(var Ve=1;Ve<u;Ve++)ze(yt,L(Ve-1,Ee-1,Ne-1),L(Ve-1,Ee-1,Ne),L(Ve-1,Ee,Ne-1),L(Ve-1,Ee,Ne),L(Ve,Ee-1,Ne-1),L(Ve,Ee-1,Ne),L(Ve,Ee,Ne-1),L(Ve,Ee,Ne),Fe,Ke,(Ve+Ee+Ne)%2)}function St(yt,Fe,Ke){_=!0,Ct(yt,Fe,Ke),_=!1}function Ot(yt,Fe,Ke){l=!0,Ct(yt,Fe,Ke),l=!1}function jt(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<f;dt++)for(var xt=1;xt<y;xt++)ke.push(ce(yt,rt,xt,dt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function ur(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<u;dt++)for(var xt=1;xt<f;xt++)ke.push(ce(yt,dt,rt,xt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function ar(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<y;dt++)for(var xt=1;xt<u;xt++)ke.push(ce(yt,xt,dt,rt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function Cr(yt,Fe){for(var Ke=[],Ne=yt;Ne<Fe;Ne++)Ke.push(Ne);return Ke}function vr(){for(var yt=0;yt<u;yt++)for(var Fe=0;Fe<y;Fe++)for(var Ke=0;Ke<f;Ke++){var Ne=L(yt,Fe,Ke);he(c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne])}}function _r(){se(),vr();var yt=null;if(v&&T&&(re(T),St(yt,B,O)),h&&p){re(p);for(var Fe=c.surface.pattern,Ke=c.surface.count,Ne=0;Ne<Ke;Ne++){var Ee=Ke===1?.5:Ne/(Ke-1),Ve=(1-Ee)*B+Ee*O,ke=Math.abs(Ve-z),Te=Math.abs(Ve-F),Le=ke>Te?[z,Ve]:[Ve,F];Ot(Fe,Le[0],Le[1])}}var rt=[[Math.min(B,F),Math.max(B,F)],[Math.min(z,O),Math.max(z,O)]];["x","y","z"].forEach(function(dt){for(var xt=[],It=0;It<rt.length;It++){var Bt=0,Gt=rt[It][0],Kt=rt[It][1],sr=c.slices[dt];if(sr.show&&sr.fill){re(sr.fill);var sa=[],Aa=[],La=[];if(sr.locations.length)for(var ka=0;ka<sr.locations.length;ka++){var Ga=r(sr.locations[ka],dt==="x"?m:dt==="y"?b:d);Ga.distRatio===0?sa.push(Ga.id):Ga.id>0&&(Aa.push(Ga.id),dt==="x"?La.push([Ga.distRatio,0,0]):dt==="y"?La.push([0,Ga.distRatio,0]):La.push([0,0,Ga.distRatio]))}else dt==="x"?sa=Cr(1,u-1):dt==="y"?sa=Cr(1,y-1):sa=Cr(1,f-1);Aa.length>0&&(dt==="x"?xt[Bt]=jt(yt,Aa,Gt,Kt,La,xt[Bt]):dt==="y"?xt[Bt]=ur(yt,Aa,Gt,Kt,La,xt[Bt]):xt[Bt]=ar(yt,Aa,Gt,Kt,La,xt[Bt]),Bt++),sa.length>0&&(dt==="x"?xt[Bt]=tt(yt,sa,Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,sa,Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,sa,Gt,Kt,xt[Bt]),Bt++)}var Ma=c.caps[dt];Ma.show&&Ma.fill&&(re(Ma.fill),dt==="x"?xt[Bt]=tt(yt,[0,u-1],Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,[0,y-1],Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,[0,f-1],Gt,Kt,xt[Bt]),Bt++)}}),w===0&&se(),c._meshX=I,c._meshY=N,c._meshZ=U,c._meshIntensity=W,c._Xs=m,c._Ys=b,c._Zs=d}return _r(),c}function s(c,h){var v=c.glplot.gl,p=g({gl:v}),T=new o(c,p,h.uid);return p._trace=T,T.update(h),c.glplot.add(p),T}H.exports={findNearestOnAxis:r,generateIsoMeshes:n,createIsosurfaceTrace:s}}}),XN=Ye({"src/traces/isosurface/index.js"(X,H){"use strict";H.exports={attributes:eT(),supplyDefaults:b5().supplyDefaults,calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:rT().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),YN=Ye({"lib/isosurface.js"(X,H){"use strict";H.exports=XN()}}),T5=Ye({"src/traces/volume/attributes.js"(X,H){"use strict";var g=tu(),x=eT(),A=vx(),M=Pl(),e=Oo().extendFlat,t=Ou().overrideAll,r=H.exports=t(e({x:x.x,y:x.y,z:x.z,value:x.value,isomin:x.isomin,isomax:x.isomax,surface:x.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:x.slices,caps:x.caps,text:x.text,hovertext:x.hovertext,xhoverformat:x.xhoverformat,yhoverformat:x.yhoverformat,zhoverformat:x.zhoverformat,valuehoverformat:x.valuehoverformat,hovertemplate:x.hovertemplate},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:x.colorbar,opacity:x.opacity,opacityscale:A.opacityscale,lightposition:x.lightposition,lighting:x.lighting,flatshading:x.flatshading,contour:x.contour,hoverinfo:e({},M.hoverinfo),showlegend:e({},M.showlegend,{dflt:!1})}),"calc","nested");r.x.editType=r.y.editType=r.z.editType=r.value.editType="calc+clearAxisTypes"}}),KN=Ye({"src/traces/volume/defaults.js"(X,H){"use strict";var g=ta(),x=T5(),A=b5().supplyIsoDefaults,M=x5().opacityscaleDefaults;H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(t,r,o,a,i),M(t,r,a,i)}}}),JN=Ye({"src/traces/volume/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=rT().findNearestOnAxis,o=rT().generateIsoMeshes;function a(s,c,h){this.scene=s,this.uid=h,this.mesh=c,this.name="",this.data=null,this.showContour=!1}var i=a.prototype;i.handlePick=function(s){if(s.object===this.mesh){var c=s.data.index,h=this.data._meshX[c],v=this.data._meshY[c],p=this.data._meshZ[c],T=this.data._Ys.length,l=this.data._Zs.length,_=r(h,this.data._Xs).id,w=r(v,this.data._Ys).id,S=r(p,this.data._Zs).id,E=s.index=S+l*w+l*T*_;s.traceCoordinate=[this.data._meshX[E],this.data._meshY[E],this.data._meshZ[E],this.data._value[E]];var m=this.data.hovertext||this.data.text;return A(m)&&m[E]!==void 0?s.textLabel=m[E]:m&&(s.textLabel=m),!0}},i.update=function(s){var c=this.scene,h=c.fullSceneLayout;this.data=o(s);function v(w,S,E,m){return S.map(function(b){return w.d2l(b,0,m)*E})}var p=t(v(h.xaxis,s._meshX,c.dataScale[0],s.xcalendar),v(h.yaxis,s._meshY,c.dataScale[1],s.ycalendar),v(h.zaxis,s._meshZ,c.dataScale[2],s.zcalendar)),T=t(s._meshI,s._meshJ,s._meshK),l={positions:p,cells:T,lightPosition:[s.lightposition.x,s.lightposition.y,s.lightposition.z],ambient:s.lighting.ambient,diffuse:s.lighting.diffuse,specular:s.lighting.specular,roughness:s.lighting.roughness,fresnel:s.lighting.fresnel,vertexNormalsEpsilon:s.lighting.vertexnormalsepsilon,faceNormalsEpsilon:s.lighting.facenormalsepsilon,opacity:s.opacity,opacityscale:s.opacityscale,contourEnable:s.contour.show,contourColor:M(s.contour.color).slice(0,3),contourWidth:s.contour.width,useFacetNormals:s.flatshading},_=e(s);l.vertexIntensity=s._meshIntensity,l.vertexIntensityBounds=[_.min,_.max],l.colormap=x(s),this.mesh.update(l)},i.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function n(s,c){var h=s.glplot.gl,v=g({gl:h}),p=new a(s,v,c.uid);return v._trace=p,p.update(c),s.glplot.add(v),p}H.exports=n}}),$N=Ye({"src/traces/volume/index.js"(X,H){"use strict";H.exports={attributes:T5(),supplyDefaults:KN(),calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:JN(),moduleType:"trace",name:"volume",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),QN=Ye({"lib/volume.js"(X,H){"use strict";H.exports=$N()}}),eU=Ye({"src/traces/mesh3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=A1();H.exports=function(t,r,o,a){function i(v,p){return x.coerce(t,r,M,v,p)}function n(v){var p=v.map(function(T){var l=i(T);return l&&x.isArrayOrTypedArray(l)?l:null});return p.every(function(T){return T&&T.length===p[0].length})&&p}var s=n(["x","y","z"]);if(!s){r.visible=!1;return}if(n(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var c=g.getComponentMethod("calendars","handleTraceDefaults");c(t,r,["x","y","z"],a),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(v){i(v)});var h=i("contour.show");h&&(i("contour.color"),i("contour.width")),"intensity"in t?(i("intensity"),i("intensitymode"),A(t,r,a,i,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?i("facecolor"):"vertexcolor"in t?i("vertexcolor"):i("color",o)),i("text"),i("hovertext"),i("hovertemplate"),i("xhoverformat"),i("yhoverformat"),i("zhoverformat"),r._length=null}}}),tU=Ye({"src/traces/mesh3d/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.intensity&&g(A,M,{vals:M.intensity,containerStr:"",cLetter:"c"})}}}),rU=Ye({"src/traces/mesh3d/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=Gh().delaunay_triangulate,A=Gh().alpha_shape,M=Gh().convex_hull,e=em().parseColorScale,t=ta().isArrayOrTypedArray,r=Qv(),o=Su().extractOpts,a=S1();function i(l,_,w){this.scene=l,this.uid=w,this.mesh=_,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var n=i.prototype;n.handlePick=function(l){if(l.object===this.mesh){var _=l.index=l.data.index;l.data._cellCenter?l.traceCoordinate=l.data.dataCoordinate:l.traceCoordinate=[this.data.x[_],this.data.y[_],this.data.z[_]];var w=this.data.hovertext||this.data.text;return t(w)&&w[_]!==void 0?l.textLabel=w[_]:w&&(l.textLabel=w),!0}};function s(l){for(var _=[],w=l.length,S=0;S<w;S++)_[S]=r(l[S]);return _}function c(l,_,w,S){for(var E=[],m=_.length,b=0;b<m;b++)E[b]=l.d2l(_[b],0,S)*w;return E}function h(l){for(var _=[],w=l.length,S=0;S<w;S++)_[S]=Math.round(l[S]);return _}function v(l,_){for(var w=["x","y","z"].indexOf(l),S=[],E=_.length,m=0;m<E;m++)S[m]=[_[m][(w+1)%3],_[m][(w+2)%3]];return x(S)}function p(l,_){for(var w=l.length,S=0;S<w;S++)if(l[S]<=-.5||l[S]>=_-.5)return!1;return!0}n.update=function(l){var _=this.scene,w=_.fullSceneLayout;this.data=l;var S=l.x.length,E=a(c(w.xaxis,l.x,_.dataScale[0],l.xcalendar),c(w.yaxis,l.y,_.dataScale[1],l.ycalendar),c(w.zaxis,l.z,_.dataScale[2],l.zcalendar)),m;if(l.i&&l.j&&l.k){if(l.i.length!==l.j.length||l.j.length!==l.k.length||!p(l.i,S)||!p(l.j,S)||!p(l.k,S))return;m=a(h(l.i),h(l.j),h(l.k))}else l.alphahull===0?m=M(E):l.alphahull>0?m=A(l.alphahull,E):m=v(l.delaunayaxis,E);var b={positions:E,cells:m,lightPosition:[l.lightposition.x,l.lightposition.y,l.lightposition.z],ambient:l.lighting.ambient,diffuse:l.lighting.diffuse,specular:l.lighting.specular,roughness:l.lighting.roughness,fresnel:l.lighting.fresnel,vertexNormalsEpsilon:l.lighting.vertexnormalsepsilon,faceNormalsEpsilon:l.lighting.facenormalsepsilon,opacity:l.opacity,contourEnable:l.contour.show,contourColor:r(l.contour.color).slice(0,3),contourWidth:l.contour.width,useFacetNormals:l.flatshading};if(l.intensity){var d=o(l);this.color="#fff";var u=l.intensitymode;b[u+"Intensity"]=l.intensity,b[u+"IntensityBounds"]=[d.min,d.max],b.colormap=e(l)}else l.vertexcolor?(this.color=l.vertexcolor[0],b.vertexColors=s(l.vertexcolor)):l.facecolor?(this.color=l.facecolor[0],b.cellColors=s(l.facecolor)):(this.color=l.color,b.meshColor=r(l.color));this.mesh.update(b)},n.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function T(l,_){var w=l.glplot.gl,S=g({gl:w}),E=new i(l,S,_.uid);return S._trace=E,E.update(_),l.glplot.add(S),E}H.exports=T}}),aU=Ye({"src/traces/mesh3d/index.js"(X,H){"use strict";H.exports={attributes:A1(),supplyDefaults:eU(),calc:tU(),colorbar:{min:"cmin",max:"cmax"},plot:rU(),moduleType:"trace",name:"mesh3d",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),iU=Ye({"lib/mesh3d.js"(X,H){"use strict";H.exports=aU()}}),A5=Ye({"src/traces/cone/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["norm"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),nU=Ye({"src/traces/cone/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=A5();H.exports=function(e,t,r,o){function a(T,l){return g.coerce(e,t,A,T,l)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}var p=a("sizemode");a("sizeref",p==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),oU=Ye({"src/traces/cone/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){for(var e=M.u,t=M.v,r=M.w,o=Math.min(M.x.length,M.y.length,M.z.length,e.length,t.length,r.length),a=-1/0,i=1/0,n=0;n<o;n++){var s=e[n],c=t[n],h=r[n],v=Math.sqrt(s*s+c*c+h*h);a=Math.max(a,v),i=Math.min(i,v)}M._len=o,M._normMax=a,g(A,M,{vals:[i,a],containerStr:"",cLetter:"c"})}}}),sU=Ye({"src/traces/cone/convert.js"(X,H){"use strict";var g=Gh().gl_cone3d,x=Gh().gl_cone3d.createConeMesh,A=ta().simpleMap,M=em().parseColorScale,e=Su().extractOpts,t=ta().isArrayOrTypedArray,r=S1();function o(v,p){this.scene=v,this.uid=p,this.mesh=null,this.data=null}var a=o.prototype;a.handlePick=function(v){if(v.object===this.mesh){var p=v.index=v.data.index,T=this.data.x[p],l=this.data.y[p],_=this.data.z[p],w=this.data.u[p],S=this.data.v[p],E=this.data.w[p];v.traceCoordinate=[T,l,_,w,S,E,Math.sqrt(w*w+S*S+E*E)];var m=this.data.hovertext||this.data.text;return t(m)&&m[p]!==void 0?v.textLabel=m[p]:m&&(v.textLabel=m),!0}};var i={xaxis:0,yaxis:1,zaxis:2},n={tip:1,tail:0,cm:.25,center:.5},s={tip:1,tail:1,cm:.75,center:.5};function c(v,p){var T=v.fullSceneLayout,l=v.dataScale,_={};function w(d,u){var y=T[u],f=l[i[u]];return A(d,function(P){return y.d2l(P)*f})}_.vectors=r(w(p.u,"xaxis"),w(p.v,"yaxis"),w(p.w,"zaxis"),p._len),_.positions=r(w(p.x,"xaxis"),w(p.y,"yaxis"),w(p.z,"zaxis"),p._len);var S=e(p);_.colormap=M(p),_.vertexIntensityBounds=[S.min/p._normMax,S.max/p._normMax],_.coneOffset=n[p.anchor];var E=p.sizemode;E==="scaled"?_.coneSize=p.sizeref||.5:E==="absolute"?_.coneSize=p.sizeref&&p._normMax?p.sizeref/p._normMax:.5:E==="raw"&&(_.coneSize=p.sizeref),_.coneSizemode=E;var m=g(_),b=p.lightposition;return m.lightPosition=[b.x,b.y,b.z],m.ambient=p.lighting.ambient,m.diffuse=p.lighting.diffuse,m.specular=p.lighting.specular,m.roughness=p.lighting.roughness,m.fresnel=p.lighting.fresnel,m.opacity=p.opacity,p._pad=s[p.anchor]*m.vectorScale*m.coneScale*p._normMax,m}a.update=function(v){this.data=v;var p=c(this.scene,v);this.mesh.update(p)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function h(v,p){var T=v.glplot.gl,l=c(v,p),_=x(T,l),w=new o(v,p.uid);return w.mesh=_,w.data=p,_._trace=w,v.glplot.add(_),w}H.exports=h}}),lU=Ye({"src/traces/cone/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"cone",basePlotModule:pg(),categories:["gl3d","showLegend"],attributes:A5(),supplyDefaults:nU(),colorbar:{min:"cmin",max:"cmax"},calc:oU(),plot:sU(),eventData:function(g,x){return g.norm=x.traceCoordinate[6],g},meta:{}}}}),uU=Ye({"lib/cone.js"(X,H){"use strict";H.exports=lU()}}),S5=Ye({"src/traces/streamtube/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),cU=Ye({"src/traces/streamtube/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=S5();H.exports=function(e,t,r,o){function a(p,T){return g.coerce(e,t,A,p,T)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),fU=Ye({"src/traces/streamtube/convert.js"(X,H){"use strict";var g=Gh().gl_streamtube3d,x=g.createTubeMesh,A=ta(),M=em().parseColorScale,e=Su().extractOpts,t=S1(),r={xaxis:0,yaxis:1,zaxis:2};function o(h,v){this.scene=h,this.uid=v,this.mesh=null,this.data=null}var a=o.prototype;a.handlePick=function(h){var v=this.scene.fullSceneLayout,p=this.scene.dataScale;function T(w,S){var E=v[S],m=p[r[S]];return E.l2c(w)/m}if(h.object===this.mesh){var l=h.data.position,_=h.data.velocity;return h.traceCoordinate=[T(l[0],"xaxis"),T(l[1],"yaxis"),T(l[2],"zaxis"),T(_[0],"xaxis"),T(_[1],"yaxis"),T(_[2],"zaxis"),h.data.intensity*this.data._normMax,h.data.divergence],h.textLabel=this.data.hovertext||this.data.text,!0}};function i(h){var v=h.length,p;return v>2?p=h.slice(1,v-1):v===2?p=[(h[0]+h[1])/2]:p=h,p}function n(h){var v=h.length;return v===1?[.5,.5]:[h[1]-h[0],h[v-1]-h[v-2]]}function s(h,v){var p=h.fullSceneLayout,T=h.dataScale,l=v._len,_={};function w(he,G){var $=p[G],J=T[r[G]];return A.simpleMap(he,function(Z){return $.d2l(Z)*J})}if(_.vectors=t(w(v._u,"xaxis"),w(v._v,"yaxis"),w(v._w,"zaxis"),l),!l)return{positions:[],cells:[]};var S=w(v._Xs,"xaxis"),E=w(v._Ys,"yaxis"),m=w(v._Zs,"zaxis");_.meshgrid=[S,E,m],_.gridFill=v._gridFill;var b=v._slen;if(b)_.startingPositions=t(w(v._startsX,"xaxis"),w(v._startsY,"yaxis"),w(v._startsZ,"zaxis"));else{for(var d=E[0],u=i(S),y=i(m),f=new Array(u.length*y.length),P=0,L=0;L<u.length;L++)for(var z=0;z<y.length;z++)f[P++]=[u[L],d,y[z]];_.startingPositions=f}_.colormap=M(v),_.tubeSize=v.sizeref,_.maxLength=v.maxdisplayed;var F=w(v._xbnds,"xaxis"),B=w(v._ybnds,"yaxis"),O=w(v._zbnds,"zaxis"),I=n(S),N=n(E),U=n(m),W=[[F[0]-I[0],B[0]-N[0],O[0]-U[0]],[F[1]+I[1],B[1]+N[1],O[1]+U[1]]],Q=g(_,W),ue=e(v);Q.vertexIntensityBounds=[ue.min/v._normMax,ue.max/v._normMax];var se=v.lightposition;return Q.lightPosition=[se.x,se.y,se.z],Q.ambient=v.lighting.ambient,Q.diffuse=v.lighting.diffuse,Q.specular=v.lighting.specular,Q.roughness=v.lighting.roughness,Q.fresnel=v.lighting.fresnel,Q.opacity=v.opacity,v._pad=Q.tubeScale*v.sizeref*2,Q}a.update=function(h){this.data=h;var v=s(this.scene,h);this.mesh.update(v)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function c(h,v){var p=h.glplot.gl,T=s(h,v),l=x(p,T),_=new o(h,v.uid);return _.mesh=l,_.data=v,l._trace=_,h.glplot.add(l),_}H.exports=c}}),hU=Ye({"src/traces/streamtube/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"streamtube",basePlotModule:pg(),categories:["gl3d","showLegend"],attributes:S5(),supplyDefaults:cU(),colorbar:{min:"cmin",max:"cmax"},calc:tT().calc,plot:fU(),eventData:function(g,x){return g.tubex=g.x,g.tubey=g.y,g.tubez=g.z,g.tubeu=x.traceCoordinate[3],g.tubev=x.traceCoordinate[4],g.tubew=x.traceCoordinate[5],g.norm=x.traceCoordinate[6],g.divergence=x.traceCoordinate[7],delete g.x,delete g.y,delete g.z,g},meta:{}}}}),pU=Ye({"lib/streamtube.js"(X,H){"use strict";H.exports=hU()}}),p0=Ye({"src/traces/scattergeo/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=Ou().overrideAll,i=M.marker,n=M.line,s=i.line;H.exports=a({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:o({},M.hovertext,{}),textfont:M.textfont,textposition:M.textposition,line:{color:n.color,width:n.width,dash:r},connectgaps:M.connectgaps,marker:o({symbol:i.symbol,opacity:i.opacity,angle:i.angle,angleref:o({},i.angleref,{values:["previous","up","north"]}),standoff:i.standoff,size:i.size,sizeref:i.sizeref,sizemin:i.sizemin,sizemode:i.sizemode,colorbar:i.colorbar,line:o({width:s.width},t("marker.line")),gradient:i.gradient},t("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:A(),selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:g()},"calc","nested")}}),dU=Ye({"src/traces/scattergeo/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=p0();H.exports=function(a,i,n,s){function c(S,E){return g.coerce(a,i,r,S,E)}var h=c("locations"),v;if(h&&h.length){var p=c("geojson"),T;(typeof p=="string"&&p!==""||g.isPlainObject(p))&&(T="geojson-id");var l=c("locationmode",T);l==="geojson-id"&&c("featureidkey"),v=h.length}else{var _=c("lon")||[],w=c("lat")||[];v=Math.min(_.length,w.length)}if(!v){i.visible=!1;return}i._length=v,c("text"),c("hovertext"),c("hovertemplate"),c("mode"),x.hasMarkers(i)&&A(a,i,n,s,c,{gradient:!0}),x.hasLines(i)&&(M(a,i,n,s,c),c("connectgaps")),x.hasText(i)&&(c("texttemplate"),e(a,i,s,c)),c("fill"),i.fill!=="none"&&t(a,i,n,c),g.coerceSelectionMarkerOpacity(i,c)}}}),vU=Ye({"src/traces/scattergeo/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.geo]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),aT=Ye({"src/traces/scattergeo/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Fd(),M=Av(),e=Od(),t=ta().isArrayOrTypedArray,r=ta()._;function o(a){return a&&typeof a=="string"}H.exports=function(i,n){var s=t(n.locations),c=s?n.locations.length:n._length,h=new Array(c),v;n.geojson?v=function(S){return o(S)||g(S)}:v=o;for(var p=0;p<c;p++){var T=h[p]={};if(s){var l=n.locations[p];T.loc=v(l)?l:null}else{var _=n.lon[p],w=n.lat[p];g(_)&&g(w)?T.lonlat=[+_,+w]:T.lonlat=[x,x]}}return M(h,n),A(i,n),e(h,n),c&&(h[0].t={labels:{lat:r(i,"lat:")+" ",lon:r(i,"lon:")+" "}}),h}}}),mx=Ye({"src/plots/geo/constants.js"(X){"use strict";X.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"},X.axesNames=["lonaxis","lataxis"],X.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360},X.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180},X.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:"equirectangular",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:"albers usa"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:"conic conformal",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:"mercator",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:"mercator",projRotate:[0,0,0]},"north america":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:"conic conformal",projRotate:[-100,0,0],projParallels:[29.5,45.5]},"south america":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:"mercator",projRotate:[0,0,0]}},X.clipPad=.001,X.precision=.1,X.landColor="#F0DC82",X.waterColor="#3399FF",X.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"},X.sphereSVG={type:"Sphere"},X.fillLayers={ocean:1,land:1,lakes:1},X.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},X.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"],X.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"],X.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}}}),M5=Ye({"node_modules/topojson-client/dist/topojson-client.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.topojson=g.topojson||{}))})(X,function(g){"use strict";function x(w){return w}function A(w){if(w==null)return x;var S,E,m=w.scale[0],b=w.scale[1],d=w.translate[0],u=w.translate[1];return function(y,f){f||(S=E=0);var P=2,L=y.length,z=new Array(L);for(z[0]=(S+=y[0])*m+d,z[1]=(E+=y[1])*b+u;P<L;)z[P]=y[P],++P;return z}}function M(w){var S=A(w.transform),E,m=1/0,b=m,d=-m,u=-m;function y(P){P=S(P),P[0]<m&&(m=P[0]),P[0]>d&&(d=P[0]),P[1]<b&&(b=P[1]),P[1]>u&&(u=P[1])}function f(P){switch(P.type){case"GeometryCollection":P.geometries.forEach(f);break;case"Point":y(P.coordinates);break;case"MultiPoint":P.coordinates.forEach(y);break}}w.arcs.forEach(function(P){for(var L=-1,z=P.length,F;++L<z;)F=S(P[L],L),F[0]<m&&(m=F[0]),F[0]>d&&(d=F[0]),F[1]<b&&(b=F[1]),F[1]>u&&(u=F[1])});for(E in w.objects)f(w.objects[E]);return[m,b,d,u]}function e(w,S){for(var E,m=w.length,b=m-S;b<--m;)E=w[b],w[b++]=w[m],w[m]=E}function t(w,S){return typeof S=="string"&&(S=w.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(E){return r(w,E)})}:r(w,S)}function r(w,S){var E=S.id,m=S.bbox,b=S.properties==null?{}:S.properties,d=o(w,S);return E==null&&m==null?{type:"Feature",properties:b,geometry:d}:m==null?{type:"Feature",id:E,properties:b,geometry:d}:{type:"Feature",id:E,bbox:m,properties:b,geometry:d}}function o(w,S){var E=A(w.transform),m=w.arcs;function b(L,z){z.length&&z.pop();for(var F=m[L<0?~L:L],B=0,O=F.length;B<O;++B)z.push(E(F[B],B));L<0&&e(z,O)}function d(L){return E(L)}function u(L){for(var z=[],F=0,B=L.length;F<B;++F)b(L[F],z);return z.length<2&&z.push(z[0]),z}function y(L){for(var z=u(L);z.length<4;)z.push(z[0]);return z}function f(L){return L.map(y)}function P(L){var z=L.type,F;switch(z){case"GeometryCollection":return{type:z,geometries:L.geometries.map(P)};case"Point":F=d(L.coordinates);break;case"MultiPoint":F=L.coordinates.map(d);break;case"LineString":F=u(L.arcs);break;case"MultiLineString":F=L.arcs.map(u);break;case"Polygon":F=f(L.arcs);break;case"MultiPolygon":F=L.arcs.map(f);break;default:return null}return{type:z,coordinates:F}}return P(S)}function a(w,S){var E={},m={},b={},d=[],u=-1;S.forEach(function(P,L){var z=w.arcs[P<0?~P:P],F;z.length<3&&!z[1][0]&&!z[1][1]&&(F=S[++u],S[u]=P,S[L]=F)}),S.forEach(function(P){var L=y(P),z=L[0],F=L[1],B,O;if(B=b[z])if(delete b[B.end],B.push(P),B.end=F,O=m[F]){delete m[O.start];var I=O===B?B:B.concat(O);m[I.start=B.start]=b[I.end=O.end]=I}else m[B.start]=b[B.end]=B;else if(B=m[F])if(delete m[B.start],B.unshift(P),B.start=z,O=b[z]){delete b[O.end];var N=O===B?B:O.concat(B);m[N.start=O.start]=b[N.end=B.end]=N}else m[B.start]=b[B.end]=B;else B=[P],m[B.start=z]=b[B.end=F]=B});function y(P){var L=w.arcs[P<0?~P:P],z=L[0],F;return w.transform?(F=[0,0],L.forEach(function(B){F[0]+=B[0],F[1]+=B[1]})):F=L[L.length-1],P<0?[F,z]:[z,F]}function f(P,L){for(var z in P){var F=P[z];delete L[F.start],delete F.start,delete F.end,F.forEach(function(B){E[B<0?~B:B]=1}),d.push(F)}}return f(b,m),f(m,b),S.forEach(function(P){E[P<0?~P:P]||d.push([P])}),d}function i(w){return o(w,n.apply(this,arguments))}function n(w,S,E){var m,b,d;if(arguments.length>1)m=s(w,S,E);else for(b=0,m=new Array(d=w.arcs.length);b<d;++b)m[b]=b;return{type:"MultiLineString",arcs:a(w,m)}}function s(w,S,E){var m=[],b=[],d;function u(z){var F=z<0?~z:z;(b[F]||(b[F]=[])).push({i:z,g:d})}function y(z){z.forEach(u)}function f(z){z.forEach(y)}function P(z){z.forEach(f)}function L(z){switch(d=z,z.type){case"GeometryCollection":z.geometries.forEach(L);break;case"LineString":y(z.arcs);break;case"MultiLineString":case"Polygon":f(z.arcs);break;case"MultiPolygon":P(z.arcs);break}}return L(S),b.forEach(E==null?function(z){m.push(z[0].i)}:function(z){E(z[0].g,z[z.length-1].g)&&m.push(z[0].i)}),m}function c(w){for(var S=-1,E=w.length,m,b=w[E-1],d=0;++S<E;)m=b,b=w[S],d+=m[0]*b[1]-m[1]*b[0];return Math.abs(d)}function h(w){return o(w,v.apply(this,arguments))}function v(w,S){var E={},m=[],b=[];S.forEach(d);function d(f){switch(f.type){case"GeometryCollection":f.geometries.forEach(d);break;case"Polygon":u(f.arcs);break;case"MultiPolygon":f.arcs.forEach(u);break}}function u(f){f.forEach(function(P){P.forEach(function(L){(E[L=L<0?~L:L]||(E[L]=[])).push(f)})}),m.push(f)}function y(f){return c(o(w,{type:"Polygon",arcs:[f]}).coordinates[0])}return m.forEach(function(f){if(!f._){var P=[],L=[f];for(f._=1,b.push(P);f=L.pop();)P.push(f),f.forEach(function(z){z.forEach(function(F){E[F<0?~F:F].forEach(function(B){B._||(B._=1,L.push(B))})})})}}),m.forEach(function(f){delete f._}),{type:"MultiPolygon",arcs:b.map(function(f){var P=[],L;if(f.forEach(function(I){I.forEach(function(N){N.forEach(function(U){E[U<0?~U:U].length<2&&P.push(U)})})}),P=a(w,P),(L=P.length)>1)for(var z=1,F=y(P[0]),B,O;z<L;++z)(B=y(P[z]))>F&&(O=P[0],P[0]=P[z],P[z]=O,F=B);return P}).filter(function(f){return f.length>0})}}function p(w,S){for(var E=0,m=w.length;E<m;){var b=E+m>>>1;w[b]<S?E=b+1:m=b}return E}function T(w){var S={},E=w.map(function(){return[]});function m(I,N){I.forEach(function(U){U<0&&(U=~U);var W=S[U];W?W.push(N):S[U]=[N]})}function b(I,N){I.forEach(function(U){m(U,N)})}function d(I,N){I.type==="GeometryCollection"?I.geometries.forEach(function(U){d(U,N)}):I.type in u&&u[I.type](I.arcs,N)}var u={LineString:m,MultiLineString:b,Polygon:b,MultiPolygon:function(I,N){I.forEach(function(U){b(U,N)})}};w.forEach(d);for(var y in S)for(var f=S[y],P=f.length,L=0;L<P;++L)for(var z=L+1;z<P;++z){var F=f[L],B=f[z],O;(O=E[F])[y=p(O,B)]!==B&&O.splice(y,0,B),(O=E[B])[y=p(O,F)]!==F&&O.splice(y,0,F)}return E}function l(w){if(w==null)return x;var S,E,m=w.scale[0],b=w.scale[1],d=w.translate[0],u=w.translate[1];return function(y,f){f||(S=E=0);var P=2,L=y.length,z=new Array(L),F=Math.round((y[0]-d)/m),B=Math.round((y[1]-u)/b);for(z[0]=F-S,S=F,z[1]=B-E,E=B;P<L;)z[P]=y[P],++P;return z}}function _(w,S){if(w.transform)throw new Error("already quantized");if(!S||!S.scale){if(!((u=Math.floor(S))>=2))throw new Error("n must be \u22652");f=w.bbox||M(w);var E=f[0],m=f[1],b=f[2],d=f[3],u;S={scale:[b-E?(b-E)/(u-1):1,d-m?(d-m)/(u-1):1],translate:[E,m]}}else f=w.bbox;var y=l(S),f,P,L=w.objects,z={};function F(I){return y(I)}function B(I){var N;switch(I.type){case"GeometryCollection":N={type:"GeometryCollection",geometries:I.geometries.map(B)};break;case"Point":N={type:"Point",coordinates:F(I.coordinates)};break;case"MultiPoint":N={type:"MultiPoint",coordinates:I.coordinates.map(F)};break;default:return I}return I.id!=null&&(N.id=I.id),I.bbox!=null&&(N.bbox=I.bbox),I.properties!=null&&(N.properties=I.properties),N}function O(I){var N=0,U=1,W=I.length,Q,ue=new Array(W);for(ue[0]=y(I[0],0);++N<W;)((Q=y(I[N],N))[0]||Q[1])&&(ue[U++]=Q);return U===1&&(ue[U++]=[0,0]),ue.length=U,ue}for(P in L)z[P]=B(L[P]);return{type:"Topology",bbox:f,transform:S,objects:z,arcs:w.arcs.map(O)}}g.bbox=M,g.feature=t,g.merge=h,g.mergeArcs=v,g.mesh=i,g.meshArcs=n,g.neighbors=T,g.quantize=_,g.transform=A,g.untransform=l,Object.defineProperty(g,"__esModule",{value:!0})})}}),iT=Ye({"src/lib/topojson_utils.js"(X,H){"use strict";var g=H.exports={},x=mx().locationmodeToLayer,A=M5().feature;g.getTopojsonName=function(M){return[M.scope.replace(/ /g,"-"),"_",M.resolution.toString(),"m"].join("")},g.getTopojsonPath=function(M,e){return M+e+".json"},g.getTopojsonFeatures=function(M,e){var t=x[M.locationmode],r=e.objects[t];return A(e,r).features}}}),dg=Ye({"src/lib/geojson_utils.js"(X){"use strict";var H=ks().BADNUM;X.calcTraceToLineCoords=function(g){for(var x=g[0].trace,A=x.connectgaps,M=[],e=[],t=0;t<g.length;t++){var r=g[t],o=r.lonlat;o[0]!==H?e.push(o):!A&&e.length>0&&(M.push(e),e=[])}return e.length>0&&M.push(e),M},X.makeLine=function(g){return g.length===1?{type:"LineString",coordinates:g[0]}:{type:"MultiLineString",coordinates:g}},X.makePolygon=function(g){if(g.length===1)return{type:"Polygon",coordinates:g};for(var x=new Array(g.length),A=0;A<g.length;A++)x[A]=[g[A]];return{type:"MultiPolygon",coordinates:x}},X.makeBlank=function(){return{type:"Point",coordinates:[]}}}}),mU=Ye({"node_modules/country-regex/index.js"(X,H){H.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}}}),nT=Ye({"node_modules/@turf/helpers/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=63710088e-1,g={centimeters:H*100,centimetres:H*100,degrees:360/(2*Math.PI),feet:H*3.28084,inches:H*39.37,kilometers:H/1e3,kilometres:H/1e3,meters:H,metres:H,miles:H/1609.344,millimeters:H*1e3,millimetres:H*1e3,nauticalmiles:H/1852,radians:1,yards:H*1.0936},x={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function A(L,z,F={}){let B={type:"Feature"};return(F.id===0||F.id)&&(B.id=F.id),F.bbox&&(B.bbox=F.bbox),B.properties=z||{},B.geometry=L,B}function M(L,z,F={}){switch(L){case"Point":return e(z).geometry;case"LineString":return a(z).geometry;case"Polygon":return r(z).geometry;case"MultiPoint":return c(z).geometry;case"MultiLineString":return s(z).geometry;case"MultiPolygon":return h(z).geometry;default:throw new Error(L+" is invalid")}}function e(L,z,F={}){if(!L)throw new Error("coordinates is required");if(!Array.isArray(L))throw new Error("coordinates must be an Array");if(L.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!u(L[0])||!u(L[1]))throw new Error("coordinates must contain numbers");return A({type:"Point",coordinates:L},z,F)}function t(L,z,F={}){return n(L.map(B=>e(B,z)),F)}function r(L,z,F={}){for(let O of L){if(O.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(O[O.length-1].length!==O[0].length)throw new Error("First and last Position are not equivalent.");for(let I=0;I<O[O.length-1].length;I++)if(O[O.length-1][I]!==O[0][I])throw new Error("First and last Position are not equivalent.")}return A({type:"Polygon",coordinates:L},z,F)}function o(L,z,F={}){return n(L.map(B=>r(B,z)),F)}function a(L,z,F={}){if(L.length<2)throw new Error("coordinates must be an array of two or more positions");return A({type:"LineString",coordinates:L},z,F)}function i(L,z,F={}){return n(L.map(B=>a(B,z)),F)}function n(L,z={}){let F={type:"FeatureCollection"};return z.id&&(F.id=z.id),z.bbox&&(F.bbox=z.bbox),F.features=L,F}function s(L,z,F={}){return A({type:"MultiLineString",coordinates:L},z,F)}function c(L,z,F={}){return A({type:"MultiPoint",coordinates:L},z,F)}function h(L,z,F={}){return A({type:"MultiPolygon",coordinates:L},z,F)}function v(L,z,F={}){return A({type:"GeometryCollection",geometries:L},z,F)}function p(L,z=0){if(z&&!(z>=0))throw new Error("precision must be a positive number");let F=Math.pow(10,z||0);return Math.round(L*F)/F}function T(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L*F}function l(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L/F}function _(L,z){return E(l(L,z))}function w(L){let z=L%360;return z<0&&(z+=360),z}function S(L){return L=L%360,L>0?L>180?L-360:L:L<-180?L+360:L}function E(L){return L%(2*Math.PI)*180/Math.PI}function m(L){return L%360*Math.PI/180}function b(L,z="kilometers",F="kilometers"){if(!(L>=0))throw new Error("length must be a positive number");return T(l(L,z),F)}function d(L,z="meters",F="kilometers"){if(!(L>=0))throw new Error("area must be a positive number");let B=x[z];if(!B)throw new Error("invalid original units");let O=x[F];if(!O)throw new Error("invalid final units");return L/B*O}function u(L){return!isNaN(L)&&L!==null&&!Array.isArray(L)}function y(L){return L!==null&&typeof L=="object"&&!Array.isArray(L)}function f(L){if(!L)throw new Error("bbox is required");if(!Array.isArray(L))throw new Error("bbox must be an Array");if(L.length!==4&&L.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");L.forEach(z=>{if(!u(z))throw new Error("bbox must only contain numbers")})}function P(L){if(!L)throw new Error("id is required");if(["string","number"].indexOf(typeof L)===-1)throw new Error("id must be a number or a string")}X.areaFactors=x,X.azimuthToBearing=S,X.bearingToAzimuth=w,X.convertArea=d,X.convertLength=b,X.degreesToRadians=m,X.earthRadius=H,X.factors=g,X.feature=A,X.featureCollection=n,X.geometry=M,X.geometryCollection=v,X.isNumber=u,X.isObject=y,X.lengthToDegrees=_,X.lengthToRadians=l,X.lineString=a,X.lineStrings=i,X.multiLineString=s,X.multiPoint=c,X.multiPolygon=h,X.point=e,X.points=t,X.polygon=r,X.polygons=o,X.radiansToDegrees=E,X.radiansToLength=T,X.round=p,X.validateBBox=f,X.validateId=P}}),oT=Ye({"node_modules/@turf/meta/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT();function g(l,_,w){if(l!==null)for(var S,E,m,b,d,u,y,f=0,P=0,L,z=l.type,F=z==="FeatureCollection",B=z==="Feature",O=F?l.features.length:1,I=0;I<O;I++){y=F?l.features[I].geometry:B?l.geometry:l,L=y?y.type==="GeometryCollection":!1,d=L?y.geometries.length:1;for(var N=0;N<d;N++){var U=0,W=0;if(b=L?y.geometries[N]:y,b!==null){u=b.coordinates;var Q=b.type;switch(f=w&&(Q==="Polygon"||Q==="MultiPolygon")?1:0,Q){case null:break;case"Point":if(_(u,P,I,U,W)===!1)return!1;P++,U++;break;case"LineString":case"MultiPoint":for(S=0;S<u.length;S++){if(_(u[S],P,I,U,W)===!1)return!1;P++,Q==="MultiPoint"&&U++}Q==="LineString"&&U++;break;case"Polygon":case"MultiLineString":for(S=0;S<u.length;S++){for(E=0;E<u[S].length-f;E++){if(_(u[S][E],P,I,U,W)===!1)return!1;P++}Q==="MultiLineString"&&U++,Q==="Polygon"&&W++}Q==="Polygon"&&U++;break;case"MultiPolygon":for(S=0;S<u.length;S++){for(W=0,E=0;E<u[S].length;E++){for(m=0;m<u[S][E].length-f;m++){if(_(u[S][E][m],P,I,U,W)===!1)return!1;P++}W++}U++}break;case"GeometryCollection":for(S=0;S<b.geometries.length;S++)if(g(b.geometries[S],_,w)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function x(l,_,w,S){var E=w;return g(l,function(m,b,d,u,y){b===0&&w===void 0?E=m:E=_(E,m,b,d,u,y)},S),E}function A(l,_){var w;switch(l.type){case"FeatureCollection":for(w=0;w<l.features.length&&_(l.features[w].properties,w)!==!1;w++);break;case"Feature":_(l.properties,0);break}}function M(l,_,w){var S=w;return A(l,function(E,m){m===0&&w===void 0?S=E:S=_(S,E,m)}),S}function e(l,_){if(l.type==="Feature")_(l,0);else if(l.type==="FeatureCollection")for(var w=0;w<l.features.length&&_(l.features[w],w)!==!1;w++);}function t(l,_,w){var S=w;return e(l,function(E,m){m===0&&w===void 0?S=E:S=_(S,E,m)}),S}function r(l){var _=[];return g(l,function(w){_.push(w)}),_}function o(l,_){var w,S,E,m,b,d,u,y,f,P,L=0,z=l.type==="FeatureCollection",F=l.type==="Feature",B=z?l.features.length:1;for(w=0;w<B;w++){for(d=z?l.features[w].geometry:F?l.geometry:l,y=z?l.features[w].properties:F?l.properties:{},f=z?l.features[w].bbox:F?l.bbox:void 0,P=z?l.features[w].id:F?l.id:void 0,u=d?d.type==="GeometryCollection":!1,b=u?d.geometries.length:1,E=0;E<b;E++){if(m=u?d.geometries[E]:d,m===null){if(_(null,L,y,f,P)===!1)return!1;continue}switch(m.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(_(m,L,y,f,P)===!1)return!1;break}case"GeometryCollection":{for(S=0;S<m.geometries.length;S++)if(_(m.geometries[S],L,y,f,P)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}L++}}function a(l,_,w){var S=w;return o(l,function(E,m,b,d,u){m===0&&w===void 0?S=E:S=_(S,E,m,b,d,u)}),S}function i(l,_){o(l,function(w,S,E,m,b){var d=w===null?null:w.type;switch(d){case null:case"Point":case"LineString":case"Polygon":return _(H.feature.call(void 0,w,E,{bbox:m,id:b}),S,0)===!1?!1:void 0}var u;switch(d){case"MultiPoint":u="Point";break;case"MultiLineString":u="LineString";break;case"MultiPolygon":u="Polygon";break}for(var y=0;y<w.coordinates.length;y++){var f=w.coordinates[y],P={type:u,coordinates:f};if(_(H.feature.call(void 0,P,E),S,y)===!1)return!1}})}function n(l,_,w){var S=w;return i(l,function(E,m,b){m===0&&b===0&&w===void 0?S=E:S=_(S,E,m,b)}),S}function s(l,_){i(l,function(w,S,E){var m=0;if(w.geometry){var b=w.geometry.type;if(!(b==="Point"||b==="MultiPoint")){var d,u=0,y=0,f=0;if(g(w,function(P,L,z,F,B){if(d===void 0||S>u||F>y||B>f){d=P,u=S,y=F,f=B,m=0;return}var O=H.lineString.call(void 0,[d,P],w.properties);if(_(O,S,E,B,m)===!1)return!1;m++,d=P})===!1)return!1}}})}function c(l,_,w){var S=w,E=!1;return s(l,function(m,b,d,u,y){E===!1&&w===void 0?S=m:S=_(S,m,b,d,u,y),E=!0}),S}function h(l,_){if(!l)throw new Error("geojson is required");i(l,function(w,S,E){if(w.geometry!==null){var m=w.geometry.type,b=w.geometry.coordinates;switch(m){case"LineString":if(_(w,S,E,0,0)===!1)return!1;break;case"Polygon":for(var d=0;d<b.length;d++)if(_(H.lineString.call(void 0,b[d],w.properties),S,E,d)===!1)return!1;break}}})}function v(l,_,w){var S=w;return h(l,function(E,m,b,d){m===0&&w===void 0?S=E:S=_(S,E,m,b,d)}),S}function p(l,_){if(_=_||{},!H.isObject.call(void 0,_))throw new Error("options is invalid");var w=_.featureIndex||0,S=_.multiFeatureIndex||0,E=_.geometryIndex||0,m=_.segmentIndex||0,b=_.properties,d;switch(l.type){case"FeatureCollection":w<0&&(w=l.features.length+w),b=b||l.features[w].properties,d=l.features[w].geometry;break;case"Feature":b=b||l.properties,d=l.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":d=l;break;default:throw new Error("geojson is invalid")}if(d===null)return null;var u=d.coordinates;switch(d.type){case"Point":case"MultiPoint":return null;case"LineString":return m<0&&(m=u.length+m-1),H.lineString.call(void 0,[u[m],u[m+1]],b,_);case"Polygon":return E<0&&(E=u.length+E),m<0&&(m=u[E].length+m-1),H.lineString.call(void 0,[u[E][m],u[E][m+1]],b,_);case"MultiLineString":return S<0&&(S=u.length+S),m<0&&(m=u[S].length+m-1),H.lineString.call(void 0,[u[S][m],u[S][m+1]],b,_);case"MultiPolygon":return S<0&&(S=u.length+S),E<0&&(E=u[S].length+E),m<0&&(m=u[S][E].length-m-1),H.lineString.call(void 0,[u[S][E][m],u[S][E][m+1]],b,_)}throw new Error("geojson is invalid")}function T(l,_){if(_=_||{},!H.isObject.call(void 0,_))throw new Error("options is invalid");var w=_.featureIndex||0,S=_.multiFeatureIndex||0,E=_.geometryIndex||0,m=_.coordIndex||0,b=_.properties,d;switch(l.type){case"FeatureCollection":w<0&&(w=l.features.length+w),b=b||l.features[w].properties,d=l.features[w].geometry;break;case"Feature":b=b||l.properties,d=l.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":d=l;break;default:throw new Error("geojson is invalid")}if(d===null)return null;var u=d.coordinates;switch(d.type){case"Point":return H.point.call(void 0,u,b,_);case"MultiPoint":return S<0&&(S=u.length+S),H.point.call(void 0,u[S],b,_);case"LineString":return m<0&&(m=u.length+m),H.point.call(void 0,u[m],b,_);case"Polygon":return E<0&&(E=u.length+E),m<0&&(m=u[E].length+m),H.point.call(void 0,u[E][m],b,_);case"MultiLineString":return S<0&&(S=u.length+S),m<0&&(m=u[S].length+m),H.point.call(void 0,u[S][m],b,_);case"MultiPolygon":return S<0&&(S=u.length+S),E<0&&(E=u[S].length+E),m<0&&(m=u[S][E].length-m),H.point.call(void 0,u[S][E][m],b,_)}throw new Error("geojson is invalid")}X.coordAll=r,X.coordEach=g,X.coordReduce=x,X.featureEach=e,X.featureReduce=t,X.findPoint=T,X.findSegment=p,X.flattenEach=i,X.flattenReduce=n,X.geomEach=o,X.geomReduce=a,X.lineEach=h,X.lineReduce=v,X.propEach=A,X.propReduce=M,X.segmentEach=s,X.segmentReduce=c}}),gU=Ye({"node_modules/@turf/area/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(a){return g.geomReduce.call(void 0,a,(i,n)=>i+A(n),0)}function A(a){let i=0,n;switch(a.type){case"Polygon":return M(a.coordinates);case"MultiPolygon":for(n=0;n<a.coordinates.length;n++)i+=M(a.coordinates[n]);return i;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function M(a){let i=0;if(a&&a.length>0){i+=Math.abs(r(a[0]));for(let n=1;n<a.length;n++)i-=Math.abs(r(a[n]))}return i}var e=H.earthRadius*H.earthRadius/2,t=Math.PI/180;function r(a){let i=a.length-1;if(i<=2)return 0;let n=0,s=0;for(;s<i;){let c=a[s],h=a[s+1===i?0:s+1],v=a[s+2>=i?(s+2)%i:s+2],p=c[0]*t,T=h[1]*t,l=v[0]*t;n+=(l-p)*Math.sin(T),s++}return n*e}var o=x;X.area=x,X.default=o}}),yU=Ye({"node_modules/@turf/centroid/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(M,e={}){let t=0,r=0,o=0;return g.coordEach.call(void 0,M,function(a){t+=a[0],r+=a[1],o++},!0),H.point.call(void 0,[t/o,r/o],e.properties)}var A=x;X.centroid=x,X.default=A}}),_U=Ye({"node_modules/@turf/bbox/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=oT();function g(A,M={}){if(A.bbox!=null&&M.recompute!==!0)return A.bbox;let e=[1/0,1/0,-1/0,-1/0];return H.coordEach.call(void 0,A,t=>{e[0]>t[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]<t[0]&&(e[2]=t[0]),e[3]<t[1]&&(e[3]=t[1])}),e}var x=g;X.bbox=g,X.default=x}}),vg=Ye({"src/lib/geo_location_utils.js"(X,H){"use strict";var g=_n(),x=mU(),{area:A}=gU(),{centroid:M}=yU(),{bbox:e}=_U(),t=T_(),r=Ym(),o=Zv(),a=__(),i=C_(),n=Object.keys(x),s={"ISO-3":t,"USA-states":t,"country names":c};function c(S){for(var E=0;E<n.length;E++){var m=n[E],b=new RegExp(x[m]);if(b.test(S.trim().toLowerCase()))return m}return r.log("Unrecognized country name: "+S+"."),!1}function h(S,E,m){if(!E||typeof E!="string")return!1;var b=s[S](E),d,u,y;if(b){if(S==="USA-states")for(d=[],y=0;y<m.length;y++)u=m[y],u.properties&&u.properties.gu&&u.properties.gu==="USA"&&d.push(u);else d=m;for(y=0;y<d.length;y++)if(u=d[y],u.id===b)return u;r.log(["Location with id",b,"does not have a matching topojson feature at this resolution."].join(" "))}return!1}function v(S){var E=S.geometry,m=E.coordinates,b=S.id,d=[],u,y,f,P;function L(z){for(var F=0;F<z.length-1;F++)if(z[F][0]>0&&z[F+1][0]<0)return F;return null}switch(b==="RUS"||b==="FJI"?u=function(z){var F;if(L(z)===null)F=z;else for(F=new Array(z.length),P=0;P<z.length;P++)F[P]=[z[P][0]<0?z[P][0]+360:z[P][0],z[P][1]];d.push(i.tester(F))}:b==="ATA"?u=function(z){var F=L(z);if(F===null)return d.push(i.tester(z));var B=new Array(z.length+1),O=0;for(P=0;P<z.length;P++)P>F?B[O++]=[z[P][0]+360,z[P][1]]:P===F?(B[O++]=z[P],B[O++]=[z[P][0],-90]):B[O++]=z[P];var I=i.tester(B);I.pts.pop(),d.push(I)}:u=function(z){d.push(i.tester(z))},E.type){case"MultiPolygon":for(y=0;y<m.length;y++)for(f=0;f<m[y].length;f++)u(m[y][f]);break;case"Polygon":for(y=0;y<m.length;y++)u(m[y]);break}return d}function p(S){var E=S.geojson,m=window.PlotlyGeoAssets||{},b=typeof E=="string"?m[E]:E;return o(b)?b:(r.error("Oops ... something went wrong when fetching "+E),!1)}function T(S){var E=S[0].trace,m=p(E);if(!m)return!1;var b={},d=[],u;for(u=0;u<E._length;u++){var y=S[u];(y.loc||y.loc===0)&&(b[y.loc]=y)}function f(z){var F=a(z,E.featureidkey||"id").get(),B=b[F];if(B){var O=z.geometry;if(O.type==="Polygon"||O.type==="MultiPolygon"){var I={type:"Feature",id:F,geometry:O,properties:{}};I.geometry.coordinates.length>0?I.properties.ct=l(I):I.properties.ct=[NaN,NaN],B.fIn=z,B.fOut=I,d.push(I)}else r.log(["Location",B.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete b[F]}switch(m.type){case"FeatureCollection":var P=m.features;for(u=0;u<P.length;u++)f(P[u]);break;case"Feature":f(m);break;default:return r.warn(["Invalid GeoJSON type",(m.type||"none")+".","Traces with locationmode *geojson-id* only support","*FeatureCollection* and *Feature* types."].join(" ")),!1}for(var L in b)r.log(["Location *"+L+"*","does not have a matching feature with id-key","*"+E.featureidkey+"*."].join(" "));return d}function l(S){var E=S.geometry,m;if(E.type==="MultiPolygon")for(var b=E.coordinates,d=0,u=0;u<b.length;u++){var y={type:"Polygon",coordinates:b[u]},f=A(y);f>d&&(d=f,m=y)}else m=E;return M(m).geometry.coordinates}function _(S){var E=window.PlotlyGeoAssets||{},m=[];function b(P){return new Promise(function(L,z){g.json(P,function(F,B){if(F){delete E[P];var O=F.status===404?'GeoJSON at URL "'+P+'" does not exist.':"Unexpected error while fetching from "+P;return z(new Error(O))}return E[P]=B,L(B)})})}function d(P){return new Promise(function(L,z){var F=0,B=setInterval(function(){if(E[P]&&E[P]!=="pending")return clearInterval(B),L(E[P]);if(F>100)return clearInterval(B),z("Unexpected error while fetching from "+P);F++},50)})}for(var u=0;u<S.length;u++){var y=S[u][0].trace,f=y.geojson;typeof f=="string"&&(E[f]?E[f]==="pending"&&m.push(d(f)):(E[f]="pending",m.push(b(f))))}return m}function w(S){return e(S)}H.exports={locationToFeature:h,feature2polygons:v,getTraceGeojson:p,extractTraceFeature:T,fetchTraceGeoData:_,computeBbox:w}}}),E5=Ye({"src/traces/scattergeo/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=ed(),e=M.stylePoints,t=M.styleText;H.exports=function(a,i){i&&r(a,i)};function r(o,a){var i=a[0].trace,n=a[0].node3;n.style("opacity",a[0].trace.opacity),e(n,i,o),t(n,i,o),n.selectAll("path.js-line").style("fill","none").each(function(s){var c=g.select(this),h=s.trace,v=h.line||{};c.call(A.stroke,v.color).call(x.dashLine,v.dash||"",v.width||0),h.fill!=="none"&&c.call(A.fill,h.fillcolor)})}}}),k5=Ye({"src/traces/scattergeo/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=iT().getTopojsonFeatures,M=dg(),e=vg(),t=Yd().findExtremes,r=ks().BADNUM,o=Bd().calcMarkerSize,a=uu(),i=E5();function n(c,h,v){var p=h.layers.frontplot.select(".scatterlayer"),T=x.makeTraceGroups(p,v,"trace scattergeo");function l(_,w){_.lonlat[0]===r&&g.select(w).remove()}T.selectAll("*").remove(),T.each(function(_){var w=g.select(this),S=_[0].trace;if(a.hasLines(S)||S.fill!=="none"){var E=M.calcTraceToLineCoords(_),m=S.fill!=="none"?M.makePolygon(E):M.makeLine(E);w.selectAll("path.js-line").data([{geojson:m,trace:S}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}a.hasMarkers(S)&&w.selectAll("path.point").data(x.identity).enter().append("path").classed("point",!0).each(function(b){l(b,this)}),a.hasText(S)&&w.selectAll("g").data(x.identity).enter().append("g").append("text").each(function(b){l(b,this)}),i(c,_)})}function s(c,h){var v=c[0].trace,p=h[v.geo],T=p._subplot,l=v._length,_,w;if(x.isArrayOrTypedArray(v.locations)){var S=v.locationmode,E=S==="geojson-id"?e.extractTraceFeature(c):A(v,T.topojson);for(_=0;_<l;_++){w=c[_];var m=S==="geojson-id"?w.fOut:e.locationToFeature(S,w.loc,E);w.lonlat=m?m.properties.ct:[r,r]}}var b={padded:!0},d,u;if(p.fitbounds==="geojson"&&v.locationmode==="geojson-id"){var y=e.computeBbox(e.getTraceGeojson(v));d=[y[0],y[2]],u=[y[1],y[3]]}else{for(d=new Array(l),u=new Array(l),_=0;_<l;_++)w=c[_],d[_]=w.lonlat[0],u[_]=w.lonlat[1];b.ppad=o(v,l)}v._extremes.lon=t(p.lonaxis._ax,d,b),v._extremes.lat=t(p.lataxis._ax,u,b)}H.exports={calcGeoJSON:s,plot:n}}}),xU=Ye({"src/traces/scattergeo/hover.js"(X,H){"use strict";var g=Lc(),x=ks().BADNUM,A=s1(),M=ta().fillText,e=p0();H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.xa,h=o.ya,v=o.subplot,p=v.projection.isLonLatOverEdges,T=v.project;function l(d){var u=d.lonlat;if(u[0]===x||p(u))return 1/0;var y=T(u),f=T([a,i]),P=Math.abs(y[0]-f[0]),L=Math.abs(y[1]-f[1]),z=Math.max(3,d.mrc||0);return Math.max(Math.sqrt(P*P+L*L)-z,1-3/z)}if(g.getClosest(n,l,o),o.index!==!1){var _=n[o.index],w=_.lonlat,S=[c.c2p(w),h.c2p(w)],E=_.mrc||1;o.x0=S[0]-E,o.x1=S[0]+E,o.y0=S[1]-E,o.y1=S[1]+E,o.loc=_.loc,o.lon=w[0],o.lat=w[1];var m={};m[s.geo]={_subplot:v};var b=s._module.formatLabels(_,s,m);return o.lonLabel=b.lonLabel,o.latLabel=b.latLabel,o.color=A(s,_),o.extraText=t(s,_,o,n[0].t.labels),o.hovertemplate=s.hovertemplate,[o]}};function t(r,o,a,i){if(r.hovertemplate)return;var n=o.hi||r.hoverinfo,s=n==="all"?e.hoverinfo.flags:n.split("+"),c=s.indexOf("location")!==-1&&Array.isArray(r.locations),h=s.indexOf("lon")!==-1,v=s.indexOf("lat")!==-1,p=s.indexOf("text")!==-1,T=[];function l(_){return _+"\xB0"}return c?T.push(o.loc):h&&v?T.push("("+l(a.latLabel)+", "+l(a.lonLabel)+")"):h?T.push(i.lon+l(a.lonLabel)):v&&T.push(i.lat+l(a.latLabel)),p&&M(o,r,T),T.join("<br>")}}}),bU=Ye({"src/traces/scattergeo/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.lon=A.lon,x.lat=A.lat,x.location=A.loc?A.loc:null;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x}}}),wU=Ye({"src/traces/scattergeo/select.js"(X,H){"use strict";var g=uu(),x=ks().BADNUM;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n,s,c,h,v,p=!g.hasMarkers(i)&&!g.hasText(i);if(p)return[];if(e===!1)for(v=0;v<t.length;v++)t[v].selected=0;else for(v=0;v<t.length;v++)n=t[v],s=n.lonlat,s[0]!==x&&(c=r.c2p(s),h=o.c2p(s),e.contains([c,h],null,v,M)?(a.push({pointNumber:v,lon:s[0],lat:s[1]}),n.selected=1):n.selected=0);return a}}}),gx=Ye({"node_modules/d3-array/dist/d3-array.js"(X,H){(function(g,x){x(typeof X=="object"&&typeof H<"u"?X:g.d3=g.d3||{})})(X,function(g){"use strict";function x(J,Z){return J<Z?-1:J>Z?1:J>=Z?0:NaN}function A(J){return J.length===1&&(J=M(J)),{left:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne<j;){var ee=ne+j>>>1;J(Z[ee],re)<0?ne=ee+1:j=ee}return ne},right:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne<j;){var ee=ne+j>>>1;J(Z[ee],re)>0?j=ee:ne=ee+1}return ne}}}function M(J){return function(Z,re){return x(J(Z),re)}}var e=A(x),t=e.right,r=e.left;function o(J,Z){Z==null&&(Z=a);for(var re=0,ne=J.length-1,j=J[0],ee=new Array(ne<0?0:ne);re<ne;)ee[re]=Z(j,j=J[++re]);return ee}function a(J,Z){return[J,Z]}function i(J,Z,re){var ne=J.length,j=Z.length,ee=new Array(ne*j),ie,fe,be,Ae;for(re==null&&(re=a),ie=be=0;ie<ne;++ie)for(Ae=J[ie],fe=0;fe<j;++fe,++be)ee[be]=re(Ae,Z[fe]);return ee}function n(J,Z){return Z<J?-1:Z>J?1:Z>=J?0:NaN}function s(J){return J===null?NaN:+J}function c(J,Z){var re=J.length,ne=0,j=-1,ee=0,ie,fe,be=0;if(Z==null)for(;++j<re;)isNaN(ie=s(J[j]))||(fe=ie-ee,ee+=fe/++ne,be+=fe*(ie-ee));else for(;++j<re;)isNaN(ie=s(Z(J[j],j,J)))||(fe=ie-ee,ee+=fe/++ne,be+=fe*(ie-ee));if(ne>1)return be/(ne-1)}function h(J,Z){var re=c(J,Z);return re&&Math.sqrt(re)}function v(J,Z){var re=J.length,ne=-1,j,ee,ie;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=ie=j;++ne<re;)(j=J[ne])!=null&&(ee>j&&(ee=j),ie<j&&(ie=j))}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=ie=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&(ee>j&&(ee=j),ie<j&&(ie=j));return[ee,ie]}var p=Array.prototype,T=p.slice,l=p.map;function _(J){return function(){return J}}function w(J){return J}function S(J,Z,re){J=+J,Z=+Z,re=(j=arguments.length)<2?(Z=J,J=0,1):j<3?1:+re;for(var ne=-1,j=Math.max(0,Math.ceil((Z-J)/re))|0,ee=new Array(j);++ne<j;)ee[ne]=J+ne*re;return ee}var E=Math.sqrt(50),m=Math.sqrt(10),b=Math.sqrt(2);function d(J,Z,re){var ne,j=-1,ee,ie,fe;if(Z=+Z,J=+J,re=+re,J===Z&&re>0)return[J];if((ne=Z<J)&&(ee=J,J=Z,Z=ee),(fe=u(J,Z,re))===0||!isFinite(fe))return[];if(fe>0)for(J=Math.ceil(J/fe),Z=Math.floor(Z/fe),ie=new Array(ee=Math.ceil(Z-J+1));++j<ee;)ie[j]=(J+j)*fe;else for(J=Math.floor(J*fe),Z=Math.ceil(Z*fe),ie=new Array(ee=Math.ceil(J-Z+1));++j<ee;)ie[j]=(J-j)/fe;return ne&&ie.reverse(),ie}function u(J,Z,re){var ne=(Z-J)/Math.max(0,re),j=Math.floor(Math.log(ne)/Math.LN10),ee=ne/Math.pow(10,j);return j>=0?(ee>=E?10:ee>=m?5:ee>=b?2:1)*Math.pow(10,j):-Math.pow(10,-j)/(ee>=E?10:ee>=m?5:ee>=b?2:1)}function y(J,Z,re){var ne=Math.abs(Z-J)/Math.max(0,re),j=Math.pow(10,Math.floor(Math.log(ne)/Math.LN10)),ee=ne/j;return ee>=E?j*=10:ee>=m?j*=5:ee>=b&&(j*=2),Z<J?-j:j}function f(J){return Math.ceil(Math.log(J.length)/Math.LN2)+1}function P(){var J=w,Z=v,re=f;function ne(j){var ee,ie=j.length,fe,be=new Array(ie);for(ee=0;ee<ie;++ee)be[ee]=J(j[ee],ee,j);var Ae=Z(be),Be=Ae[0],Ie=Ae[1],Ze=re(be,Be,Ie);Array.isArray(Ze)||(Ze=y(Be,Ie,Ze),Ze=S(Math.ceil(Be/Ze)*Ze,Ie,Ze));for(var at=Ze.length;Ze[0]<=Be;)Ze.shift(),--at;for(;Ze[at-1]>Ie;)Ze.pop(),--at;var it=new Array(at+1),et;for(ee=0;ee<=at;++ee)et=it[ee]=[],et.x0=ee>0?Ze[ee-1]:Be,et.x1=ee<at?Ze[ee]:Ie;for(ee=0;ee<ie;++ee)fe=be[ee],Be<=fe&&fe<=Ie&&it[t(Ze,fe,0,at)].push(j[ee]);return it}return ne.value=function(j){return arguments.length?(J=typeof j=="function"?j:_(j),ne):J},ne.domain=function(j){return arguments.length?(Z=typeof j=="function"?j:_([j[0],j[1]]),ne):Z},ne.thresholds=function(j){return arguments.length?(re=typeof j=="function"?j:Array.isArray(j)?_(T.call(j)):_(j),ne):re},ne}function L(J,Z,re){if(re==null&&(re=s),!!(ne=J.length)){if((Z=+Z)<=0||ne<2)return+re(J[0],0,J);if(Z>=1)return+re(J[ne-1],ne-1,J);var ne,j=(ne-1)*Z,ee=Math.floor(j),ie=+re(J[ee],ee,J),fe=+re(J[ee+1],ee+1,J);return ie+(fe-ie)*(j-ee)}}function z(J,Z,re){return J=l.call(J,s).sort(x),Math.ceil((re-Z)/(2*(L(J,.75)-L(J,.25))*Math.pow(J.length,-1/3)))}function F(J,Z,re){return Math.ceil((re-Z)/(3.5*h(J)*Math.pow(J.length,-1/3)))}function B(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=j;++ne<re;)(j=J[ne])!=null&&j>ee&&(ee=j)}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&j>ee&&(ee=j);return ee}function O(J,Z){var re=J.length,ne=re,j=-1,ee,ie=0;if(Z==null)for(;++j<re;)isNaN(ee=s(J[j]))?--ne:ie+=ee;else for(;++j<re;)isNaN(ee=s(Z(J[j],j,J)))?--ne:ie+=ee;if(ne)return ie/ne}function I(J,Z){var re=J.length,ne=-1,j,ee=[];if(Z==null)for(;++ne<re;)isNaN(j=s(J[ne]))||ee.push(j);else for(;++ne<re;)isNaN(j=s(Z(J[ne],ne,J)))||ee.push(j);return L(ee.sort(x),.5)}function N(J){for(var Z=J.length,re,ne=-1,j=0,ee,ie;++ne<Z;)j+=J[ne].length;for(ee=new Array(j);--Z>=0;)for(ie=J[Z],re=ie.length;--re>=0;)ee[--j]=ie[re];return ee}function U(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=j;++ne<re;)(j=J[ne])!=null&&ee>j&&(ee=j)}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&ee>j&&(ee=j);return ee}function W(J,Z){for(var re=Z.length,ne=new Array(re);re--;)ne[re]=J[Z[re]];return ne}function Q(J,Z){if(re=J.length){var re,ne=0,j=0,ee,ie=J[j];for(Z==null&&(Z=x);++ne<re;)(Z(ee=J[ne],ie)<0||Z(ie,ie)!==0)&&(ie=ee,j=ne);if(Z(ie,ie)===0)return j}}function ue(J,Z,re){for(var ne=(re??J.length)-(Z=Z==null?0:+Z),j,ee;ne;)ee=Math.random()*ne--|0,j=J[ne+Z],J[ne+Z]=J[ee+Z],J[ee+Z]=j;return J}function se(J,Z){var re=J.length,ne=-1,j,ee=0;if(Z==null)for(;++ne<re;)(j=+J[ne])&&(ee+=j);else for(;++ne<re;)(j=+Z(J[ne],ne,J))&&(ee+=j);return ee}function he(J){if(!(ee=J.length))return[];for(var Z=-1,re=U(J,G),ne=new Array(re);++Z<re;)for(var j=-1,ee,ie=ne[Z]=new Array(ee);++j<ee;)ie[j]=J[j][Z];return ne}function G(J){return J.length}function $(){return he(arguments)}g.bisect=t,g.bisectRight=t,g.bisectLeft=r,g.ascending=x,g.bisector=A,g.cross=i,g.descending=n,g.deviation=h,g.extent=v,g.histogram=P,g.thresholdFreedmanDiaconis=z,g.thresholdScott=F,g.thresholdSturges=f,g.max=B,g.mean=O,g.median=I,g.merge=N,g.min=U,g.pairs=o,g.permute=W,g.quantile=L,g.range=S,g.scan=Q,g.shuffle=ue,g.sum=se,g.ticks=d,g.tickIncrement=u,g.tickStep=y,g.transpose=he,g.variance=c,g.zip=$,Object.defineProperty(g,"__esModule",{value:!0})})}}),C5=Ye({"node_modules/d3-geo/dist/d3-geo.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(){return new M}function M(){this.reset()}M.prototype={constructor:M,reset:function(){this.s=this.t=0},add:function(Zt){t(e,Zt,this.t),t(this,e.s,this.s),this.s?this.t+=e.t:this.s=e.t},valueOf:function(){return this.s}};var e=new M;function t(Zt,fr,Yr){var qr=Zt.s=fr+Yr,ba=qr-fr,Ka=qr-ba;Zt.t=fr-Ka+(Yr-ba)}var r=1e-6,o=1e-12,a=Math.PI,i=a/2,n=a/4,s=a*2,c=180/a,h=a/180,v=Math.abs,p=Math.atan,T=Math.atan2,l=Math.cos,_=Math.ceil,w=Math.exp,S=Math.log,E=Math.pow,m=Math.sin,b=Math.sign||function(Zt){return Zt>0?1:Zt<0?-1:0},d=Math.sqrt,u=Math.tan;function y(Zt){return Zt>1?0:Zt<-1?a:Math.acos(Zt)}function f(Zt){return Zt>1?i:Zt<-1?-i:Math.asin(Zt)}function P(Zt){return(Zt=m(Zt/2))*Zt}function L(){}function z(Zt,fr){Zt&&B.hasOwnProperty(Zt.type)&&B[Zt.type](Zt,fr)}var F={Feature:function(Zt,fr){z(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr<ba;)z(Yr[qr].geometry,fr)}},B={Sphere:function(Zt,fr){fr.sphere()},Point:function(Zt,fr){Zt=Zt.coordinates,fr.point(Zt[0],Zt[1],Zt[2])},MultiPoint:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)Zt=Yr[qr],fr.point(Zt[0],Zt[1],Zt[2])},LineString:function(Zt,fr){O(Zt.coordinates,fr,0)},MultiLineString:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)O(Yr[qr],fr,0)},Polygon:function(Zt,fr){I(Zt.coordinates,fr)},MultiPolygon:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)I(Yr[qr],fr)},GeometryCollection:function(Zt,fr){for(var Yr=Zt.geometries,qr=-1,ba=Yr.length;++qr<ba;)z(Yr[qr],fr)}};function O(Zt,fr,Yr){var qr=-1,ba=Zt.length-Yr,Ka;for(fr.lineStart();++qr<ba;)Ka=Zt[qr],fr.point(Ka[0],Ka[1],Ka[2]);fr.lineEnd()}function I(Zt,fr){var Yr=-1,qr=Zt.length;for(fr.polygonStart();++Yr<qr;)O(Zt[Yr],fr,1);fr.polygonEnd()}function N(Zt,fr){Zt&&F.hasOwnProperty(Zt.type)?F[Zt.type](Zt,fr):z(Zt,fr)}var U=A(),W=A(),Q,ue,se,he,G,$={point:L,lineStart:L,lineEnd:L,polygonStart:function(){U.reset(),$.lineStart=J,$.lineEnd=Z},polygonEnd:function(){var Zt=+U;W.add(Zt<0?s+Zt:Zt),this.lineStart=this.lineEnd=this.point=L},sphere:function(){W.add(s)}};function J(){$.point=re}function Z(){ne(Q,ue)}function re(Zt,fr){$.point=ne,Q=Zt,ue=fr,Zt*=h,fr*=h,se=Zt,he=l(fr=fr/2+n),G=m(fr)}function ne(Zt,fr){Zt*=h,fr*=h,fr=fr/2+n;var Yr=Zt-se,qr=Yr>=0?1:-1,ba=qr*Yr,Ka=l(fr),oi=m(fr),yi=G*oi,ki=he*Ka+yi*l(ba),Bi=yi*qr*m(ba);U.add(T(Bi,ki)),se=Zt,he=Ka,G=oi}function j(Zt){return W.reset(),N(Zt,$),W*2}function ee(Zt){return[T(Zt[1],Zt[0]),f(Zt[2])]}function ie(Zt){var fr=Zt[0],Yr=Zt[1],qr=l(Yr);return[qr*l(fr),qr*m(fr),m(Yr)]}function fe(Zt,fr){return Zt[0]*fr[0]+Zt[1]*fr[1]+Zt[2]*fr[2]}function be(Zt,fr){return[Zt[1]*fr[2]-Zt[2]*fr[1],Zt[2]*fr[0]-Zt[0]*fr[2],Zt[0]*fr[1]-Zt[1]*fr[0]]}function Ae(Zt,fr){Zt[0]+=fr[0],Zt[1]+=fr[1],Zt[2]+=fr[2]}function Be(Zt,fr){return[Zt[0]*fr,Zt[1]*fr,Zt[2]*fr]}function Ie(Zt){var fr=d(Zt[0]*Zt[0]+Zt[1]*Zt[1]+Zt[2]*Zt[2]);Zt[0]/=fr,Zt[1]/=fr,Zt[2]/=fr}var Ze,at,it,et,lt,Me,ge,ce,ze=A(),tt,nt,Qe={point:Ct,lineStart:Ot,lineEnd:jt,polygonStart:function(){Qe.point=ur,Qe.lineStart=ar,Qe.lineEnd=Cr,ze.reset(),$.polygonStart()},polygonEnd:function(){$.polygonEnd(),Qe.point=Ct,Qe.lineStart=Ot,Qe.lineEnd=jt,U<0?(Ze=-(it=180),at=-(et=90)):ze>r?et=90:ze<-r&&(at=-90),nt[0]=Ze,nt[1]=it},sphere:function(){Ze=-(it=180),at=-(et=90)}};function Ct(Zt,fr){tt.push(nt=[Ze=Zt,it=Zt]),fr<at&&(at=fr),fr>et&&(et=fr)}function St(Zt,fr){var Yr=ie([Zt*h,fr*h]);if(ce){var qr=be(ce,Yr),ba=[qr[1],-qr[0],0],Ka=be(ba,qr);Ie(Ka),Ka=ee(Ka);var oi=Zt-lt,yi=oi>0?1:-1,ki=Ka[0]*c*yi,Bi,li=v(oi)>180;li^(yi*lt<ki&&ki<yi*Zt)?(Bi=Ka[1]*c,Bi>et&&(et=Bi)):(ki=(ki+360)%360-180,li^(yi*lt<ki&&ki<yi*Zt)?(Bi=-Ka[1]*c,Bi<at&&(at=Bi)):(fr<at&&(at=fr),fr>et&&(et=fr))),li?Zt<lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt):it>=Ze?(Zt<Ze&&(Ze=Zt),Zt>it&&(it=Zt)):Zt>lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt)}else tt.push(nt=[Ze=Zt,it=Zt]);fr<at&&(at=fr),fr>et&&(et=fr),ce=Yr,lt=Zt}function Ot(){Qe.point=St}function jt(){nt[0]=Ze,nt[1]=it,Qe.point=Ct,ce=null}function ur(Zt,fr){if(ce){var Yr=Zt-lt;ze.add(v(Yr)>180?Yr+(Yr>0?360:-360):Yr)}else Me=Zt,ge=fr;$.point(Zt,fr),St(Zt,fr)}function ar(){$.lineStart()}function Cr(){ur(Me,ge),$.lineEnd(),v(ze)>r&&(Ze=-(it=180)),nt[0]=Ze,nt[1]=it,ce=null}function vr(Zt,fr){return(fr-=Zt)<0?fr+360:fr}function _r(Zt,fr){return Zt[0]-fr[0]}function yt(Zt,fr){return Zt[0]<=Zt[1]?Zt[0]<=fr&&fr<=Zt[1]:fr<Zt[0]||Zt[1]<fr}function Fe(Zt){var fr,Yr,qr,ba,Ka,oi,yi;if(et=it=-(Ze=at=1/0),tt=[],N(Zt,Qe),Yr=tt.length){for(tt.sort(_r),fr=1,qr=tt[0],Ka=[qr];fr<Yr;++fr)ba=tt[fr],yt(qr,ba[0])||yt(qr,ba[1])?(vr(qr[0],ba[1])>vr(qr[0],qr[1])&&(qr[1]=ba[1]),vr(ba[0],qr[1])>vr(qr[0],qr[1])&&(qr[0]=ba[0])):Ka.push(qr=ba);for(oi=-1/0,Yr=Ka.length-1,fr=0,qr=Ka[Yr];fr<=Yr;qr=ba,++fr)ba=Ka[fr],(yi=vr(qr[1],ba[0]))>oi&&(oi=yi,Ze=ba[0],it=qr[1])}return tt=nt=null,Ze===1/0||at===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ze,at],[it,et]]}var Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa={sphere:L,point:La,lineStart:Ga,lineEnd:ni,polygonStart:function(){Aa.lineStart=Wt,Aa.lineEnd=zt},polygonEnd:function(){Aa.lineStart=Ga,Aa.lineEnd=ni}};function La(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);ka(Yr*l(Zt),Yr*m(Zt),m(fr))}function ka(Zt,fr,Yr){++Ke,Ee+=(Zt-Ee)/Ke,Ve+=(fr-Ve)/Ke,ke+=(Yr-ke)/Ke}function Ga(){Aa.point=Ma}function Ma(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),Aa.point=Ua,ka(Kt,sr,sa)}function Ua(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=T(d((oi=sr*Ka-sa*ba)*oi+(oi=sa*qr-Kt*Ka)*oi+(oi=Kt*ba-sr*qr)*oi),Kt*qr+sr*ba+sa*Ka);Ne+=oi,Te+=oi*(Kt+(Kt=qr)),Le+=oi*(sr+(sr=ba)),rt+=oi*(sa+(sa=Ka)),ka(Kt,sr,sa)}function ni(){Aa.point=La}function Wt(){Aa.point=Vt}function zt(){Ut(Bt,Gt),Aa.point=La}function Vt(Zt,fr){Bt=Zt,Gt=fr,Zt*=h,fr*=h,Aa.point=Ut;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),ka(Kt,sr,sa)}function Ut(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=sr*Ka-sa*ba,yi=sa*qr-Kt*Ka,ki=Kt*ba-sr*qr,Bi=d(oi*oi+yi*yi+ki*ki),li=f(Bi),_i=Bi&&-li/Bi;dt+=_i*oi,xt+=_i*yi,It+=_i*ki,Ne+=li,Te+=li*(Kt+(Kt=qr)),Le+=li*(sr+(sr=ba)),rt+=li*(sa+(sa=Ka)),ka(Kt,sr,sa)}function xr(Zt){Ke=Ne=Ee=Ve=ke=Te=Le=rt=dt=xt=It=0,N(Zt,Aa);var fr=dt,Yr=xt,qr=It,ba=fr*fr+Yr*Yr+qr*qr;return ba<o&&(fr=Te,Yr=Le,qr=rt,Ne<r&&(fr=Ee,Yr=Ve,qr=ke),ba=fr*fr+Yr*Yr+qr*qr,ba<o)?[NaN,NaN]:[T(Yr,fr)*c,f(qr/d(ba))*c]}function Zr(Zt){return function(){return Zt}}function pa(Zt,fr){function Yr(qr,ba){return qr=Zt(qr,ba),fr(qr[0],qr[1])}return Zt.invert&&fr.invert&&(Yr.invert=function(qr,ba){return qr=fr.invert(qr,ba),qr&&Zt.invert(qr[0],qr[1])}),Yr}function Xr(Zt,fr){return[v(Zt)>a?Zt+Math.round(-Zt/s)*s:Zt,fr]}Xr.invert=Xr;function Ea(Zt,fr,Yr){return(Zt%=s)?fr||Yr?pa(qa(Zt),ya(fr,Yr)):qa(Zt):fr||Yr?ya(fr,Yr):Xr}function Fa(Zt){return function(fr,Yr){return fr+=Zt,[fr>a?fr-s:fr<-a?fr+s:fr,Yr]}}function qa(Zt){var fr=Fa(Zt);return fr.invert=Fa(-Zt),fr}function ya(Zt,fr){var Yr=l(Zt),qr=m(Zt),ba=l(fr),Ka=m(fr);function oi(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*Yr+li*qr;return[T(_i*ba-ti*Ka,li*Yr-vi*qr),f(ti*ba+_i*Ka)]}return oi.invert=function(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*ba-_i*Ka;return[T(_i*ba+vi*Ka,li*Yr+ti*qr),f(ti*Yr-li*qr)]},oi}function $a(Zt){Zt=Ea(Zt[0]*h,Zt[1]*h,Zt.length>2?Zt[2]*h:0);function fr(Yr){return Yr=Zt(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr}return fr.invert=function(Yr){return Yr=Zt.invert(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr},fr}function mt(Zt,fr,Yr,qr,ba,Ka){if(Yr){var oi=l(fr),yi=m(fr),ki=qr*Yr;ba==null?(ba=fr+qr*s,Ka=fr-ki/2):(ba=gt(oi,ba),Ka=gt(oi,Ka),(qr>0?ba<Ka:ba>Ka)&&(ba+=qr*s));for(var Bi,li=ba;qr>0?li>Ka:li<Ka;li-=ki)Bi=ee([oi,-yi*l(li),-yi*m(li)]),Zt.point(Bi[0],Bi[1])}}function gt(Zt,fr){fr=ie(fr),fr[0]-=Zt,Ie(fr);var Yr=y(-fr[1]);return((-fr[2]<0?-Yr:Yr)+s-r)%s}function Er(){var Zt=Zr([0,0]),fr=Zr(90),Yr=Zr(6),qr,ba,Ka={point:oi};function oi(ki,Bi){qr.push(ki=ba(ki,Bi)),ki[0]*=c,ki[1]*=c}function yi(){var ki=Zt.apply(this,arguments),Bi=fr.apply(this,arguments)*h,li=Yr.apply(this,arguments)*h;return qr=[],ba=Ea(-ki[0]*h,-ki[1]*h,0).invert,mt(Ka,Bi,li,1),ki={type:"Polygon",coordinates:[qr]},qr=ba=null,ki}return yi.center=function(ki){return arguments.length?(Zt=typeof ki=="function"?ki:Zr([+ki[0],+ki[1]]),yi):Zt},yi.radius=function(ki){return arguments.length?(fr=typeof ki=="function"?ki:Zr(+ki),yi):fr},yi.precision=function(ki){return arguments.length?(Yr=typeof ki=="function"?ki:Zr(+ki),yi):Yr},yi}function kr(){var Zt=[],fr;return{point:function(Yr,qr,ba){fr.push([Yr,qr,ba])},lineStart:function(){Zt.push(fr=[])},lineEnd:L,rejoin:function(){Zt.length>1&&Zt.push(Zt.pop().concat(Zt.shift()))},result:function(){var Yr=Zt;return Zt=[],fr=null,Yr}}}function br(Zt,fr){return v(Zt[0]-fr[0])<r&&v(Zt[1]-fr[1])<r}function Tr(Zt,fr,Yr,qr){this.x=Zt,this.z=fr,this.o=Yr,this.e=qr,this.v=!1,this.n=this.p=null}function Mr(Zt,fr,Yr,qr,ba){var Ka=[],oi=[],yi,ki;if(Zt.forEach(function(rn){if(!((Kn=rn.length-1)<=0)){var Kn,Wn=rn[0],Jn=rn[Kn],no;if(br(Wn,Jn)){if(!Wn[2]&&!Jn[2]){for(ba.lineStart(),yi=0;yi<Kn;++yi)ba.point((Wn=rn[yi])[0],Wn[1]);ba.lineEnd();return}Jn[0]+=2*r}Ka.push(no=new Tr(Wn,rn,null,!0)),oi.push(no.o=new Tr(Wn,null,no,!1)),Ka.push(no=new Tr(Jn,rn,null,!1)),oi.push(no.o=new Tr(Jn,null,no,!0))}}),!!Ka.length){for(oi.sort(fr),Fr(Ka),Fr(oi),yi=0,ki=oi.length;yi<ki;++yi)oi[yi].e=Yr=!Yr;for(var Bi=Ka[0],li,_i;;){for(var vi=Bi,ti=!0;vi.v;)if((vi=vi.n)===Bi)return;li=vi.z,ba.lineStart();do{if(vi.v=vi.o.v=!0,vi.e){if(ti)for(yi=0,ki=li.length;yi<ki;++yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.n.x,1,ba);vi=vi.n}else{if(ti)for(li=vi.p.z,yi=li.length-1;yi>=0;--yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.p.x,-1,ba);vi=vi.p}vi=vi.o,li=vi.z,ti=!ti}while(!vi.v);ba.lineEnd()}}}function Fr(Zt){if(fr=Zt.length){for(var fr,Yr=0,qr=Zt[0],ba;++Yr<fr;)qr.n=ba=Zt[Yr],ba.p=qr,qr=ba;qr.n=ba=Zt[0],ba.p=qr}}var Lr=A();function Jr(Zt){return v(Zt[0])<=a?Zt[0]:b(Zt[0])*((v(Zt[0])+a)%s-a)}function oa(Zt,fr){var Yr=Jr(fr),qr=fr[1],ba=m(qr),Ka=[m(Yr),-l(Yr),0],oi=0,yi=0;Lr.reset(),ba===1?qr=i+r:ba===-1&&(qr=-i-r);for(var ki=0,Bi=Zt.length;ki<Bi;++ki)if(_i=(li=Zt[ki]).length)for(var li,_i,vi=li[_i-1],ti=Jr(vi),rn=vi[1]/2+n,Kn=m(rn),Wn=l(rn),Jn=0;Jn<_i;++Jn,ti=en,Kn=co,Wn=Wo,vi=no){var no=li[Jn],en=Jr(no),Ri=no[1]/2+n,co=m(Ri),Wo=l(Ri),bs=en-ti,Xs=bs>=0?1:-1,Ms=Xs*bs,Hs=Ms>a,vs=Kn*co;if(Lr.add(T(vs*Xs*m(Ms),Wn*Wo+vs*l(Ms))),oi+=Hs?bs+Xs*s:bs,Hs^ti>=Yr^en>=Yr){var Il=be(ie(vi),ie(no));Ie(Il);var fl=be(Ka,Il);Ie(fl);var tl=(Hs^bs>=0?-1:1)*f(fl[2]);(qr>tl||qr===tl&&(Il[0]||Il[1]))&&(yi+=Hs^bs>=0?1:-1)}}return(oi<-r||oi<r&&Lr<-r)^yi&1}function ca(Zt,fr,Yr,qr){return function(ba){var Ka=fr(ba),oi=kr(),yi=fr(oi),ki=!1,Bi,li,_i,vi={point:ti,lineStart:Kn,lineEnd:Wn,polygonStart:function(){vi.point=Jn,vi.lineStart=no,vi.lineEnd=en,li=[],Bi=[]},polygonEnd:function(){vi.point=ti,vi.lineStart=Kn,vi.lineEnd=Wn,li=x.merge(li);var Ri=oa(Bi,qr);li.length?(ki||(ba.polygonStart(),ki=!0),Mr(li,ir,Ri,Yr,ba)):Ri&&(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Yr(null,null,1,ba),ba.lineEnd()),ki&&(ba.polygonEnd(),ki=!1),li=Bi=null},sphere:function(){ba.polygonStart(),ba.lineStart(),Yr(null,null,1,ba),ba.lineEnd(),ba.polygonEnd()}};function ti(Ri,co){Zt(Ri,co)&&ba.point(Ri,co)}function rn(Ri,co){Ka.point(Ri,co)}function Kn(){vi.point=rn,Ka.lineStart()}function Wn(){vi.point=ti,Ka.lineEnd()}function Jn(Ri,co){_i.push([Ri,co]),yi.point(Ri,co)}function no(){yi.lineStart(),_i=[]}function en(){Jn(_i[0][0],_i[0][1]),yi.lineEnd();var Ri=yi.clean(),co=oi.result(),Wo,bs=co.length,Xs,Ms,Hs;if(_i.pop(),Bi.push(_i),_i=null,!!bs){if(Ri&1){if(Ms=co[0],(Xs=Ms.length-1)>0){for(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Wo=0;Wo<Xs;++Wo)ba.point((Hs=Ms[Wo])[0],Hs[1]);ba.lineEnd()}return}bs>1&&Ri&2&&co.push(co.pop().concat(co.shift())),li.push(co.filter(kt))}}return vi}}function kt(Zt){return Zt.length>1}function ir(Zt,fr){return((Zt=Zt.x)[0]<0?Zt[1]-i-r:i-Zt[1])-((fr=fr.x)[0]<0?fr[1]-i-r:i-fr[1])}var mr=ca(function(){return!0},$r,Ba,[-a,-i]);function $r(Zt){var fr=NaN,Yr=NaN,qr=NaN,ba;return{lineStart:function(){Zt.lineStart(),ba=1},point:function(Ka,oi){var yi=Ka>0?a:-a,ki=v(Ka-fr);v(ki-a)<r?(Zt.point(fr,Yr=(Yr+oi)/2>0?i:-i),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),Zt.point(Ka,Yr),ba=0):qr!==yi&&ki>=a&&(v(fr-qr)<r&&(fr-=qr*r),v(Ka-yi)<r&&(Ka-=yi*r),Yr=ma(fr,Yr,Ka,oi),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),ba=0),Zt.point(fr=Ka,Yr=oi),qr=yi},lineEnd:function(){Zt.lineEnd(),fr=Yr=NaN},clean:function(){return 2-ba}}}function ma(Zt,fr,Yr,qr){var ba,Ka,oi=m(Zt-Yr);return v(oi)>r?p((m(fr)*(Ka=l(qr))*m(Yr)-m(qr)*(ba=l(fr))*m(Zt))/(ba*Ka*oi)):(fr+qr)/2}function Ba(Zt,fr,Yr,qr){var ba;if(Zt==null)ba=Yr*i,qr.point(-a,ba),qr.point(0,ba),qr.point(a,ba),qr.point(a,0),qr.point(a,-ba),qr.point(0,-ba),qr.point(-a,-ba),qr.point(-a,0),qr.point(-a,ba);else if(v(Zt[0]-fr[0])>r){var Ka=Zt[0]<fr[0]?a:-a;ba=Yr*Ka/2,qr.point(-Ka,ba),qr.point(0,ba),qr.point(Ka,ba)}else qr.point(fr[0],fr[1])}function Ca(Zt){var fr=l(Zt),Yr=6*h,qr=fr>0,ba=v(fr)>r;function Ka(li,_i,vi,ti){mt(ti,Zt,Yr,vi,li,_i)}function oi(li,_i){return l(li)*l(_i)>fr}function yi(li){var _i,vi,ti,rn,Kn;return{lineStart:function(){rn=ti=!1,Kn=1},point:function(Wn,Jn){var no=[Wn,Jn],en,Ri=oi(Wn,Jn),co=qr?Ri?0:Bi(Wn,Jn):Ri?Bi(Wn+(Wn<0?a:-a),Jn):0;if(!_i&&(rn=ti=Ri)&&li.lineStart(),Ri!==ti&&(en=ki(_i,no),(!en||br(_i,en)||br(no,en))&&(no[2]=1)),Ri!==ti)Kn=0,Ri?(li.lineStart(),en=ki(no,_i),li.point(en[0],en[1])):(en=ki(_i,no),li.point(en[0],en[1],2),li.lineEnd()),_i=en;else if(ba&&_i&&qr^Ri){var Wo;!(co&vi)&&(Wo=ki(no,_i,!0))&&(Kn=0,qr?(li.lineStart(),li.point(Wo[0][0],Wo[0][1]),li.point(Wo[1][0],Wo[1][1]),li.lineEnd()):(li.point(Wo[1][0],Wo[1][1]),li.lineEnd(),li.lineStart(),li.point(Wo[0][0],Wo[0][1],3)))}Ri&&(!_i||!br(_i,no))&&li.point(no[0],no[1]),_i=no,ti=Ri,vi=co},lineEnd:function(){ti&&li.lineEnd(),_i=null},clean:function(){return Kn|(rn&&ti)<<1}}}function ki(li,_i,vi){var ti=ie(li),rn=ie(_i),Kn=[1,0,0],Wn=be(ti,rn),Jn=fe(Wn,Wn),no=Wn[0],en=Jn-no*no;if(!en)return!vi&&li;var Ri=fr*Jn/en,co=-fr*no/en,Wo=be(Kn,Wn),bs=Be(Kn,Ri),Xs=Be(Wn,co);Ae(bs,Xs);var Ms=Wo,Hs=fe(bs,Ms),vs=fe(Ms,Ms),Il=Hs*Hs-vs*(fe(bs,bs)-1);if(!(Il<0)){var fl=d(Il),tl=Be(Ms,(-Hs-fl)/vs);if(Ae(tl,bs),tl=ee(tl),!vi)return tl;var Ln=li[0],Ao=_i[0],js=li[1],Ts=_i[1],nu;Ao<Ln&&(nu=Ln,Ln=Ao,Ao=nu);var Pu=Ao-Ln,ec=v(Pu-a)<r,tf=ec||Pu<r;if(!ec&&Ts<js&&(nu=js,js=Ts,Ts=nu),tf?ec?js+Ts>0^tl[1]<(v(tl[0]-Ln)<r?js:Ts):js<=tl[1]&&tl[1]<=Ts:Pu>a^(Ln<=tl[0]&&tl[0]<=Ao)){var yu=Be(Ms,(-Hs+fl)/vs);return Ae(yu,bs),[tl,ee(yu)]}}}function Bi(li,_i){var vi=qr?Zt:a-Zt,ti=0;return li<-vi?ti|=1:li>vi&&(ti|=2),_i<-vi?ti|=4:_i>vi&&(ti|=8),ti}return ca(oi,yi,Ka,qr?[0,-Zt]:[-a,Zt-a])}function da(Zt,fr,Yr,qr,ba,Ka){var oi=Zt[0],yi=Zt[1],ki=fr[0],Bi=fr[1],li=0,_i=1,vi=ki-oi,ti=Bi-yi,rn;if(rn=Yr-oi,!(!vi&&rn>0)){if(rn/=vi,vi<0){if(rn<li)return;rn<_i&&(_i=rn)}else if(vi>0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=ba-oi,!(!vi&&rn<0)){if(rn/=vi,vi<0){if(rn>_i)return;rn>li&&(li=rn)}else if(vi>0){if(rn<li)return;rn<_i&&(_i=rn)}if(rn=qr-yi,!(!ti&&rn>0)){if(rn/=ti,ti<0){if(rn<li)return;rn<_i&&(_i=rn)}else if(ti>0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=Ka-yi,!(!ti&&rn<0)){if(rn/=ti,ti<0){if(rn>_i)return;rn>li&&(li=rn)}else if(ti>0){if(rn<li)return;rn<_i&&(_i=rn)}return li>0&&(Zt[0]=oi+li*vi,Zt[1]=yi+li*ti),_i<1&&(fr[0]=oi+_i*vi,fr[1]=yi+_i*ti),!0}}}}}var Sa=1e9,Ti=-Sa;function ai(Zt,fr,Yr,qr){function ba(Bi,li){return Zt<=Bi&&Bi<=Yr&&fr<=li&&li<=qr}function Ka(Bi,li,_i,vi){var ti=0,rn=0;if(Bi==null||(ti=oi(Bi,_i))!==(rn=oi(li,_i))||ki(Bi,li)<0^_i>0)do vi.point(ti===0||ti===3?Zt:Yr,ti>1?qr:fr);while((ti=(ti+_i+4)%4)!==rn);else vi.point(li[0],li[1])}function oi(Bi,li){return v(Bi[0]-Zt)<r?li>0?0:3:v(Bi[0]-Yr)<r?li>0?2:1:v(Bi[1]-fr)<r?li>0?1:0:li>0?3:2}function yi(Bi,li){return ki(Bi.x,li.x)}function ki(Bi,li){var _i=oi(Bi,1),vi=oi(li,1);return _i!==vi?_i-vi:_i===0?li[1]-Bi[1]:_i===1?Bi[0]-li[0]:_i===2?Bi[1]-li[1]:li[0]-Bi[0]}return function(Bi){var li=Bi,_i=kr(),vi,ti,rn,Kn,Wn,Jn,no,en,Ri,co,Wo,bs={point:Xs,lineStart:Il,lineEnd:fl,polygonStart:Hs,polygonEnd:vs};function Xs(Ln,Ao){ba(Ln,Ao)&&li.point(Ln,Ao)}function Ms(){for(var Ln=0,Ao=0,js=ti.length;Ao<js;++Ao)for(var Ts=ti[Ao],nu=1,Pu=Ts.length,ec=Ts[0],tf,yu,Bc=ec[0],Iu=ec[1];nu<Pu;++nu)tf=Bc,yu=Iu,ec=Ts[nu],Bc=ec[0],Iu=ec[1],yu<=qr?Iu>qr&&(Bc-tf)*(qr-yu)>(Iu-yu)*(Zt-tf)&&++Ln:Iu<=qr&&(Bc-tf)*(qr-yu)<(Iu-yu)*(Zt-tf)&&--Ln;return Ln}function Hs(){li=_i,vi=[],ti=[],Wo=!0}function vs(){var Ln=Ms(),Ao=Wo&&Ln,js=(vi=x.merge(vi)).length;(Ao||js)&&(Bi.polygonStart(),Ao&&(Bi.lineStart(),Ka(null,null,1,Bi),Bi.lineEnd()),js&&Mr(vi,yi,Ln,Ka,Bi),Bi.polygonEnd()),li=Bi,vi=ti=rn=null}function Il(){bs.point=tl,ti&&ti.push(rn=[]),co=!0,Ri=!1,no=en=NaN}function fl(){vi&&(tl(Kn,Wn),Jn&&Ri&&_i.rejoin(),vi.push(_i.result())),bs.point=Xs,Ri&&li.lineEnd()}function tl(Ln,Ao){var js=ba(Ln,Ao);if(ti&&rn.push([Ln,Ao]),co)Kn=Ln,Wn=Ao,Jn=js,co=!1,js&&(li.lineStart(),li.point(Ln,Ao));else if(js&&Ri)li.point(Ln,Ao);else{var Ts=[no=Math.max(Ti,Math.min(Sa,no)),en=Math.max(Ti,Math.min(Sa,en))],nu=[Ln=Math.max(Ti,Math.min(Sa,Ln)),Ao=Math.max(Ti,Math.min(Sa,Ao))];da(Ts,nu,Zt,fr,Yr,qr)?(Ri||(li.lineStart(),li.point(Ts[0],Ts[1])),li.point(nu[0],nu[1]),js||li.lineEnd(),Wo=!1):js&&(li.lineStart(),li.point(Ln,Ao),Wo=!1)}no=Ln,en=Ao,Ri=js}return bs}}function an(){var Zt=0,fr=0,Yr=960,qr=500,ba,Ka,oi;return oi={stream:function(yi){return ba&&Ka===yi?ba:ba=ai(Zt,fr,Yr,qr)(Ka=yi)},extent:function(yi){return arguments.length?(Zt=+yi[0][0],fr=+yi[0][1],Yr=+yi[1][0],qr=+yi[1][1],ba=Ka=null,oi):[[Zt,fr],[Yr,qr]]}}}var sn=A(),Mn,On,$n,Cn={sphere:L,point:L,lineStart:Lo,lineEnd:L,polygonStart:L,polygonEnd:L};function Lo(){Cn.point=Jo,Cn.lineEnd=Xi}function Xi(){Cn.point=Cn.lineEnd=L}function Jo(Zt,fr){Zt*=h,fr*=h,Mn=Zt,On=m(fr),$n=l(fr),Cn.point=zo}function zo(Zt,fr){Zt*=h,fr*=h;var Yr=m(fr),qr=l(fr),ba=v(Zt-Mn),Ka=l(ba),oi=m(ba),yi=qr*oi,ki=$n*Yr-On*qr*Ka,Bi=On*Yr+$n*qr*Ka;sn.add(T(d(yi*yi+ki*ki),Bi)),Mn=Zt,On=Yr,$n=qr}function as(Zt){return sn.reset(),N(Zt,Cn),+sn}var Pn=[null,null],go={type:"LineString",coordinates:Pn};function In(Zt,fr){return Pn[0]=Zt,Pn[1]=fr,as(go)}var Do={Feature:function(Zt,fr){return Qo(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr<ba;)if(Qo(Yr[qr].geometry,fr))return!0;return!1}},Ho={Sphere:function(){return!0},Point:function(Zt,fr){return Xn(Zt.coordinates,fr)},MultiPoint:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(Xn(Yr[qr],fr))return!0;return!1},LineString:function(Zt,fr){return po(Zt.coordinates,fr)},MultiLineString:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(po(Yr[qr],fr))return!0;return!1},Polygon:function(Zt,fr){return ys(Zt.coordinates,fr)},MultiPolygon:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(ys(Yr[qr],fr))return!0;return!1},GeometryCollection:function(Zt,fr){for(var Yr=Zt.geometries,qr=-1,ba=Yr.length;++qr<ba;)if(Qo(Yr[qr],fr))return!0;return!1}};function Qo(Zt,fr){return Zt&&Ho.hasOwnProperty(Zt.type)?Ho[Zt.type](Zt,fr):!1}function Xn(Zt,fr){return In(Zt,fr)===0}function po(Zt,fr){for(var Yr,qr,ba,Ka=0,oi=Zt.length;Ka<oi;Ka++){if(qr=In(Zt[Ka],fr),qr===0||Ka>0&&(ba=In(Zt[Ka],Zt[Ka-1]),ba>0&&Yr<=ba&&qr<=ba&&(Yr+qr-ba)*(1-Math.pow((Yr-qr)/ba,2))<o*ba))return!0;Yr=qr}return!1}function ys(Zt,fr){return!!oa(Zt.map(Is),Fs(fr))}function Is(Zt){return Zt=Zt.map(Fs),Zt.pop(),Zt}function Fs(Zt){return[Zt[0]*h,Zt[1]*h]}function $o(Zt,fr){return(Zt&&Do.hasOwnProperty(Zt.type)?Do[Zt.type]:Qo)(Zt,fr)}function fi(Zt,fr,Yr){var qr=x.range(Zt,fr-r,Yr).concat(fr);return function(ba){return qr.map(function(Ka){return[ba,Ka]})}}function mn(Zt,fr,Yr){var qr=x.range(Zt,fr-r,Yr).concat(fr);return function(ba){return qr.map(function(Ka){return[Ka,ba]})}}function ol(){var Zt,fr,Yr,qr,ba,Ka,oi,yi,ki=10,Bi=ki,li=90,_i=360,vi,ti,rn,Kn,Wn=2.5;function Jn(){return{type:"MultiLineString",coordinates:no()}}function no(){return x.range(_(qr/li)*li,Yr,li).map(rn).concat(x.range(_(yi/_i)*_i,oi,_i).map(Kn)).concat(x.range(_(fr/ki)*ki,Zt,ki).filter(function(en){return v(en%li)>r}).map(vi)).concat(x.range(_(Ka/Bi)*Bi,ba,Bi).filter(function(en){return v(en%_i)>r}).map(ti))}return Jn.lines=function(){return no().map(function(en){return{type:"LineString",coordinates:en}})},Jn.outline=function(){return{type:"Polygon",coordinates:[rn(qr).concat(Kn(oi).slice(1),rn(Yr).reverse().slice(1),Kn(yi).reverse().slice(1))]}},Jn.extent=function(en){return arguments.length?Jn.extentMajor(en).extentMinor(en):Jn.extentMinor()},Jn.extentMajor=function(en){return arguments.length?(qr=+en[0][0],Yr=+en[1][0],yi=+en[0][1],oi=+en[1][1],qr>Yr&&(en=qr,qr=Yr,Yr=en),yi>oi&&(en=yi,yi=oi,oi=en),Jn.precision(Wn)):[[qr,yi],[Yr,oi]]},Jn.extentMinor=function(en){return arguments.length?(fr=+en[0][0],Zt=+en[1][0],Ka=+en[0][1],ba=+en[1][1],fr>Zt&&(en=fr,fr=Zt,Zt=en),Ka>ba&&(en=Ka,Ka=ba,ba=en),Jn.precision(Wn)):[[fr,Ka],[Zt,ba]]},Jn.step=function(en){return arguments.length?Jn.stepMajor(en).stepMinor(en):Jn.stepMinor()},Jn.stepMajor=function(en){return arguments.length?(li=+en[0],_i=+en[1],Jn):[li,_i]},Jn.stepMinor=function(en){return arguments.length?(ki=+en[0],Bi=+en[1],Jn):[ki,Bi]},Jn.precision=function(en){return arguments.length?(Wn=+en,vi=fi(Ka,ba,90),ti=mn(fr,Zt,Wn),rn=fi(yi,oi,90),Kn=mn(qr,Yr,Wn),Jn):Wn},Jn.extentMajor([[-180,-90+r],[180,90-r]]).extentMinor([[-180,-80-r],[180,80+r]])}function Os(){return ol()()}function so(Zt,fr){var Yr=Zt[0]*h,qr=Zt[1]*h,ba=fr[0]*h,Ka=fr[1]*h,oi=l(qr),yi=m(qr),ki=l(Ka),Bi=m(Ka),li=oi*l(Yr),_i=oi*m(Yr),vi=ki*l(ba),ti=ki*m(ba),rn=2*f(d(P(Ka-qr)+oi*ki*P(ba-Yr))),Kn=m(rn),Wn=rn?function(Jn){var no=m(Jn*=rn)/Kn,en=m(rn-Jn)/Kn,Ri=en*li+no*vi,co=en*_i+no*ti,Wo=en*yi+no*Bi;return[T(co,Ri)*c,T(Wo,d(Ri*Ri+co*co))*c]}:function(){return[Yr*c,qr*c]};return Wn.distance=rn,Wn}function Ns(Zt){return Zt}var fs=A(),al=A(),vl,ji,To,Yn,_s={point:L,lineStart:L,lineEnd:L,polygonStart:function(){_s.lineStart=Yo,_s.lineEnd=Zu},polygonEnd:function(){_s.lineStart=_s.lineEnd=_s.point=L,fs.add(v(al)),al.reset()},result:function(){var Zt=fs/2;return fs.reset(),Zt}};function Yo(){_s.point=Nn}function Nn(Zt,fr){_s.point=Wl,vl=To=Zt,ji=Yn=fr}function Wl(Zt,fr){al.add(Yn*Zt-To*fr),To=Zt,Yn=fr}function Zu(){Wl(vl,ji)}var ml=1/0,Bu=ml,El=-ml,qs=El,Jl={point:Nu,lineStart:L,lineEnd:L,polygonStart:L,polygonEnd:L,result:function(){var Zt=[[ml,Bu],[El,qs]];return El=qs=-(Bu=ml=1/0),Zt}};function Nu(Zt,fr){Zt<ml&&(ml=Zt),Zt>El&&(El=Zt),fr<Bu&&(Bu=fr),fr>qs&&(qs=fr)}var Ic=0,Xu=0,Th=0,bf=0,Rs=0,Yc=0,If=0,Zl=0,yl=0,oc,_c,Zs,_l,Bs={point:$s,lineStart:sc,lineEnd:Qs,polygonStart:function(){Bs.lineStart=fp,Bs.lineEnd=es},polygonEnd:function(){Bs.point=$s,Bs.lineStart=sc,Bs.lineEnd=Qs},result:function(){var Zt=yl?[If/yl,Zl/yl]:Yc?[bf/Yc,Rs/Yc]:Th?[Ic/Th,Xu/Th]:[NaN,NaN];return Ic=Xu=Th=bf=Rs=Yc=If=Zl=yl=0,Zt}};function $s(Zt,fr){Ic+=Zt,Xu+=fr,++Th}function sc(){Bs.point=zl}function zl(Zt,fr){Bs.point=Yu,$s(Zs=Zt,_l=fr)}function Yu(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,$s(Zs=Zt,_l=fr)}function Qs(){Bs.point=$s}function fp(){Bs.point=Wh}function es(){Ss(oc,_c)}function Wh(Zt,fr){Bs.point=Ss,$s(oc=Zs=Zt,_c=_l=fr)}function Ss(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,ba=_l*Zt-Zs*fr,If+=ba*(Zs+Zt),Zl+=ba*(_l+fr),yl+=ba*3,$s(Zs=Zt,_l=fr)}function So(Zt){this._context=Zt}So.prototype={_radius:4.5,pointRadius:function(Zt){return this._radius=Zt,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._context.moveTo(Zt,fr),this._point=1;break}case 1:{this._context.lineTo(Zt,fr);break}default:{this._context.moveTo(Zt+this._radius,fr),this._context.arc(Zt,fr,this._radius,0,s);break}}},result:L};var hf=A(),Ku,cu,Zf,Rc,pf,Fl={point:L,lineStart:function(){Fl.point=lh},lineEnd:function(){Ku&&Xf(cu,Zf),Fl.point=L},polygonStart:function(){Ku=!0},polygonEnd:function(){Ku=null},result:function(){var Zt=+hf;return hf.reset(),Zt}};function lh(Zt,fr){Fl.point=Xf,cu=Rc=Zt,Zf=pf=fr}function Xf(Zt,fr){Rc-=Zt,pf-=fr,hf.add(d(Rc*Rc+pf*pf)),Rc=Zt,pf=fr}function Rf(){this._string=[]}Rf.prototype={_radius:4.5,_circle:Kc(4.5),pointRadius:function(Zt){return(Zt=+Zt)!==this._radius&&(this._radius=Zt,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._string.push("M",Zt,",",fr),this._point=1;break}case 1:{this._string.push("L",Zt,",",fr);break}default:{this._circle==null&&(this._circle=Kc(this._radius)),this._string.push("M",Zt,",",fr,this._circle);break}}},result:function(){if(this._string.length){var Zt=this._string.join("");return this._string=[],Zt}else return null}};function Kc(Zt){return"m0,"+Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+-2*Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+2*Zt+"z"}function Yf(Zt,fr){var Yr=4.5,qr,ba;function Ka(oi){return oi&&(typeof Yr=="function"&&ba.pointRadius(+Yr.apply(this,arguments)),N(oi,qr(ba))),ba.result()}return Ka.area=function(oi){return N(oi,qr(_s)),_s.result()},Ka.measure=function(oi){return N(oi,qr(Fl)),Fl.result()},Ka.bounds=function(oi){return N(oi,qr(Jl)),Jl.result()},Ka.centroid=function(oi){return N(oi,qr(Bs)),Bs.result()},Ka.projection=function(oi){return arguments.length?(qr=oi==null?(Zt=null,Ns):(Zt=oi).stream,Ka):Zt},Ka.context=function(oi){return arguments.length?(ba=oi==null?(fr=null,new Rf):new So(fr=oi),typeof Yr!="function"&&ba.pointRadius(Yr),Ka):fr},Ka.pointRadius=function(oi){return arguments.length?(Yr=typeof oi=="function"?oi:(ba.pointRadius(+oi),+oi),Ka):Yr},Ka.projection(Zt).context(fr)}function uh(Zt){return{stream:Ju(Zt)}}function Ju(Zt){return function(fr){var Yr=new Df;for(var qr in Zt)Yr[qr]=Zt[qr];return Yr.stream=fr,Yr}}function Df(){}Df.prototype={constructor:Df,point:function(Zt,fr){this.stream.point(Zt,fr)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Dc(Zt,fr,Yr){var qr=Zt.clipExtent&&Zt.clipExtent();return Zt.scale(150).translate([0,0]),qr!=null&&Zt.clipExtent(null),N(Yr,Zt.stream(Jl)),fr(Jl.result()),qr!=null&&Zt.clipExtent(qr),Zt}function Jc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=fr[1][0]-fr[0][0],Ka=fr[1][1]-fr[0][1],oi=Math.min(ba/(qr[1][0]-qr[0][0]),Ka/(qr[1][1]-qr[0][1])),yi=+fr[0][0]+(ba-oi*(qr[1][0]+qr[0][0]))/2,ki=+fr[0][1]+(Ka-oi*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*oi).translate([yi,ki])},Yr)}function Eu(Zt,fr,Yr){return Jc(Zt,[[0,0],fr],Yr)}function wf(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][0]-qr[0][0]),oi=(ba-Ka*(qr[1][0]+qr[0][0]))/2,yi=-Ka*qr[0][1];Zt.scale(150*Ka).translate([oi,yi])},Yr)}function zc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][1]-qr[0][1]),oi=-Ka*qr[0][0],yi=(ba-Ka*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*Ka).translate([oi,yi])},Yr)}var Us=16,Kf=l(30*h);function Zh(Zt,fr){return+fr?df(Zt,fr):ch(Zt)}function ch(Zt){return Ju({point:function(fr,Yr){fr=Zt(fr,Yr),this.stream.point(fr[0],fr[1])}})}function df(Zt,fr){function Yr(qr,ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn){var Jn=Bi-qr,no=li-ba,en=Jn*Jn+no*no;if(en>4*fr&&Kn--){var Ri=oi+vi,co=yi+ti,Wo=ki+rn,bs=d(Ri*Ri+co*co+Wo*Wo),Xs=f(Wo/=bs),Ms=v(v(Wo)-1)<r||v(Ka-_i)<r?(Ka+_i)/2:T(co,Ri),Hs=Zt(Ms,Xs),vs=Hs[0],Il=Hs[1],fl=vs-qr,tl=Il-ba,Ln=no*fl-Jn*tl;(Ln*Ln/en>fr||v((Jn*fl+no*tl)/en-.5)>.3||oi*vi+yi*ti+ki*rn<Kf)&&(Yr(qr,ba,Ka,oi,yi,ki,vs,Il,Ms,Ri/=bs,co/=bs,Wo,Kn,Wn),Wn.point(vs,Il),Yr(vs,Il,Ms,Ri,co,Wo,Bi,li,_i,vi,ti,rn,Kn,Wn))}}return function(qr){var ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn={point:Jn,lineStart:no,lineEnd:Ri,polygonStart:function(){qr.polygonStart(),Wn.lineStart=co},polygonEnd:function(){qr.polygonEnd(),Wn.lineStart=no}};function Jn(Xs,Ms){Xs=Zt(Xs,Ms),qr.point(Xs[0],Xs[1])}function no(){_i=NaN,Wn.point=en,qr.lineStart()}function en(Xs,Ms){var Hs=ie([Xs,Ms]),vs=Zt(Xs,Ms);Yr(_i,vi,li,ti,rn,Kn,_i=vs[0],vi=vs[1],li=Xs,ti=Hs[0],rn=Hs[1],Kn=Hs[2],Us,qr),qr.point(_i,vi)}function Ri(){Wn.point=Jn,qr.lineEnd()}function co(){no(),Wn.point=Wo,Wn.lineEnd=bs}function Wo(Xs,Ms){en(ba=Xs,Ms),Ka=_i,oi=vi,yi=ti,ki=rn,Bi=Kn,Wn.point=en}function bs(){Yr(_i,vi,li,ti,rn,Kn,Ka,oi,ba,yi,ki,Bi,Us,qr),Wn.lineEnd=Ri,Ri()}return Wn}}var Ah=Ju({point:function(Zt,fr){this.stream.point(Zt*h,fr*h)}});function ku(Zt){return Ju({point:function(fr,Yr){var qr=Zt(fr,Yr);return this.stream.point(qr[0],qr[1])}})}function fh(Zt,fr,Yr,qr,ba){function Ka(oi,yi){return oi*=qr,yi*=ba,[fr+Zt*oi,Yr-Zt*yi]}return Ka.invert=function(oi,yi){return[(oi-fr)/Zt*qr,(Yr-yi)/Zt*ba]},Ka}function ru(Zt,fr,Yr,qr,ba,Ka){var oi=l(Ka),yi=m(Ka),ki=oi*Zt,Bi=yi*Zt,li=oi/Zt,_i=yi/Zt,vi=(yi*Yr-oi*fr)/Zt,ti=(yi*fr+oi*Yr)/Zt;function rn(Kn,Wn){return Kn*=qr,Wn*=ba,[ki*Kn-Bi*Wn+fr,Yr-Bi*Kn-ki*Wn]}return rn.invert=function(Kn,Wn){return[qr*(li*Kn-_i*Wn+vi),ba*(ti-_i*Kn-li*Wn)]},rn}function Cu(Zt){return xc(function(){return Zt})()}function xc(Zt){var fr,Yr=150,qr=480,ba=250,Ka=0,oi=0,yi=0,ki=0,Bi=0,li,_i=0,vi=1,ti=1,rn=null,Kn=mr,Wn=null,Jn,no,en,Ri=Ns,co=.5,Wo,bs,Xs,Ms,Hs;function vs(Ln){return Xs(Ln[0]*h,Ln[1]*h)}function Il(Ln){return Ln=Xs.invert(Ln[0],Ln[1]),Ln&&[Ln[0]*c,Ln[1]*c]}vs.stream=function(Ln){return Ms&&Hs===Ln?Ms:Ms=Ah(ku(li)(Kn(Wo(Ri(Hs=Ln)))))},vs.preclip=function(Ln){return arguments.length?(Kn=Ln,rn=void 0,tl()):Kn},vs.postclip=function(Ln){return arguments.length?(Ri=Ln,Wn=Jn=no=en=null,tl()):Ri},vs.clipAngle=function(Ln){return arguments.length?(Kn=+Ln?Ca(rn=Ln*h):(rn=null,mr),tl()):rn*c},vs.clipExtent=function(Ln){return arguments.length?(Ri=Ln==null?(Wn=Jn=no=en=null,Ns):ai(Wn=+Ln[0][0],Jn=+Ln[0][1],no=+Ln[1][0],en=+Ln[1][1]),tl()):Wn==null?null:[[Wn,Jn],[no,en]]},vs.scale=function(Ln){return arguments.length?(Yr=+Ln,fl()):Yr},vs.translate=function(Ln){return arguments.length?(qr=+Ln[0],ba=+Ln[1],fl()):[qr,ba]},vs.center=function(Ln){return arguments.length?(Ka=Ln[0]%360*h,oi=Ln[1]%360*h,fl()):[Ka*c,oi*c]},vs.rotate=function(Ln){return arguments.length?(yi=Ln[0]%360*h,ki=Ln[1]%360*h,Bi=Ln.length>2?Ln[2]%360*h:0,fl()):[yi*c,ki*c,Bi*c]},vs.angle=function(Ln){return arguments.length?(_i=Ln%360*h,fl()):_i*c},vs.reflectX=function(Ln){return arguments.length?(vi=Ln?-1:1,fl()):vi<0},vs.reflectY=function(Ln){return arguments.length?(ti=Ln?-1:1,fl()):ti<0},vs.precision=function(Ln){return arguments.length?(Wo=Zh(bs,co=Ln*Ln),tl()):d(co)},vs.fitExtent=function(Ln,Ao){return Jc(vs,Ln,Ao)},vs.fitSize=function(Ln,Ao){return Eu(vs,Ln,Ao)},vs.fitWidth=function(Ln,Ao){return wf(vs,Ln,Ao)},vs.fitHeight=function(Ln,Ao){return zc(vs,Ln,Ao)};function fl(){var Ln=ru(Yr,0,0,vi,ti,_i).apply(null,fr(Ka,oi)),Ao=(_i?ru:fh)(Yr,qr-Ln[0],ba-Ln[1],vi,ti,_i);return li=Ea(yi,ki,Bi),bs=pa(fr,Ao),Xs=pa(li,bs),Wo=Zh(bs,co),tl()}function tl(){return Ms=Hs=null,vs}return function(){return fr=Zt.apply(this,arguments),vs.invert=fr.invert&&Il,fl()}}function kl(Zt){var fr=0,Yr=a/3,qr=xc(Zt),ba=qr(fr,Yr);return ba.parallels=function(Ka){return arguments.length?qr(fr=Ka[0]*h,Yr=Ka[1]*h):[fr*c,Yr*c]},ba}function Fc(Zt){var fr=l(Zt);function Yr(qr,ba){return[qr*fr,m(ba)/fr]}return Yr.invert=function(qr,ba){return[qr/fr,f(ba*fr)]},Yr}function $u(Zt,fr){var Yr=m(Zt),qr=(Yr+m(fr))/2;if(v(qr)<r)return Fc(Zt);var ba=1+Yr*(2*qr-Yr),Ka=d(ba)/qr;function oi(yi,ki){var Bi=d(ba-2*qr*m(ki))/qr;return[Bi*m(yi*=qr),Ka-Bi*l(yi)]}return oi.invert=function(yi,ki){var Bi=Ka-ki,li=T(yi,v(Bi))*b(Bi);return Bi*qr<0&&(li-=a*b(yi)*b(Bi)),[li/qr,f((ba-(yi*yi+Bi*Bi)*qr*qr)/(2*qr))]},oi}function vu(){return kl($u).scale(155.424).center([0,33.6442])}function xl(){return vu().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function hh(Zt){var fr=Zt.length;return{point:function(Yr,qr){for(var ba=-1;++ba<fr;)Zt[ba].point(Yr,qr)},sphere:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].sphere()},lineStart:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].lineStart()},lineEnd:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].lineEnd()},polygonStart:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].polygonStart()},polygonEnd:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].polygonEnd()}}}function Sh(){var Zt,fr,Yr=xl(),qr,ba=vu().rotate([154,0]).center([-2,58.5]).parallels([55,65]),Ka,oi=vu().rotate([157,0]).center([-3,19.9]).parallels([8,18]),yi,ki,Bi={point:function(vi,ti){ki=[vi,ti]}};function li(vi){var ti=vi[0],rn=vi[1];return ki=null,qr.point(ti,rn),ki||(Ka.point(ti,rn),ki)||(yi.point(ti,rn),ki)}li.invert=function(vi){var ti=Yr.scale(),rn=Yr.translate(),Kn=(vi[0]-rn[0])/ti,Wn=(vi[1]-rn[1])/ti;return(Wn>=.12&&Wn<.234&&Kn>=-.425&&Kn<-.214?ba:Wn>=.166&&Wn<.234&&Kn>=-.214&&Kn<-.115?oi:Yr).invert(vi)},li.stream=function(vi){return Zt&&fr===vi?Zt:Zt=hh([Yr.stream(fr=vi),ba.stream(vi),oi.stream(vi)])},li.precision=function(vi){return arguments.length?(Yr.precision(vi),ba.precision(vi),oi.precision(vi),_i()):Yr.precision()},li.scale=function(vi){return arguments.length?(Yr.scale(vi),ba.scale(vi*.35),oi.scale(vi),li.translate(Yr.translate())):Yr.scale()},li.translate=function(vi){if(!arguments.length)return Yr.translate();var ti=Yr.scale(),rn=+vi[0],Kn=+vi[1];return qr=Yr.translate(vi).clipExtent([[rn-.455*ti,Kn-.238*ti],[rn+.455*ti,Kn+.238*ti]]).stream(Bi),Ka=ba.translate([rn-.307*ti,Kn+.201*ti]).clipExtent([[rn-.425*ti+r,Kn+.12*ti+r],[rn-.214*ti-r,Kn+.234*ti-r]]).stream(Bi),yi=oi.translate([rn-.205*ti,Kn+.212*ti]).clipExtent([[rn-.214*ti+r,Kn+.166*ti+r],[rn-.115*ti-r,Kn+.234*ti-r]]).stream(Bi),_i()},li.fitExtent=function(vi,ti){return Jc(li,vi,ti)},li.fitSize=function(vi,ti){return Eu(li,vi,ti)},li.fitWidth=function(vi,ti){return wf(li,vi,ti)},li.fitHeight=function(vi,ti){return zc(li,vi,ti)};function _i(){return Zt=fr=null,li}return li.scale(1070)}function Uu(Zt){return function(fr,Yr){var qr=l(fr),ba=l(Yr),Ka=Zt(qr*ba);return[Ka*ba*m(fr),Ka*m(Yr)]}}function bc(Zt){return function(fr,Yr){var qr=d(fr*fr+Yr*Yr),ba=Zt(qr),Ka=m(ba),oi=l(ba);return[T(fr*Ka,qr*oi),f(qr&&Yr*Ka/qr)]}}var lc=Uu(function(Zt){return d(2/(1+Zt))});lc.invert=bc(function(Zt){return 2*f(Zt/2)});function hp(){return Cu(lc).scale(124.75).clipAngle(180-.001)}var vf=Uu(function(Zt){return(Zt=y(Zt))&&Zt/m(Zt)});vf.invert=bc(function(Zt){return Zt});function Tf(){return Cu(vf).scale(79.4188).clipAngle(180-.001)}function Lu(Zt,fr){return[Zt,S(u((i+fr)/2))]}Lu.invert=function(Zt,fr){return[Zt,2*p(w(fr))-i]};function zf(){return au(Lu).scale(961/s)}function au(Zt){var fr=Cu(Zt),Yr=fr.center,qr=fr.scale,ba=fr.translate,Ka=fr.clipExtent,oi=null,yi,ki,Bi;fr.scale=function(_i){return arguments.length?(qr(_i),li()):qr()},fr.translate=function(_i){return arguments.length?(ba(_i),li()):ba()},fr.center=function(_i){return arguments.length?(Yr(_i),li()):Yr()},fr.clipExtent=function(_i){return arguments.length?(_i==null?oi=yi=ki=Bi=null:(oi=+_i[0][0],yi=+_i[0][1],ki=+_i[1][0],Bi=+_i[1][1]),li()):oi==null?null:[[oi,yi],[ki,Bi]]};function li(){var _i=a*qr(),vi=fr($a(fr.rotate()).invert([0,0]));return Ka(oi==null?[[vi[0]-_i,vi[1]-_i],[vi[0]+_i,vi[1]+_i]]:Zt===Lu?[[Math.max(vi[0]-_i,oi),yi],[Math.min(vi[0]+_i,ki),Bi]]:[[oi,Math.max(vi[1]-_i,yi)],[ki,Math.min(vi[1]+_i,Bi)]])}return li()}function $c(Zt){return u((i+Zt)/2)}function Mh(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):S(Yr/l(fr))/S($c(fr)/$c(Zt)),ba=Yr*E($c(Zt),qr)/qr;if(!qr)return Lu;function Ka(oi,yi){ba>0?yi<-i+r&&(yi=-i+r):yi>i-r&&(yi=i-r);var ki=ba/E($c(yi),qr);return[ki*m(qr*oi),ba-ki*l(qr*oi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=b(qr)*d(oi*oi+ki*ki),li=T(oi,v(ki))*b(ki);return ki*qr<0&&(li-=a*b(oi)*b(ki)),[li/qr,2*p(E(ba/Bi,1/qr))-i]},Ka}function Ff(){return kl(Mh).scale(109.5).parallels([30,30])}function il(Zt,fr){return[Zt,fr]}il.invert=il;function mu(){return Cu(il).scale(152.63)}function gu(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):(Yr-l(fr))/(fr-Zt),ba=Yr/qr+Zt;if(v(qr)<r)return il;function Ka(oi,yi){var ki=ba-yi,Bi=qr*oi;return[ki*m(Bi),ba-ki*l(Bi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=T(oi,v(ki))*b(ki);return ki*qr<0&&(Bi-=a*b(oi)*b(ki)),[Bi/qr,ba-b(qr)*d(oi*oi+ki*ki)]},Ka}function Jf(){return kl(gu).scale(131.154).center([0,13.9389])}var el=1.340264,mf=-.081106,wc=893e-6,ju=.003796,Af=d(3)/2,uc=12;function Qc(Zt,fr){var Yr=f(Af*m(fr)),qr=Yr*Yr,ba=qr*qr*qr;return[Zt*l(Yr)/(Af*(el+3*mf*qr+ba*(7*wc+9*ju*qr))),Yr*(el+mf*qr+ba*(wc+ju*qr))]}Qc.invert=function(Zt,fr){for(var Yr=fr,qr=Yr*Yr,ba=qr*qr*qr,Ka=0,oi,yi,ki;Ka<uc&&(yi=Yr*(el+mf*qr+ba*(wc+ju*qr))-fr,ki=el+3*mf*qr+ba*(7*wc+9*ju*qr),Yr-=oi=yi/ki,qr=Yr*Yr,ba=qr*qr*qr,!(v(oi)<o));++Ka);return[Af*Zt*(el+3*mf*qr+ba*(7*wc+9*ju*qr))/l(Yr),f(m(Yr)/Af)]};function $f(){return Cu(Qc).scale(177.158)}function Vl(Zt,fr){var Yr=l(fr),qr=l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}Vl.invert=bc(p);function Qf(){return Cu(Vl).scale(144.049).clipAngle(60)}function Vu(){var Zt=1,fr=0,Yr=0,qr=1,ba=1,Ka=0,oi,yi,ki=null,Bi,li,_i,vi=1,ti=1,rn=Ju({point:function(Ri,co){var Wo=en([Ri,co]);this.stream.point(Wo[0],Wo[1])}}),Kn=Ns,Wn,Jn;function no(){return vi=Zt*qr,ti=Zt*ba,Wn=Jn=null,en}function en(Ri){var co=Ri[0]*vi,Wo=Ri[1]*ti;if(Ka){var bs=Wo*oi-co*yi;co=co*oi+Wo*yi,Wo=bs}return[co+fr,Wo+Yr]}return en.invert=function(Ri){var co=Ri[0]-fr,Wo=Ri[1]-Yr;if(Ka){var bs=Wo*oi+co*yi;co=co*oi-Wo*yi,Wo=bs}return[co/vi,Wo/ti]},en.stream=function(Ri){return Wn&&Jn===Ri?Wn:Wn=rn(Kn(Jn=Ri))},en.postclip=function(Ri){return arguments.length?(Kn=Ri,ki=Bi=li=_i=null,no()):Kn},en.clipExtent=function(Ri){return arguments.length?(Kn=Ri==null?(ki=Bi=li=_i=null,Ns):ai(ki=+Ri[0][0],Bi=+Ri[0][1],li=+Ri[1][0],_i=+Ri[1][1]),no()):ki==null?null:[[ki,Bi],[li,_i]]},en.scale=function(Ri){return arguments.length?(Zt=+Ri,no()):Zt},en.translate=function(Ri){return arguments.length?(fr=+Ri[0],Yr=+Ri[1],no()):[fr,Yr]},en.angle=function(Ri){return arguments.length?(Ka=Ri%360*h,yi=m(Ka),oi=l(Ka),no()):Ka*c},en.reflectX=function(Ri){return arguments.length?(qr=Ri?-1:1,no()):qr<0},en.reflectY=function(Ri){return arguments.length?(ba=Ri?-1:1,no()):ba<0},en.fitExtent=function(Ri,co){return Jc(en,Ri,co)},en.fitSize=function(Ri,co){return Eu(en,Ri,co)},en.fitWidth=function(Ri,co){return wf(en,Ri,co)},en.fitHeight=function(Ri,co){return zc(en,Ri,co)},en}function Tc(Zt,fr){var Yr=fr*fr,qr=Yr*Yr;return[Zt*(.8707-.131979*Yr+qr*(-.013791+qr*(.003971*Yr-.001529*qr))),fr*(1.007226+Yr*(.015085+qr*(-.044475+.028874*Yr-.005916*qr)))]}Tc.invert=function(Zt,fr){var Yr=fr,qr=25,ba;do{var Ka=Yr*Yr,oi=Ka*Ka;Yr-=ba=(Yr*(1.007226+Ka*(.015085+oi*(-.044475+.028874*Ka-.005916*oi)))-fr)/(1.007226+Ka*(.015085*3+oi*(-.044475*7+.028874*9*Ka-.005916*11*oi)))}while(v(ba)>r&&--qr>0);return[Zt/(.8707+(Ka=Yr*Yr)*(-.131979+Ka*(-.013791+Ka*Ka*Ka*(.003971-.001529*Ka)))),Yr]};function cc(){return Cu(Tc).scale(175.295)}function Cl(Zt,fr){return[l(fr)*m(Zt),m(fr)]}Cl.invert=bc(f);function iu(){return Cu(Cl).scale(249.5).clipAngle(90+r)}function fc(Zt,fr){var Yr=l(fr),qr=1+l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}fc.invert=bc(function(Zt){return 2*p(Zt)});function Oc(){return Cu(fc).scale(250).clipAngle(142)}function Qu(Zt,fr){return[S(u((i+fr)/2)),-Zt]}Qu.invert=function(Zt,fr){return[-fr,2*p(w(Zt))-i]};function ef(){var Zt=au(Qu),fr=Zt.center,Yr=Zt.rotate;return Zt.center=function(qr){return arguments.length?fr([-qr[1],qr[0]]):(qr=fr(),[qr[1],-qr[0]])},Zt.rotate=function(qr){return arguments.length?Yr([qr[0],qr[1],qr.length>2?qr[2]+90:90]):(qr=Yr(),[qr[0],qr[1],qr[2]-90])},Yr([0,0,90]).scale(159.155)}g.geoAlbers=xl,g.geoAlbersUsa=Sh,g.geoArea=j,g.geoAzimuthalEqualArea=hp,g.geoAzimuthalEqualAreaRaw=lc,g.geoAzimuthalEquidistant=Tf,g.geoAzimuthalEquidistantRaw=vf,g.geoBounds=Fe,g.geoCentroid=xr,g.geoCircle=Er,g.geoClipAntimeridian=mr,g.geoClipCircle=Ca,g.geoClipExtent=an,g.geoClipRectangle=ai,g.geoConicConformal=Ff,g.geoConicConformalRaw=Mh,g.geoConicEqualArea=vu,g.geoConicEqualAreaRaw=$u,g.geoConicEquidistant=Jf,g.geoConicEquidistantRaw=gu,g.geoContains=$o,g.geoDistance=In,g.geoEqualEarth=$f,g.geoEqualEarthRaw=Qc,g.geoEquirectangular=mu,g.geoEquirectangularRaw=il,g.geoGnomonic=Qf,g.geoGnomonicRaw=Vl,g.geoGraticule=ol,g.geoGraticule10=Os,g.geoIdentity=Vu,g.geoInterpolate=so,g.geoLength=as,g.geoMercator=zf,g.geoMercatorRaw=Lu,g.geoNaturalEarth1=cc,g.geoNaturalEarth1Raw=Tc,g.geoOrthographic=iu,g.geoOrthographicRaw=Cl,g.geoPath=Yf,g.geoProjection=Cu,g.geoProjectionMutator=xc,g.geoRotation=$a,g.geoStereographic=Oc,g.geoStereographicRaw=fc,g.geoStream=N,g.geoTransform=uh,g.geoTransverseMercator=ef,g.geoTransverseMercatorRaw=Qu,Object.defineProperty(g,"__esModule",{value:!0})})}}),TU=Ye({"node_modules/d3-geo-projection/dist/d3-geo-projection.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,C5(),gx()):x(g.d3=g.d3||{},g.d3,g.d3)})(X,function(g,x,A){"use strict";var M=Math.abs,e=Math.atan,t=Math.atan2,r=Math.cos,o=Math.exp,a=Math.floor,i=Math.log,n=Math.max,s=Math.min,c=Math.pow,h=Math.round,v=Math.sign||function(qe){return qe>0?1:qe<0?-1:0},p=Math.sin,T=Math.tan,l=1e-6,_=1e-12,w=Math.PI,S=w/2,E=w/4,m=Math.SQRT1_2,b=F(2),d=F(w),u=w*2,y=180/w,f=w/180;function P(qe){return qe?qe/Math.sin(qe):1}function L(qe){return qe>1?S:qe<-1?-S:Math.asin(qe)}function z(qe){return qe>1?0:qe<-1?w:Math.acos(qe)}function F(qe){return qe>0?Math.sqrt(qe):0}function B(qe){return qe=o(2*qe),(qe-1)/(qe+1)}function O(qe){return(o(qe)-o(-qe))/2}function I(qe){return(o(qe)+o(-qe))/2}function N(qe){return i(qe+F(qe*qe+1))}function U(qe){return i(qe+F(qe*qe-1))}function W(qe){var Je=T(qe/2),ot=2*i(r(qe/2))/(Je*Je);function ht(At,_t){var Pt=r(At),er=r(_t),nr=p(_t),pr=er*Pt,Sr=-((1-pr?i((1+pr)/2)/(1-pr):-.5)+ot/(1+pr));return[Sr*er*p(At),Sr*nr]}return ht.invert=function(At,_t){var Pt=F(At*At+_t*_t),er=-qe/2,nr=50,pr;if(!Pt)return[0,0];do{var Sr=er/2,Wr=r(Sr),ha=p(Sr),ga=ha/Wr,Pa=-i(M(Wr));er-=pr=(2/ga*Pa-ot*ga-Pt)/(-Pa/(ha*ha)+1-ot/(2*Wr*Wr))*(Wr<0?.7:1)}while(M(pr)>l&&--nr>0);var Ja=p(er);return[t(At*Ja,Pt*r(er)),L(_t*Ja/Pt)]},ht}function Q(){var qe=S,Je=x.geoProjectionMutator(W),ot=Je(qe);return ot.radius=function(ht){return arguments.length?Je(qe=ht*f):qe*y},ot.scale(179.976).clipAngle(147)}function ue(qe,Je){var ot=r(Je),ht=P(z(ot*r(qe/=2)));return[2*ot*p(qe)*ht,p(Je)*ht]}ue.invert=function(qe,Je){if(!(qe*qe+4*Je*Je>w*w+l)){var ot=qe,ht=Je,At=25;do{var _t=p(ot),Pt=p(ot/2),er=r(ot/2),nr=p(ht),pr=r(ht),Sr=p(2*ht),Wr=nr*nr,ha=pr*pr,ga=Pt*Pt,Pa=1-ha*er*er,Ja=Pa?z(pr*er)*F(di=1/Pa):di=0,di,pi=2*Ja*pr*Pt-qe,Ci=Ja*nr-Je,$i=di*(ha*ga+Ja*pr*er*Wr),Bn=di*(.5*_t*Sr-Ja*2*nr*Pt),Sn=di*.25*(Sr*Pt-Ja*nr*ha*_t),ho=di*(Wr*er+Ja*ga*pr),ts=Bn*Sn-ho*$i;if(!ts)break;var yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]}};function se(){return x.geoProjection(ue).scale(152.63)}function he(qe){var Je=p(qe),ot=r(qe),ht=qe>=0?1:-1,At=T(ht*qe),_t=(1+Je-ot)/2;function Pt(er,nr){var pr=r(nr),Sr=r(er/=2);return[(1+pr)*p(er),(ht*nr>-t(Sr,At)-.001?0:-ht*10)+_t+p(nr)*ot-(1+pr)*Je*Sr]}return Pt.invert=function(er,nr){var pr=0,Sr=0,Wr=50;do{var ha=r(pr),ga=p(pr),Pa=r(Sr),Ja=p(Sr),di=1+Pa,pi=di*ga-er,Ci=_t+Ja*ot-di*Je*ha-nr,$i=di*ha/2,Bn=-ga*Ja,Sn=Je*di*ga/2,ho=ot*Pa+Je*ha*Ja,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts/2,Vo=(pi*Sn-Ci*$i)/ts;M(Vo)>2&&(Vo/=2),pr-=yo,Sr-=Vo}while((M(yo)>l||M(Vo)>l)&&--Wr>0);return ht*Sr>-t(r(pr),At)-.001?[pr*2,Sr]:null},Pt}function G(){var qe=20*f,Je=qe>=0?1:-1,ot=T(Je*qe),ht=x.geoProjectionMutator(he),At=ht(qe),_t=At.stream;return At.parallel=function(Pt){return arguments.length?(ot=T((Je=(qe=Pt*f)>=0?1:-1)*qe),ht(qe)):qe*y},At.stream=function(Pt){var er=At.rotate(),nr=_t(Pt),pr=(At.rotate([0,0]),_t(Pt)),Sr=At.precision();return At.rotate(er),nr.sphere=function(){pr.polygonStart(),pr.lineStart();for(var Wr=Je*-180;Je*Wr<180;Wr+=Je*90)pr.point(Wr,Je*90);if(qe)for(;Je*(Wr-=3*Je*Sr)>=-180;)pr.point(Wr,Je*-t(r(Wr*f/2),ot)*y);pr.lineEnd(),pr.polygonEnd()},nr},At.scale(218.695).center([0,28.0974])}function $(qe,Je){var ot=T(Je/2),ht=F(1-ot*ot),At=1+ht*r(qe/=2),_t=p(qe)*ht/At,Pt=ot/At,er=_t*_t,nr=Pt*Pt;return[4/3*_t*(3+er-3*nr),4/3*Pt*(3+3*er-nr)]}$.invert=function(qe,Je){if(qe*=3/8,Je*=3/8,!qe&&M(Je)>1)return null;var ot=qe*qe,ht=Je*Je,At=1+ot+ht,_t=F((At-F(At*At-4*Je*Je))/2),Pt=L(_t)/3,er=_t?U(M(Je/_t))/3:N(M(qe))/3,nr=r(Pt),pr=I(er),Sr=pr*pr-nr*nr;return[v(qe)*2*t(O(er)*nr,.25-Sr),v(Je)*2*t(pr*p(Pt),.25+Sr)]};function J(){return x.geoProjection($).scale(66.1603)}var Z=F(8),re=i(1+b);function ne(qe,Je){var ot=M(Je);return ot<E?[qe,i(T(E+Je/2))]:[qe*r(ot)*(2*b-1/p(ot)),v(Je)*(2*b*(ot-E)-i(T(ot/2)))]}ne.invert=function(qe,Je){if((_t=M(Je))<re)return[qe,2*e(o(Je))-S];var ot=E,ht=25,At,_t;do{var Pt=r(ot/2),er=T(ot/2);ot-=At=(Z*(ot-E)-i(er)-_t)/(Z-Pt*Pt/(2*er))}while(M(At)>_&&--ht>0);return[qe/(r(ot)*(Z-1/p(ot))),v(Je)*ot]};function j(){return x.geoProjection(ne).scale(112.314)}function ee(qe){var Je=2*w/qe;function ot(ht,At){var _t=x.geoAzimuthalEquidistantRaw(ht,At);if(M(ht)>S){var Pt=t(_t[1],_t[0]),er=F(_t[0]*_t[0]+_t[1]*_t[1]),nr=Je*h((Pt-S)/Je)+S,pr=t(p(Pt-=nr),2-r(Pt));Pt=nr+L(w/er*p(pr))-pr,_t[0]=er*r(Pt),_t[1]=er*p(Pt)}return _t}return ot.invert=function(ht,At){var _t=F(ht*ht+At*At);if(_t>S){var Pt=t(At,ht),er=Je*h((Pt-S)/Je)+S,nr=Pt>er?-1:1,pr=_t*r(er-Pt),Sr=1/T(nr*z((pr-w)/F(w*(w-2*pr)+_t*_t)));Pt=er+2*e((Sr+nr*F(Sr*Sr-3))/3),ht=_t*r(Pt),At=_t*p(Pt)}return x.geoAzimuthalEquidistantRaw.invert(ht,At)},ot}function ie(){var qe=5,Je=x.geoProjectionMutator(ee),ot=Je(qe),ht=ot.stream,At=.01,_t=-r(At*f),Pt=p(At*f);return ot.lobes=function(er){return arguments.length?Je(qe=+er):qe},ot.stream=function(er){var nr=ot.rotate(),pr=ht(er),Sr=(ot.rotate([0,0]),ht(er));return ot.rotate(nr),pr.sphere=function(){Sr.polygonStart(),Sr.lineStart();for(var Wr=0,ha=360/qe,ga=2*w/qe,Pa=90-180/qe,Ja=S;Wr<qe;++Wr,Pa-=ha,Ja-=ga)Sr.point(t(Pt*r(Ja),_t)*y,L(Pt*p(Ja))*y),Pa<-90?(Sr.point(-90,-180-Pa-At),Sr.point(-90,-180-Pa+At)):(Sr.point(90,Pa+At),Sr.point(90,Pa-At));Sr.lineEnd(),Sr.polygonEnd()},pr},ot.scale(87.8076).center([0,17.1875]).clipAngle(180-.001)}function fe(qe,Je){if(arguments.length<2&&(Je=qe),Je===1)return x.geoAzimuthalEqualAreaRaw;if(Je===1/0)return be;function ot(ht,At){var _t=x.geoAzimuthalEqualAreaRaw(ht/Je,At);return _t[0]*=qe,_t}return ot.invert=function(ht,At){var _t=x.geoAzimuthalEqualAreaRaw.invert(ht/qe,At);return _t[0]*=Je,_t},ot}function be(qe,Je){return[qe*r(Je)/r(Je/=2),2*p(Je)]}be.invert=function(qe,Je){var ot=2*L(Je/2);return[qe*r(ot/2)/r(ot),ot]};function Ae(){var qe=2,Je=x.geoProjectionMutator(fe),ot=Je(qe);return ot.coefficient=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(169.529)}function Be(qe,Je,ot){var ht=100,At,_t,Pt;ot=ot===void 0?0:+ot,Je=+Je;do _t=qe(ot),Pt=qe(ot+l),_t===Pt&&(Pt=_t+l),ot-=At=-1*l*(_t-Je)/(_t-Pt);while(ht-- >0&&M(At)>l);return ht<0?NaN:ot}function Ie(qe,Je,ot){return Je===void 0&&(Je=40),ot===void 0&&(ot=_),function(ht,At,_t,Pt){var er,nr,pr;_t=_t===void 0?0:+_t,Pt=Pt===void 0?0:+Pt;for(var Sr=0;Sr<Je;Sr++){var Wr=qe(_t,Pt),ha=Wr[0]-ht,ga=Wr[1]-At;if(M(ha)<ot&&M(ga)<ot)break;var Pa=ha*ha+ga*ga;if(Pa>er){_t-=nr/=2,Pt-=pr/=2;continue}er=Pa;var Ja=(_t>0?-1:1)*ot,di=(Pt>0?-1:1)*ot,pi=qe(_t+Ja,Pt),Ci=qe(_t,Pt+di),$i=(pi[0]-Wr[0])/Ja,Bn=(pi[1]-Wr[1])/Ja,Sn=(Ci[0]-Wr[0])/di,ho=(Ci[1]-Wr[1])/di,ts=ho*$i-Bn*Sn,yo=(M(ts)<.5?.5:1)/ts;if(nr=(ga*Sn-ha*ho)*yo,pr=(ha*Bn-ga*$i)*yo,_t+=nr,Pt+=pr,M(nr)<ot&&M(pr)<ot)break}return[_t,Pt]}}function Ze(){var qe=fe(1.68,2),Je=1.4,ot=12;function ht(At,_t){if(At+_t<-Je){var Pt=(At-_t+1.6)*(At+_t+Je)/8;At+=Pt,_t-=.8*Pt*p(_t+w/2)}var er=qe(At,_t),nr=(1-r(At*_t))/ot;return er[1]<0&&(er[0]*=1+nr),er[1]>0&&(er[1]*=1+nr/1.5*er[0]*er[0]),er}return ht.invert=Ie(ht),ht}function at(){return x.geoProjection(Ze()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function it(qe,Je){var ot=qe*p(Je),ht=30,At;do Je-=At=(Je+p(Je)-ot)/(1+r(Je));while(M(At)>l&&--ht>0);return Je/2}function et(qe,Je,ot){function ht(At,_t){return[qe*At*r(_t=it(ot,_t)),Je*p(_t)]}return ht.invert=function(At,_t){return _t=L(_t/Je),[At/(qe*r(_t)),L((2*_t+p(2*_t))/ot)]},ht}var lt=et(b/S,b,w);function Me(){return x.geoProjection(lt).scale(169.529)}var ge=2.00276,ce=1.11072;function ze(qe,Je){var ot=it(w,Je);return[ge*qe/(1/r(Je)+ce/r(ot)),(Je+b*p(ot))/ge]}ze.invert=function(qe,Je){var ot=ge*Je,ht=Je<0?-E:E,At=25,_t,Pt;do Pt=ot-b*p(ht),ht-=_t=(p(2*ht)+2*ht-w*p(Pt))/(2*r(2*ht)+2+w*r(Pt)*b*r(ht));while(M(_t)>l&&--At>0);return Pt=ot-b*p(ht),[qe*(1/r(Pt)+ce/r(ht))/ge,Pt]};function tt(){return x.geoProjection(ze).scale(160.857)}function nt(qe){var Je=0,ot=x.geoProjectionMutator(qe),ht=ot(Je);return ht.parallel=function(At){return arguments.length?ot(Je=At*f):Je*y},ht}function Qe(qe,Je){return[qe*r(Je),Je]}Qe.invert=function(qe,Je){return[qe/r(Je),Je]};function Ct(){return x.geoProjection(Qe).scale(152.63)}function St(qe){if(!qe)return Qe;var Je=1/T(qe);function ot(ht,At){var _t=Je+qe-At,Pt=_t&&ht*r(At)/_t;return[_t*p(Pt),Je-_t*r(Pt)]}return ot.invert=function(ht,At){var _t=F(ht*ht+(At=Je-At)*At),Pt=Je+qe-_t;return[_t/r(Pt)*t(ht,At),Pt]},ot}function Ot(){return nt(St).scale(123.082).center([0,26.1441]).parallel(45)}function jt(qe){function Je(ot,ht){var At=S-ht,_t=At&&ot*qe*p(At)/At;return[At*p(_t)/qe,S-At*r(_t)]}return Je.invert=function(ot,ht){var At=ot*qe,_t=S-ht,Pt=F(At*At+_t*_t),er=t(At,_t);return[(Pt?Pt/p(Pt):1)*er/qe,S-Pt]},Je}function ur(){var qe=.5,Je=x.geoProjectionMutator(jt),ot=Je(qe);return ot.fraction=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(158.837)}var ar=et(1,4/w,w);function Cr(){return x.geoProjection(ar).scale(152.63)}function vr(qe,Je,ot,ht,At,_t){var Pt=r(_t),er;if(M(qe)>1||M(_t)>1)er=z(ot*At+Je*ht*Pt);else{var nr=p(qe/2),pr=p(_t/2);er=2*L(F(nr*nr+Je*ht*pr*pr))}return M(er)>l?[er,t(ht*p(_t),Je*At-ot*ht*Pt)]:[0,0]}function _r(qe,Je,ot){return z((qe*qe+Je*Je-ot*ot)/(2*qe*Je))}function yt(qe){return qe-2*w*a((qe+w)/(2*w))}function Fe(qe,Je,ot){for(var ht=[[qe[0],qe[1],p(qe[1]),r(qe[1])],[Je[0],Je[1],p(Je[1]),r(Je[1])],[ot[0],ot[1],p(ot[1]),r(ot[1])]],At=ht[2],_t,Pt=0;Pt<3;++Pt,At=_t)_t=ht[Pt],At.v=vr(_t[1]-At[1],At[3],At[2],_t[3],_t[2],_t[0]-At[0]),At.point=[0,0];var er=_r(ht[0].v[0],ht[2].v[0],ht[1].v[0]),nr=_r(ht[0].v[0],ht[1].v[0],ht[2].v[0]),pr=w-er;ht[2].point[1]=0,ht[0].point[0]=-(ht[1].point[0]=ht[0].v[0]/2);var Sr=[ht[2].point[0]=ht[0].point[0]+ht[2].v[0]*r(er),2*(ht[0].point[1]=ht[1].point[1]=ht[2].v[0]*p(er))];function Wr(ha,ga){var Pa=p(ga),Ja=r(ga),di=new Array(3),pi;for(pi=0;pi<3;++pi){var Ci=ht[pi];if(di[pi]=vr(ga-Ci[1],Ci[3],Ci[2],Ja,Pa,ha-Ci[0]),!di[pi][0])return Ci.point;di[pi][1]=yt(di[pi][1]-Ci.v[1])}var $i=Sr.slice();for(pi=0;pi<3;++pi){var Bn=pi==2?0:pi+1,Sn=_r(ht[pi].v[0],di[pi][0],di[Bn][0]);di[pi][1]<0&&(Sn=-Sn),pi?pi==1?(Sn=nr-Sn,$i[0]-=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn)):(Sn=pr-Sn,$i[0]+=di[pi][0]*r(Sn),$i[1]+=di[pi][0]*p(Sn)):($i[0]+=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn))}return $i[0]/=3,$i[1]/=3,$i}return Wr}function Ke(qe){return qe[0]*=f,qe[1]*=f,qe}function Ne(){return Ee([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Ee(qe,Je,ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:[qe,Je,ot]}),At=[-ht[0],-ht[1]],_t=x.geoRotation(At),Pt=Fe(Ke(_t(qe)),Ke(_t(Je)),Ke(_t(ot)));Pt.invert=Ie(Pt);var er=x.geoProjection(Pt).rotate(At),nr=er.center;return delete er.rotate,er.center=function(pr){return arguments.length?nr(_t(pr)):_t.invert(nr())},er.clipAngle(90)}function Ve(qe,Je){var ot=F(1-p(Je));return[2/d*qe*ot,d*(1-ot)]}Ve.invert=function(qe,Je){var ot=(ot=Je/d-1)*ot;return[ot>0?qe*F(w/ot)/2:0,L(1-ot)]};function ke(){return x.geoProjection(Ve).scale(95.6464).center([0,30])}function Te(qe){var Je=T(qe);function ot(ht,At){return[ht,(ht?ht/p(ht):1)*(p(At)*r(ht)-Je*r(At))]}return ot.invert=Je?function(ht,At){ht&&(At*=p(ht)/ht);var _t=r(ht);return[ht,2*t(F(_t*_t+Je*Je-At*At)-_t,Je-At)]}:function(ht,At){return[ht,L(ht?At*T(ht)/ht:At)]},ot}function Le(){return nt(Te).scale(249.828).clipAngle(90)}var rt=F(3);function dt(qe,Je){return[rt*qe*(2*r(2*Je/3)-1)/d,rt*d*p(Je/3)]}dt.invert=function(qe,Je){var ot=3*L(Je/(rt*d));return[d*qe/(rt*(2*r(2*ot/3)-1)),ot]};function xt(){return x.geoProjection(dt).scale(156.19)}function It(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,p(At)/Je]}return ot.invert=function(ht,At){return[ht/Je,L(At*Je)]},ot}function Bt(){return nt(It).parallel(38.58).scale(195.044)}function Gt(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,(1+Je)*T(At/2)]}return ot.invert=function(ht,At){return[ht/Je,e(At/(1+Je))*2]},ot}function Kt(){return nt(Gt).scale(124.75)}function sr(qe,Je){var ot=F(8/(3*w));return[ot*qe*(1-M(Je)/w),ot*Je]}sr.invert=function(qe,Je){var ot=F(8/(3*w)),ht=Je/ot;return[qe/(ot*(1-M(ht)/w)),ht]};function sa(){return x.geoProjection(sr).scale(165.664)}function Aa(qe,Je){var ot=F(4-3*p(M(Je)));return[2/F(6*w)*qe*ot,v(Je)*F(2*w/3)*(2-ot)]}Aa.invert=function(qe,Je){var ot=2-M(Je)/F(2*w/3);return[qe*F(6*w)/(2*ot),v(Je)*L((4-ot*ot)/3)]};function La(){return x.geoProjection(Aa).scale(165.664)}function ka(qe,Je){var ot=F(w*(4+w));return[2/ot*qe*(1+F(1-4*Je*Je/(w*w))),4/ot*Je]}ka.invert=function(qe,Je){var ot=F(w*(4+w))/2;return[qe*ot/(1+F(1-Je*Je*(4+w)/(4*w))),Je*ot/2]};function Ga(){return x.geoProjection(ka).scale(180.739)}function Ma(qe,Je){var ot=(2+S)*p(Je);Je/=2;for(var ht=0,At=1/0;ht<10&&M(At)>l;ht++){var _t=r(Je);Je-=At=(Je+p(Je)*(_t+2)-ot)/(2*_t*(1+_t))}return[2/F(w*(4+w))*qe*(1+r(Je)),2*F(w/(4+w))*p(Je)]}Ma.invert=function(qe,Je){var ot=Je*F((4+w)/w)/2,ht=L(ot),At=r(ht);return[qe/(2/F(w*(4+w))*(1+At)),L((ht+ot*(At+2))/(2+S))]};function Ua(){return x.geoProjection(Ma).scale(180.739)}function ni(qe,Je){return[qe*(1+r(Je))/F(2+w),2*Je/F(2+w)]}ni.invert=function(qe,Je){var ot=F(2+w),ht=Je*ot/2;return[ot*qe/(1+r(ht)),ht]};function Wt(){return x.geoProjection(ni).scale(173.044)}function zt(qe,Je){for(var ot=(1+S)*p(Je),ht=0,At=1/0;ht<10&&M(At)>l;ht++)Je-=At=(Je+p(Je)-ot)/(1+r(Je));return ot=F(2+w),[qe*(1+r(Je))/ot,2*Je/ot]}zt.invert=function(qe,Je){var ot=1+S,ht=F(ot/2);return[qe*2*ht/(1+r(Je*=ht)),L((Je+p(Je))/ot)]};function Vt(){return x.geoProjection(zt).scale(173.044)}var Ut=3+2*b;function xr(qe,Je){var ot=p(qe/=2),ht=r(qe),At=F(r(Je)),_t=r(Je/=2),Pt=p(Je)/(_t+b*ht*At),er=F(2/(1+Pt*Pt)),nr=F((b*_t+(ht+ot)*At)/(b*_t+(ht-ot)*At));return[Ut*(er*(nr-1/nr)-2*i(nr)),Ut*(er*Pt*(nr+1/nr)-2*e(Pt))]}xr.invert=function(qe,Je){if(!(_t=$.invert(qe/1.2,Je*1.065)))return null;var ot=_t[0],ht=_t[1],At=20,_t;qe/=Ut,Je/=Ut;do{var Pt=ot/2,er=ht/2,nr=p(Pt),pr=r(Pt),Sr=p(er),Wr=r(er),ha=r(ht),ga=F(ha),Pa=Sr/(Wr+b*pr*ga),Ja=Pa*Pa,di=F(2/(1+Ja)),pi=b*Wr+(pr+nr)*ga,Ci=b*Wr+(pr-nr)*ga,$i=pi/Ci,Bn=F($i),Sn=Bn-1/Bn,ho=Bn+1/Bn,ts=di*Sn-2*i(Bn)-qe,yo=di*Pa*ho-2*e(Pa)-Je,Vo=Sr&&m*ga*nr*Ja/Sr,ls=(b*pr*Wr+ga)/(2*(Wr+b*pr*ga)*(Wr+b*pr*ga)*ga),rl=-.5*Pa*di*di*di,Ys=rl*Vo,Zo=rl*ls,Go=(Go=2*Wr+b*ga*(pr-nr))*Go*Bn,Rl=(b*pr*Wr*ga+ha)/Go,Xl=-(b*nr*Sr)/(ga*Go),qu=Sn*Ys-2*Rl/Bn+di*(Rl+Rl/$i),fu=Sn*Zo-2*Xl/Bn+di*(Xl+Xl/$i),bl=Pa*ho*Ys-2*Vo/(1+Ja)+di*ho*Vo+di*Pa*(Rl-Rl/$i),ou=Pa*ho*Zo-2*ls/(1+Ja)+di*ho*ls+di*Pa*(Xl-Xl/$i),Sc=fu*bl-ou*qu;if(!Sc)break;var ql=(yo*fu-ts*ou)/Sc,Hl=(ts*bl-yo*qu)/Sc;ot-=ql,ht=n(-S,s(S,ht-Hl))}while((M(ql)>l||M(Hl)>l)&&--At>0);return M(M(ht)-S)<l?[0,ht]:At&&[ot,ht]};function Zr(){return x.geoProjection(xr).scale(62.5271)}var pa=r(35*f);function Xr(qe,Je){var ot=T(Je/2);return[qe*pa*F(1-ot*ot),(1+pa)*ot]}Xr.invert=function(qe,Je){var ot=Je/(1+pa);return[qe&&qe/(pa*F(1-ot*ot)),2*e(ot)]};function Ea(){return x.geoProjection(Xr).scale(137.152)}function Fa(qe,Je){var ot=Je/2,ht=r(ot);return[2*qe/d*r(Je)*ht*ht,d*T(ot)]}Fa.invert=function(qe,Je){var ot=e(Je/d),ht=r(ot),At=2*ot;return[qe*d/2/(r(At)*ht*ht),At]};function qa(){return x.geoProjection(Fa).scale(135.264)}function ya(qe){var Je=1-qe,ot=_t(w,0)[0]-_t(-w,0)[0],ht=_t(0,S)[1]-_t(0,-S)[1],At=F(2*ht/ot);function _t(nr,pr){var Sr=r(pr),Wr=p(pr);return[Sr/(Je+qe*Sr)*nr,Je*pr+qe*Wr]}function Pt(nr,pr){var Sr=_t(nr,pr);return[Sr[0]*At,Sr[1]/At]}function er(nr){return Pt(0,nr)[1]}return Pt.invert=function(nr,pr){var Sr=Be(er,pr),Wr=nr/At*(qe+Je/r(Sr));return[Wr,Sr]},Pt}function $a(){var qe=.5,Je=x.geoProjectionMutator(ya),ot=Je(qe);return ot.alpha=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(168.725)}function mt(qe){return[qe[0]/2,L(T(qe[1]/2*f))*y]}function gt(qe){return[qe[0]*2,2*e(p(qe[1]*f))*y]}function Er(qe){qe==null&&(qe=x.geoOrthographic);var Je=qe(),ot=x.geoEquirectangular().scale(y).precision(0).clipAngle(null).translate([0,0]);function ht(_t){return Je(mt(_t))}Je.invert&&(ht.invert=function(_t){return gt(Je.invert(_t))}),ht.stream=function(_t){var Pt=Je.stream(_t),er=ot.stream({point:function(nr,pr){Pt.point(nr/2,L(T(-pr/2*f))*y)},lineStart:function(){Pt.lineStart()},lineEnd:function(){Pt.lineEnd()},polygonStart:function(){Pt.polygonStart()},polygonEnd:function(){Pt.polygonEnd()}});return er.sphere=Pt.sphere,er};function At(_t){ht[_t]=function(){return arguments.length?(Je[_t].apply(Je,arguments),ht):Je[_t]()}}return ht.rotate=function(_t){return arguments.length?(ot.rotate(_t),ht):ot.rotate()},ht.center=function(_t){return arguments.length?(Je.center(mt(_t)),ht):gt(Je.center())},At("angle"),At("clipAngle"),At("clipExtent"),At("fitExtent"),At("fitHeight"),At("fitSize"),At("fitWidth"),At("scale"),At("translate"),At("precision"),ht.scale(249.5)}function kr(qe,Je){var ot=2*w/Je,ht=qe*qe;function At(_t,Pt){var er=x.geoAzimuthalEquidistantRaw(_t,Pt),nr=er[0],pr=er[1],Sr=nr*nr+pr*pr;if(Sr>ht){var Wr=F(Sr),ha=t(pr,nr),ga=ot*h(ha/ot),Pa=ha-ga,Ja=qe*r(Pa),di=(qe*p(Pa)-Pa*p(Ja))/(S-Ja),pi=br(Pa,di),Ci=(w-qe)/Tr(pi,Ja,w);nr=Wr;var $i=50,Bn;do nr-=Bn=(qe+Tr(pi,Ja,nr)*Ci-Wr)/(pi(nr)*Ci);while(M(Bn)>l&&--$i>0);pr=Pa*p(nr),nr<S&&(pr-=di*(nr-S));var Sn=p(ga),ho=r(ga);er[0]=nr*ho-pr*Sn,er[1]=nr*Sn+pr*ho}return er}return At.invert=function(_t,Pt){var er=_t*_t+Pt*Pt;if(er>ht){var nr=F(er),pr=t(Pt,_t),Sr=ot*h(pr/ot),Wr=pr-Sr;_t=nr*r(Wr),Pt=nr*p(Wr);for(var ha=_t-S,ga=p(_t),Pa=Pt/ga,Ja=_t<S?1/0:0,di=10;;){var pi=qe*p(Pa),Ci=qe*r(Pa),$i=p(Ci),Bn=S-Ci,Sn=(pi-Pa*$i)/Bn,ho=br(Pa,Sn);if(M(Ja)<_||!--di)break;Pa-=Ja=(Pa*ga-Sn*ha-Pt)/(ga-ha*2*(Bn*(Ci+Pa*pi*r(Ci)-$i)-pi*(pi-Pa*$i))/(Bn*Bn))}nr=qe+Tr(ho,Ci,_t)*(w-qe)/Tr(ho,Ci,w),pr=Sr+Pa,_t=nr*r(pr),Pt=nr*p(pr)}return x.geoAzimuthalEquidistantRaw.invert(_t,Pt)},At}function br(qe,Je){return function(ot){var ht=qe*r(ot);return ot<S&&(ht-=Je),F(1+ht*ht)}}function Tr(qe,Je,ot){for(var ht=50,At=(ot-Je)/ht,_t=qe(Je)+qe(ot),Pt=1,er=Je;Pt<ht;++Pt)_t+=2*qe(er+=At);return _t*.5*At}function Mr(){var qe=6,Je=30*f,ot=r(Je),ht=p(Je),At=x.geoProjectionMutator(kr),_t=At(Je,qe),Pt=_t.stream,er=.01,nr=-r(er*f),pr=p(er*f);return _t.radius=function(Sr){return arguments.length?(ot=r(Je=Sr*f),ht=p(Je),At(Je,qe)):Je*y},_t.lobes=function(Sr){return arguments.length?At(Je,qe=+Sr):qe},_t.stream=function(Sr){var Wr=_t.rotate(),ha=Pt(Sr),ga=(_t.rotate([0,0]),Pt(Sr));return _t.rotate(Wr),ha.sphere=function(){ga.polygonStart(),ga.lineStart();for(var Pa=0,Ja=2*w/qe,di=0;Pa<qe;++Pa,di-=Ja)ga.point(t(pr*r(di),nr)*y,L(pr*p(di))*y),ga.point(t(ht*r(di-Ja/2),ot)*y,L(ht*p(di-Ja/2))*y);ga.lineEnd(),ga.polygonEnd()},ha},_t.rotate([90,-40]).scale(91.7095).clipAngle(180-.001)}function Fr(qe,Je,ot,ht,At,_t,Pt,er){arguments.length<8&&(er=0);function nr(pr,Sr){if(!Sr)return[qe*pr/w,0];var Wr=Sr*Sr,ha=qe+Wr*(Je+Wr*(ot+Wr*ht)),ga=Sr*(At-1+Wr*(_t-er+Wr*Pt)),Pa=(ha*ha+ga*ga)/(2*ga),Ja=pr*L(ha/Pa)/w;return[Pa*p(Ja),Sr*(1+Wr*er)+Pa*(1-r(Ja))]}return nr.invert=function(pr,Sr){var Wr=w*pr/qe,ha=Sr,ga,Pa,Ja=50;do{var di=ha*ha,pi=qe+di*(Je+di*(ot+di*ht)),Ci=ha*(At-1+di*(_t-er+di*Pt)),$i=pi*pi+Ci*Ci,Bn=2*Ci,Sn=$i/Bn,ho=Sn*Sn,ts=L(pi/Sn)/w,yo=Wr*ts,Vo=pi*pi,ls=(2*Je+di*(4*ot+di*6*ht))*ha,rl=At+di*(3*_t+di*5*Pt),Ys=2*(pi*ls+Ci*(rl-1)),Zo=2*(rl-1),Go=(Ys*Bn-$i*Zo)/(Bn*Bn),Rl=r(yo),Xl=p(yo),qu=Sn*Rl,fu=Sn*Xl,bl=Wr/w*(1/F(1-Vo/ho))*(ls*Sn-pi*Go)/ho,ou=fu-pr,Sc=ha*(1+di*er)+Sn-qu-Sr,ql=Go*Xl+qu*bl,Hl=qu*ts,de=1+Go-(Go*Rl-fu*bl),Re=fu*ts,$e=ql*Re-de*Hl;if(!$e)break;Wr-=ga=(Sc*ql-ou*de)/$e,ha-=Pa=(ou*Re-Sc*Hl)/$e}while((M(ga)>l||M(Pa)>l)&&--Ja>0);return[Wr,ha]},nr}var Lr=Fr(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Jr(){return x.geoProjection(Lr).scale(149.995)}var oa=Fr(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function ca(){return x.geoProjection(oa).scale(153.93)}var kt=Fr(5/6*w,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ir(){return x.geoProjection(kt).scale(130.945)}function mr(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(1-.162388*ht)*(.87-952426e-9*ot*ot),Je*(1+ht/12)]}mr.invert=function(qe,Je){var ot=qe,ht=Je,At=50,_t;do{var Pt=ht*ht;ht-=_t=(ht*(1+Pt/12)-Je)/(1+Pt/4)}while(M(_t)>l&&--At>0);At=50,qe/=1-.162388*Pt;do{var er=(er=ot*ot)*er;ot-=_t=(ot*(.87-952426e-9*er)-qe)/(.87-.00476213*er)}while(M(_t)>l&&--At>0);return[ot,ht]};function $r(){return x.geoProjection(mr).scale(131.747)}var ma=Fr(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Ba(){return x.geoProjection(ma).scale(131.087)}function Ca(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=ht>0?-.5:.5,Pt=qe(ht+_t*w,At);return Pt[0]-=_t*Je,Pt}return qe.invert&&(ot.invert=function(ht,At){var _t=ht>0?-.5:.5,Pt=qe.invert(ht+_t*Je,At),er=Pt[0]-_t*w;return er<-w?er+=2*w:er>w&&(er-=2*w),Pt[0]=er,Pt}),ot}function da(qe,Je){var ot=v(qe),ht=v(Je),At=r(Je),_t=r(qe)*At,Pt=p(qe)*At,er=p(ht*Je);qe=M(t(Pt,er)),Je=L(_t),M(qe-S)>l&&(qe%=S);var nr=Sa(qe>w/4?S-qe:qe,Je);return qe>w/4&&(er=nr[0],nr[0]=-nr[1],nr[1]=-er),nr[0]*=ot,nr[1]*=-ht,nr}da.invert=function(qe,Je){M(qe)>1&&(qe=v(qe)*2-qe),M(Je)>1&&(Je=v(Je)*2-Je);var ot=v(qe),ht=v(Je),At=-ot*qe,_t=-ht*Je,Pt=_t/At<1,er=Ti(Pt?_t:At,Pt?At:_t),nr=er[0],pr=er[1],Sr=r(pr);return Pt&&(nr=-S-nr),[ot*(t(p(nr)*Sr,-p(pr))+w),ht*L(r(nr)*Sr)]};function Sa(qe,Je){if(Je===S)return[0,0];var ot=p(Je),ht=ot*ot,At=ht*ht,_t=1+At,Pt=1+3*At,er=1-At,nr=L(1/F(_t)),pr=er+ht*_t*nr,Sr=(1-ot)/pr,Wr=F(Sr),ha=Sr*_t,ga=F(ha),Pa=Wr*er,Ja,di;if(qe===0)return[0,-(Pa+ht*ga)];var pi=r(Je),Ci=1/pi,$i=2*ot*pi,Bn=(-3*ht+nr*Pt)*$i,Sn=(-pr*pi-(1-ot)*Bn)/(pr*pr),ho=.5*Sn/Wr,ts=er*ho-2*ht*Wr*$i,yo=ht*_t*Sn+Sr*Pt*$i,Vo=-Ci*$i,ls=-Ci*yo,rl=-2*Ci*ts,Ys=4*qe/w,Zo;if(qe>.222*w||Je<w/4&&qe>.175*w){if(Ja=(Pa+ht*F(ha*(1+At)-Pa*Pa))/(1+At),qe>w/4)return[Ja,Ja];var Go=Ja,Rl=.5*Ja;Ja=.5*(Rl+Go),di=50;do{var Xl=F(ha-Ja*Ja),qu=Ja*(rl+Vo*Xl)+ls*L(Ja/ga)-Ys;if(!qu)break;qu<0?Rl=Ja:Go=Ja,Ja=.5*(Rl+Go)}while(M(Go-Rl)>l&&--di>0)}else{Ja=l,di=25;do{var fu=Ja*Ja,bl=F(ha-fu),ou=rl+Vo*bl,Sc=Ja*ou+ls*L(Ja/ga)-Ys,ql=ou+(ls-Vo*fu)/bl;Ja-=Zo=bl?Sc/ql:0}while(M(Zo)>l&&--di>0)}return[Ja,-Pa-ht*F(ha-Ja*Ja)]}function Ti(qe,Je){for(var ot=0,ht=1,At=.5,_t=50;;){var Pt=At*At,er=F(At),nr=L(1/F(1+Pt)),pr=1-Pt+At*(1+Pt)*nr,Sr=(1-er)/pr,Wr=F(Sr),ha=Sr*(1+Pt),ga=Wr*(1-Pt),Pa=ha-qe*qe,Ja=F(Pa),di=Je+ga+At*Ja;if(M(ht-ot)<_||--_t===0||di===0)break;di>0?ot=At:ht=At,At=.5*(ot+ht)}if(!_t)return null;var pi=L(er),Ci=r(pi),$i=1/Ci,Bn=2*er*Ci,Sn=(-3*At+nr*(1+3*Pt))*Bn,ho=(-pr*Ci-(1-er)*Sn)/(pr*pr),ts=.5*ho/Wr,yo=(1-Pt)*ts-2*At*Wr*Bn,Vo=-2*$i*yo,ls=-$i*Bn,rl=-$i*(At*(1+Pt)*ho+Sr*(1+3*Pt)*Bn);return[w/4*(qe*(Vo+ls*Ja)+rl*L(qe/F(ha))),pi]}function ai(){return x.geoProjection(Ca(da)).scale(239.75)}function an(qe,Je,ot){var ht,At,_t;return qe?(ht=sn(qe,ot),Je?(At=sn(Je,1-ot),_t=At[1]*At[1]+ot*ht[0]*ht[0]*At[0]*At[0],[[ht[0]*At[2]/_t,ht[1]*ht[2]*At[0]*At[1]/_t],[ht[1]*At[1]/_t,-ht[0]*ht[2]*At[0]*At[2]/_t],[ht[2]*At[1]*At[2]/_t,-ot*ht[0]*ht[1]*At[0]/_t]]):[[ht[0],0],[ht[1],0],[ht[2],0]]):(At=sn(Je,1-ot),[[0,At[0]/At[1]],[1/At[1],0],[At[2]/At[1],0]])}function sn(qe,Je){var ot,ht,At,_t,Pt;if(Je<l)return _t=p(qe),ht=r(qe),ot=Je*(qe-_t*ht)/4,[_t-ot*ht,ht+ot*_t,1-Je*_t*_t/2,qe-ot];if(Je>=1-l)return ot=(1-Je)/4,ht=I(qe),_t=B(qe),At=1/ht,Pt=ht*O(qe),[_t+ot*(Pt-qe)/(ht*ht),At-ot*_t*At*(Pt-qe),At+ot*_t*At*(Pt+qe),2*e(o(qe))-S+ot*(Pt-qe)/ht];var er=[1,0,0,0,0,0,0,0,0],nr=[F(Je),0,0,0,0,0,0,0,0],pr=0;for(ht=F(1-Je),Pt=1;M(nr[pr]/er[pr])>l&&pr<8;)ot=er[pr++],nr[pr]=(ot-ht)/2,er[pr]=(ot+ht)/2,ht=F(ot*ht),Pt*=2;At=Pt*er[pr]*qe;do _t=nr[pr]*p(ht=At)/er[pr],At=(L(_t)+At)/2;while(--pr);return[p(At),_t=r(At),_t/r(At-ht),At]}function Mn(qe,Je,ot){var ht=M(qe),At=M(Je),_t=O(At);if(ht){var Pt=1/p(ht),er=1/(T(ht)*T(ht)),nr=-(er+ot*(_t*_t*Pt*Pt)-1+ot),pr=(ot-1)*er,Sr=(-nr+F(nr*nr-4*pr))/2;return[On(e(1/F(Sr)),ot)*v(qe),On(e(F((Sr/er-1)/ot)),1-ot)*v(Je)]}return[0,On(e(_t),1-ot)*v(Je)]}function On(qe,Je){if(!Je)return qe;if(Je===1)return i(T(qe/2+E));for(var ot=1,ht=F(1-Je),At=F(Je),_t=0;M(At)>l;_t++){if(qe%w){var Pt=e(ht*T(qe)/ot);Pt<0&&(Pt+=w),qe+=Pt+~~(qe/w)*w}else qe+=qe;At=(ot+ht)/2,ht=F(ot*ht),At=((ot=At)-ht)/2}return qe/(c(2,_t)*ot)}function $n(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=i(T(w/4+M(Je)/2)),er=o(_t*Pt)/F(ot),nr=Cn(er*r(_t*qe),er*p(_t*qe)),pr=Mn(nr[0],nr[1],ht*ht);return[-pr[1],(Je>=0?1:-1)*(.5*At-pr[0])]}function Cn(qe,Je){var ot=qe*qe,ht=Je+1,At=1-ot-Je*Je;return[.5*((qe>=0?S:-S)-t(At,2*qe)),-.25*i(At*At+4*ot)+.5*i(ht*ht+ot)]}function Lo(qe,Je){var ot=Je[0]*Je[0]+Je[1]*Je[1];return[(qe[0]*Je[0]+qe[1]*Je[1])/ot,(qe[1]*Je[0]-qe[0]*Je[1])/ot]}$n.invert=function(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=an(.5*At-Je,-qe,ht*ht),er=Lo(Pt[0],Pt[1]),nr=t(er[1],er[0])/_t;return[nr,2*e(o(.5/_t*i(ot*er[0]*er[0]+ot*er[1]*er[1])))-S]};function Xi(){return x.geoProjection(Ca($n)).scale(151.496)}function Jo(qe){var Je=p(qe),ot=r(qe),ht=zo(qe);ht.invert=zo(-qe);function At(_t,Pt){var er=ht(_t,Pt);_t=er[0],Pt=er[1];var nr=p(Pt),pr=r(Pt),Sr=r(_t),Wr=z(Je*nr+ot*pr*Sr),ha=p(Wr),ga=M(ha)>l?Wr/ha:1;return[ga*ot*p(_t),(M(_t)>S?ga:-ga)*(Je*pr-ot*nr*Sr)]}return At.invert=function(_t,Pt){var er=F(_t*_t+Pt*Pt),nr=-p(er),pr=r(er),Sr=er*pr,Wr=-Pt*nr,ha=er*Je,ga=F(Sr*Sr+Wr*Wr-ha*ha),Pa=t(Sr*ha+Wr*ga,Wr*ha-Sr*ga),Ja=(er>S?-1:1)*t(_t*nr,er*r(Pa)*pr+Pt*p(Pa)*nr);return ht.invert(Ja,Pa)},At}function zo(qe){var Je=p(qe),ot=r(qe);return function(ht,At){var _t=r(At),Pt=r(ht)*_t,er=p(ht)*_t,nr=p(At);return[t(er,Pt*ot-nr*Je),L(nr*ot+Pt*Je)]}}function as(){var qe=0,Je=x.geoProjectionMutator(Jo),ot=Je(qe),ht=ot.rotate,At=ot.stream,_t=x.geoCircle();return ot.parallel=function(Pt){if(!arguments.length)return qe*y;var er=ot.rotate();return Je(qe=Pt*f).rotate(er)},ot.rotate=function(Pt){return arguments.length?(ht.call(ot,[Pt[0],Pt[1]-qe*y]),_t.center([-Pt[0],-Pt[1]]),ot):(Pt=ht.call(ot),Pt[1]+=qe*y,Pt)},ot.stream=function(Pt){return Pt=At(Pt),Pt.sphere=function(){Pt.polygonStart();var er=.01,nr=_t.radius(90-er)().coordinates[0],pr=nr.length-1,Sr=-1,Wr;for(Pt.lineStart();++Sr<pr;)Pt.point((Wr=nr[Sr])[0],Wr[1]);for(Pt.lineEnd(),nr=_t.radius(90+er)().coordinates[0],pr=nr.length-1,Pt.lineStart();--Sr>=0;)Pt.point((Wr=nr[Sr])[0],Wr[1]);Pt.lineEnd(),Pt.polygonEnd()},Pt},ot.scale(79.4187).parallel(45).clipAngle(180-.001)}var Pn=3,go=L(1-1/Pn)*y,In=It(0);function Do(qe){var Je=go*f,ot=Ve(w,Je)[0]-Ve(-w,Je)[0],ht=In(0,Je)[1],At=Ve(0,Je)[1],_t=d-At,Pt=u/qe,er=4/u,nr=ht+_t*_t*4/u;function pr(Sr,Wr){var ha,ga=M(Wr);if(ga>Je){var Pa=s(qe-1,n(0,a((Sr+w)/Pt)));Sr+=w*(qe-1)/qe-Pa*Pt,ha=Ve(Sr,ga),ha[0]=ha[0]*u/ot-u*(qe-1)/(2*qe)+Pa*u/qe,ha[1]=ht+(ha[1]-At)*4*_t/u,Wr<0&&(ha[1]=-ha[1])}else ha=In(Sr,Wr);return ha[0]*=er,ha[1]/=nr,ha}return pr.invert=function(Sr,Wr){Sr/=er,Wr*=nr;var ha=M(Wr);if(ha>ht){var ga=s(qe-1,n(0,a((Sr+w)/Pt)));Sr=(Sr+w*(qe-1)/qe-ga*Pt)*ot/u;var Pa=Ve.invert(Sr,.25*(ha-ht)*u/_t+At);return Pa[0]-=w*(qe-1)/qe-ga*Pt,Wr<0&&(Pa[1]=-Pa[1]),Pa}return In.invert(Sr,Wr)},pr}function Ho(qe,Je){return[qe,Je&1?90-l:go]}function Qo(qe,Je){return[qe,Je&1?-90+l:-go]}function Xn(qe){return[qe[0]*(1-l),qe[1]]}function po(qe){var Je=[].concat(A.range(-180,180+qe/2,qe).map(Ho),A.range(180,-180-qe/2,-qe).map(Qo));return{type:"Polygon",coordinates:[qe===180?Je.map(Xn):Je]}}function ys(){var qe=4,Je=x.geoProjectionMutator(Do),ot=Je(qe),ht=ot.stream;return ot.lobes=function(At){return arguments.length?Je(qe=+At):qe},ot.stream=function(At){var _t=ot.rotate(),Pt=ht(At),er=(ot.rotate([0,0]),ht(At));return ot.rotate(_t),Pt.sphere=function(){x.geoStream(po(180/qe),er)},Pt},ot.scale(239.75)}function Is(qe){var Je=1+qe,ot=p(1/Je),ht=L(ot),At=2*F(w/(_t=w+4*ht*Je)),_t,Pt=.5*At*(Je+F(qe*(2+qe))),er=qe*qe,nr=Je*Je;function pr(Sr,Wr){var ha=1-p(Wr),ga,Pa;if(ha&&ha<2){var Ja=S-Wr,di=25,pi;do{var Ci=p(Ja),$i=r(Ja),Bn=ht+t(Ci,Je-$i),Sn=1+nr-2*Je*$i;Ja-=pi=(Ja-er*ht-Je*Ci+Sn*Bn-.5*ha*_t)/(2*Je*Ci*Bn)}while(M(pi)>_&&--di>0);ga=At*F(Sn),Pa=Sr*Bn/w}else ga=At*(qe+ha),Pa=Sr*ht/w;return[ga*p(Pa),Pt-ga*r(Pa)]}return pr.invert=function(Sr,Wr){var ha=Sr*Sr+(Wr-=Pt)*Wr,ga=(1+nr-ha/(At*At))/(2*Je),Pa=z(ga),Ja=p(Pa),di=ht+t(Ja,Je-ga);return[L(Sr/F(ha))*w/di,L(1-2*(Pa-er*ht-Je*Ja+(1+nr-2*Je*ga)*di)/_t)]},pr}function Fs(){var qe=1,Je=x.geoProjectionMutator(Is),ot=Je(qe);return ot.ratio=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(167.774).center([0,18.67])}var $o=.7109889596207567,fi=.0528035274542;function mn(qe,Je){return Je>-$o?(qe=lt(qe,Je),qe[1]+=fi,qe):Qe(qe,Je)}mn.invert=function(qe,Je){return Je>-$o?lt.invert(qe,Je-fi):Qe.invert(qe,Je)};function ol(){return x.geoProjection(mn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Os(qe,Je){return M(Je)>$o?(qe=lt(qe,Je),qe[1]-=Je>0?fi:-fi,qe):Qe(qe,Je)}Os.invert=function(qe,Je){return M(Je)>$o?lt.invert(qe,Je+(Je>0?fi:-fi)):Qe.invert(qe,Je)};function so(){return x.geoProjection(Os).scale(152.63)}function Ns(qe,Je,ot,ht){var At=F(4*w/(2*ot+(1+qe-Je/2)*p(2*ot)+(qe+Je)/2*p(4*ot)+Je/2*p(6*ot))),_t=F(ht*p(ot)*F((1+qe*r(2*ot)+Je*r(4*ot))/(1+qe+Je))),Pt=ot*nr(1);function er(Wr){return F(1+qe*r(2*Wr)+Je*r(4*Wr))}function nr(Wr){var ha=Wr*ot;return(2*ha+(1+qe-Je/2)*p(2*ha)+(qe+Je)/2*p(4*ha)+Je/2*p(6*ha))/ot}function pr(Wr){return er(Wr)*p(Wr)}var Sr=function(Wr,ha){var ga=ot*Be(nr,Pt*p(ha)/ot,ha/w);isNaN(ga)&&(ga=ot*v(ha));var Pa=At*er(ga);return[Pa*_t*Wr/w*r(ga),Pa/_t*p(ga)]};return Sr.invert=function(Wr,ha){var ga=Be(pr,ha*_t/At);return[Wr*w/(r(ga)*At*_t*er(ga)),L(ot*nr(ga/ot)/Pt)]},ot===0&&(At=F(ht/w),Sr=function(Wr,ha){return[Wr*At,p(ha)/At]},Sr.invert=function(Wr,ha){return[Wr/At,L(ha*At)]}),Sr}function fs(){var qe=1,Je=0,ot=45*f,ht=2,At=x.geoProjectionMutator(Ns),_t=At(qe,Je,ot,ht);return _t.a=function(Pt){return arguments.length?At(qe=+Pt,Je,ot,ht):qe},_t.b=function(Pt){return arguments.length?At(qe,Je=+Pt,ot,ht):Je},_t.psiMax=function(Pt){return arguments.length?At(qe,Je,ot=+Pt*f,ht):ot*y},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(180.739)}function al(qe,Je,ot,ht,At,_t,Pt,er,nr,pr,Sr){if(Sr.nanEncountered)return NaN;var Wr,ha,ga,Pa,Ja,di,pi,Ci,$i,Bn;if(Wr=ot-Je,ha=qe(Je+Wr*.25),ga=qe(ot-Wr*.25),isNaN(ha)){Sr.nanEncountered=!0;return}if(isNaN(ga)){Sr.nanEncountered=!0;return}return Pa=Wr*(ht+4*ha+At)/12,Ja=Wr*(At+4*ga+_t)/12,di=Pa+Ja,Bn=(di-Pt)/15,pr>nr?(Sr.maxDepthCount++,di+Bn):Math.abs(Bn)<er?di+Bn:(pi=Je+Wr*.5,Ci=al(qe,Je,pi,ht,ha,At,Pa,er*.5,nr,pr+1,Sr),isNaN(Ci)?(Sr.nanEncountered=!0,NaN):($i=al(qe,pi,ot,At,ga,_t,Ja,er*.5,nr,pr+1,Sr),isNaN($i)?(Sr.nanEncountered=!0,NaN):Ci+$i))}function vl(qe,Je,ot,ht,At){var _t={maxDepthCount:0,nanEncountered:!1};ht===void 0&&(ht=1e-8),At===void 0&&(At=20);var Pt=qe(Je),er=qe(.5*(Je+ot)),nr=qe(ot),pr=(Pt+4*er+nr)*(ot-Je)/6,Sr=al(qe,Je,ot,Pt,er,nr,pr,ht,At,1,_t);return Sr}function ji(qe,Je,ot){function ht(ga){return qe+(1-qe)*c(1-c(ga,Je),1/Je)}function At(ga){return vl(ht,0,ga,1e-4)}for(var _t=1/At(1),Pt=1e3,er=(1+1e-8)*_t,nr=[],pr=0;pr<=Pt;pr++)nr.push(At(pr/Pt)*er);function Sr(ga){var Pa=0,Ja=Pt,di=Pt>>1;do nr[di]>ga?Ja=di:Pa=di,di=Pa+Ja>>1;while(di>Pa);var pi=nr[di+1]-nr[di];return pi&&(pi=(ga-nr[di+1])/pi),(di+1+pi)/Pt}var Wr=2*Sr(1)/w*_t/ot,ha=function(ga,Pa){var Ja=Sr(M(p(Pa))),di=ht(Ja)*ga;return Ja/=Wr,[di,Pa>=0?Ja:-Ja]};return ha.invert=function(ga,Pa){var Ja;return Pa*=Wr,M(Pa)<1&&(Ja=v(Pa)*L(At(M(Pa))*_t)),[ga/ht(M(Pa)),Ja]},ha}function To(){var qe=0,Je=2.5,ot=1.183136,ht=x.geoProjectionMutator(ji),At=ht(qe,Je,ot);return At.alpha=function(_t){return arguments.length?ht(qe=+_t,Je,ot):qe},At.k=function(_t){return arguments.length?ht(qe,Je=+_t,ot):Je},At.gamma=function(_t){return arguments.length?ht(qe,Je,ot=+_t):ot},At.scale(152.63)}function Yn(qe,Je){return M(qe[0]-Je[0])<l&&M(qe[1]-Je[1])<l}function _s(qe,Je){for(var ot=-1,ht=qe.length,At=qe[0],_t,Pt,er,nr=[];++ot<ht;){_t=qe[ot],Pt=(_t[0]-At[0])/Je,er=(_t[1]-At[1])/Je;for(var pr=0;pr<Je;++pr)nr.push([At[0]+pr*Pt,At[1]+pr*er]);At=_t}return nr.push(_t),nr}function Yo(qe){var Je=[],ot,ht,At,_t,Pt,er,nr,pr=qe[0].length;for(nr=0;nr<pr;++nr)ot=qe[0][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[ht+l,At+l],[ht+l,_t-l],[Pt-l,_t-l],[Pt-l,er+l]],30));for(nr=qe[1].length-1;nr>=0;--nr)ot=qe[1][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[Pt-l,er-l],[Pt-l,_t+l],[ht+l,_t+l],[ht+l,At-l]],30));return{type:"Polygon",coordinates:[A.merge(Je)]}}function Nn(qe,Je,ot){var ht,At;function _t(nr,pr){for(var Sr=pr<0?-1:1,Wr=Je[+(pr<0)],ha=0,ga=Wr.length-1;ha<ga&&nr>Wr[ha][2][0];++ha);var Pa=qe(nr-Wr[ha][1][0],pr);return Pa[0]+=qe(Wr[ha][1][0],Sr*pr>Sr*Wr[ha][0][1]?Wr[ha][0][1]:pr)[0],Pa}ot?_t.invert=ot(_t):qe.invert&&(_t.invert=function(nr,pr){for(var Sr=At[+(pr<0)],Wr=Je[+(pr<0)],ha=0,ga=Sr.length;ha<ga;++ha){var Pa=Sr[ha];if(Pa[0][0]<=nr&&nr<Pa[1][0]&&Pa[0][1]<=pr&&pr<Pa[1][1]){var Ja=qe.invert(nr-qe(Wr[ha][1][0],0)[0],pr);return Ja[0]+=Wr[ha][1][0],Yn(_t(Ja[0],Ja[1]),[nr,pr])?Ja:null}}});var Pt=x.geoProjection(_t),er=Pt.stream;return Pt.stream=function(nr){var pr=Pt.rotate(),Sr=er(nr),Wr=(Pt.rotate([0,0]),er(nr));return Pt.rotate(pr),Sr.sphere=function(){x.geoStream(ht,Wr)},Sr},Pt.lobes=function(nr){return arguments.length?(ht=Yo(nr),Je=nr.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*f,Sr[0][1]*f],[Sr[1][0]*f,Sr[1][1]*f],[Sr[2][0]*f,Sr[2][1]*f]]})}),At=Je.map(function(pr){return pr.map(function(Sr){var Wr=qe(Sr[0][0],Sr[0][1])[0],ha=qe(Sr[2][0],Sr[2][1])[0],ga=qe(Sr[1][0],Sr[0][1])[1],Pa=qe(Sr[1][0],Sr[1][1])[1],Ja;return ga>Pa&&(Ja=ga,ga=Pa,Pa=Ja),[[Wr,ga],[ha,Pa]]})}),Pt):Je.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*y,Sr[0][1]*y],[Sr[1][0]*y,Sr[1][1]*y],[Sr[2][0]*y,Sr[2][1]*y]]})})},Je!=null&&Pt.lobes(Je),Pt}var Wl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zu(){return Nn(ze,Wl).scale(160.857)}var ml=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Bu(){return Nn(Os,ml).scale(152.63)}var El=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function qs(){return Nn(lt,El).scale(169.529)}var Jl=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Nu(){return Nn(lt,Jl).scale(169.529).rotate([20,0])}var Ic=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Xu(){return Nn(mn,Ic,Ie).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Th=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function bf(){return Nn(Qe,Th).scale(152.63).rotate([-20,0])}function Rs(qe,Je){return[3/u*qe*F(w*w/3-Je*Je),Je]}Rs.invert=function(qe,Je){return[u/3*qe/F(w*w/3-Je*Je),Je]};function Yc(){return x.geoProjection(Rs).scale(158.837)}function If(qe){function Je(ot,ht){if(M(M(ht)-S)<l)return[0,ht<0?-2:2];var At=p(ht),_t=c((1+At)/(1-At),qe/2),Pt=.5*(_t+1/_t)+r(ot*=qe);return[2*p(ot)/Pt,(_t-1/_t)/Pt]}return Je.invert=function(ot,ht){var At=M(ht);if(M(At-2)<l)return ot?null:[0,v(ht)*S];if(At>2)return null;ot/=2,ht/=2;var _t=ot*ot,Pt=ht*ht,er=2*ht/(1+_t+Pt);return er=c((1+er)/(1-er),1/qe),[t(2*ot,1-_t-Pt)/qe,L((er-1)/(er+1))]},Je}function Zl(){var qe=.5,Je=x.geoProjectionMutator(If),ot=Je(qe);return ot.spacing=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(124.75)}var yl=w/b;function oc(qe,Je){return[qe*(1+F(r(Je)))/2,Je/(r(Je/2)*r(qe/6))]}oc.invert=function(qe,Je){var ot=M(qe),ht=M(Je),At=l,_t=S;ht<yl?_t*=ht/yl:At+=6*z(yl/ht);for(var Pt=0;Pt<25;Pt++){var er=p(_t),nr=F(r(_t)),pr=p(_t/2),Sr=r(_t/2),Wr=p(At/6),ha=r(At/6),ga=.5*At*(1+nr)-ot,Pa=_t/(Sr*ha)-ht,Ja=nr?-.25*At*er/nr:0,di=.5*(1+nr),pi=(1+.5*_t*pr/Sr)/(Sr*ha),Ci=_t/Sr*(Wr/6)/(ha*ha),$i=Ja*Ci-pi*di,Bn=(ga*Ci-Pa*di)/$i,Sn=(Pa*Ja-ga*pi)/$i;if(_t-=Bn,At-=Sn,M(Bn)<l&&M(Sn)<l)break}return[qe<0?-At:At,Je<0?-_t:_t]};function _c(){return x.geoProjection(oc).scale(97.2672)}function Zs(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(.975534+ht*(-.119161+ot*-.0143059+ht*-.0547009)),Je*(1.00384+ot*(.0802894+ht*-.02855+ot*199025e-9)+ht*(.0998909+ht*-.0491032))]}Zs.invert=function(qe,Je){var ot=v(qe)*w,ht=Je/2,At=50;do{var _t=ot*ot,Pt=ht*ht,er=ot*ht,nr=ot*(.975534+Pt*(-.119161+_t*-.0143059+Pt*-.0547009))-qe,pr=ht*(1.00384+_t*(.0802894+Pt*-.02855+_t*199025e-9)+Pt*(.0998909+Pt*-.0491032))-Je,Sr=.975534-Pt*(.119161+3*_t*.0143059+Pt*.0547009),Wr=-er*(2*.119161+4*.0547009*Pt+2*.0143059*_t),ha=er*(2*.0802894+4*199025e-9*_t+2*-.02855*Pt),ga=1.00384+_t*(.0802894+199025e-9*_t)+Pt*(3*(.0998909-.02855*_t)-5*.0491032*Pt),Pa=Wr*ha-ga*Sr,Ja=(pr*Wr-nr*ga)/Pa,di=(nr*ha-pr*Sr)/Pa;ot-=Ja,ht-=di}while((M(Ja)>l||M(di)>l)&&--At>0);return At&&[ot,ht]};function _l(){return x.geoProjection(Zs).scale(139.98)}function Bs(qe,Je){return[p(qe)/r(Je),T(Je)*r(qe)]}Bs.invert=function(qe,Je){var ot=qe*qe,ht=Je*Je,At=ht+1,_t=ot+At,Pt=qe?m*F((_t-F(_t*_t-4*ot))/ot):1/F(At);return[L(qe*Pt),v(Je)*z(Pt)]};function $s(){return x.geoProjection(Bs).scale(144.049).clipAngle(90-.001)}function sc(qe){var Je=r(qe),ot=T(E+qe/2);function ht(At,_t){var Pt=_t-qe,er=M(Pt)<l?At*Je:M(er=E+_t/2)<l||M(M(er)-S)<l?0:At*Pt/i(T(er)/ot);return[er,Pt]}return ht.invert=function(At,_t){var Pt,er=_t+qe;return[M(_t)<l?At/Je:M(Pt=E+er/2)<l||M(M(Pt)-S)<l?0:At*i(T(Pt)/ot)/_t,er]},ht}function zl(){return nt(sc).parallel(40).scale(158.837)}function Yu(qe,Je){return[qe,1.25*i(T(E+.4*Je))]}Yu.invert=function(qe,Je){return[qe,2.5*e(o(.8*Je))-.625*w]};function Qs(){return x.geoProjection(Yu).scale(108.318)}function fp(qe){var Je=qe.length-1;function ot(ht,At){for(var _t=r(At),Pt=2/(1+_t*r(ht)),er=Pt*_t*p(ht),nr=Pt*p(At),pr=Je,Sr=qe[pr],Wr=Sr[0],ha=Sr[1],ga;--pr>=0;)Sr=qe[pr],Wr=Sr[0]+er*(ga=Wr)-nr*ha,ha=Sr[1]+er*ha+nr*ga;return Wr=er*(ga=Wr)-nr*ha,ha=er*ha+nr*ga,[Wr,ha]}return ot.invert=function(ht,At){var _t=20,Pt=ht,er=At;do{for(var nr=Je,pr=qe[nr],Sr=pr[0],Wr=pr[1],ha=0,ga=0,Pa;--nr>=0;)pr=qe[nr],ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=pr[0]+Pt*(Pa=Sr)-er*Wr,Wr=pr[1]+Pt*Wr+er*Pa;ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=Pt*(Pa=Sr)-er*Wr-ht,Wr=Pt*Wr+er*Pa-At;var Ja=ha*ha+ga*ga,di,pi;Pt-=di=(Sr*ha+Wr*ga)/Ja,er-=pi=(Wr*ha-Sr*ga)/Ja}while(M(di)+M(pi)>l*l&&--_t>0);if(_t){var Ci=F(Pt*Pt+er*er),$i=2*e(Ci*.5),Bn=p($i);return[t(Pt*Bn,Ci*r($i)),Ci?L(er*Bn/Ci):0]}},ot}var es=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Wh=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Ss=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],So=[[.9245,0],[0,0],[.01943,0]],hf=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Ku(){return Fl(es,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function cu(){return Fl(Wh,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Zf(){return Fl(Ss,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Rc(){return Fl(So,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function pf(){return Fl(hf,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Fl(qe,Je){var ot=x.geoProjection(fp(qe)).rotate(Je).clipAngle(90),ht=x.geoRotation(Je),At=ot.center;return delete ot.rotate,ot.center=function(_t){return arguments.length?At(ht(_t)):ht.invert(At())},ot}var lh=F(6),Xf=F(7);function Rf(qe,Je){var ot=L(7*p(Je)/(3*lh));return[lh*qe*(2*r(2*ot/3)-1)/Xf,9*p(ot/3)/Xf]}Rf.invert=function(qe,Je){var ot=3*L(Je*Xf/9);return[qe*Xf/(lh*(2*r(2*ot/3)-1)),L(p(ot)*3*lh/7)]};function Kc(){return x.geoProjection(Rf).scale(164.859)}function Yf(qe,Je){for(var ot=(1+m)*p(Je),ht=Je,At=0,_t;At<25&&(ht-=_t=(p(ht/2)+p(ht)-ot)/(.5*r(ht/2)+r(ht)),!(M(_t)<l));At++);return[qe*(1+2*r(ht)/r(ht/2))/(3*b),2*F(3)*p(ht/2)/F(2+b)]}Yf.invert=function(qe,Je){var ot=Je*F(2+b)/(2*F(3)),ht=2*L(ot);return[3*b*qe/(1+2*r(ht)/r(ht/2)),L((ot+p(ht))/(1+m))]};function uh(){return x.geoProjection(Yf).scale(188.209)}function Ju(qe,Je){for(var ot=F(6/(4+w)),ht=(1+w/4)*p(Je),At=Je/2,_t=0,Pt;_t<25&&(At-=Pt=(At/2+p(At)-ht)/(.5+r(At)),!(M(Pt)<l));_t++);return[ot*(.5+r(At))*qe/1.5,ot*At]}Ju.invert=function(qe,Je){var ot=F(6/(4+w)),ht=Je/ot;return M(M(ht)-S)<l&&(ht=ht<0?-S:S),[1.5*qe/(ot*(.5+r(ht))),L((ht/2+p(ht))/(1+w/4))]};function Df(){return x.geoProjection(Ju).scale(166.518)}function Dc(qe,Je){var ot=Je*Je,ht=ot*ot,At=ot*ht;return[qe*(.84719-.13063*ot+At*At*(-.04515+.05494*ot-.02326*ht+.00331*At)),Je*(1.01183+ht*ht*(-.02625+.01926*ot-.00396*ht))]}Dc.invert=function(qe,Je){var ot=Je,ht=25,At,_t,Pt,er;do _t=ot*ot,Pt=_t*_t,ot-=At=(ot*(1.01183+Pt*Pt*(-.02625+.01926*_t-.00396*Pt))-Je)/(1.01183+Pt*Pt*(9*-.02625+11*.01926*_t+13*-.00396*Pt));while(M(At)>_&&--ht>0);return _t=ot*ot,Pt=_t*_t,er=_t*Pt,[qe/(.84719-.13063*_t+er*er*(-.04515+.05494*_t-.02326*Pt+.00331*er)),ot]};function Jc(){return x.geoProjection(Dc).scale(175.295)}function Eu(qe,Je){return[qe*(1+r(Je))/2,2*(Je-T(Je/2))]}Eu.invert=function(qe,Je){for(var ot=Je/2,ht=0,At=1/0;ht<10&&M(At)>l;++ht){var _t=r(Je/2);Je-=At=(Je-T(Je/2)-ot)/(1-.5/(_t*_t))}return[2*qe/(1+r(Je)),Je]};function wf(){return x.geoProjection(Eu).scale(152.63)}var zc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Us(){return Nn(fe(1/0),zc).rotate([20,0]).scale(152.63)}function Kf(qe,Je){var ot=p(Je),ht=r(Je),At=v(qe);if(qe===0||M(Je)===S)return[0,Je];if(Je===0)return[qe,0];if(M(qe)===S)return[qe*ht,S*ot];var _t=w/(2*qe)-2*qe/w,Pt=2*Je/w,er=(1-Pt*Pt)/(ot-Pt),nr=_t*_t,pr=er*er,Sr=1+nr/pr,Wr=1+pr/nr,ha=(_t*ot/er-_t/2)/Sr,ga=(pr*ot/nr+er/2)/Wr,Pa=ha*ha+ht*ht/Sr,Ja=ga*ga-(pr*ot*ot/nr+er*ot-1)/Wr;return[S*(ha+F(Pa)*At),S*(ga+F(Ja<0?0:Ja)*v(-Je*_t)*At)]}Kf.invert=function(qe,Je){qe/=S,Je/=S;var ot=qe*qe,ht=Je*Je,At=ot+ht,_t=w*w;return[qe?(At-1+F((1-At)*(1-At)+4*ot))/(2*qe)*S:0,Be(function(Pt){return At*(w*p(Pt)-2*Pt)*w+4*Pt*Pt*(Je-p(Pt))+2*w*Pt-_t*Je},0)]};function Zh(){return x.geoProjection(Kf).scale(127.267)}var ch=1.0148,df=.23185,Ah=-.14499,ku=.02406,fh=ch,ru=5*df,Cu=7*Ah,xc=9*ku,kl=1.790857183;function Fc(qe,Je){var ot=Je*Je;return[qe,Je*(ch+ot*ot*(df+ot*(Ah+ku*ot)))]}Fc.invert=function(qe,Je){Je>kl?Je=kl:Je<-kl&&(Je=-kl);var ot=Je,ht;do{var At=ot*ot;ot-=ht=(ot*(ch+At*At*(df+At*(Ah+ku*At)))-Je)/(fh+At*At*(ru+At*(Cu+xc*At)))}while(M(ht)>l);return[qe,ot]};function $u(){return x.geoProjection(Fc).scale(139.319)}function vu(qe,Je){if(M(Je)<l)return[qe,0];var ot=T(Je),ht=qe*p(Je);return[p(ht)/ot,Je+(1-r(ht))/ot]}vu.invert=function(qe,Je){if(M(Je)<l)return[qe,0];var ot=qe*qe+Je*Je,ht=Je*.5,At=10,_t;do{var Pt=T(ht),er=1/r(ht),nr=ot-2*Je*ht+ht*ht;ht-=_t=(Pt*nr+2*(ht-Je))/(2+nr*er*er+2*(ht-Je)*Pt)}while(M(_t)>l&&--At>0);return Pt=T(ht),[(M(Je)<M(ht+1/Pt)?L(qe*Pt):v(Je)*v(qe)*(z(M(qe*Pt))+S))/p(ht),ht]};function xl(){return x.geoProjection(vu).scale(103.74)}function hh(qe,Je){var ot=bc(qe[1],qe[0]),ht=bc(Je[1],Je[0]),At=hp(ot,ht),_t=lc(ot)/lc(ht);return Uu([1,0,qe[0][0],0,1,qe[0][1]],Uu([_t,0,0,0,_t,0],Uu([r(At),p(At),0,-p(At),r(At),0],[1,0,-Je[0][0],0,1,-Je[0][1]])))}function Sh(qe){var Je=1/(qe[0]*qe[4]-qe[1]*qe[3]);return[Je*qe[4],-Je*qe[1],Je*(qe[1]*qe[5]-qe[2]*qe[4]),-Je*qe[3],Je*qe[0],Je*(qe[2]*qe[3]-qe[0]*qe[5])]}function Uu(qe,Je){return[qe[0]*Je[0]+qe[1]*Je[3],qe[0]*Je[1]+qe[1]*Je[4],qe[0]*Je[2]+qe[1]*Je[5]+qe[2],qe[3]*Je[0]+qe[4]*Je[3],qe[3]*Je[1]+qe[4]*Je[4],qe[3]*Je[2]+qe[4]*Je[5]+qe[5]]}function bc(qe,Je){return[qe[0]-Je[0],qe[1]-Je[1]]}function lc(qe){return F(qe[0]*qe[0]+qe[1]*qe[1])}function hp(qe,Je){return t(qe[0]*Je[1]-qe[1]*Je[0],qe[0]*Je[0]+qe[1]*Je[1])}function vf(qe,Je,ot){ht(qe,{transform:null});function ht(pr,Sr){if(pr.edges=au(pr.face),Sr.face){var Wr=pr.shared=zf(pr.face,Sr.face),ha=hh(Wr.map(Sr.project),Wr.map(pr.project));pr.transform=Sr.transform?Uu(Sr.transform,ha):ha;for(var ga=Sr.edges,Pa=0,Ja=ga.length;Pa<Ja;++Pa)Lu(Wr[0],ga[Pa][1])&&Lu(Wr[1],ga[Pa][0])&&(ga[Pa]=pr),Lu(Wr[0],ga[Pa][0])&&Lu(Wr[1],ga[Pa][1])&&(ga[Pa]=pr);for(ga=pr.edges,Pa=0,Ja=ga.length;Pa<Ja;++Pa)Lu(Wr[0],ga[Pa][0])&&Lu(Wr[1],ga[Pa][1])&&(ga[Pa]=Sr),Lu(Wr[0],ga[Pa][1])&&Lu(Wr[1],ga[Pa][0])&&(ga[Pa]=Sr)}else pr.transform=Sr.transform;return pr.children&&pr.children.forEach(function(di){ht(di,pr)}),pr}function At(pr,Sr){var Wr=Je(pr,Sr),ha=Wr.project([pr*y,Sr*y]),ga;return(ga=Wr.transform)?[ga[0]*ha[0]+ga[1]*ha[1]+ga[2],-(ga[3]*ha[0]+ga[4]*ha[1]+ga[5])]:(ha[1]=-ha[1],ha)}$c(qe)&&(At.invert=function(pr,Sr){var Wr=_t(qe,[pr,-Sr]);return Wr&&(Wr[0]*=f,Wr[1]*=f,Wr)});function _t(pr,Sr){var Wr=pr.project.invert,ha=pr.transform,ga=Sr;if(ha&&(ha=Sh(ha),ga=[ha[0]*ga[0]+ha[1]*ga[1]+ha[2],ha[3]*ga[0]+ha[4]*ga[1]+ha[5]]),Wr&&pr===Pt(Pa=Wr(ga)))return Pa;for(var Pa,Ja=pr.children,di=0,pi=Ja&&Ja.length;di<pi;++di)if(Pa=_t(Ja[di],Sr))return Pa}function Pt(pr){return Je(pr[0]*f,pr[1]*f)}var er=x.geoProjection(At),nr=er.stream;return er.stream=function(pr){var Sr=er.rotate(),Wr=nr(pr),ha=(er.rotate([0,0]),nr(pr));return er.rotate(Sr),Wr.sphere=function(){ha.polygonStart(),ha.lineStart(),Tf(ha,qe),ha.lineEnd(),ha.polygonEnd()},Wr},er.angle(ot==null?-30:ot*y)}function Tf(qe,Je,ot){var ht,At=Je.edges,_t=At.length,Pt,er={type:"MultiPoint",coordinates:Je.face},nr=Je.face.filter(function(Ja){return M(Ja[1])!==90}),pr=x.geoBounds({type:"MultiPoint",coordinates:nr}),Sr=!1,Wr=-1,ha=pr[1][0]-pr[0][0],ga=ha===180||ha===360?[(pr[0][0]+pr[1][0])/2,(pr[0][1]+pr[1][1])/2]:x.geoCentroid(er);if(ot)for(;++Wr<_t&&At[Wr]!==ot;);++Wr;for(var Pa=0;Pa<_t;++Pa)Pt=At[(Pa+Wr)%_t],Array.isArray(Pt)?(Sr||(qe.point((ht=x.geoInterpolate(Pt[0],ga)(l))[0],ht[1]),Sr=!0),qe.point((ht=x.geoInterpolate(Pt[1],ga)(l))[0],ht[1])):(Sr=!1,Pt!==ot&&Tf(qe,Pt,Je))}function Lu(qe,Je){return qe&&Je&&qe[0]===Je[0]&&qe[1]===Je[1]}function zf(qe,Je){for(var ot,ht,At=qe.length,_t=null,Pt=0;Pt<At;++Pt){ot=qe[Pt];for(var er=Je.length;--er>=0;)if(ht=Je[er],ot[0]===ht[0]&&ot[1]===ht[1]){if(_t)return[_t,ot];_t=ot}}}function au(qe){for(var Je=qe.length,ot=[],ht=qe[Je-1],At=0;At<Je;++At)ot.push([ht,ht=qe[At]]);return ot}function $c(qe){return qe.project.invert||qe.children&&qe.children.some($c)}var Mh=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],Ff=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map(function(qe){return qe.map(function(Je){return Mh[Je]})});function il(qe){qe=qe||function(ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:ot});return x.geoGnomonic().scale(1).translate([0,0]).rotate([-ht[0],-ht[1]])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:ot<w/2?ht<0?3:1:ht<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var mu=2/F(3);function gu(qe,Je){var ot=Ve(qe,Je);return[ot[0]*mu,ot[1]]}gu.invert=function(qe,Je){return Ve.invert(qe/mu,Je)};function Jf(qe){qe=qe||function(ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:ot});return x.geoProjection(gu).translate([0,0]).scale(1).rotate(ht[1]>0?[-ht[0],0]:[180-ht[0],180])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:ot<w/2?ht<0?3:1:ht<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function el(qe){qe=qe||function(Pt){var er=Pt.length===6?x.geoCentroid({type:"MultiPoint",coordinates:Pt}):Pt[0];return x.geoGnomonic().scale(1).translate([0,0]).rotate([-er[0],-er[1]])};var Je=Ff.map(function(Pt){for(var er=Pt.map(Af),nr=er.length,pr=er[nr-1],Sr,Wr=[],ha=0;ha<nr;++ha)Sr=er[ha],Wr.push(ju([pr[0]*.9486832980505138+Sr[0]*.31622776601683794,pr[1]*.9486832980505138+Sr[1]*.31622776601683794,pr[2]*.9486832980505138+Sr[2]*.31622776601683794]),ju([Sr[0]*.9486832980505138+pr[0]*.31622776601683794,Sr[1]*.9486832980505138+pr[1]*.31622776601683794,Sr[2]*.9486832980505138+pr[2]*.31622776601683794])),pr=Sr;return Wr}),ot=[],ht=[-1,0,0,1,0,1,4,5];Je.forEach(function(Pt,er){for(var nr=Ff[er],pr=nr.length,Sr=ot[er]=[],Wr=0;Wr<pr;++Wr)Je.push([nr[Wr],Pt[(Wr*2+2)%(2*pr)],Pt[(Wr*2+1)%(2*pr)]]),ht.push(er),Sr.push(wc(Af(Pt[(Wr*2+2)%(2*pr)]),Af(Pt[(Wr*2+1)%(2*pr)])))});var At=Je.map(function(Pt){return{project:qe(Pt),face:Pt}});ht.forEach(function(Pt,er){var nr=At[Pt];nr&&(nr.children||(nr.children=[])).push(At[er])});function _t(Pt,er){var nr=r(er),pr=[nr*r(Pt),nr*p(Pt),p(er)],Sr=Pt<-w/2?er<0?6:4:Pt<0?er<0?2:0:Pt<w/2?er<0?3:1:er<0?7:5,Wr=ot[Sr];return At[mf(Wr[0],pr)<0?8+3*Sr:mf(Wr[1],pr)<0?8+3*Sr+1:mf(Wr[2],pr)<0?8+3*Sr+2:Sr]}return vf(At[0],_t).angle(-30).scale(110.625).center([0,45])}function mf(qe,Je){for(var ot=0,ht=qe.length,At=0;ot<ht;++ot)At+=qe[ot]*Je[ot];return At}function wc(qe,Je){return[qe[1]*Je[2]-qe[2]*Je[1],qe[2]*Je[0]-qe[0]*Je[2],qe[0]*Je[1]-qe[1]*Je[0]]}function ju(qe){return[t(qe[1],qe[0])*y,L(n(-1,s(1,qe[2])))*y]}function Af(qe){var Je=qe[0]*f,ot=qe[1]*f,ht=r(ot);return[ht*r(Je),ht*p(Je),p(ot)]}function uc(){}function Qc(qe){if((ot=qe.length)<4)return!1;for(var Je=0,ot,ht=qe[ot-1][1]*qe[0][0]-qe[ot-1][0]*qe[0][1];++Je<ot;)ht+=qe[Je-1][1]*qe[Je][0]-qe[Je-1][0]*qe[Je][1];return ht<=0}function $f(qe,Je){for(var ot=Je[0],ht=Je[1],At=!1,_t=0,Pt=qe.length,er=Pt-1;_t<Pt;er=_t++){var nr=qe[_t],pr=nr[0],Sr=nr[1],Wr=qe[er],ha=Wr[0],ga=Wr[1];Sr>ht^ga>ht&&ot<(ha-pr)*(ht-Sr)/(ga-Sr)+pr&&(At=!At)}return At}function Vl(qe,Je){var ot=Je.stream,ht;if(!ot)throw new Error("invalid projection");switch(qe&&qe.type){case"Feature":ht=Vu;break;case"FeatureCollection":ht=Qf;break;default:ht=cc;break}return ht(qe,ot)}function Qf(qe,Je){return{type:"FeatureCollection",features:qe.features.map(function(ot){return Vu(ot,Je)})}}function Vu(qe,Je){return{type:"Feature",id:qe.id,properties:qe.properties,geometry:cc(qe.geometry,Je)}}function Tc(qe,Je){return{type:"GeometryCollection",geometries:qe.geometries.map(function(ot){return cc(ot,Je)})}}function cc(qe,Je){if(!qe)return null;if(qe.type==="GeometryCollection")return Tc(qe,Je);var ot;switch(qe.type){case"Point":ot=fc;break;case"MultiPoint":ot=fc;break;case"LineString":ot=Oc;break;case"MultiLineString":ot=Oc;break;case"Polygon":ot=Qu;break;case"MultiPolygon":ot=Qu;break;case"Sphere":ot=Qu;break;default:return null}return x.geoStream(qe,Je(ot)),ot.result()}var Cl=[],iu=[],fc={point:function(qe,Je){Cl.push([qe,Je])},result:function(){var qe=Cl.length?Cl.length<2?{type:"Point",coordinates:Cl[0]}:{type:"MultiPoint",coordinates:Cl}:null;return Cl=[],qe}},Oc={lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){Cl.length&&(iu.push(Cl),Cl=[])},result:function(){var qe=iu.length?iu.length<2?{type:"LineString",coordinates:iu[0]}:{type:"MultiLineString",coordinates:iu}:null;return iu=[],qe}},Qu={polygonStart:uc,lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){var qe=Cl.length;if(qe){do Cl.push(Cl[0].slice());while(++qe<4);iu.push(Cl),Cl=[]}},polygonEnd:uc,result:function(){if(!iu.length)return null;var qe=[],Je=[];return iu.forEach(function(ot){Qc(ot)?qe.push([ot]):Je.push(ot)}),Je.forEach(function(ot){var ht=ot[0];qe.some(function(At){if($f(At[0],ht))return At.push(ot),!0})||qe.push([ot])}),iu=[],qe.length?qe.length>1?{type:"MultiPolygon",coordinates:qe}:{type:"Polygon",coordinates:qe[0]}:null}};function ef(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=M(ht)<S,Pt=qe(_t?ht:ht>0?ht-w:ht+w,At),er=(Pt[0]-Pt[1])*m,nr=(Pt[0]+Pt[1])*m;if(_t)return[er,nr];var pr=Je*m,Sr=er>0^nr>0?-1:1;return[Sr*er-v(nr)*pr,Sr*nr-v(er)*pr]}return qe.invert&&(ot.invert=function(ht,At){var _t=(ht+At)*m,Pt=(At-ht)*m,er=M(_t)<.5*Je&&M(Pt)<.5*Je;if(!er){var nr=Je*m,pr=_t>0^Pt>0?-1:1,Sr=-pr*ht+(Pt>0?1:-1)*nr,Wr=-pr*At+(_t>0?1:-1)*nr;_t=(-Sr-Wr)*m,Pt=(Sr-Wr)*m}var ha=qe.invert(_t,Pt);return er||(ha[0]+=_t>0?w:-w),ha}),x.geoProjection(ot).rotate([-90,-90,45]).clipAngle(180-.001)}function Zt(){return ef(da).scale(176.423)}function fr(){return ef($n).scale(111.48)}function Yr(qe,Je){if(!(0<=(Je=+Je)&&Je<=20))throw new Error("invalid digits");function ot(pr){var Sr=pr.length,Wr=2,ha=new Array(Sr);for(ha[0]=+pr[0].toFixed(Je),ha[1]=+pr[1].toFixed(Je);Wr<Sr;)ha[Wr]=pr[Wr],++Wr;return ha}function ht(pr){return pr.map(ot)}function At(pr){for(var Sr=ot(pr[0]),Wr=[Sr],ha=1;ha<pr.length;ha++){var ga=ot(pr[ha]);(ga.length>2||ga[0]!=Sr[0]||ga[1]!=Sr[1])&&(Wr.push(ga),Sr=ga)}return Wr.length===1&&pr.length>1&&Wr.push(ot(pr[pr.length-1])),Wr}function _t(pr){return pr.map(At)}function Pt(pr){if(pr==null)return pr;var Sr;switch(pr.type){case"GeometryCollection":Sr={type:"GeometryCollection",geometries:pr.geometries.map(Pt)};break;case"Point":Sr={type:"Point",coordinates:ot(pr.coordinates)};break;case"MultiPoint":Sr={type:pr.type,coordinates:ht(pr.coordinates)};break;case"LineString":Sr={type:pr.type,coordinates:At(pr.coordinates)};break;case"MultiLineString":case"Polygon":Sr={type:pr.type,coordinates:_t(pr.coordinates)};break;case"MultiPolygon":Sr={type:"MultiPolygon",coordinates:pr.coordinates.map(_t)};break;default:return pr}return pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}function er(pr){var Sr={type:"Feature",properties:pr.properties,geometry:Pt(pr.geometry)};return pr.id!=null&&(Sr.id=pr.id),pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}if(qe!=null)switch(qe.type){case"Feature":return er(qe);case"FeatureCollection":{var nr={type:"FeatureCollection",features:qe.features.map(er)};return qe.bbox!=null&&(nr.bbox=qe.bbox),nr}default:return Pt(qe)}return qe}function qr(qe){var Je=p(qe);function ot(ht,At){var _t=Je?T(ht*Je/2)/Je:ht/2;if(!At)return[2*_t,-qe];var Pt=2*e(_t*p(At)),er=1/T(At);return[p(Pt)*er,At+(1-r(Pt))*er-qe]}return ot.invert=function(ht,At){if(M(At+=qe)<l)return[Je?2*e(Je*ht/2)/Je:ht,0];var _t=ht*ht+At*At,Pt=0,er=10,nr;do{var pr=T(Pt),Sr=1/r(Pt),Wr=_t-2*At*Pt+Pt*Pt;Pt-=nr=(pr*Wr+2*(Pt-At))/(2+Wr*Sr*Sr+2*(Pt-At)*pr)}while(M(nr)>l&&--er>0);var ha=ht*(pr=T(Pt)),ga=T(M(At)<M(Pt+1/pr)?L(ha)*.5:z(ha)*.5+w/4)/p(Pt);return[Je?2*e(Je*ga)/Je:2*ga,Pt]},ot}function ba(){return nt(qr).scale(131.215)}var Ka=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];Ka.forEach(function(qe){qe[1]*=1.0144});function oi(qe,Je){var ot=s(18,M(Je)*36/w),ht=a(ot),At=ot-ht,_t=(Wr=Ka[ht])[0],Pt=Wr[1],er=(Wr=Ka[++ht])[0],nr=Wr[1],pr=(Wr=Ka[s(19,++ht)])[0],Sr=Wr[1],Wr;return[qe*(er+At*(pr-_t)/2+At*At*(pr-2*er+_t)/2),(Je>0?S:-S)*(nr+At*(Sr-Pt)/2+At*At*(Sr-2*nr+Pt)/2)]}oi.invert=function(qe,Je){var ot=Je/S,ht=ot*90,At=s(18,M(ht/5)),_t=n(0,a(At));do{var Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],pr=nr-Pt,Sr=nr-2*er+Pt,Wr=2*(M(ot)-er)/pr,ha=Sr/pr,ga=Wr*(1-ha*Wr*(1-2*ha*Wr));if(ga>=0||_t===1){ht=(Je>=0?5:-5)*(ga+At);var Pa=50,Ja;do At=s(18,M(ht)/5),_t=a(At),ga=At-_t,Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],ht-=(Ja=(Je>=0?S:-S)*(er+ga*(nr-Pt)/2+ga*ga*(nr-2*er+Pt)/2)-Je)*y;while(M(Ja)>_&&--Pa>0);break}}while(--_t>=0);var di=Ka[_t][0],pi=Ka[_t+1][0],Ci=Ka[s(19,_t+2)][0];return[qe/(pi+ga*(Ci-di)/2+ga*ga*(Ci-2*pi+di)/2),ht*f]};function yi(){return x.geoProjection(oi).scale(152.63)}function ki(qe){function Je(ot,ht){var At=r(ht),_t=(qe-1)/(qe-At*r(ot));return[_t*At*p(ot),_t*p(ht)]}return Je.invert=function(ot,ht){var At=ot*ot+ht*ht,_t=F(At),Pt=(qe-F(1-At*(qe+1)/(qe-1)))/((qe-1)/_t+_t/(qe-1));return[t(ot*Pt,_t*F(1-Pt*Pt)),_t?L(ht*Pt/_t):0]},Je}function Bi(qe,Je){var ot=ki(qe);if(!Je)return ot;var ht=r(Je),At=p(Je);function _t(Pt,er){var nr=ot(Pt,er),pr=nr[1],Sr=pr*At/(qe-1)+ht;return[nr[0]*ht/Sr,pr/Sr]}return _t.invert=function(Pt,er){var nr=(qe-1)/(qe-1-er*At);return ot.invert(nr*Pt,nr*er*ht)},_t}function li(){var qe=2,Je=0,ot=x.geoProjectionMutator(Bi),ht=ot(qe,Je);return ht.distance=function(At){return arguments.length?ot(qe=+At,Je):qe},ht.tilt=function(At){return arguments.length?ot(qe,Je=At*f):Je*y},ht.scale(432.147).clipAngle(z(1/qe)*y-1e-6)}var _i=1e-4,vi=1e4,ti=-180,rn=ti+_i,Kn=180,Wn=Kn-_i,Jn=-90,no=Jn+_i,en=90,Ri=en-_i;function co(qe){return qe.length>0}function Wo(qe){return Math.floor(qe*vi)/vi}function bs(qe){return qe===Jn||qe===en?[0,qe]:[ti,Wo(qe)]}function Xs(qe){var Je=qe[0],ot=qe[1],ht=!1;return Je<=rn?(Je=ti,ht=!0):Je>=Wn&&(Je=Kn,ht=!0),ot<=no?(ot=Jn,ht=!0):ot>=Ri&&(ot=en,ht=!0),ht?[Je,ot]:qe}function Ms(qe){return qe.map(Xs)}function Hs(qe,Je,ot){for(var ht=0,At=qe.length;ht<At;++ht){var _t=qe[ht].slice();ot.push({index:-1,polygon:Je,ring:_t});for(var Pt=0,er=_t.length;Pt<er;++Pt){var nr=_t[Pt],pr=nr[0],Sr=nr[1];if(pr<=rn||pr>=Wn||Sr<=no||Sr>=Ri){_t[Pt]=Xs(nr);for(var Wr=Pt+1;Wr<er;++Wr){var ha=_t[Wr],ga=ha[0],Pa=ha[1];if(ga>rn&&ga<Wn&&Pa>no&&Pa<Ri)break}if(Wr===Pt+1)continue;if(Pt){var Ja={index:-1,polygon:Je,ring:_t.slice(0,Pt+1)};Ja.ring[Ja.ring.length-1]=bs(Sr),ot[ot.length-1]=Ja}else ot.pop();if(Wr>=er)break;ot.push({index:-1,polygon:Je,ring:_t=_t.slice(Wr-1)}),_t[0]=bs(_t[0][1]),Pt=-1,er=_t.length}}}}function vs(qe){var Je,ot=qe.length,ht={},At={},_t,Pt,er,nr,pr;for(Je=0;Je<ot;++Je){if(_t=qe[Je],Pt=_t.ring[0],nr=_t.ring[_t.ring.length-1],Pt[0]===nr[0]&&Pt[1]===nr[1]){_t.polygon.push(_t.ring),qe[Je]=null;continue}_t.index=Je,ht[Pt]=At[nr]=_t}for(Je=0;Je<ot;++Je)if(_t=qe[Je],_t){if(Pt=_t.ring[0],nr=_t.ring[_t.ring.length-1],er=At[Pt],pr=ht[nr],delete ht[Pt],delete At[nr],Pt[0]===nr[0]&&Pt[1]===nr[1]){_t.polygon.push(_t.ring);continue}er?(delete At[Pt],delete ht[er.ring[0]],er.ring.pop(),qe[er.index]=null,_t={index:-1,polygon:er.polygon,ring:er.ring.concat(_t.ring)},er===pr?_t.polygon.push(_t.ring):(_t.index=ot++,qe.push(ht[_t.ring[0]]=At[_t.ring[_t.ring.length-1]]=_t))):pr?(delete ht[nr],delete At[pr.ring[pr.ring.length-1]],_t.ring.pop(),_t={index:ot++,polygon:pr.polygon,ring:_t.ring.concat(pr.ring)},qe[pr.index]=null,qe.push(ht[_t.ring[0]]=At[_t.ring[_t.ring.length-1]]=_t)):(_t.ring.push(_t.ring[0]),_t.polygon.push(_t.ring))}}function Il(qe){var Je={type:"Feature",geometry:fl(qe.geometry)};return qe.id!=null&&(Je.id=qe.id),qe.bbox!=null&&(Je.bbox=qe.bbox),qe.properties!=null&&(Je.properties=qe.properties),Je}function fl(qe){if(qe==null)return qe;var Je,ot,ht,At;switch(qe.type){case"GeometryCollection":Je={type:"GeometryCollection",geometries:qe.geometries.map(fl)};break;case"Point":Je={type:"Point",coordinates:Xs(qe.coordinates)};break;case"MultiPoint":case"LineString":Je={type:qe.type,coordinates:Ms(qe.coordinates)};break;case"MultiLineString":Je={type:"MultiLineString",coordinates:qe.coordinates.map(Ms)};break;case"Polygon":{var _t=[];Hs(qe.coordinates,_t,ot=[]),vs(ot),Je={type:"Polygon",coordinates:_t};break}case"MultiPolygon":{ot=[],ht=-1,At=qe.coordinates.length;for(var Pt=new Array(At);++ht<At;)Hs(qe.coordinates[ht],Pt[ht]=[],ot);vs(ot),Je={type:"MultiPolygon",coordinates:Pt.filter(co)};break}default:return qe}return qe.bbox!=null&&(Je.bbox=qe.bbox),Je}function tl(qe){if(qe==null)return qe;switch(qe.type){case"Feature":return Il(qe);case"FeatureCollection":{var Je={type:"FeatureCollection",features:qe.features.map(Il)};return qe.bbox!=null&&(Je.bbox=qe.bbox),Je}default:return fl(qe)}}function Ln(qe,Je){var ot=T(Je/2),ht=p(E*ot);return[qe*(.74482-.34588*ht*ht),1.70711*ot]}Ln.invert=function(qe,Je){var ot=Je/1.70711,ht=p(E*ot);return[qe/(.74482-.34588*ht*ht),2*e(ot)]};function Ao(){return x.geoProjection(Ln).scale(146.153)}function js(qe,Je,ot){var ht=x.geoInterpolate(Je,ot),At=ht(.5),_t=x.geoRotation([-At[0],-At[1]])(Je),Pt=ht.distance/2,er=-L(p(_t[1]*f)/p(Pt)),nr=[-At[0],-At[1],-(_t[0]>0?w-er:er)*y],pr=x.geoProjection(qe(Pt)).rotate(nr),Sr=x.geoRotation(nr),Wr=pr.center;return delete pr.rotate,pr.center=function(ha){return arguments.length?Wr(Sr(ha)):Sr.invert(Wr())},pr.clipAngle(90)}function Ts(qe){var Je=r(qe);function ot(ht,At){var _t=x.geoGnomonicRaw(ht,At);return _t[0]*=Je,_t}return ot.invert=function(ht,At){return x.geoGnomonicRaw.invert(ht/Je,At)},ot}function nu(){return Pu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Pu(qe,Je){return js(Ts,qe,Je)}function ec(qe){if(!(qe*=2))return x.geoAzimuthalEquidistantRaw;var Je=-qe/2,ot=-Je,ht=qe*qe,At=T(ot),_t=.5/p(ot);function Pt(er,nr){var pr=z(r(nr)*r(er-Je)),Sr=z(r(nr)*r(er-ot)),Wr=nr<0?-1:1;return pr*=pr,Sr*=Sr,[(pr-Sr)/(2*qe),Wr*F(4*ht*Sr-(ht-pr+Sr)*(ht-pr+Sr))/(2*qe)]}return Pt.invert=function(er,nr){var pr=nr*nr,Sr=r(F(pr+(ha=er+Je)*ha)),Wr=r(F(pr+(ha=er+ot)*ha)),ha,ga;return[t(ga=Sr-Wr,ha=(Sr+Wr)*At),(nr<0?-1:1)*z(F(ha*ha+ga*ga)*_t)]},Pt}function tf(){return yu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function yu(qe,Je){return js(ec,qe,Je)}function Bc(qe,Je){if(M(Je)<l)return[qe,0];var ot=M(Je/S),ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,v(Je)*w*T(ht/2)];var At=r(ht),_t=M(w/qe-qe/w)/2,Pt=_t*_t,er=At/(ot+At-1),nr=er*(2/ot-1),pr=nr*nr,Sr=pr+Pt,Wr=er-pr,ha=Pt+er;return[v(qe)*w*(_t*Wr+F(Pt*Wr*Wr-Sr*(er*er-pr)))/Sr,v(Je)*w*(nr*ha-_t*F((Pt+1)*Sr-ha*ha))/Sr]}Bc.invert=function(qe,Je){if(M(Je)<l)return[qe,0];if(M(qe)<l)return[0,S*p(2*e(Je/w))];var ot=(qe/=w)*qe,ht=(Je/=w)*Je,At=ot+ht,_t=At*At,Pt=-M(Je)*(1+At),er=Pt-2*ht+ot,nr=-2*Pt+1+2*ht+_t,pr=ht/nr+(2*er*er*er/(nr*nr*nr)-9*Pt*er/(nr*nr))/27,Sr=(Pt-er*er/(3*nr))/nr,Wr=2*F(-Sr/3),ha=z(3*pr/(Sr*Wr))/3;return[w*(At-1+F(1+2*(ot-ht)+_t))/(2*qe),v(Je)*w*(-Wr*r(ha+w/3)-er/(3*nr))]};function Iu(){return x.geoProjection(Bc).scale(79.4183)}function Ac(qe,Je){if(M(Je)<l)return[qe,0];var ot=M(Je/S),ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,v(Je)*w*T(ht/2)];var At=r(ht),_t=M(w/qe-qe/w)/2,Pt=_t*_t,er=At*(F(1+Pt)-_t*At)/(1+Pt*ot*ot);return[v(qe)*w*er,v(Je)*w*F(1-er*(2*_t+er))]}Ac.invert=function(qe,Je){if(!qe)return[0,S*p(2*e(Je/w))];var ot=M(qe/w),ht=(1-ot*ot-(Je/=w)*Je)/(2*ot),At=ht*ht,_t=F(At+1);return[v(qe)*w*(_t-ht),v(Je)*S*p(2*t(F((1-2*ht*ot)*(ht+_t)-ot),F(_t+ht+ot)))]};function ro(){return x.geoProjection(Ac).scale(79.4183)}function Po(qe,Je){if(M(Je)<l)return[qe,0];var ot=Je/S,ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,w*T(ht/2)];var At=(w/qe-qe/w)/2,_t=ot/(1+r(ht));return[w*(v(qe)*F(At*At+1-_t*_t)-At),w*_t]}Po.invert=function(qe,Je){if(!Je)return[qe,0];var ot=Je/w,ht=(w*w*(1-ot*ot)-qe*qe)/(2*w*qe);return[qe?w*(v(qe)*F(ht*ht+1)-ht):0,S*p(2*e(ot))]};function Nc(){return x.geoProjection(Po).scale(79.4183)}function hc(qe,Je){if(!Je)return[qe,0];var ot=M(Je);if(!qe||ot===S)return[0,Je];var ht=ot/S,At=ht*ht,_t=(8*ht-At*(At+2)-5)/(2*At*(ht-1)),Pt=_t*_t,er=ht*_t,nr=At+Pt+2*er,pr=ht+3*_t,Sr=qe/S,Wr=Sr+1/Sr,ha=v(M(qe)-S)*F(Wr*Wr-4),ga=ha*ha,Pa=nr*(At+Pt*ga-1)+(1-At)*(At*(pr*pr+4*Pt)+12*er*Pt+4*Pt*Pt),Ja=(ha*(nr+Pt-1)+2*F(Pa))/(4*nr+ga);return[v(qe)*S*Ja,v(Je)*S*F(1+ha*M(Ja)-Ja*Ja)]}hc.invert=function(qe,Je){var ot;if(!qe||!Je)return[qe,Je];Je/=w;var ht=v(qe)*qe/S,At=(ht*ht-1+4*Je*Je)/M(ht),_t=At*At,Pt=2*Je,er=50;do{var nr=Pt*Pt,pr=(8*Pt-nr*(nr+2)-5)/(2*nr*(Pt-1)),Sr=(3*Pt-nr*Pt-10)/(2*nr*Pt),Wr=pr*pr,ha=Pt*pr,ga=Pt+pr,Pa=ga*ga,Ja=Pt+3*pr,di=Pa*(nr+Wr*_t-1)+(1-nr)*(nr*(Ja*Ja+4*Wr)+Wr*(12*ha+4*Wr)),pi=-2*ga*(4*ha*Wr+(1-4*nr+3*nr*nr)*(1+Sr)+Wr*(-6+14*nr-_t+(-8+8*nr-2*_t)*Sr)+ha*(-8+12*nr+(-10+10*nr-_t)*Sr)),Ci=F(di),$i=At*(Pa+Wr-1)+2*Ci-ht*(4*Pa+_t),Bn=At*(2*pr*Sr+2*ga*(1+Sr))+pi/Ci-8*ga*(At*(-1+Wr+Pa)+2*Ci)*(1+Sr)/(_t+4*Pa);Pt-=ot=$i/Bn}while(ot>l&&--er>0);return[v(qe)*(F(At*At+4)+At)*w/4,S*Pt]};function pc(){return x.geoProjection(hc).scale(127.16)}function Oe(qe,Je,ot,ht,At){function _t(Pt,er){var nr=ot*p(ht*er),pr=F(1-nr*nr),Sr=F(2/(1+pr*r(Pt*=At)));return[qe*pr*Sr*p(Pt),Je*nr*Sr]}return _t.invert=function(Pt,er){var nr=Pt/qe,pr=er/Je,Sr=F(nr*nr+pr*pr),Wr=2*L(Sr/2);return[t(Pt*T(Wr),qe*Sr)/At,Sr&&L(er*p(Wr)/(Je*ot*Sr))/ht]},_t}function R(qe,Je,ot,ht){var At=w/3;qe=n(qe,l),Je=n(Je,l),qe=s(qe,S),Je=s(Je,w-l),ot=n(ot,0),ot=s(ot,100-l),ht=n(ht,l);var _t=ot/100+1,Pt=ht/100,er=z(_t*r(At))/At,nr=p(qe)/p(er*S),pr=Je/w,Sr=F(Pt*p(qe/2)/p(Je/2)),Wr=Sr/F(pr*nr*er),ha=1/(Sr*F(pr*nr*er));return Oe(Wr,ha,nr,er,pr)}function ae(){var qe=65*f,Je=60*f,ot=20,ht=200,At=x.geoProjectionMutator(R),_t=At(qe,Je,ot,ht);return _t.poleline=function(Pt){return arguments.length?At(qe=+Pt*f,Je,ot,ht):qe*y},_t.parallels=function(Pt){return arguments.length?At(qe,Je=+Pt*f,ot,ht):Je*y},_t.inflation=function(Pt){return arguments.length?At(qe,Je,ot=+Pt,ht):ot},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(163.775)}function we(){return ae().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var Se=4*w+3*F(3),De=2*F(2*w*F(3)/Se),ft=et(De*F(3)/w,De,Se/6);function bt(){return x.geoProjection(ft).scale(176.84)}function Dt(qe,Je){return[qe*F(1-3*Je*Je/(w*w)),Je]}Dt.invert=function(qe,Je){return[qe/F(1-3*Je*Je/(w*w)),Je]};function Yt(){return x.geoProjection(Dt).scale(152.63)}function cr(qe,Je){var ot=r(Je),ht=r(qe)*ot,At=1-ht,_t=r(qe=t(p(qe)*ot,-p(Je))),Pt=p(qe);return ot=F(1-ht*ht),[Pt*ot-_t*At,-_t*ot-Pt*At]}cr.invert=function(qe,Je){var ot=(qe*qe+Je*Je)/-2,ht=F(-ot*(2+ot)),At=Je*ot+qe*ht,_t=qe*ot-Je*ht,Pt=F(_t*_t+At*At);return[t(ht*At,Pt*(1+ot)),Pt?-L(ht*_t/Pt):0]};function hr(){return x.geoProjection(cr).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function jr(qe,Je){var ot=ue(qe,Je);return[(ot[0]+qe/S)/2,(ot[1]+Je)/2]}jr.invert=function(qe,Je){var ot=qe,ht=Je,At=25;do{var _t=r(ht),Pt=p(ht),er=p(2*ht),nr=Pt*Pt,pr=_t*_t,Sr=p(ot),Wr=r(ot/2),ha=p(ot/2),ga=ha*ha,Pa=1-pr*Wr*Wr,Ja=Pa?z(_t*Wr)*F(di=1/Pa):di=0,di,pi=.5*(2*Ja*_t*ha+ot/S)-qe,Ci=.5*(Ja*Pt+ht)-Je,$i=.5*di*(pr*ga+Ja*_t*Wr*nr)+.5/S,Bn=di*(Sr*er/4-Ja*Pt*ha),Sn=.125*di*(er*ha-Ja*Pt*pr*Sr),ho=.5*di*(nr*Wr+Ja*ga*_t)+.5,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]};function ea(){return x.geoProjection(jr).scale(158.837)}g.geoNaturalEarth=x.geoNaturalEarth1,g.geoNaturalEarthRaw=x.geoNaturalEarth1Raw,g.geoAiry=Q,g.geoAiryRaw=W,g.geoAitoff=se,g.geoAitoffRaw=ue,g.geoArmadillo=G,g.geoArmadilloRaw=he,g.geoAugust=J,g.geoAugustRaw=$,g.geoBaker=j,g.geoBakerRaw=ne,g.geoBerghaus=ie,g.geoBerghausRaw=ee,g.geoBertin1953=at,g.geoBertin1953Raw=Ze,g.geoBoggs=tt,g.geoBoggsRaw=ze,g.geoBonne=Ot,g.geoBonneRaw=St,g.geoBottomley=ur,g.geoBottomleyRaw=jt,g.geoBromley=Cr,g.geoBromleyRaw=ar,g.geoChamberlin=Ee,g.geoChamberlinRaw=Fe,g.geoChamberlinAfrica=Ne,g.geoCollignon=ke,g.geoCollignonRaw=Ve,g.geoCraig=Le,g.geoCraigRaw=Te,g.geoCraster=xt,g.geoCrasterRaw=dt,g.geoCylindricalEqualArea=Bt,g.geoCylindricalEqualAreaRaw=It,g.geoCylindricalStereographic=Kt,g.geoCylindricalStereographicRaw=Gt,g.geoEckert1=sa,g.geoEckert1Raw=sr,g.geoEckert2=La,g.geoEckert2Raw=Aa,g.geoEckert3=Ga,g.geoEckert3Raw=ka,g.geoEckert4=Ua,g.geoEckert4Raw=Ma,g.geoEckert5=Wt,g.geoEckert5Raw=ni,g.geoEckert6=Vt,g.geoEckert6Raw=zt,g.geoEisenlohr=Zr,g.geoEisenlohrRaw=xr,g.geoFahey=Ea,g.geoFaheyRaw=Xr,g.geoFoucaut=qa,g.geoFoucautRaw=Fa,g.geoFoucautSinusoidal=$a,g.geoFoucautSinusoidalRaw=ya,g.geoGilbert=Er,g.geoGingery=Mr,g.geoGingeryRaw=kr,g.geoGinzburg4=Jr,g.geoGinzburg4Raw=Lr,g.geoGinzburg5=ca,g.geoGinzburg5Raw=oa,g.geoGinzburg6=ir,g.geoGinzburg6Raw=kt,g.geoGinzburg8=$r,g.geoGinzburg8Raw=mr,g.geoGinzburg9=Ba,g.geoGinzburg9Raw=ma,g.geoGringorten=ai,g.geoGringortenRaw=da,g.geoGuyou=Xi,g.geoGuyouRaw=$n,g.geoHammer=Ae,g.geoHammerRaw=fe,g.geoHammerRetroazimuthal=as,g.geoHammerRetroazimuthalRaw=Jo,g.geoHealpix=ys,g.geoHealpixRaw=Do,g.geoHill=Fs,g.geoHillRaw=Is,g.geoHomolosine=so,g.geoHomolosineRaw=Os,g.geoHufnagel=fs,g.geoHufnagelRaw=Ns,g.geoHyperelliptical=To,g.geoHyperellipticalRaw=ji,g.geoInterrupt=Nn,g.geoInterruptedBoggs=Zu,g.geoInterruptedHomolosine=Bu,g.geoInterruptedMollweide=qs,g.geoInterruptedMollweideHemispheres=Nu,g.geoInterruptedSinuMollweide=Xu,g.geoInterruptedSinusoidal=bf,g.geoKavrayskiy7=Yc,g.geoKavrayskiy7Raw=Rs,g.geoLagrange=Zl,g.geoLagrangeRaw=If,g.geoLarrivee=_c,g.geoLarriveeRaw=oc,g.geoLaskowski=_l,g.geoLaskowskiRaw=Zs,g.geoLittrow=$s,g.geoLittrowRaw=Bs,g.geoLoximuthal=zl,g.geoLoximuthalRaw=sc,g.geoMiller=Qs,g.geoMillerRaw=Yu,g.geoModifiedStereographic=Fl,g.geoModifiedStereographicRaw=fp,g.geoModifiedStereographicAlaska=Ku,g.geoModifiedStereographicGs48=cu,g.geoModifiedStereographicGs50=Zf,g.geoModifiedStereographicMiller=Rc,g.geoModifiedStereographicLee=pf,g.geoMollweide=Me,g.geoMollweideRaw=lt,g.geoMtFlatPolarParabolic=Kc,g.geoMtFlatPolarParabolicRaw=Rf,g.geoMtFlatPolarQuartic=uh,g.geoMtFlatPolarQuarticRaw=Yf,g.geoMtFlatPolarSinusoidal=Df,g.geoMtFlatPolarSinusoidalRaw=Ju,g.geoNaturalEarth2=Jc,g.geoNaturalEarth2Raw=Dc,g.geoNellHammer=wf,g.geoNellHammerRaw=Eu,g.geoInterruptedQuarticAuthalic=Us,g.geoNicolosi=Zh,g.geoNicolosiRaw=Kf,g.geoPatterson=$u,g.geoPattersonRaw=Fc,g.geoPolyconic=xl,g.geoPolyconicRaw=vu,g.geoPolyhedral=vf,g.geoPolyhedralButterfly=il,g.geoPolyhedralCollignon=Jf,g.geoPolyhedralWaterman=el,g.geoProject=Vl,g.geoGringortenQuincuncial=Zt,g.geoPeirceQuincuncial=fr,g.geoPierceQuincuncial=fr,g.geoQuantize=Yr,g.geoQuincuncial=ef,g.geoRectangularPolyconic=ba,g.geoRectangularPolyconicRaw=qr,g.geoRobinson=yi,g.geoRobinsonRaw=oi,g.geoSatellite=li,g.geoSatelliteRaw=Bi,g.geoSinuMollweide=ol,g.geoSinuMollweideRaw=mn,g.geoSinusoidal=Ct,g.geoSinusoidalRaw=Qe,g.geoStitch=tl,g.geoTimes=Ao,g.geoTimesRaw=Ln,g.geoTwoPointAzimuthal=Pu,g.geoTwoPointAzimuthalRaw=Ts,g.geoTwoPointAzimuthalUsa=nu,g.geoTwoPointEquidistant=yu,g.geoTwoPointEquidistantRaw=ec,g.geoTwoPointEquidistantUsa=tf,g.geoVanDerGrinten=Iu,g.geoVanDerGrintenRaw=Bc,g.geoVanDerGrinten2=ro,g.geoVanDerGrinten2Raw=Ac,g.geoVanDerGrinten3=Nc,g.geoVanDerGrinten3Raw=Po,g.geoVanDerGrinten4=pc,g.geoVanDerGrinten4Raw=hc,g.geoWagner=ae,g.geoWagner7=we,g.geoWagnerRaw=R,g.geoWagner4=bt,g.geoWagner4Raw=ft,g.geoWagner6=Yt,g.geoWagner6Raw=Dt,g.geoWiechel=hr,g.geoWiechelRaw=cr,g.geoWinkel3=ea,g.geoWinkel3Raw=jr,Object.defineProperty(g,"__esModule",{value:!0})})}}),AU=Ye({"src/plots/geo/zoom.js"(X,H){"use strict";var g=_n(),x=ta(),A=Hn(),M=Math.PI/180,e=180/Math.PI,t={cursor:"pointer"},r={cursor:"auto"};function o(y,f){var P=y.projection,L;return f._isScoped?L=n:f._isClipped?L=c:L=s,L(y,P)}H.exports=o;function a(y,f){return g.behavior.zoom().translate(f.translate()).scale(f.scale())}function i(y,f,P){var L=y.id,z=y.graphDiv,F=z.layout,B=F[L],O=z._fullLayout,I=O[L],N={},U={};function W(Q,ue){N[L+"."+Q]=x.nestedProperty(B,Q).get(),A.call("_storeDirectGUIEdit",F,O._preGUI,N);var se=x.nestedProperty(I,Q);se.get()!==ue&&(se.set(ue),x.nestedProperty(B,Q).set(ue),U[L+"."+Q]=ue)}P(W),W("projection.scale",f.scale()/y.fitScale),W("fitbounds",!1),z.emit("plotly_relayout",U)}function n(y,f){var P=a(y,f);function L(){g.select(this).style(t)}function z(){f.scale(g.event.scale).translate(g.event.translate),y.render(!0);var O=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":O[0],"geo.center.lat":O[1]})}function F(O){var I=f.invert(y.midPt);O("center.lon",I[0]),O("center.lat",I[1])}function B(){g.select(this).style(r),i(y,f,F)}return P.on("zoomstart",L).on("zoom",z).on("zoomend",B),P}function s(y,f){var P=a(y,f),L=2,z,F,B,O,I,N,U,W,Q;function ue(Z){return f.invert(Z)}function se(Z){var re=ue(Z);if(!re)return!0;var ne=f(re);return Math.abs(ne[0]-Z[0])>L||Math.abs(ne[1]-Z[1])>L}function he(){g.select(this).style(t),z=g.mouse(this),F=f.rotate(),B=f.translate(),O=F,I=ue(z)}function G(){if(N=g.mouse(this),se(z)){P.scale(f.scale()),P.translate(f.translate());return}f.scale(g.event.scale),f.translate([B[0],g.event.translate[1]]),I?ue(N)&&(W=ue(N),U=[O[0]+(W[0]-I[0]),F[1],F[2]],f.rotate(U),O=U):(z=N,I=ue(z)),Q=!0,y.render(!0);var Z=f.rotate(),re=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":re[0],"geo.center.lat":re[1],"geo.projection.rotation.lon":-Z[0]})}function $(){g.select(this).style(r),Q&&i(y,f,J)}function J(Z){var re=f.rotate(),ne=f.invert(y.midPt);Z("projection.rotation.lon",-re[0]),Z("center.lon",ne[0]),Z("center.lat",ne[1])}return P.on("zoomstart",he).on("zoom",G).on("zoomend",$),P}function c(y,f){var P={r:f.rotate(),k:f.scale()},L=a(y,f),z=u(L,"zoomstart","zoom","zoomend"),F=0,B=L.on,O;L.on("zoomstart",function(){g.select(this).style(t);var Q=g.mouse(this),ue=f.rotate(),se=ue,he=f.translate(),G=v(ue);O=h(f,Q),B.call(L,"zoom",function(){var $=g.mouse(this);if(f.scale(P.k=g.event.scale),!O)Q=$,O=h(f,Q);else if(h(f,$)){f.rotate(ue).translate(he);var J=h(f,$),Z=T(O,J),re=E(p(G,Z)),ne=P.r=l(re,O,se);(!isFinite(ne[0])||!isFinite(ne[1])||!isFinite(ne[2]))&&(ne=se),f.rotate(ne),se=ne}N(z.of(this,arguments))}),I(z.of(this,arguments))}).on("zoomend",function(){g.select(this).style(r),B.call(L,"zoom",null),U(z.of(this,arguments)),i(y,f,W)}).on("zoom.redraw",function(){y.render(!0);var Q=f.rotate();y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.projection.rotation.lon":-Q[0],"geo.projection.rotation.lat":-Q[1]})});function I(Q){F++||Q({type:"zoomstart"})}function N(Q){Q({type:"zoom"})}function U(Q){--F||Q({type:"zoomend"})}function W(Q){var ue=f.rotate();Q("projection.rotation.lon",-ue[0]),Q("projection.rotation.lat",-ue[1])}return g.rebind(L,z,"on")}function h(y,f){var P=y.invert(f);return P&&isFinite(P[0])&&isFinite(P[1])&&m(P)}function v(y){var f=.5*y[0]*M,P=.5*y[1]*M,L=.5*y[2]*M,z=Math.sin(f),F=Math.cos(f),B=Math.sin(P),O=Math.cos(P),I=Math.sin(L),N=Math.cos(L);return[F*O*N+z*B*I,z*O*N-F*B*I,F*B*N+z*O*I,F*O*I-z*B*N]}function p(y,f){var P=y[0],L=y[1],z=y[2],F=y[3],B=f[0],O=f[1],I=f[2],N=f[3];return[P*B-L*O-z*I-F*N,P*O+L*B+z*N-F*I,P*I-L*N+z*B+F*O,P*N+L*I-z*O+F*B]}function T(y,f){if(!(!y||!f)){var P=d(y,f),L=Math.sqrt(b(P,P)),z=.5*Math.acos(Math.max(-1,Math.min(1,b(y,f)))),F=Math.sin(z)/L;return L&&[Math.cos(z),P[2]*F,-P[1]*F,P[0]*F]}}function l(y,f,P){var L=S(f,2,y[0]);L=S(L,1,y[1]),L=S(L,0,y[2]-P[2]);var z=f[0],F=f[1],B=f[2],O=L[0],I=L[1],N=L[2],U=Math.atan2(F,z)*e,W=Math.sqrt(z*z+F*F),Q,ue;Math.abs(I)>W?(ue=(I>0?90:-90)-U,Q=0):(ue=Math.asin(I/W)*e-U,Q=Math.sqrt(W*W-I*I));var se=180-ue-2*U,he=(Math.atan2(N,O)-Math.atan2(B,Q))*e,G=(Math.atan2(N,O)-Math.atan2(B,-Q))*e,$=_(P[0],P[1],ue,he),J=_(P[0],P[1],se,G);return $<=J?[ue,he,P[2]]:[se,G,P[2]]}function _(y,f,P,L){var z=w(P-y),F=w(L-f);return Math.sqrt(z*z+F*F)}function w(y){return(y%360+540)%360-180}function S(y,f,P){var L=P*M,z=y.slice(),F=f===0?1:0,B=f===2?1:2,O=Math.cos(L),I=Math.sin(L);return z[F]=y[F]*O-y[B]*I,z[B]=y[B]*O+y[F]*I,z}function E(y){return[Math.atan2(2*(y[0]*y[1]+y[2]*y[3]),1-2*(y[1]*y[1]+y[2]*y[2]))*e,Math.asin(Math.max(-1,Math.min(1,2*(y[0]*y[2]-y[3]*y[1]))))*e,Math.atan2(2*(y[0]*y[3]+y[1]*y[2]),1-2*(y[2]*y[2]+y[3]*y[3]))*e]}function m(y){var f=y[0]*M,P=y[1]*M,L=Math.cos(P);return[L*Math.cos(f),L*Math.sin(f),Math.sin(P)]}function b(y,f){for(var P=0,L=0,z=y.length;L<z;++L)P+=y[L]*f[L];return P}function d(y,f){return[y[1]*f[2]-y[2]*f[1],y[2]*f[0]-y[0]*f[2],y[0]*f[1]-y[1]*f[0]]}function u(y){for(var f=0,P=arguments.length,L=[];++f<P;)L.push(arguments[f]);var z=g.dispatch.apply(null,L);return z.of=function(F,B){return function(O){var I;try{I=O.sourceEvent=g.event,O.target=y,g.event=O,z[O.type].apply(F,B)}finally{g.event=I}}},z}}}),SU=Ye({"src/plots/geo/geo.js"(X,H){"use strict";var g=_n(),x=C5(),A=x.geoPath,M=x.geoDistance,e=TU(),t=Hn(),r=ta(),o=r.strTranslate,a=Fn(),i=Bo(),n=Lc(),s=Gu(),c=Co(),h=Yd().getAutoRange,v=bp(),p=ff().prepSelect,T=ff().clearOutline,l=ff().selectOnClick,_=AU(),w=mx(),S=vg(),E=iT(),m=M5().feature;function b(P){this.id=P.id,this.graphDiv=P.graphDiv,this.container=P.container,this.topojsonURL=P.topojsonURL,this.isStatic=P.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var d=b.prototype;H.exports=function(L){return new b(L)},d.plot=function(P,L,z,F){var B=this;if(F)return B.update(P,L,!0);B._geoCalcData=P,B._fullLayout=L;var O=L[this.id],I=[],N=!1;for(var U in w.layerNameToAdjective)if(U!=="frame"&&O["show"+U]){N=!0;break}for(var W=!1,Q=0;Q<P.length;Q++){var ue=P[0][0].trace;ue._geo=B,ue.locationmode&&(N=!0);var se=ue.marker;if(se){var he=se.angle,G=se.angleref;(he||G==="north"||G==="previous")&&(W=!0)}}if(this._hasMarkerAngles=W,N){var $=E.getTopojsonName(O);(B.topojson===null||$!==B.topojsonName)&&(B.topojsonName=$,PlotlyGeoAssets.topojson[B.topojsonName]===void 0&&I.push(B.fetchTopojson()))}I=I.concat(S.fetchTraceGeoData(P)),z.push(new Promise(function(J,Z){Promise.all(I).then(function(){B.topojson=PlotlyGeoAssets.topojson[B.topojsonName],B.update(P,L),J()}).catch(Z)}))},d.fetchTopojson=function(){var P=this,L=E.getTopojsonPath(P.topojsonURL,P.topojsonName);return new Promise(function(z,F){g.json(L,function(B,O){if(B)return B.status===404?F(new Error(["plotly.js could not find topojson file at",L+".","Make sure the *topojsonURL* plot config option","is set properly."].join(" "))):F(new Error(["unexpected error while fetching topojson file at",L].join(" ")));PlotlyGeoAssets.topojson[P.topojsonName]=O,z()})})},d.update=function(P,L,z){var F=L[this.id];this.hasChoropleth=!1;for(var B=0;B<P.length;B++){var O=P[B],I=O[0].trace;I.type==="choropleth"&&(this.hasChoropleth=!0),I.visible===!0&&I._length>0&&I._module.calcGeoJSON(O,L)}if(!z){var N=this.updateProjection(P,L);if(N)return;(!this.viewInitial||this.scope!==F.scope)&&this.saveViewInitial(F)}this.scope=F.scope,this.updateBaseLayers(L,F),this.updateDims(L,F),this.updateFx(L,F),s.generalUpdatePerTraceModule(this.graphDiv,this,P,F);var U=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=U.selectAll(".point"),this.dataPoints.text=U.selectAll("text"),this.dataPaths.line=U.selectAll(".js-line");var W=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=W.selectAll("path"),this._render()},d.updateProjection=function(P,L){var z=this.graphDiv,F=L[this.id],B=L._size,O=F.domain,I=F.projection,N=F.lonaxis,U=F.lataxis,W=N._ax,Q=U._ax,ue=this.projection=u(F),se=[[B.l+B.w*O.x[0],B.t+B.h*(1-O.y[1])],[B.l+B.w*O.x[1],B.t+B.h*(1-O.y[0])]],he=F.center||{},G=I.rotation||{},$=N.range||[],J=U.range||[];if(F.fitbounds){W._length=se[1][0]-se[0][0],Q._length=se[1][1]-se[0][1],W.range=h(z,W),Q.range=h(z,Q);var Z=(W.range[0]+W.range[1])/2,re=(Q.range[0]+Q.range[1])/2;if(F._isScoped)he={lon:Z,lat:re};else if(F._isClipped){he={lon:Z,lat:re},G={lon:Z,lat:re,roll:G.roll};var ne=I.type,j=w.lonaxisSpan[ne]/2||180,ee=w.lataxisSpan[ne]/2||90;$=[Z-j,Z+j],J=[re-ee,re+ee]}else he={lon:Z,lat:re},G={lon:Z,lat:G.lat,roll:G.roll}}ue.center([he.lon-G.lon,he.lat-G.lat]).rotate([-G.lon,-G.lat,G.roll]).parallels(I.parallels);var ie=f($,J);ue.fitExtent(se,ie);var fe=this.bounds=ue.getBounds(ie),be=this.fitScale=ue.scale(),Ae=ue.translate();if(F.fitbounds){var Be=ue.getBounds(f(W.range,Q.range)),Ie=Math.min((fe[1][0]-fe[0][0])/(Be[1][0]-Be[0][0]),(fe[1][1]-fe[0][1])/(Be[1][1]-Be[0][1]));isFinite(Ie)?ue.scale(Ie*be):r.warn("Something went wrong during"+this.id+"fitbounds computations.")}else ue.scale(I.scale*be);var Ze=this.midPt=[(fe[0][0]+fe[1][0])/2,(fe[0][1]+fe[1][1])/2];if(ue.translate([Ae[0]+(Ze[0]-Ae[0]),Ae[1]+(Ze[1]-Ae[1])]).clipExtent(fe),F._isAlbersUsa){var at=ue([he.lon,he.lat]),it=ue.translate();ue.translate([it[0]-(at[0]-it[0]),it[1]-(at[1]-it[1])])}},d.updateBaseLayers=function(P,L){var z=this,F=z.topojson,B=z.layers,O=z.basePaths;function I(se){return se==="lonaxis"||se==="lataxis"}function N(se){return!!w.lineLayers[se]}function U(se){return!!w.fillLayers[se]}var W=this.hasChoropleth?w.layersForChoropleth:w.layers,Q=W.filter(function(se){return N(se)||U(se)?L["show"+se]:I(se)?L[se].showgrid:!0}),ue=z.framework.selectAll(".layer").data(Q,String);ue.exit().each(function(se){delete B[se],delete O[se],g.select(this).remove()}),ue.enter().append("g").attr("class",function(se){return"layer "+se}).each(function(se){var he=B[se]=g.select(this);se==="bg"?z.bgRect=he.append("rect").style("pointer-events","all"):I(se)?O[se]=he.append("path").style("fill","none"):se==="backplot"?he.append("g").classed("choroplethlayer",!0):se==="frontplot"?he.append("g").classed("scatterlayer",!0):N(se)?O[se]=he.append("path").style("fill","none").style("stroke-miterlimit",2):U(se)&&(O[se]=he.append("path").style("stroke","none"))}),ue.order(),ue.each(function(se){var he=O[se],G=w.layerNameToAdjective[se];se==="frame"?he.datum(w.sphereSVG):N(se)||U(se)?he.datum(m(F,F.objects[se])):I(se)&&he.datum(y(se,L,P)).call(a.stroke,L[se].gridcolor).call(i.dashLine,L[se].griddash,L[se].gridwidth),N(se)?he.call(a.stroke,L[G+"color"]).call(i.dashLine,"",L[G+"width"]):U(se)&&he.call(a.fill,L[G+"color"])})},d.updateDims=function(P,L){var z=this.bounds,F=(L.framewidth||0)/2,B=z[0][0]-F,O=z[0][1]-F,I=z[1][0]-B+F,N=z[1][1]-O+F;i.setRect(this.clipRect,B,O,I,N),this.bgRect.call(i.setRect,B,O,I,N).call(a.fill,L.bgcolor),this.xaxis._offset=B,this.xaxis._length=I,this.yaxis._offset=O,this.yaxis._length=N},d.updateFx=function(P,L){var z=this,F=z.graphDiv,B=z.bgRect,O=P.dragmode,I=P.clickmode;if(z.isStatic)return;function N(){var ue=z.viewInitial,se={};for(var he in ue)se[z.id+"."+he]=ue[he];t.call("_guiRelayout",F,se),F.emit("plotly_doubleclick",null)}function U(ue){return z.projection.invert([ue[0]+z.xaxis._offset,ue[1]+z.yaxis._offset])}var W=function(ue,se){if(se.isRect){var he=ue.range={};he[z.id]=[U([se.xmin,se.ymin]),U([se.xmax,se.ymax])]}else{var G=ue.lassoPoints={};G[z.id]=se.map(U)}},Q={element:z.bgRect.node(),gd:F,plotinfo:{id:z.id,xaxis:z.xaxis,yaxis:z.yaxis,fillRangeItems:W},xaxes:[z.xaxis],yaxes:[z.yaxis],subplot:z.id,clickFn:function(ue){ue===2&&T(F)}};O==="pan"?(B.node().onmousedown=null,B.call(_(z,L)),B.on("dblclick.zoom",N),F._context._scrollZoom.geo||B.on("wheel.zoom",null)):(O==="select"||O==="lasso")&&(B.on(".zoom",null),Q.prepFn=function(ue,se,he){p(ue,se,he,Q,O)},v.init(Q)),B.on("mousemove",function(){var ue=z.projection.invert(r.getPositionFromD3Event());if(!ue)return v.unhover(F,g.event);z.xaxis.p2c=function(){return ue[0]},z.yaxis.p2c=function(){return ue[1]},n.hover(F,g.event,z.id)}),B.on("mouseout",function(){F._dragging||v.unhover(F,g.event)}),B.on("click",function(){O!=="select"&&O!=="lasso"&&(I.indexOf("select")>-1&&l(g.event,F,[z.xaxis],[z.yaxis],z.id,Q),I.indexOf("event")>-1&&n.click(F,g.event))})},d.makeFramework=function(){var P=this,L=P.graphDiv,z=L._fullLayout,F="clip"+z._uid+P.id;P.clipDef=z._clips.append("clipPath").attr("id",F),P.clipRect=P.clipDef.append("rect"),P.framework=g.select(P.container).append("g").attr("class","geo "+P.id).call(i.setClipUrl,F,L),P.project=function(B){var O=P.projection(B);return O?[O[0]-P.xaxis._offset,O[1]-P.yaxis._offset]:[null,null]},P.xaxis={_id:"x",c2p:function(B){return P.project(B)[0]}},P.yaxis={_id:"y",c2p:function(B){return P.project(B)[1]}},P.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},c.setConvert(P.mockAxis,z)},d.saveViewInitial=function(P){var L=P.center||{},z=P.projection,F=z.rotation||{};this.viewInitial={fitbounds:P.fitbounds,"projection.scale":z.scale};var B;P._isScoped?B={"center.lon":L.lon,"center.lat":L.lat}:P._isClipped?B={"projection.rotation.lon":F.lon,"projection.rotation.lat":F.lat}:B={"center.lon":L.lon,"center.lat":L.lat,"projection.rotation.lon":F.lon},r.extendFlat(this.viewInitial,B)},d.render=function(P){this._hasMarkerAngles&&P?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},d._render=function(){var P=this.projection,L=P.getPath(),z;function F(O){var I=P(O.lonlat);return I?o(I[0],I[1]):null}function B(O){return P.isLonLatOverEdges(O.lonlat)?"none":null}for(z in this.basePaths)this.basePaths[z].attr("d",L);for(z in this.dataPaths)this.dataPaths[z].attr("d",function(O){return L(O.geojson)});for(z in this.dataPoints)this.dataPoints[z].attr("display",B).attr("transform",F)};function u(P){var L=P.projection,z=L.type,F=w.projNames[z];F="geo"+r.titleCase(F);for(var B=x[F]||e[F],O=B(),I=P._isSatellite?Math.acos(1/L.distance)*180/Math.PI:P._isClipped?w.lonaxisSpan[z]/2:null,N=["center","rotate","parallels","clipExtent"],U=function(ue){return ue?O:[]},W=0;W<N.length;W++){var Q=N[W];typeof O[Q]!="function"&&(O[Q]=U)}return O.isLonLatOverEdges=function(ue){if(O(ue)===null)return!0;if(I){var se=O.rotate(),he=M(ue,[-se[0],-se[1]]),G=I*Math.PI/180;return he>G}else return!1},O.getPath=function(){return A().projection(O)},O.getBounds=function(ue){return O.getPath().bounds(ue)},O.precision(w.precision),P._isSatellite&&O.tilt(L.tilt).distance(L.distance),I&&O.clipAngle(I-w.clipPad),O}function y(P,L,z){var F=1e-6,B=2.5,O=L[P],I=w.scopeDefaults[L.scope],N,U,W;P==="lonaxis"?(N=I.lonaxisRange,U=I.lataxisRange,W=function(re,ne){return[re,ne]}):P==="lataxis"&&(N=I.lataxisRange,U=I.lonaxisRange,W=function(re,ne){return[ne,re]});var Q={type:"linear",range:[N[0],N[1]-F],tick0:O.tick0,dtick:O.dtick};c.setConvert(Q,z);var ue=c.calcTicks(Q);!L.isScoped&&P==="lonaxis"&&ue.pop();for(var se=ue.length,he=new Array(se),G=0;G<se;G++)for(var $=ue[G].x,J=he[G]=[],Z=U[0];Z<U[1]+B;Z+=B)J.push(W($,Z));return{type:"MultiLineString",coordinates:he}}function f(P,L){var z=w.clipPad,F=P[0]+z,B=P[1]-z,O=L[0]+z,I=L[1]-z;F>0&&B<0&&(B+=360);var N=(B-F)/4;return{type:"Polygon",coordinates:[[[F,O],[F,I],[F+N,I],[F+2*N,I],[F+3*N,I],[B,I],[B,O],[B-N,O],[B-2*N,O],[B-3*N,O],[F,O]]]}}}}),L5=Ye({"src/plots/geo/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Uh().dash,M=mx(),e=Ou().overrideAll,t=Km(),r={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:g.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:A},o=H.exports=e({domain:x({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:t(M.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:t(M.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:g.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:M.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:M.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:M.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:M.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:g.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:g.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:g.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:g.background},lonaxis:r,lataxis:r},"plot","from-root");o.uirevision={valType:"any",editType:"none"}}}),MU=Ye({"src/plots/geo/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=jh().getSubplotData,M=mx(),e=L5(),t=M.axesNames;H.exports=function(a,i,n){x(a,i,n,{type:"geo",attributes:e,handleDefaults:r,fullData:n,partition:"y"})};function r(o,a,i,n){var s=A(n.fullData,"geo",n.id),c=s.map(function(J){return J.index}),h=i("resolution"),v=i("scope"),p=M.scopeDefaults[v],T=i("projection.type",p.projType),l=a._isAlbersUsa=T==="albers usa";l&&(v=a.scope="usa");var _=a._isScoped=v!=="world",w=a._isSatellite=T==="satellite",S=a._isConic=T.indexOf("conic")!==-1||T==="albers",E=a._isClipped=!!M.lonaxisSpan[T];if(o.visible===!1){var m=g.extendDeep({},a._template);m.showcoastlines=!1,m.showcountries=!1,m.showframe=!1,m.showlakes=!1,m.showland=!1,m.showocean=!1,m.showrivers=!1,m.showsubunits=!1,m.lonaxis&&(m.lonaxis.showgrid=!1),m.lataxis&&(m.lataxis.showgrid=!1),a._template=m}for(var b=i("visible"),d,u=0;u<t.length;u++){var y=t[u],f=[30,10][u],P;if(_)P=p[y+"Range"];else{var L=M[y+"Span"],z=(L[T]||L["*"])/2,F=i("projection.rotation."+y.substr(0,3),p.projRotate[u]);P=[F-z,F+z]}var B=i(y+".range",P);i(y+".tick0"),i(y+".dtick",f),d=i(y+".showgrid",b?void 0:!1),d&&(i(y+".gridcolor"),i(y+".gridwidth"),i(y+".griddash")),a[y]._ax={type:"linear",_id:y.slice(0,3),_traceIndices:c,setScale:g.identity,c2l:g.identity,r2l:g.identity,autorange:!0,range:B.slice(),_m:1,_input:{}}}var O=a.lonaxis.range,I=a.lataxis.range,N=O[0],U=O[1];N>0&&U<0&&(U+=360);var W=(N+U)/2,Q;if(!l){var ue=_?p.projRotate:[W,0,0];Q=i("projection.rotation.lon",ue[0]),i("projection.rotation.lat",ue[1]),i("projection.rotation.roll",ue[2]),d=i("showcoastlines",!_&&b),d&&(i("coastlinecolor"),i("coastlinewidth")),d=i("showocean",b?void 0:!1),d&&i("oceancolor")}var se,he;if(l?(se=-96.6,he=38.7):(se=_?W:Q,he=(I[0]+I[1])/2),i("center.lon",se),i("center.lat",he),w&&(i("projection.tilt"),i("projection.distance")),S){var G=p.projParallels||[0,60];i("projection.parallels",G)}i("projection.scale"),d=i("showland",b?void 0:!1),d&&i("landcolor"),d=i("showlakes",b?void 0:!1),d&&i("lakecolor"),d=i("showrivers",b?void 0:!1),d&&(i("rivercolor"),i("riverwidth")),d=i("showcountries",_&&v!=="usa"&&b),d&&(i("countrycolor"),i("countrywidth")),(v==="usa"||v==="north america"&&h===50)&&(i("showsubunits",b),i("subunitcolor"),i("subunitwidth")),_||(d=i("showframe",b),d&&(i("framecolor"),i("framewidth"))),i("bgcolor");var $=i("fitbounds");$&&(delete a.projection.scale,_?(delete a.center.lon,delete a.center.lat):E?(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon,delete a.projection.rotation.lat,delete a.lonaxis.range,delete a.lataxis.range):(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon))}}}),P5=Ye({"src/plots/geo/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=SU(),M="geo",e=x(M),t={};t[M]={valType:"subplotid",dflt:M,editType:"calc"};function r(i){for(var n=i._fullLayout,s=i.calcdata,c=n._subplots[M],h=0;h<c.length;h++){var v=c[h],p=g(s,M,v),T=n[v],l=T._subplot;l||(l=A({id:v,graphDiv:i,container:n._geolayer.node(),topojsonURL:i._context.topojsonURL,staticPlot:i._context.staticPlot}),n[v]._subplot=l),l.plot(p,n,i._promises)}}function o(i,n,s,c){for(var h=c._subplots[M]||[],v=0;v<h.length;v++){var p=h[v],T=c[p]._subplot;!n[p]&&T&&(T.framework.remove(),T.clipDef.remove())}}function a(i){for(var n=i._fullLayout,s=n._subplots[M],c=0;c<s.length;c++){var h=n[s[c]],v=h._subplot;v.updateFx(n,h)}}H.exports={attr:M,name:M,idRoot:M,idRegex:e,attrRegex:e,attributes:t,layoutAttributes:L5(),supplyLayoutDefaults:MU(),plot:r,updateFx:a,clean:o}}}),EU=Ye({"src/traces/scattergeo/index.js"(X,H){"use strict";H.exports={attributes:p0(),supplyDefaults:dU(),colorbar:cp(),formatLabels:vU(),calc:aT(),calcGeoJSON:k5().calcGeoJSON,plot:k5().plot,style:E5(),styleOnSelect:ed().styleOnSelect,hoverPoints:xU(),eventData:bU(),selectPoints:wU(),moduleType:"trace",name:"scattergeo",basePlotModule:P5(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}}}),kU=Ye({"lib/scattergeo.js"(X,H){"use strict";H.exports=EU()}}),M1=Ye({"src/traces/choropleth/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=p0(),A=tu(),M=Pl(),e=Gf().defaultLine,t=Oo().extendFlat,r=x.marker.line;H.exports=t({locations:{valType:"data_array",editType:"calc"},locationmode:x.locationmode,z:{valType:"data_array",editType:"calc"},geojson:t({},x.geojson,{}),featureidkey:x.featureidkey,text:t({},x.text,{}),hovertext:t({},x.hovertext,{}),marker:{line:{color:t({},r.color,{dflt:e}),width:t({},r.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:x.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:x.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:t({},M.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:g(),showlegend:t({},M.showlegend,{dflt:!1})},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),CU=Ye({"src/traces/choropleth/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=M1();H.exports=function(e,t,r,o){function a(p,T){return g.coerce(e,t,A,p,T)}var i=a("locations"),n=a("z");if(!(i&&i.length&&g.isArrayOrTypedArray(n)&&n.length)){t.visible=!1;return}t._length=Math.min(i.length,n.length);var s=a("geojson"),c;(typeof s=="string"&&s!==""||g.isPlainObject(s))&&(c="geojson-id");var h=a("locationmode",c);h==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate");var v=a("marker.line.width");v&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),sT=Ye({"src/traces/choropleth/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=jp(),M=Av(),e=Od();function t(r){return r&&typeof r=="string"}H.exports=function(o,a){var i=a._length,n=new Array(i),s;a.geojson?s=function(T){return t(T)||g(T)}:s=t;for(var c=0;c<i;c++){var h=n[c]={},v=a.locations[c],p=a.z[c];s(v)&&g(p)?(h.loc=v,h.z=p):(h.loc=null,h.z=x),h.index=c}return M(n,a),A(o,a,{vals:a.z,containerStr:"",cLetter:"z"}),e(n,a),n}}}),lT=Ye({"src/traces/choropleth/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo(),M=Su();function e(o,a){a&&t(o,a)}function t(o,a){var i=a[0].trace,n=a[0].node3,s=n.selectAll(".choroplethlocation"),c=i.marker||{},h=c.line||{},v=M.makeColorScaleFuncFromTrace(i);s.each(function(p){g.select(this).attr("fill",v(p.z)).call(x.stroke,p.mlc||h.color).call(A.dashLine,"",p.mlw||h.width||0).style("opacity",c.opacity)}),A.selectedPointStyle(s,i)}function r(o,a){var i=a[0].node3,n=a[0].trace;n.selectedpoints?A.selectedPointStyle(i.selectAll(".choroplethlocation"),n):t(o,a)}H.exports={style:e,styleOnSelect:r}}}),I5=Ye({"src/traces/choropleth/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=vg(),M=iT().getTopojsonFeatures,e=Yd().findExtremes,t=lT().style;function r(a,i,n){var s=i.layers.backplot.select(".choroplethlayer");x.makeTraceGroups(s,n,"trace choropleth").each(function(c){var h=g.select(this),v=h.selectAll("path.choroplethlocation").data(x.identity);v.enter().append("path").classed("choroplethlocation",!0),v.exit().remove(),t(a,c)})}function o(a,i){for(var n=a[0].trace,s=i[n.geo],c=s._subplot,h=n.locationmode,v=n._length,p=h==="geojson-id"?A.extractTraceFeature(a):M(n,c.topojson),T=[],l=[],_=0;_<v;_++){var w=a[_],S=h==="geojson-id"?w.fOut:A.locationToFeature(h,w.loc,p);if(S){w.geojson=S,w.ct=S.properties.ct,w._polygons=A.feature2polygons(S);var E=A.computeBbox(S);T.push(E[0],E[2]),l.push(E[1],E[3])}else w.geojson=null}if(s.fitbounds==="geojson"&&h==="geojson-id"){var m=A.computeBbox(A.getTraceGeojson(n));T=[m[0],m[2]],l=[m[1],m[3]]}var b={padded:!0};n._extremes.lon=e(s.lonaxis._ax,T,b),n._extremes.lat=e(s.lataxis._ax,l,b)}H.exports={calcGeoJSON:o,plot:r}}}),uT=Ye({"src/traces/choropleth/hover.js"(X,H){"use strict";var g=Co(),x=M1(),A=ta().fillText;H.exports=function(t,r,o){var a=t.cd,i=a[0].trace,n=t.subplot,s,c,h,v,p=[r,o],T=[r+360,o];for(c=0;c<a.length;c++)if(s=a[c],v=!1,s._polygons){for(h=0;h<s._polygons.length;h++)s._polygons[h].contains(p)&&(v=!v),s._polygons[h].contains(T)&&(v=!v);if(v)break}if(!(!v||!s))return t.x0=t.x1=t.xa.c2p(s.ct),t.y0=t.y1=t.ya.c2p(s.ct),t.index=s.index,t.location=s.loc,t.z=s.z,t.zLabel=g.tickText(n.mockAxis,n.mockAxis.c2l(s.z),"hover").text,t.hovertemplate=s.hovertemplate,M(t,i,s),[t]};function M(e,t,r){if(!t.hovertemplate){var o=r.hi||t.hoverinfo,a=String(r.loc),i=o==="all"?x.hoverinfo.flags:o.split("+"),n=i.indexOf("name")!==-1,s=i.indexOf("location")!==-1,c=i.indexOf("z")!==-1,h=i.indexOf("text")!==-1,v=!n&&s,p=[];v?e.nameOverride=a:(n&&(e.nameOverride=t.name),s&&p.push(a)),c&&p.push(e.zLabel),h&&A(r,t,p),e.extraText=p.join("<br>")}}}}),cT=Ye({"src/traces/choropleth/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.location=A.location,x.z=A.z;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x.ct=r.ct,x}}}),fT=Ye({"src/traces/choropleth/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a,i,n,s;if(A===!1)for(o=0;o<M.length;o++)M[o].selected=0;else for(o=0;o<M.length;o++)a=M[o],i=a.ct,i&&(n=e.c2p(i),s=t.c2p(i),A.contains([n,s],null,o,x)?(r.push({pointNumber:o,lon:i[0],lat:i[1]}),a.selected=1):a.selected=0);return r}}}),LU=Ye({"src/traces/choropleth/index.js"(X,H){"use strict";H.exports={attributes:M1(),supplyDefaults:CU(),colorbar:ag(),calc:sT(),calcGeoJSON:I5().calcGeoJSON,plot:I5().plot,style:lT().style,styleOnSelect:lT().styleOnSelect,hoverPoints:uT(),eventData:cT(),selectPoints:fT(),moduleType:"trace",name:"choropleth",basePlotModule:P5(),categories:["geo","noOpacity","showLegend"],meta:{}}}}),PU=Ye({"lib/choropleth.js"(X,H){"use strict";H.exports=LU()}}),hT=Ye({"src/traces/scattergl/hover.js"(X,H){"use strict";var g=Hn(),x=ta(),A=s1();function M(t,r,o,a){var i=t.cd,n=i[0].t,s=i[0].trace,c=t.xa,h=t.ya,v=n.x,p=n.y,T=c.c2p(r),l=h.c2p(o),_=t.distance,w;if(n.tree){var S=c.p2c(T-_),E=c.p2c(T+_),m=h.p2c(l-_),b=h.p2c(l+_);a==="x"?w=n.tree.range(Math.min(S,E),Math.min(h._rl[0],h._rl[1]),Math.max(S,E),Math.max(h._rl[0],h._rl[1])):w=n.tree.range(Math.min(S,E),Math.min(m,b),Math.max(S,E),Math.max(m,b))}else w=n.ids;var d,u,y,f,P,L,z,F,B,O=_;if(a==="x"){var I=!!s.xperiodalignment,N=!!s.yperiodalignment;for(P=0;P<w.length;P++){if(d=w[P],y=v[d],L=Math.abs(c.c2p(y)-T),I){var U=c.c2p(s._xStarts[d]),W=c.c2p(s._xEnds[d]);L=T>=Math.min(U,W)&&T<=Math.max(U,W)?0:1/0}if(L<O){if(O=L,f=p[d],z=h.c2p(f)-l,N){var Q=h.c2p(s._yStarts[d]),ue=h.c2p(s._yEnds[d]);z=l>=Math.min(Q,ue)&&l<=Math.max(Q,ue)?0:1/0}B=Math.sqrt(L*L+z*z),u=w[P]}}}else for(P=w.length-1;P>-1;P--)d=w[P],y=v[d],f=p[d],L=c.c2p(y)-T,z=h.c2p(f)-l,F=Math.sqrt(L*L+z*z),F<O&&(O=B=F,u=d);return t.index=u,t.distance=O,t.dxy=B,u===void 0?[t]:[e(t,v,p,s)]}function e(t,r,o,a){var i=t.xa,n=t.ya,s=t.distance,c=t.dxy,h=t.index,v={pointNumber:h,x:r[h],y:o[h]};v.tx=x.isArrayOrTypedArray(a.text)?a.text[h]:a.text,v.htx=Array.isArray(a.hovertext)?a.hovertext[h]:a.hovertext,v.data=Array.isArray(a.customdata)?a.customdata[h]:a.customdata,v.tp=Array.isArray(a.textposition)?a.textposition[h]:a.textposition;var p=a.textfont;p&&(v.ts=x.isArrayOrTypedArray(p.size)?p.size[h]:p.size,v.tc=x.isArrayOrTypedArray(p.color)?p.color[h]:p.color,v.tf=Array.isArray(p.family)?p.family[h]:p.family,v.tw=Array.isArray(p.weight)?p.weight[h]:p.weight,v.ty=Array.isArray(p.style)?p.style[h]:p.style,v.tv=Array.isArray(p.variant)?p.variant[h]:p.variant);var T=a.marker;T&&(v.ms=x.isArrayOrTypedArray(T.size)?T.size[h]:T.size,v.mo=x.isArrayOrTypedArray(T.opacity)?T.opacity[h]:T.opacity,v.mx=x.isArrayOrTypedArray(T.symbol)?T.symbol[h]:T.symbol,v.ma=x.isArrayOrTypedArray(T.angle)?T.angle[h]:T.angle,v.mc=x.isArrayOrTypedArray(T.color)?T.color[h]:T.color);var l=T&&T.line;l&&(v.mlc=Array.isArray(l.color)?l.color[h]:l.color,v.mlw=x.isArrayOrTypedArray(l.width)?l.width[h]:l.width);var _=T&&T.gradient;_&&_.type!=="none"&&(v.mgt=Array.isArray(_.type)?_.type[h]:_.type,v.mgc=Array.isArray(_.color)?_.color[h]:_.color);var w=i.c2p(v.x,!0),S=n.c2p(v.y,!0),E=v.mrc||1,m=a.hoverlabel;m&&(v.hbg=Array.isArray(m.bgcolor)?m.bgcolor[h]:m.bgcolor,v.hbc=Array.isArray(m.bordercolor)?m.bordercolor[h]:m.bordercolor,v.hts=x.isArrayOrTypedArray(m.font.size)?m.font.size[h]:m.font.size,v.htc=Array.isArray(m.font.color)?m.font.color[h]:m.font.color,v.htf=Array.isArray(m.font.family)?m.font.family[h]:m.font.family,v.hnl=x.isArrayOrTypedArray(m.namelength)?m.namelength[h]:m.namelength);var b=a.hoverinfo;b&&(v.hi=Array.isArray(b)?b[h]:b);var d=a.hovertemplate;d&&(v.ht=Array.isArray(d)?d[h]:d);var u={};u[t.index]=v;var y=a._origX,f=a._origY,P=x.extendFlat({},t,{color:A(a,v),x0:w-E,x1:w+E,xLabelVal:y?y[h]:v.x,y0:S-E,y1:S+E,yLabelVal:f?f[h]:v.y,cd:u,distance:s,spikeDistance:c,hovertemplate:v.ht});return v.htx?P.text=v.htx:v.tx?P.text=v.tx:a.text&&(P.text=a.text),x.fillText(v,a,P),g.getComponentMethod("errorbars","hoverInfo")(v,a,P),P}H.exports={hoverPoints:M,calcHover:e}}}),mg=Ye({"src/traces/scattergl/constants.js"(X,H){"use strict";var g=20;H.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:g,SYMBOL_STROKE:g/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}}}),yx=Ye({"src/traces/scattergl/attributes.js"(X,H){"use strict";var g=Pl(),x=Au(),A=$d(),M=Pc(),e=Cc().axisHoverFormat,t=tu(),r=Km(),o=Oo().extendFlat,a=Ou().overrideAll,i=mg().DASHES,n=M.line,s=M.marker,c=s.line,h=H.exports=a({x:M.x,x0:M.x0,dx:M.dx,y:M.y,y0:M.y0,dy:M.dy,xperiod:M.xperiod,yperiod:M.yperiod,xperiod0:M.xperiod0,yperiod0:M.yperiod0,xperiodalignment:M.xperiodalignment,yperiodalignment:M.yperiodalignment,xhoverformat:e("x"),yhoverformat:e("y"),text:M.text,hovertext:M.hovertext,textposition:M.textposition,textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:n.color,width:n.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:r(i),dflt:"solid"}},marker:o({},t("marker"),{symbol:s.symbol,angle:s.angle,size:s.size,sizeref:s.sizeref,sizemin:s.sizemin,sizemode:s.sizemode,opacity:s.opacity,colorbar:s.colorbar,line:o({},t("marker.line"),{width:c.width})}),connectgaps:M.connectgaps,fill:o({},M.fill,{dflt:"none"}),fillcolor:A(),selected:{marker:M.selected.marker,textfont:M.selected.textfont},unselected:{marker:M.unselected.marker,textfont:M.unselected.textfont},opacity:g.opacity},"calc","nested");h.x.editType=h.y.editType=h.x0.editType=h.y0.editType="calc+clearAxisTypes",h.hovertemplate=M.hovertemplate,h.texttemplate=M.texttemplate}}),pT=Ye({"src/traces/scattergl/helpers.js"(X){"use strict";var H=mg();X.isOpenSymbol=function(g){return typeof g=="string"?H.OPEN_RE.test(g):g%200>100},X.isDotSymbol=function(g){return typeof g=="string"?H.DOT_RE.test(g):g>200}}}),IU=Ye({"src/traces/scattergl/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=pT(),M=yx(),e=Tv(),t=uu(),r=i1(),o=Qd(),a=md(),i=Dd(),n=ev(),s=zd();H.exports=function(h,v,p,T){function l(u,y){return g.coerce(h,v,M,u,y)}var _=h.marker?A.isOpenSymbol(h.marker.symbol):!1,w=t.isBubble(h),S=r(h,v,T,l);if(!S){v.visible=!1;return}o(h,v,T,l),l("xhoverformat"),l("yhoverformat");var E=S<e.PTS_LINESONLY?"lines+markers":"lines";l("text"),l("hovertext"),l("hovertemplate"),l("mode",E),t.hasMarkers(v)&&(a(h,v,p,T,l,{noAngleRef:!0,noStandOff:!0}),l("marker.line.width",_||w?1:0)),t.hasLines(v)&&(l("connectgaps"),i(h,v,p,T,l),l("line.shape")),t.hasText(v)&&(l("texttemplate"),s(h,v,T,l,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var m=(v.line||{}).color,b=(v.marker||{}).color;l("fill"),v.fill!=="none"&&n(h,v,p,l);var d=x.getComponentMethod("errorbars","supplyDefaults");d(h,v,m||b||p,{axis:"y"}),d(h,v,m||b||p,{axis:"x",inherit:"y"}),g.coerceSelectionMarkerOpacity(v,l)}}}),RU=Ye({"src/traces/scattergl/format_labels.js"(X,H){"use strict";var g=L2();H.exports=function(A,M,e){var t=A.i;return"x"in A||(A.x=M._x[t]),"y"in A||(A.y=M._y[t]),g(A,M,e)}}}),DU=Ye({"node_modules/binary-search-bounds/search-bounds.js"(X,H){"use strict";function g(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>=0?(s=c,n=c-1):i=c+1}return s}function x(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>0?(s=c,n=c-1):i=c+1}return s}function A(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<0?(s=c,i=c+1):n=c-1}return s}function M(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<=0?(s=c,i=c+1):n=c-1}return s}function e(r,o,a,i,n){for(;i<=n;){var s=i+n>>>1,c=r[s],h=a!==void 0?a(c,o):c-o;if(h===0)return s;h<=0?i=s+1:n=s-1}return-1}function t(r,o,a,i,n,s){return typeof a=="function"?s(r,o,a,i===void 0?0:i|0,n===void 0?r.length-1:n|0):s(r,o,void 0,a===void 0?0:a|0,i===void 0?r.length-1:i|0)}H.exports={ge:function(r,o,a,i,n){return t(r,o,a,i,n,g)},gt:function(r,o,a,i,n){return t(r,o,a,i,n,x)},lt:function(r,o,a,i,n){return t(r,o,a,i,n,A)},le:function(r,o,a,i,n){return t(r,o,a,i,n,M)},eq:function(r,o,a,i,n){return t(r,o,a,i,n,e)}}}}),Ev=Ye({"node_modules/pick-by-alias/index.js"(X,H){"use strict";H.exports=function(M,e,t){var r={},o,a;if(typeof e=="string"&&(e=x(e)),Array.isArray(e)){var i={};for(a=0;a<e.length;a++)i[e[a]]=!0;e=i}for(o in e)e[o]=x(e[o]);var n={};for(o in e){var s=e[o];if(Array.isArray(s))for(a=0;a<s.length;a++){var c=s[a];if(t&&(n[c]=!0),c in M){if(r[o]=M[c],t)for(var h=a;h<s.length;h++)n[s[h]]=!0;break}}else o in M&&(e[o]&&(r[o]=M[o]),t&&(n[o]=!0))}if(t)for(o in M)n[o]||(r[o]=M[o]);return r};var g={};function x(A){return g[A]?g[A]:(typeof A=="string"&&(A=g[A]=A.split(/\s*,\s*|\s+/)),A)}}}),E1=Ye({"node_modules/parse-rect/index.js"(X,H){"use strict";var g=Ev();H.exports=x;function x(A){var M;return arguments.length>1&&(A=arguments),typeof A=="string"?A=A.split(/\s/).map(parseFloat):typeof A=="number"&&(A=[A]),A.length&&typeof A[0]=="number"?A.length===1?M={width:A[0],height:A[0],x:0,y:0}:A.length===2?M={width:A[0],height:A[1],x:0,y:0}:M={x:A[0],y:A[1],width:A[2]-A[0]||0,height:A[3]-A[1]||0}:A&&(A=g(A,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),M={x:A.left||0,y:A.top||0},A.width==null?A.right?M.width=A.right-M.x:M.width=0:M.width=A.width,A.height==null?A.bottom?M.height=A.bottom-M.y:M.height=0:M.height=A.height),M}}}),d0=Ye({"node_modules/array-bounds/index.js"(X,H){"use strict";H.exports=g;function g(x,A){if(!x||x.length==null)throw Error("Argument should be an array");A==null?A=1:A=Math.floor(A);for(var M=Array(A*2),e=0;e<A;e++){for(var t=-1/0,r=1/0,o=e,a=x.length;o<a;o+=A)x[o]>t&&(t=x[o]),x[o]<r&&(r=x[o]);M[e]=r,M[A+e]=t}return M}}}),zU=Ye({"node_modules/defined/index.js"(X,H){H.exports=function(){for(var g=0;g<arguments.length;g++)if(arguments[g]!==void 0)return arguments[g]}}}),v0=Ye({"node_modules/flatten-vertex-data/index.js"(X,H){var g=$3();H.exports=x;function x(A,M,e){if(!A)throw new TypeError("must specify data as first parameter");if(e=+(e||0)|0,Array.isArray(A)&&A[0]&&typeof A[0][0]=="number"){var t=A[0].length,r=A.length*t,o,a,i,n;(!M||typeof M=="string")&&(M=new(g(M||"float32"))(r+e));var s=M.length-e;if(r!==s)throw new Error("source length "+r+" ("+t+"x"+A.length+") does not match destination length "+s);for(o=0,i=e;o<A.length;o++)for(a=0;a<t;a++)M[i++]=A[o][a]===null?NaN:A[o][a]}else if(!M||typeof M=="string"){var c=g(M||"float32");if(Array.isArray(A)||M==="array")for(M=new c(A.length+e),o=0,i=e,n=M.length;i<n;i++,o++)M[i]=A[o]===null?NaN:A[o];else e===0?M=new c(A):(M=new c(A.length+e),M.set(A,e))}else M.set(A,e);return M}}}),FU=Ye({"node_modules/is-obj/index.js"(X,H){"use strict";H.exports=function(g){var x=typeof g;return g!==null&&(x==="object"||x==="function")}}}),OU=Ye({"node_modules/math-log2/index.js"(X,H){"use strict";H.exports=Math.log2||function(g){return Math.log(g)*Math.LOG2E}}}),BU=Ye({"node_modules/@plotly/point-cluster/quad.js"(X,H){"use strict";var g=DU(),x=dx(),A=E1(),M=d0(),e=Ev(),t=zU(),r=v0(),o=FU(),a=$3(),i=OU(),n=1073741824;H.exports=function(h,v){v||(v={}),h=r(h,"float64"),v=e(v,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let p=t(v.maxDepth,255),T=t(v.bounds,M(h,2));T[0]===T[2]&&T[2]++,T[1]===T[3]&&T[3]++;let l=s(h,T),_=h.length>>>1,w;v.dtype||(v.dtype="array"),typeof v.dtype=="string"?w=new(a(v.dtype))(_):v.dtype&&(w=v.dtype,Array.isArray(w)&&(w.length=_));for(let L=0;L<_;++L)w[L]=L;let S=[],E=[],m=[],b=[];u(0,0,1,w,0,1);let d=0;for(let L=0;L<S.length;L++){let z=S[L];if(w.set)w.set(z,d);else for(let B=0,O=z.length;B<O;B++)w[B+d]=z[B];let F=d+S[L].length;b[L]=[d,F],d=F}return w.range=y,w;function u(L,z,F,B,O,I){if(!B.length)return null;let N=S[O]||(S[O]=[]),U=m[O]||(m[O]=[]),W=E[O]||(E[O]=[]),Q=N.length;if(O++,O>p||I>n){for(let re=0;re<B.length;re++)N.push(B[re]),U.push(I),W.push(null,null,null,null);return Q}if(N.push(B[0]),U.push(I),B.length<=1)return W.push(null,null,null,null),Q;let ue=F*.5,se=L+ue,he=z+ue,G=[],$=[],J=[],Z=[];for(let re=1,ne=B.length;re<ne;re++){let j=B[re],ee=l[j*2],ie=l[j*2+1];ee<se?ie<he?G.push(j):$.push(j):ie<he?J.push(j):Z.push(j)}return I<<=2,W.push(u(L,z,ue,G,O,I),u(L,he,ue,$,O,I+1),u(se,z,ue,J,O,I+2),u(se,he,ue,Z,O,I+3)),Q}function y(...L){let z;if(o(L[L.length-1])){let J=L.pop();!L.length&&(J.x!=null||J.l!=null||J.left!=null)&&(L=[J],z={}),z=e(J,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else z={};L.length||(L=T);let F=A(...L),[B,O,I,N]=[Math.min(F.x,F.x+F.width),Math.min(F.y,F.y+F.height),Math.max(F.x,F.x+F.width),Math.max(F.y,F.y+F.height)],[U,W,Q,ue]=s([B,O,I,N],T),se=t(z.level,S.length);if(z.d!=null){let J;typeof z.d=="number"?J=[z.d,z.d]:z.d.length&&(J=z.d),se=Math.min(Math.max(Math.ceil(-i(Math.abs(J[0])/(T[2]-T[0]))),Math.ceil(-i(Math.abs(J[1])/(T[3]-T[1])))),se)}if(se=Math.min(se,S.length),z.lod)return f(U,W,Q,ue,se);let he=[];G(0,0,1,0,0,1);function G(J,Z,re,ne,j,ee){if(j===null||ee===null)return;let ie=J+re,fe=Z+re;if(U>ie||W>fe||Q<J||ue<Z||ne>=se||j===ee)return;let be=S[ne];ee===void 0&&(ee=be.length);for(let Me=j;Me<ee;Me++){let ge=be[Me],ce=h[ge*2],ze=h[ge*2+1];ce>=B&&ce<=I&&ze>=O&&ze<=N&&he.push(ge)}let Ae=E[ne],Be=Ae[j*4+0],Ie=Ae[j*4+1],Ze=Ae[j*4+2],at=Ae[j*4+3],it=$(Ae,j+1),et=re*.5,lt=ne+1;G(J,Z,et,lt,Be,Ie||Ze||at||it),G(J,Z+et,et,lt,Ie,Ze||at||it),G(J+et,Z,et,lt,Ze,at||it),G(J+et,Z+et,et,lt,at,it)}function $(J,Z){let re=null,ne=0;for(;re===null;)if(re=J[Z*4+ne],ne++,ne>J.length)return null;return re}return he}function f(L,z,F,B,O){let I=[];for(let N=0;N<O;N++){let U=m[N],W=b[N][0],Q=P(L,z,N),ue=P(F,B,N),se=g.ge(U,Q),he=g.gt(U,ue,se,U.length-1);I[N]=[se+W,he+W]}return I}function P(L,z,F){let B=1,O=.5,I=.5,N=.5;for(let U=0;U<F;U++)B<<=2,B+=L<O?z<I?0:1:z<I?2:3,N*=.5,O+=L<O?-N:N,I+=z<I?-N:N;return B}};function s(c,h){let[v,p,T,l]=h,_=1/(T-v),w=1/(l-p),S=new Array(c.length);for(let E=0,m=c.length/2;E<m;E++)S[2*E]=x((c[2*E]-v)*_,0,1),S[2*E+1]=x((c[2*E+1]-p)*w,0,1);return S}}}),dT=Ye({"node_modules/@plotly/point-cluster/index.js"(X,H){"use strict";H.exports=BU()}}),R5=Ye({"node_modules/abs-svg-path/index.js"(X,H){H.exports=g;function g(x){var A=0,M=0,e=0,t=0;return x.map(function(r){r=r.slice();var o=r[0],a=o.toUpperCase();if(o!=a)switch(r[0]=a,o){case"a":r[6]+=e,r[7]+=t;break;case"v":r[1]+=t;break;case"h":r[1]+=e;break;default:for(var i=1;i<r.length;)r[i++]+=e,r[i++]+=t}switch(a){case"Z":e=A,t=M;break;case"H":e=r[1];break;case"V":t=r[1];break;case"M":e=A=r[1],t=M=r[2];break;default:e=r[r.length-2],t=r[r.length-1]}return r})}}}),NU=Ye({"node_modules/svg-arc-to-cubic-bezier/cjs/index.js"(X,H){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var g=function(){function o(a,i){var n=[],s=!0,c=!1,h=void 0;try{for(var v=a[Symbol.iterator](),p;!(s=(p=v.next()).done)&&(n.push(p.value),!(i&&n.length===i));s=!0);}catch(T){c=!0,h=T}finally{try{!s&&v.return&&v.return()}finally{if(c)throw h}}return n}return function(a,i){if(Array.isArray(a))return a;if(Symbol.iterator in Object(a))return o(a,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),x=Math.PI*2,A=function(a,i,n,s,c,h,v){var p=a.x,T=a.y;p*=i,T*=n;var l=s*p-c*T,_=c*p+s*T;return{x:l+h,y:_+v}},M=function(a,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),s=Math.cos(a),c=Math.sin(a),h=Math.cos(a+i),v=Math.sin(a+i);return[{x:s-c*n,y:c+s*n},{x:h+v*n,y:v-h*n},{x:h,y:v}]},e=function(a,i,n,s){var c=a*s-i*n<0?-1:1,h=a*n+i*s;return h>1&&(h=1),h<-1&&(h=-1),c*Math.acos(h)},t=function(a,i,n,s,c,h,v,p,T,l,_,w){var S=Math.pow(c,2),E=Math.pow(h,2),m=Math.pow(_,2),b=Math.pow(w,2),d=S*E-S*b-E*m;d<0&&(d=0),d/=S*b+E*m,d=Math.sqrt(d)*(v===p?-1:1);var u=d*c/h*w,y=d*-h/c*_,f=l*u-T*y+(a+n)/2,P=T*u+l*y+(i+s)/2,L=(_-u)/c,z=(w-y)/h,F=(-_-u)/c,B=(-w-y)/h,O=e(1,0,L,z),I=e(L,z,F,B);return p===0&&I>0&&(I-=x),p===1&&I<0&&(I+=x),[f,P,O,I]},r=function(a){var i=a.px,n=a.py,s=a.cx,c=a.cy,h=a.rx,v=a.ry,p=a.xAxisRotation,T=p===void 0?0:p,l=a.largeArcFlag,_=l===void 0?0:l,w=a.sweepFlag,S=w===void 0?0:w,E=[];if(h===0||v===0)return[];var m=Math.sin(T*x/360),b=Math.cos(T*x/360),d=b*(i-s)/2+m*(n-c)/2,u=-m*(i-s)/2+b*(n-c)/2;if(d===0&&u===0)return[];h=Math.abs(h),v=Math.abs(v);var y=Math.pow(d,2)/Math.pow(h,2)+Math.pow(u,2)/Math.pow(v,2);y>1&&(h*=Math.sqrt(y),v*=Math.sqrt(y));var f=t(i,n,s,c,h,v,_,S,m,b,d,u),P=g(f,4),L=P[0],z=P[1],F=P[2],B=P[3],O=Math.abs(B)/(x/4);Math.abs(1-O)<1e-7&&(O=1);var I=Math.max(Math.ceil(O),1);B/=I;for(var N=0;N<I;N++)E.push(M(F,B)),F+=B;return E.map(function(U){var W=A(U[0],h,v,b,m,L,z),Q=W.x,ue=W.y,se=A(U[1],h,v,b,m,L,z),he=se.x,G=se.y,$=A(U[2],h,v,b,m,L,z),J=$.x,Z=$.y;return{x1:Q,y1:ue,x2:he,y2:G,x:J,y:Z}})};X.default=r,H.exports=X.default}}),UU=Ye({"node_modules/svg-path-bounds/node_modules/normalize-svg-path/index.js"(X,H){"use strict";H.exports=x;var g=NU();function x(e){for(var t,r=[],o=0,a=0,i=0,n=0,s=null,c=null,h=0,v=0,p=0,T=e.length;p<T;p++){var l=e[p],_=l[0];switch(_){case"M":i=l[1],n=l[2];break;case"A":var w=g({px:h,py:v,cx:l[6],cy:l[7],rx:l[1],ry:l[2],xAxisRotation:l[3],largeArcFlag:l[4],sweepFlag:l[5]});if(!w.length)continue;for(var S=0,E;S<w.length;S++)E=w[S],l=["C",E.x1,E.y1,E.x2,E.y2,E.x,E.y],S<w.length-1&&r.push(l);break;case"S":var m=h,b=v;(t=="C"||t=="S")&&(m+=m-o,b+=b-a),l=["C",m,b,l[1],l[2],l[3],l[4]];break;case"T":t=="Q"||t=="T"?(s=h*2-s,c=v*2-c):(s=h,c=v),l=M(h,v,s,c,l[1],l[2]);break;case"Q":s=l[1],c=l[2],l=M(h,v,l[1],l[2],l[3],l[4]);break;case"L":l=A(h,v,l[1],l[2]);break;case"H":l=A(h,v,l[1],v);break;case"V":l=A(h,v,h,l[1]);break;case"Z":l=A(h,v,i,n);break}t=_,h=l[l.length-2],v=l[l.length-1],l.length>4?(o=l[l.length-4],a=l[l.length-3]):(o=h,a=v),r.push(l)}return r}function A(e,t,r,o){return["C",e,t,r,o,r,o]}function M(e,t,r,o,a,i){return["C",e/3+2/3*r,t/3+2/3*o,a/3+2/3*r,i/3+2/3*o,a,i]}}}),D5=Ye({"node_modules/is-svg-path/index.js"(X,H){"use strict";H.exports=function(x){return typeof x!="string"?!1:(x=x.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(x)&&/[\dz]$/i.test(x)&&x.length>4))}}}),jU=Ye({"node_modules/svg-path-bounds/index.js"(X,H){"use strict";var g=A_(),x=R5(),A=UU(),M=D5(),e=X_();H.exports=t;function t(r){if(Array.isArray(r)&&r.length===1&&typeof r[0]=="string"&&(r=r[0]),typeof r=="string"&&(e(M(r),"String is not an SVG path."),r=g(r)),e(Array.isArray(r),"Argument should be a string or an array of path segments."),r=x(r),r=A(r),!r.length)return[0,0,0,0];for(var o=[1/0,1/0,-1/0,-1/0],a=0,i=r.length;a<i;a++)for(var n=r[a].slice(1),s=0;s<n.length;s+=2)n[s+0]<o[0]&&(o[0]=n[s+0]),n[s+1]<o[1]&&(o[1]=n[s+1]),n[s+0]>o[2]&&(o[2]=n[s+0]),n[s+1]>o[3]&&(o[3]=n[s+1]);return o}}}),VU=Ye({"node_modules/normalize-svg-path/index.js"(X,H){var g=Math.PI,x=o(120);H.exports=A;function A(a){for(var i,n=[],s=0,c=0,h=0,v=0,p=null,T=null,l=0,_=0,w=0,S=a.length;w<S;w++){var E=a[w],m=E[0];switch(m){case"M":h=E[1],v=E[2];break;case"A":E=t(l,_,E[1],E[2],o(E[3]),E[4],E[5],E[6],E[7]),E.unshift("C"),E.length>7&&(n.push(E.splice(0,7)),E.unshift("C"));break;case"S":var b=l,d=_;(i=="C"||i=="S")&&(b+=b-s,d+=d-c),E=["C",b,d,E[1],E[2],E[3],E[4]];break;case"T":i=="Q"||i=="T"?(p=l*2-p,T=_*2-T):(p=l,T=_),E=e(l,_,p,T,E[1],E[2]);break;case"Q":p=E[1],T=E[2],E=e(l,_,E[1],E[2],E[3],E[4]);break;case"L":E=M(l,_,E[1],E[2]);break;case"H":E=M(l,_,E[1],_);break;case"V":E=M(l,_,l,E[1]);break;case"Z":E=M(l,_,h,v);break}i=m,l=E[E.length-2],_=E[E.length-1],E.length>4?(s=E[E.length-4],c=E[E.length-3]):(s=l,c=_),n.push(E)}return n}function M(a,i,n,s){return["C",a,i,n,s,n,s]}function e(a,i,n,s,c,h){return["C",a/3+2/3*n,i/3+2/3*s,c/3+2/3*n,h/3+2/3*s,c,h]}function t(a,i,n,s,c,h,v,p,T,l){if(l)f=l[0],P=l[1],u=l[2],y=l[3];else{var _=r(a,i,-c);a=_.x,i=_.y,_=r(p,T,-c),p=_.x,T=_.y;var w=(a-p)/2,S=(i-T)/2,E=w*w/(n*n)+S*S/(s*s);E>1&&(E=Math.sqrt(E),n=E*n,s=E*s);var m=n*n,b=s*s,d=(h==v?-1:1)*Math.sqrt(Math.abs((m*b-m*S*S-b*w*w)/(m*S*S+b*w*w)));d==1/0&&(d=1);var u=d*n*S/s+(a+p)/2,y=d*-s*w/n+(i+T)/2,f=Math.asin(((i-y)/s).toFixed(9)),P=Math.asin(((T-y)/s).toFixed(9));f=a<u?g-f:f,P=p<u?g-P:P,f<0&&(f=g*2+f),P<0&&(P=g*2+P),v&&f>P&&(f=f-g*2),!v&&P>f&&(P=P-g*2)}if(Math.abs(P-f)>x){var L=P,z=p,F=T;P=f+x*(v&&P>f?1:-1),p=u+n*Math.cos(P),T=y+s*Math.sin(P);var B=t(p,T,n,s,c,0,v,z,F,[P,L,u,y])}var O=Math.tan((P-f)/4),I=4/3*n*O,N=4/3*s*O,U=[2*a-(a+I*Math.sin(f)),2*i-(i-N*Math.cos(f)),p+I*Math.sin(P),T-N*Math.cos(P),p,T];if(l)return U;B&&(U=U.concat(B));for(var W=0;W<U.length;){var Q=r(U[W],U[W+1],c);U[W++]=Q.x,U[W++]=Q.y}return U}function r(a,i,n){return{x:a*Math.cos(n)-i*Math.sin(n),y:a*Math.sin(n)+i*Math.cos(n)}}function o(a){return a*(g/180)}}}),qU=Ye({"node_modules/draw-svg-path/index.js"(X,H){var g=R5(),x=VU(),A={M:"moveTo",C:"bezierCurveTo"};H.exports=function(M,e){M.beginPath(),x(g(e)).forEach(function(t){var r=t[0],o=t.slice(1);M[A[r]].apply(M,o)}),M.closePath()}}}),HU=Ye({"node_modules/bitmap-sdf/index.js"(X,H){"use strict";var g=dx();H.exports=A;var x=1e20;function A(t,r){r||(r={});var o=r.cutoff==null?.25:r.cutoff,a=r.radius==null?8:r.radius,i=r.channel||0,n,s,c,h,v,p,T,l,_,w,S;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!r.width||!r.height)throw Error("For raw data width and height should be provided by options");n=r.width,s=r.height,h=t,r.stride?p=r.stride:p=Math.floor(t.length/n/s)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(l=t,T=l.getContext("2d"),n=l.width,s=l.height,_=T.getImageData(0,0,n,s),h=_.data,p=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(l=t.canvas,T=t,n=l.width,s=l.height,_=T.getImageData(0,0,n,s),h=_.data,p=4):window.ImageData&&t instanceof window.ImageData&&(_=t,n=t.width,s=t.height,h=_.data,p=4);if(c=Math.max(n,s),window.Uint8ClampedArray&&h instanceof window.Uint8ClampedArray||window.Uint8Array&&h instanceof window.Uint8Array)for(v=h,h=Array(n*s),w=0,S=v.length;w<S;w++)h[w]=v[w*p+i]/255;else if(p!==1)throw Error("Raw data can have only 1 value per pixel");var E=Array(n*s),m=Array(n*s),b=Array(c),d=Array(c),u=Array(c+1),y=Array(c);for(w=0,S=n*s;w<S;w++){var f=h[w];E[w]=f===1?0:f===0?x:Math.pow(Math.max(0,.5-f),2),m[w]=f===1?x:f===0?0:Math.pow(Math.max(0,f-.5),2)}M(E,n,s,b,d,y,u),M(m,n,s,b,d,y,u);var P=window.Float32Array?new Float32Array(n*s):new Array(n*s);for(w=0,S=n*s;w<S;w++)P[w]=g(1-((E[w]-m[w])/a+o),0,1);return P}function M(t,r,o,a,i,n,s){for(var c=0;c<r;c++){for(var h=0;h<o;h++)a[h]=t[h*r+c];for(e(a,i,n,s,o),h=0;h<o;h++)t[h*r+c]=i[h]}for(h=0;h<o;h++){for(c=0;c<r;c++)a[c]=t[h*r+c];for(e(a,i,n,s,r),c=0;c<r;c++)t[h*r+c]=Math.sqrt(i[c])}}function e(t,r,o,a,i){o[0]=0,a[0]=-x,a[1]=+x;for(var n=1,s=0;n<i;n++){for(var c=(t[n]+n*n-(t[o[s]]+o[s]*o[s]))/(2*n-2*o[s]);c<=a[s];)s--,c=(t[n]+n*n-(t[o[s]]+o[s]*o[s]))/(2*n-2*o[s]);s++,o[s]=n,a[s]=c,a[s+1]=+x}for(n=0,s=0;n<i;n++){for(;a[s+1]<n;)s++;r[n]=(n-o[s])*(n-o[s])+t[o[s]]}}}}),GU=Ye({"node_modules/svg-path-sdf/index.js"(X,H){"use strict";var g=jU(),x=A_(),A=qU(),M=D5(),e=HU(),t=document.createElement("canvas"),r=t.getContext("2d");H.exports=o;function o(n,s){if(!M(n))throw Error("Argument should be valid svg path string");s||(s={});var c,h;s.shape?(c=s.shape[0],h=s.shape[1]):(c=t.width=s.w||s.width||200,h=t.height=s.h||s.height||200);var v=Math.min(c,h),p=s.stroke||0,T=s.viewbox||s.viewBox||g(n),l=[c/(T[2]-T[0]),h/(T[3]-T[1])],_=Math.min(l[0]||0,l[1]||0)/2;if(r.fillStyle="black",r.fillRect(0,0,c,h),r.fillStyle="white",p&&(typeof p!="number"&&(p=1),p>0?r.strokeStyle="white":r.strokeStyle="black",r.lineWidth=Math.abs(p)),r.translate(c*.5,h*.5),r.scale(_,_),i()){var w=new Path2D(n);r.fill(w),p&&r.stroke(w)}else{var S=x(n);A(r,S),r.fill(),p&&r.stroke()}r.setTransform(1,0,0,1,0,0);var E=e(r,{cutoff:s.cutoff!=null?s.cutoff:.5,radius:s.radius!=null?s.radius:v*.5});return E}var a;function i(){if(a!=null)return a;var n=document.createElement("canvas").getContext("2d");if(n.canvas.width=n.canvas.height=1,!window.Path2D)return a=!1;var s=new Path2D("M0,0h1v1h-1v-1Z");n.fillStyle="black",n.fill(s);var c=n.getImageData(0,0,1,1);return a=c&&c.data&&c.data[3]===255}}}),m0=Ye({"src/traces/scattergl/convert.js"(X,H){"use strict";var g=jo(),x=GU(),A=hg(),M=Hn(),e=ta(),t=e.isArrayOrTypedArray,r=Bo(),o=Xc(),a=em().formatColor,i=uu(),n=t1(),s=pT(),c=mg(),h=Xm().DESELECTDIM,v={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},p=Qp().appendArrayPointValue;function T(B,O){var I,N={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},U=B._context.plotGlPixelRatio;if(O.visible!==!0)return N;if(i.hasText(O)&&(N.text=l(B,O),N.textSel=E(B,O,O.selected),N.textUnsel=E(B,O,O.unselected)),i.hasMarkers(O)&&(N.marker=w(B,O),N.markerSel=S(B,O,O.selected),N.markerUnsel=S(B,O,O.unselected),!O.unselected&&t(O.marker.opacity))){var W=O.marker.opacity;for(N.markerUnsel.opacity=new Array(W.length),I=0;I<W.length;I++)N.markerUnsel.opacity[I]=h*W[I]}if(i.hasLines(O)){N.line={overlay:!0,thickness:O.line.width*U,color:O.line.color,opacity:O.opacity};var Q=(c.DASHES[O.line.dash]||[1]).slice();for(I=0;I<Q.length;++I)Q[I]*=O.line.width*U;N.line.dashes=Q}return O.error_x&&O.error_x.visible&&(N.errorX=m(O,O.error_x,U)),O.error_y&&O.error_y.visible&&(N.errorY=m(O,O.error_y,U)),O.fill&&O.fill!=="none"&&(N.fill={closed:!0,fill:O.fillcolor,thickness:0}),N}function l(B,O){var I=B._fullLayout,N=O._length,U=O.textfont,W=O.textposition,Q=t(W)?W:[W],ue=U.color,se=U.size,he=U.family,G=U.weight,$=U.style,J=U.variant,Z={},re,ne=B._context.plotGlPixelRatio,j=O.texttemplate;if(j){Z.text=[];var ee=I._d3locale,ie=Array.isArray(j),fe=ie?Math.min(j.length,N):N,be=ie?function(et){return j[et]}:function(){return j};for(re=0;re<fe;re++){var Ae={i:re},Be=O._module.formatLabels(Ae,O,I),Ie={};p(Ie,O,re);var Ze=O._meta||{};Z.text.push(e.texttemplateString(be(re),Be,ee,Ie,Ae,Ze))}}else t(O.text)&&O.text.length<N?Z.text=O.text.slice():Z.text=O.text;if(t(Z.text))for(re=Z.text.length;re<N;re++)Z.text[re]="";for(Z.opacity=O.opacity,Z.font={},Z.align=[],Z.baseline=[],re=0;re<Q.length;re++){var at=Q[re].split(/\s+/);switch(at[1]){case"left":Z.align.push("right");break;case"right":Z.align.push("left");break;default:Z.align.push(at[1])}switch(at[0]){case"top":Z.baseline.push("bottom");break;case"bottom":Z.baseline.push("top");break;default:Z.baseline.push(at[0])}}if(t(ue))for(Z.color=new Array(N),re=0;re<N;re++)Z.color[re]=ue[re];else Z.color=ue;if(t(se)||Array.isArray(he)||t(G)||Array.isArray($)||Array.isArray(J))for(Z.font=new Array(N),re=0;re<N;re++){var it=Z.font[re]={};it.size=(e.isTypedArray(se)?se[re]:t(se)?g(se[re])?se[re]:0:se)*ne,it.family=Array.isArray(he)?he[re]:he,it.weight=_(t(G)?G[re]:G),it.style=Array.isArray($)?$[re]:$,it.variant=Array.isArray(J)?J[re]:J}else Z.font={size:se*ne,family:he,weight:_(G),style:$,variant:J};return Z}function _(B){return B<=1e3?B>500?"bold":"normal":B}function w(B,O){var I=O._length,N=O.marker,U={},W,Q=t(N.symbol),ue=t(N.angle),se=t(N.color),he=t(N.line.color),G=t(N.opacity),$=t(N.size),J=t(N.line.width),Z;if(Q||(Z=s.isOpenSymbol(N.symbol)),Q||se||he||G||ue){U.symbols=new Array(I),U.angles=new Array(I),U.colors=new Array(I),U.borderColors=new Array(I);var re=N.symbol,ne=N.angle,j=a(N,N.opacity,I),ee=a(N.line,N.opacity,I);if(!t(ee[0])){var ie=ee;for(ee=Array(I),W=0;W<I;W++)ee[W]=ie}if(!t(j[0])){var fe=j;for(j=Array(I),W=0;W<I;W++)j[W]=fe}if(!t(re)){var be=re;for(re=Array(I),W=0;W<I;W++)re[W]=be}if(!t(ne)){var Ae=ne;for(ne=Array(I),W=0;W<I;W++)ne[W]=Ae}for(U.symbols=re,U.angles=ne,U.colors=j,U.borderColors=ee,W=0;W<I;W++)Q&&(Z=s.isOpenSymbol(N.symbol[W])),Z&&(ee[W]=j[W].slice(),j[W]=j[W].slice(),j[W][3]=0);for(U.opacity=O.opacity,U.markers=new Array(I),W=0;W<I;W++)U.markers[W]=P({mx:U.symbols[W],ma:U.angles[W]},O)}else Z?(U.color=A(N.color,"uint8"),U.color[3]=0,U.borderColor=A(N.color,"uint8")):(U.color=A(N.color,"uint8"),U.borderColor=A(N.line.color,"uint8")),U.opacity=O.opacity*N.opacity,U.marker=P({mx:N.symbol,ma:N.angle},O);var Be=1,Ie=n(O,Be),Ze;if($||J){var at=U.sizes=new Array(I),it=U.borderSizes=new Array(I),et=0,lt;if($){for(W=0;W<I;W++)at[W]=Ie(N.size[W]),et+=at[W];lt=et/I}else for(Ze=Ie(N.size),W=0;W<I;W++)at[W]=Ze;if(J)for(W=0;W<I;W++)it[W]=N.line.width[W];else for(Ze=N.line.width,W=0;W<I;W++)it[W]=Ze;U.sizeAvg=lt}else U.size=Ie(N&&N.size||10),U.borderSizes=Ie(N.line.width);return U}function S(B,O,I){var N=O.marker,U={};return I&&(I.marker&&I.marker.symbol?U=w(B,e.extendFlat({},N,I.marker)):I.marker&&(I.marker.size&&(U.size=I.marker.size),I.marker.color&&(U.colors=I.marker.color),I.marker.opacity!==void 0&&(U.opacity=I.marker.opacity))),U}function E(B,O,I){var N={};if(!I)return N;if(I.textfont){var U={opacity:1,text:O.text,texttemplate:O.texttemplate,textposition:O.textposition,textfont:e.extendFlat({},O.textfont)};I.textfont&&e.extendFlat(U.textfont,I.textfont),N=l(B,U)}return N}function m(B,O,I){var N={capSize:O.width*2*I,lineWidth:O.thickness*I,color:O.color};return O.copy_ystyle&&(N=B.error_y),N}var b=c.SYMBOL_SDF_SIZE,d=c.SYMBOL_SIZE,u=c.SYMBOL_STROKE,y={},f=r.symbolFuncs[0](d*.05);function P(B,O){var I=B.mx;if(I==="circle")return null;var N,U,W=r.symbolNumber(I),Q=r.symbolFuncs[W%100],ue=!!r.symbolNoDot[W%100],se=!!r.symbolNoFill[W%100],he=s.isDotSymbol(I);if(B.ma&&(I+="_"+B.ma),y[I])return y[I];var G=r.getMarkerAngle(B,O);return he&&!ue?N=Q(d*1.1,G)+f:N=Q(d,G),U=x(N,{w:b,h:b,viewBox:[-d,-d,d,d],stroke:se?u:-u}),y[I]=U,U||null}function L(B,O,I){var N=I.length,U=N/2,W,Q;if(i.hasLines(O)&&U)if(O.line.shape==="hv"){for(W=[],Q=0;Q<U-1;Q++)isNaN(I[Q*2])||isNaN(I[Q*2+1])?W.push(NaN,NaN,NaN,NaN):(W.push(I[Q*2],I[Q*2+1]),!isNaN(I[Q*2+2])&&!isNaN(I[Q*2+3])?W.push(I[Q*2+2],I[Q*2+1]):W.push(NaN,NaN));W.push(I[N-2],I[N-1])}else if(O.line.shape==="hvh"){for(W=[],Q=0;Q<U-1;Q++)if(isNaN(I[Q*2])||isNaN(I[Q*2+1])||isNaN(I[Q*2+2])||isNaN(I[Q*2+3]))!isNaN(I[Q*2])&&!isNaN(I[Q*2+1])?W.push(I[Q*2],I[Q*2+1]):W.push(NaN,NaN),W.push(NaN,NaN);else{var ue=(I[Q*2]+I[Q*2+2])/2;W.push(I[Q*2],I[Q*2+1],ue,I[Q*2+1],ue,I[Q*2+3])}W.push(I[N-2],I[N-1])}else if(O.line.shape==="vhv"){for(W=[],Q=0;Q<U-1;Q++)if(isNaN(I[Q*2])||isNaN(I[Q*2+1])||isNaN(I[Q*2+2])||isNaN(I[Q*2+3]))!isNaN(I[Q*2])&&!isNaN(I[Q*2+1])?W.push(I[Q*2],I[Q*2+1]):W.push(NaN,NaN),W.push(NaN,NaN);else{var se=(I[Q*2+1]+I[Q*2+3])/2;W.push(I[Q*2],I[Q*2+1],I[Q*2],se,I[Q*2+2],se)}W.push(I[N-2],I[N-1])}else if(O.line.shape==="vh"){for(W=[],Q=0;Q<U-1;Q++)isNaN(I[Q*2])||isNaN(I[Q*2+1])?W.push(NaN,NaN,NaN,NaN):(W.push(I[Q*2],I[Q*2+1]),!isNaN(I[Q*2+2])&&!isNaN(I[Q*2+3])?W.push(I[Q*2],I[Q*2+3]):W.push(NaN,NaN));W.push(I[N-2],I[N-1])}else W=I;var he=!1;for(Q=0;Q<W.length;Q++)if(isNaN(W[Q])){he=!0;break}var G=he||W.length>c.TOO_MANY_POINTS||i.hasMarkers(O)?"rect":"round";if(he&&O.connectgaps){var $=W[0],J=W[1];for(Q=0;Q<W.length;Q+=2)isNaN(W[Q])||isNaN(W[Q+1])?(W[Q]=$,W[Q+1]=J):($=W[Q],J=W[Q+1])}return{join:G,positions:W}}function z(B,O,I,N,U){var W=M.getComponentMethod("errorbars","makeComputeError"),Q=o.getFromId(B,O.xaxis,"x"),ue=o.getFromId(B,O.yaxis,"y"),se=I.length/2,he={};function G($,J){var Z=J._id.charAt(0),re=O["error_"+Z];if(re&&re.visible&&(J.type==="linear"||J.type==="log")){for(var ne=W(re),j={x:0,y:1}[Z],ee={x:[0,1,2,3],y:[2,3,0,1]}[Z],ie=new Float64Array(4*se),fe=1/0,be=-1/0,Ae=0,Be=0;Ae<se;Ae++,Be+=4){var Ie=$[Ae];if(g(Ie)){var Ze=I[Ae*2+j],at=ne(Ie,Ae),it=at[0],et=at[1];if(g(it)&&g(et)){var lt=Ie-it,Me=Ie+et;ie[Be+ee[0]]=Ze-J.c2l(lt),ie[Be+ee[1]]=J.c2l(Me)-Ze,ie[Be+ee[2]]=0,ie[Be+ee[3]]=0,fe=Math.min(fe,Ie-it),be=Math.max(be,Ie+et)}}}he[Z]={positions:I,errors:ie,_bnds:[fe,be]}}}return G(N,Q),G(U,ue),he}function F(B,O,I,N){var U=O._length,W={},Q;if(i.hasMarkers(O)){var ue=I.font,se=I.align,he=I.baseline;for(W.offset=new Array(U),Q=0;Q<U;Q++){var G=N.sizes?N.sizes[Q]:N.size,$=t(ue)?ue[Q].size:ue.size,J=t(se)?se.length>1?se[Q]:se[0]:se,Z=t(he)?he.length>1?he[Q]:he[0]:he,re=v[J],ne=v[Z],j=G?G/.8+1:0,ee=-ne*j-ne*.5;W.offset[Q]=[re*j/$,ee/$]}}return W}H.exports={style:T,markerStyle:w,markerSelection:S,linePositions:L,errorBarPositions:z,textPosition:F}}}),z5=Ye({"src/traces/scattergl/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=M._scene,t={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},r={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return M._scene||(e=M._scene={},e.init=function(){g.extendFlat(e,r,t)},e.init(),e.update=function(a){var i=g.repeat(a,e.count);if(e.fill2d&&e.fill2d.update(i),e.scatter2d&&e.scatter2d.update(i),e.line2d&&e.line2d.update(i),e.error2d&&e.error2d.update(i.concat(i)),e.select2d&&e.select2d.update(i),e.glText)for(var n=0;n<e.count;n++)e.glText[n].update(a)},e.draw=function(){for(var a=e.count,i=e.fill2d,n=e.error2d,s=e.line2d,c=e.scatter2d,h=e.glText,v=e.select2d,p=e.selectBatch,T=e.unselectBatch,l=0;l<a;l++){if(i&&e.fillOrder[l]&&i.draw(e.fillOrder[l]),s&&e.lineOptions[l]&&s.draw(l),n&&(e.errorXOptions[l]&&n.draw(l),e.errorYOptions[l]&&n.draw(l+a)),c&&e.markerOptions[l])if(T[l].length){var _=g.repeat([],e.count);_[l]=T[l],c.draw(_)}else p[l].length||c.draw(l);h[l]&&e.textOptions[l]&&h[l].render()}v&&v.draw(p),e.dirty=!1},e.destroy=function(){e.fill2d&&e.fill2d.destroy&&e.fill2d.destroy(),e.scatter2d&&e.scatter2d.destroy&&e.scatter2d.destroy(),e.error2d&&e.error2d.destroy&&e.error2d.destroy(),e.line2d&&e.line2d.destroy&&e.line2d.destroy(),e.select2d&&e.select2d.destroy&&e.select2d.destroy(),e.glText&&e.glText.forEach(function(a){a.destroy&&a.destroy()}),e.lineOptions=null,e.fillOptions=null,e.markerOptions=null,e.markerSelectedOptions=null,e.markerUnselectedOptions=null,e.errorXOptions=null,e.errorYOptions=null,e.textOptions=null,e.textSelectedOptions=null,e.textUnselectedOptions=null,e.selectBatch=null,e.unselectBatch=null,M._scene=null}),e.dirty||g.extendFlat(e,t),e}}}),WU=Ye({"src/traces/scattergl/calc.js"(X,H){"use strict";var g=dT(),x=ta(),A=Xc(),M=Yd().findExtremes,e=tv(),t=Bd(),r=t.calcMarkerSize,o=t.calcAxisExpansion,a=t.setFirstScatter,i=Fd(),n=m0(),s=z5(),c=ks().BADNUM,h=mg().TOO_MANY_POINTS;H.exports=function(l,_){var w=l._fullLayout,S=_._xA=A.getFromId(l,_.xaxis,"x"),E=_._yA=A.getFromId(l,_.yaxis,"y"),m=w._plots[_.xaxis+_.yaxis],b=_._length,d=b>=h,u=b*2,y={},f,P=S.makeCalcdata(_,"x"),L=E.makeCalcdata(_,"y"),z=e(_,S,"x",P),F=e(_,E,"y",L),B=z.vals,O=F.vals;_._x=B,_._y=O,_.xperiodalignment&&(_._origX=P,_._xStarts=z.starts,_._xEnds=z.ends),_.yperiodalignment&&(_._origY=L,_._yStarts=F.starts,_._yEnds=F.ends);var I=new Array(u),N=new Array(b);for(f=0;f<b;f++)I[f*2]=B[f]===c?NaN:B[f],I[f*2+1]=O[f]===c?NaN:O[f],N[f]=f;if(S.type==="log")for(f=0;f<u;f+=2)I[f]=S.c2l(I[f]);if(E.type==="log")for(f=1;f<u;f+=2)I[f]=E.c2l(I[f]);d&&S.type!=="log"&&E.type!=="log"?y.tree=g(I):y.ids=N,i(l,_);var U=p(l,m,_,I,B,O),W=s(l,m);a(w,_);var Q;return d?U.marker&&(Q=U.marker.sizeAvg||Math.max(U.marker.size,3)):Q=r(_,b),o(l,_,S,E,B,O,Q),U.errorX&&v(_,S,U.errorX),U.errorY&&v(_,E,U.errorY),U.fill&&!W.fill2d&&(W.fill2d=!0),U.marker&&!W.scatter2d&&(W.scatter2d=!0),U.line&&!W.line2d&&(W.line2d=!0),(U.errorX||U.errorY)&&!W.error2d&&(W.error2d=!0),U.text&&!W.glText&&(W.glText=!0),U.marker&&(U.marker.snap=b),W.lineOptions.push(U.line),W.errorXOptions.push(U.errorX),W.errorYOptions.push(U.errorY),W.fillOptions.push(U.fill),W.markerOptions.push(U.marker),W.markerSelectedOptions.push(U.markerSel),W.markerUnselectedOptions.push(U.markerUnsel),W.textOptions.push(U.text),W.textSelectedOptions.push(U.textSel),W.textUnselectedOptions.push(U.textUnsel),W.selectBatch.push([]),W.unselectBatch.push([]),y._scene=W,y.index=W.count,y.x=B,y.y=O,y.positions=I,W.count++,[{x:!1,y:!1,t:y,trace:_}]};function v(T,l,_){var w=T._extremes[l._id],S=M(l,_._bnds,{padded:!0});w.min=w.min.concat(S.min),w.max=w.max.concat(S.max)}function p(T,l,_,w,S,E){var m=n.style(T,_);if(m.marker&&(m.marker.positions=w),m.line&&w.length>1&&x.extendFlat(m.line,n.linePositions(T,_,w)),m.errorX||m.errorY){var b=n.errorBarPositions(T,_,w,S,E);m.errorX&&x.extendFlat(m.errorX,b.x),m.errorY&&x.extendFlat(m.errorY,b.y)}return m.text&&(x.extendFlat(m.text,{positions:w},n.textPosition(T,_,m.text,m.marker)),x.extendFlat(m.textSel,{positions:w},n.textPosition(T,_,m.text,m.markerSel)),x.extendFlat(m.textUnsel,{positions:w},n.textPosition(T,_,m.text,m.markerUnsel))),m}}}),F5=Ye({"src/traces/scattergl/edit_style.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xm().DESELECTDIM;function M(e){var t=e[0],r=t.trace,o=t.t,a=o._scene,i=o.index,n=a.selectBatch[i],s=a.unselectBatch[i],c=a.textOptions[i],h=a.textSelectedOptions[i]||{},v=a.textUnselectedOptions[i]||{},p=g.extendFlat({},c),T,l;if(n.length||s.length){var _=h.color,w=v.color,S=c.color,E=g.isArrayOrTypedArray(S);for(p.color=new Array(r._length),T=0;T<n.length;T++)l=n[T],p.color[l]=_||(E?S[l]:S);for(T=0;T<s.length;T++){l=s[T];var m=E?S[l]:S;p.color[l]=w||(_?m:x.addOpacity(m,A))}}a.glText[i].update(p)}H.exports={styleTextSelection:M}}}),O5=Ye({"src/traces/scattergl/select.js"(X,H){"use strict";var g=uu(),x=F5().styleTextSelection;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n=t[0].t,s=i._length,c=n.x,h=n.y,v=n._scene,p=n.index;if(!v)return a;var T=g.hasText(i),l=g.hasMarkers(i),_=!l&&!T;if(i.visible!==!0||_)return a;var w=[],S=[];if(e!==!1&&!e.degenerate)for(var E=0;E<s;E++)e.contains([n.xpx[E],n.ypx[E]],!1,E,M)?(w.push(E),a.push({pointNumber:E,x:r.c2d(c[E]),y:o.c2d(h[E])})):S.push(E);if(l){var m=v.scatter2d;if(!w.length&&!S.length){var b=new Array(v.count);b[p]=v.markerOptions[p],m.update.apply(m,b)}else if(!v.selectBatch[p].length&&!v.unselectBatch[p].length){var d=new Array(v.count);d[p]=v.markerUnselectedOptions[p],m.update.apply(m,d)}}return v.selectBatch[p]=w,v.unselectBatch[p]=S,T&&x(t),a}}}),ZU=Ye({"src/traces/scattergl/base_index.js"(X,H){"use strict";var g=hT();H.exports={moduleType:"trace",name:"scattergl",basePlotModule:Pf(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:yx(),supplyDefaults:IU(),crossTraceDefaults:RS(),colorbar:cp(),formatLabels:RU(),calc:WU(),hoverPoints:g.hoverPoints,selectPoints:O5(),meta:{}}}}),XU=Ye({"node_modules/color-id/index.js"(X,H){"use strict";var g=dx();H.exports=x,H.exports.to=x,H.exports.from=A;function x(M,e){e==null&&(e=!0);var t=M[0],r=M[1],o=M[2],a=M[3];a==null&&(a=e?1:255),e&&(t*=255,r*=255,o*=255,a*=255),t=g(t,0,255)&255,r=g(r,0,255)&255,o=g(o,0,255)&255,a=g(a,0,255)&255;var i=t*16777216+(r<<16)+(o<<8)+a;return i}function A(M,e){M=+M;var t=M>>>24,r=(M&16711680)>>>16,o=(M&65280)>>>8,a=M&255;return e===!1?[t,r,o,a]:[t/255,r/255,o/255,a/255]}}}),Wf=Ye({"node_modules/object-assign/index.js"(X,H){"use strict";var g=Object.getOwnPropertySymbols,x=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable;function M(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function e(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var r={},o=0;o<10;o++)r["_"+String.fromCharCode(o)]=o;var a=Object.getOwnPropertyNames(r).map(function(n){return r[n]});if(a.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(n){i[n]=n}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}H.exports=e()?Object.assign:function(t,r){for(var o,a=M(t),i,n=1;n<arguments.length;n++){o=Object(arguments[n]);for(var s in o)x.call(o,s)&&(a[s]=o[s]);if(g){i=g(o);for(var c=0;c<i.length;c++)A.call(o,i[c])&&(a[i[c]]=o[i[c]])}}return a}}}),YU=Ye({"node_modules/glslify/browser.js"(X,H){H.exports=function(g){typeof g=="string"&&(g=[g]);for(var x=[].slice.call(arguments,1),A=[],M=0;M<g.length-1;M++)A.push(g[M],x[M]||"");return A.push(g[M]),A.join("")}}}),B5=Ye({"node_modules/update-diff/index.js"(X,H){"use strict";H.exports=function(x,A,M){Array.isArray(M)||(M=[].slice.call(arguments,2));for(var e=0,t=M.length;e<t;e++){var r=M[e];for(var o in r)if(!(A[o]!==void 0&&!Array.isArray(A[o])&&x[o]===A[o])&&o in A){var a;if(r[o]===!0)a=A[o];else{if(r[o]===!1)continue;if(typeof r[o]=="function"&&(a=r[o](A[o],x,A),a===void 0))continue}x[o]=a}}return x}}}),KU=Ye({"node_modules/is-iexplorer/index.js"(X,H){"use strict";H.exports=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))}}),vT=Ye({"node_modules/to-float32/index.js"(X,H){"use strict";H.exports=A,H.exports.float32=H.exports.float=A,H.exports.fract32=H.exports.fract=x;var g=new Float32Array(1);function x(M,e){if(M.length){if(M instanceof Float32Array)return new Float32Array(M.length);e instanceof Float32Array||(e=A(M));for(var t=0,r=e.length;t<r;t++)e[t]=M[t]-e[t];return e}return A(M-A(M))}function A(M){return M.length?M instanceof Float32Array?M:new Float32Array(M):(g[0]=M,g[0])}}}),N5=Ye({"node_modules/regl-scatter2d/bundle.js"(X,H){"use strict";function g(y,f){var P=y==null?null:typeof Symbol<"u"&&y[Symbol.iterator]||y["@@iterator"];if(P!=null){var L,z,F,B,O=[],I=!0,N=!1;try{if(F=(P=P.call(y)).next,f===0){if(Object(P)!==P)return;I=!1}else for(;!(I=(L=F.call(P)).done)&&(O.push(L.value),O.length!==f);I=!0);}catch(U){N=!0,z=U}finally{try{if(!I&&P.return!=null&&(B=P.return(),Object(B)!==B))return}finally{if(N)throw z}}return O}}function x(y,f){return e(y)||g(y,f)||r(y,f)||i()}function A(y){return M(y)||t(y)||r(y)||a()}function M(y){if(Array.isArray(y))return o(y)}function e(y){if(Array.isArray(y))return y}function t(y){if(typeof Symbol<"u"&&y[Symbol.iterator]!=null||y["@@iterator"]!=null)return Array.from(y)}function r(y,f){if(y){if(typeof y=="string")return o(y,f);var P=Object.prototype.toString.call(y).slice(8,-1);if(P==="Object"&&y.constructor&&(P=y.constructor.name),P==="Map"||P==="Set")return Array.from(y);if(P==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(P))return o(y,f)}}function o(y,f){(f==null||f>y.length)&&(f=y.length);for(var P=0,L=new Array(f);P<f;P++)L[P]=y[P];return L}function a(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function i(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var n=hg(),s=d0(),c=XU(),h=dT(),v=Wf(),p=YU(),T=Ev(),l=B5(),_=v0(),w=KU(),S=vT(),E=E1(),m=b;function b(y,f){var P=this;if(!(this instanceof b))return new b(y,f);typeof y=="function"?(f||(f={}),f.regl=y):(f=y,y=null),f&&f.length&&(f.positions=f),y=f.regl;var L=y._gl,z,F=[],B={},O=[],I=[null],N=[null],U=255,W=100;this.tooManyColors=w,z=y.texture({data:new Uint8Array(U*4),width:U,height:1,type:"uint8",format:"rgba",wrapS:"clamp",wrapT:"clamp",mag:"nearest",min:"nearest"}),v(this,{regl:y,gl:L,groups:O,markerCache:N,markerTextures:I,palette:F,paletteIds:B,paletteTexture:z,maxColors:U,maxSize:W,canvas:L.canvas}),this.update(f);var Q={uniforms:{constPointSize:!!f.constPointSize,opacity:y.prop("opacity"),paletteSize:function(G,$){return[P.tooManyColors?0:U,z.height]},pixelRatio:y.context("pixelRatio"),scale:y.prop("scale"),scaleFract:y.prop("scaleFract"),translate:y.prop("translate"),translateFract:y.prop("translateFract"),markerTexture:y.prop("markerTexture"),paletteTexture:z},attributes:{x:function(G,$){return $.xAttr||{buffer:$.positionBuffer,stride:8,offset:0}},y:function(G,$){return $.yAttr||{buffer:$.positionBuffer,stride:8,offset:4}},xFract:function(G,$){return $.xAttr?{constant:[0,0]}:{buffer:$.positionFractBuffer,stride:8,offset:0}},yFract:function(G,$){return $.yAttr?{constant:[0,0]}:{buffer:$.positionFractBuffer,stride:8,offset:4}},size:function(G,$){return $.size.length?{buffer:$.sizeBuffer,stride:2,offset:0}:{constant:[Math.round($.size*255/P.maxSize)]}},borderSize:function(G,$){return $.borderSize.length?{buffer:$.sizeBuffer,stride:2,offset:1}:{constant:[Math.round($.borderSize*255/P.maxSize)]}},colorId:function(G,$){return $.color.length?{buffer:$.colorBuffer,stride:P.tooManyColors?8:4,offset:0}:{constant:P.tooManyColors?F.slice($.color*4,$.color*4+4):[$.color]}},borderColorId:function(G,$){return $.borderColor.length?{buffer:$.colorBuffer,stride:P.tooManyColors?8:4,offset:P.tooManyColors?4:2}:{constant:P.tooManyColors?F.slice($.borderColor*4,$.borderColor*4+4):[$.borderColor]}},isActive:function(G,$){return $.activation===!0?{constant:[1]}:$.activation?$.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},scissor:{enable:!0,box:y.prop("viewport")},viewport:y.prop("viewport"),stencil:{enable:!1},depth:{enable:!1},elements:y.prop("elements"),count:y.prop("count"),offset:y.prop("offset"),primitive:"points"},ue=v({},Q);ue.frag=p([`precision highp float;
+#define GLSLIFY 1
+
+uniform float opacity;
+uniform sampler2D markerTexture;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragWidth, fragBorderColorLevel, fragColorLevel;
+
+float smoothStep(float x, float y) {
+ return 1.0 / (1.0 + exp(50.0*(x - y)));
+}
+
+void main() {
+ float dist = texture2D(markerTexture, gl_PointCoord).r, delta = fragWidth;
+
+ // max-distance alpha
+ if (dist < 0.003) discard;
+
+ // null-border case
+ if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {
+ float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);
+ gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);
+ }
+ else {
+ float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);
+ float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);
+
+ vec4 color = fragBorderColor;
+ color.a *= borderColorAmt;
+ color = mix(color, fragColor, colorAmt);
+ color.a *= opacity;
+
+ gl_FragColor = color;
+ }
+
+}
+`]),ue.vert=p([`precision highp float;
+#define GLSLIFY 1
+
+attribute float x, y, xFract, yFract;
+attribute float size, borderSize;
+attribute vec4 colorId, borderColorId;
+attribute float isActive;
+
+// \`invariant\` effectively turns off optimizations for the position.
+// We need this because -fast-math on M1 Macs is re-ordering
+// floating point operations in a way that causes floating point
+// precision limits to put points in the wrong locations.
+invariant gl_Position;
+
+uniform bool constPointSize;
+uniform float pixelRatio;
+uniform vec2 scale, scaleFract, translate, translateFract, paletteSize;
+uniform sampler2D paletteTexture;
+
+const float maxSize = 100.;
+const float borderLevel = .5;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;
+
+float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
+
+bool isDirect = (paletteSize.x < 1.);
+
+vec4 getColor(vec4 id) {
+ return isDirect ? id / 255. : texture2D(paletteTexture,
+ vec2(
+ (id.x + .5) / paletteSize.x,
+ (id.y + .5) / paletteSize.y
+ )
+ );
+}
+
+void main() {
+ // ignore inactive points
+ if (isActive == 0.) return;
+
+ vec2 position = vec2(x, y);
+ vec2 positionFract = vec2(xFract, yFract);
+
+ vec4 color = getColor(colorId);
+ vec4 borderColor = getColor(borderColorId);
+
+ float size = size * maxSize / 255.;
+ float borderSize = borderSize * maxSize / 255.;
+
+ gl_PointSize = 2. * size * pointSizeScale;
+ fragPointSize = size * pixelRatio;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ gl_Position = vec4(pos * 2. - 1., 0., 1.);
+
+ fragColor = color;
+ fragBorderColor = borderColor;
+ fragWidth = 1. / gl_PointSize;
+
+ fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);
+ fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);
+}
+`]),this.drawMarker=y(ue);var se=v({},Q);se.frag=p([`precision highp float;
+#define GLSLIFY 1
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragBorderRadius, fragWidth;
+
+uniform float opacity;
+
+float smoothStep(float edge0, float edge1, float x) {
+ float t;
+ t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
+ return t * t * (3.0 - 2.0 * t);
+}
+
+void main() {
+ float radius, alpha = 1.0, delta = fragWidth;
+
+ radius = length(2.0 * gl_PointCoord.xy - 1.0);
+
+ if (radius > 1.0 + delta) {
+ discard;
+ }
+
+ alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);
+
+ float borderRadius = fragBorderRadius;
+ float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);
+ vec4 color = mix(fragColor, fragBorderColor, ratio);
+ color.a *= alpha * opacity;
+ gl_FragColor = color;
+}
+`]),se.vert=p([`precision highp float;
+#define GLSLIFY 1
+
+attribute float x, y, xFract, yFract;
+attribute float size, borderSize;
+attribute vec4 colorId, borderColorId;
+attribute float isActive;
+
+// \`invariant\` effectively turns off optimizations for the position.
+// We need this because -fast-math on M1 Macs is re-ordering
+// floating point operations in a way that causes floating point
+// precision limits to put points in the wrong locations.
+invariant gl_Position;
+
+uniform bool constPointSize;
+uniform float pixelRatio;
+uniform vec2 paletteSize, scale, scaleFract, translate, translateFract;
+uniform sampler2D paletteTexture;
+
+const float maxSize = 100.;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragBorderRadius, fragWidth;
+
+float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
+
+bool isDirect = (paletteSize.x < 1.);
+
+vec4 getColor(vec4 id) {
+ return isDirect ? id / 255. : texture2D(paletteTexture,
+ vec2(
+ (id.x + .5) / paletteSize.x,
+ (id.y + .5) / paletteSize.y
+ )
+ );
+}
+
+void main() {
+ // ignore inactive points
+ if (isActive == 0.) return;
+
+ vec2 position = vec2(x, y);
+ vec2 positionFract = vec2(xFract, yFract);
+
+ vec4 color = getColor(colorId);
+ vec4 borderColor = getColor(borderColorId);
+
+ float size = size * maxSize / 255.;
+ float borderSize = borderSize * maxSize / 255.;
+
+ gl_PointSize = (size + borderSize) * pointSizeScale;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ gl_Position = vec4(pos * 2. - 1., 0., 1.);
+
+ fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);
+ fragColor = color;
+ fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;
+ fragWidth = 1. / gl_PointSize;
+}
+`]),w&&(se.frag=se.frag.replace("smoothstep","smoothStep"),ue.frag=ue.frag.replace("smoothstep","smoothStep")),this.drawCircle=y(se)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;L<f;L++)P[L]=arguments[L];var z=this.groups;if(P.length===1&&Array.isArray(P[0])&&(P[0][0]===null||Array.isArray(P[0][0]))&&(P=P[0]),this.regl._refresh(),P.length)for(var F=0;F<P.length;F++)this.drawItem(F,P[F]);else z.forEach(function(B,O){y.drawItem(O)});return this},b.prototype.drawItem=function(y,f){var P=this.groups,L=P[y];if(typeof f=="number"&&(y=f,L=P[f],f=null),!!(L&&L.count&&L.opacity)){L.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,L,f));for(var z=[],F=1;F<L.activation.length;F++)!L.activation[F]||L.activation[F]!==!0&&!L.activation[F].data.length||z.push.apply(z,A(this.getMarkerDrawOptions(F,L,f)));z.length&&this.drawMarker(z)}},b.prototype.getMarkerDrawOptions=function(y,f,P){var L=f.range,z=f.tree,F=f.viewport,B=f.activation,O=f.selectionBuffer,I=f.count,N=this.regl;if(!z)return P?[v({},f,{markerTexture:this.markerTextures[y],activation:B[y],count:P.length,elements:P,offset:0})]:[v({},f,{markerTexture:this.markerTextures[y],activation:B[y],offset:0})];var U=[],W=z.range(L,{lod:!0,px:[(L[2]-L[0])/F.width,(L[3]-L[1])/F.height]});if(P){for(var Q=B[y],ue=Q.data,se=new Uint8Array(I),he=0;he<P.length;he++){var G=P[he];se[G]=ue?ue[G]:1}O.subdata(se)}for(var $=W.length;$--;){var J=x(W[$],2),Z=J[0],re=J[1];U.push(v({},f,{markerTexture:this.markerTextures[y],activation:P?O:B[y],offset:Z,count:re-Z}))}return U},b.prototype.update=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;L<f;L++)P[L]=arguments[L];if(P.length){P.length===1&&Array.isArray(P[0])&&(P=P[0]);var z=this.groups,F=this.gl,B=this.regl,O=this.maxSize,I=this.maxColors,N=this.palette;this.groups=z=P.map(function(U,W){var Q=z[W];if(U===void 0)return Q;U===null?U={positions:null}:typeof U=="function"?U={ondraw:U}:typeof U[0]=="number"&&(U={positions:U}),U=T(U,{positions:"positions data points",snap:"snap cluster lod tree",size:"sizes size radius",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",color:"colors color fill fill-color fillColor",borderColor:"borderColors borderColor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range dataBox databox",viewport:"viewport viewPort viewBox viewbox",opacity:"opacity alpha transparency",bounds:"bound bounds boundaries limits",tooManyColors:"tooManyColors palette paletteMode optimizePalette enablePalette"}),U.positions===null&&(U.positions=[]),U.tooManyColors!=null&&(y.tooManyColors=U.tooManyColors),Q||(z[W]=Q={id:W,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:B.buffer({data:new Uint8Array(0),usage:"stream",type:"uint8"}),sizeBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),colorBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),positionBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"}),positionFractBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"})},U=v({},b.defaults,U)),U.positions&&!("marker"in U)&&(U.marker=Q.marker,delete Q.marker),U.marker&&!("positions"in U)&&(U.positions=Q.positions,delete Q.positions);var ue=0,se=0;if(l(Q,U,[{snap:!0,size:function(et,lt){return et==null&&(et=b.defaults.size),ue+=et&&et.length?1:0,et},borderSize:function(et,lt){return et==null&&(et=b.defaults.borderSize),ue+=et&&et.length?1:0,et},opacity:parseFloat,color:function(et,lt){return et==null&&(et=b.defaults.color),et=y.updateColor(et),se++,et},borderColor:function(et,lt){return et==null&&(et=b.defaults.borderColor),et=y.updateColor(et),se++,et},bounds:function(et,lt,Me){return"range"in Me||(Me.range=null),et},positions:function(et,lt,Me){var ge=lt.snap,ce=lt.positionBuffer,ze=lt.positionFractBuffer,tt=lt.selectionBuffer;if(et.x||et.y)return et.x.length?lt.xAttr={buffer:B.buffer(et.x),offset:0,stride:4,count:et.x.length}:lt.xAttr={buffer:et.x.buffer,offset:et.x.offset*4||0,stride:(et.x.stride||1)*4,count:et.x.count},et.y.length?lt.yAttr={buffer:B.buffer(et.y),offset:0,stride:4,count:et.y.length}:lt.yAttr={buffer:et.y.buffer,offset:et.y.offset*4||0,stride:(et.y.stride||1)*4,count:et.y.count},lt.count=Math.max(lt.xAttr.count,lt.yAttr.count),et;et=_(et,"float64");var nt=lt.count=Math.floor(et.length/2),Qe=lt.bounds=nt?s(et,2):null;if(!Me.range&&!lt.range&&(delete lt.range,Me.range=Qe),!Me.marker&&!lt.marker&&(delete lt.marker,Me.marker=null),ge&&(ge===!0||nt>ge)?lt.tree=h(et,{bounds:Qe}):ge&&ge.length&&(lt.tree=ge),lt.tree){var Ct={primitive:"points",usage:"static",data:lt.tree,type:"uint32"};lt.elements?lt.elements(Ct):lt.elements=B.elements(Ct)}var St=S.float32(et);ce({data:St,usage:"dynamic"});var Ot=S.fract32(et,St);return ze({data:Ot,usage:"dynamic"}),tt({data:new Uint8Array(nt),type:"uint8",usage:"stream"}),et}},{marker:function(et,lt,Me){var ge=lt.activation;if(ge.forEach(function(Ot){return Ot&&Ot.destroy&&Ot.destroy()}),ge.length=0,!et||typeof et[0]=="number"){var ce=y.addMarker(et);ge[ce]=!0}else{for(var ze=[],tt=0,nt=Math.min(et.length,lt.count);tt<nt;tt++){var Qe=y.addMarker(et[tt]);ze[Qe]||(ze[Qe]=new Uint8Array(lt.count)),ze[Qe][tt]=1}for(var Ct=0;Ct<ze.length;Ct++)if(ze[Ct]){var St={data:ze[Ct],type:"uint8",usage:"static"};ge[Ct]?ge[Ct](St):ge[Ct]=B.buffer(St),ge[Ct].data=ze[Ct]}}return et},range:function(et,lt,Me){var ge=lt.bounds;if(ge)return et||(et=ge),lt.scale=[1/(et[2]-et[0]),1/(et[3]-et[1])],lt.translate=[-et[0],-et[1]],lt.scaleFract=S.fract(lt.scale),lt.translateFract=S.fract(lt.translate),et},viewport:function(et){var lt=E(et||[F.drawingBufferWidth,F.drawingBufferHeight]);return lt}}]),ue){var he=Q,G=he.count,$=he.size,J=he.borderSize,Z=he.sizeBuffer,re=new Uint8Array(G*2);if($.length||J.length)for(var ne=0;ne<G;ne++)re[ne*2]=Math.round(($[ne]==null?$:$[ne])*255/O),re[ne*2+1]=Math.round((J[ne]==null?J:J[ne])*255/O);Z({data:re,usage:"dynamic"})}if(se){var j=Q,ee=j.count,ie=j.color,fe=j.borderColor,be=j.colorBuffer,Ae;if(y.tooManyColors){if(ie.length||fe.length){Ae=new Uint8Array(ee*8);for(var Be=0;Be<ee;Be++){var Ie=ie[Be];Ae[Be*8]=N[Ie*4],Ae[Be*8+1]=N[Ie*4+1],Ae[Be*8+2]=N[Ie*4+2],Ae[Be*8+3]=N[Ie*4+3];var Ze=fe[Be];Ae[Be*8+4]=N[Ze*4],Ae[Be*8+5]=N[Ze*4+1],Ae[Be*8+6]=N[Ze*4+2],Ae[Be*8+7]=N[Ze*4+3]}}}else if(ie.length||fe.length){Ae=new Uint8Array(ee*4+2);for(var at=0;at<ee;at++)ie[at]!=null&&(Ae[at*4]=ie[at]%I,Ae[at*4+1]=Math.floor(ie[at]/I)),fe[at]!=null&&(Ae[at*4+2]=fe[at]%I,Ae[at*4+3]=Math.floor(fe[at]/I))}be({data:Ae||new Uint8Array(0),type:"uint8",usage:"dynamic"})}return Q})}},b.prototype.addMarker=function(y){var f=this.markerTextures,P=this.regl,L=this.markerCache,z=y==null?0:L.indexOf(y);if(z>=0)return z;var F;if(y instanceof Uint8Array||y instanceof Uint8ClampedArray)F=y;else{F=new Uint8Array(y.length);for(var B=0,O=y.length;B<O;B++)F[B]=y[B]*255}var I=Math.floor(Math.sqrt(F.length));return z=f.length,L.push(y),f.push(P.texture({channels:1,data:F,radius:I,mag:"linear",min:"linear"})),z},b.prototype.updateColor=function(y){var f=this.paletteIds,P=this.palette,L=this.maxColors;Array.isArray(y)||(y=[y]);var z=[];if(typeof y[0]=="number"){var F=[];if(Array.isArray(y))for(var B=0;B<y.length;B+=4)F.push(y.slice(B,B+4));else for(var O=0;O<y.length;O+=4)F.push(y.subarray(O,O+4));y=F}for(var I=0;I<y.length;I++){var N=y[I];N=n(N,"uint8");var U=c(N,!1);if(f[U]==null){var W=P.length;f[U]=Math.floor(W/4),P[W]=N[0],P[W+1]=N[1],P[W+2]=N[2],P[W+3]=N[3]}z[I]=f[U]}return!this.tooManyColors&&P.length>L*4&&(this.tooManyColors=!0),this.updatePalette(P),z.length===1?z[0]:z},b.prototype.updatePalette=function(y){if(!this.tooManyColors){var f=this.maxColors,P=this.paletteTexture,L=Math.ceil(y.length*.25/f);if(L>1){y=y.slice();for(var z=y.length*.25%f;z<L*f;z++)y.push(0,0,0,0)}P.height<L&&P.resize(f,L),P.subimage({width:Math.min(y.length*.25,f),height:L,data:y},0,0)}},b.prototype.destroy=function(){return this.groups.forEach(function(y){y.sizeBuffer.destroy(),y.positionBuffer.destroy(),y.positionFractBuffer.destroy(),y.colorBuffer.destroy(),y.activation.forEach(function(f){return f&&f.destroy&&f.destroy()}),y.selectionBuffer.destroy(),y.elements&&y.elements.destroy()}),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach(function(y){return y&&y.destroy&&y.destroy()}),this};var d=Wf(),u=function(f,P){var L=new m(f,P),z=L.render.bind(L);return d(z,{render:z,update:L.update.bind(L),draw:L.draw.bind(L),destroy:L.destroy.bind(L),regl:L.regl,gl:L.gl,canvas:L.gl.canvas,groups:L.groups,markers:L.markerCache,palette:L.palette}),z};H.exports=u}}),JU=Ye({"node_modules/earcut/src/earcut.js"(X,H){"use strict";H.exports=g,H.exports.default=g;function g(B,O,I){I=I||2;var N=O&&O.length,U=N?O[0]*I:B.length,W=x(B,0,U,I,!0),Q=[];if(!W||W.next===W.prev)return Q;var ue,se,he,G,$,J,Z;if(N&&(W=a(B,O,W,I)),B.length>80*I){ue=he=B[0],se=G=B[1];for(var re=I;re<U;re+=I)$=B[re],J=B[re+1],$<ue&&(ue=$),J<se&&(se=J),$>he&&(he=$),J>G&&(G=J);Z=Math.max(he-ue,G-se),Z=Z!==0?32767/Z:0}return M(W,Q,I,ue,se,Z,0),Q}function x(B,O,I,N,U){var W,Q;if(U===F(B,O,I,N)>0)for(W=O;W<I;W+=N)Q=P(W,B[W],B[W+1],Q);else for(W=I-N;W>=O;W-=N)Q=P(W,B[W],B[W+1],Q);return Q&&S(Q,Q.next)&&(L(Q),Q=Q.next),Q}function A(B,O){if(!B)return B;O||(O=B);var I=B,N;do if(N=!1,!I.steiner&&(S(I,I.next)||w(I.prev,I,I.next)===0)){if(L(I),I=O=I.prev,I===I.next)break;N=!0}else I=I.next;while(N||I!==O);return O}function M(B,O,I,N,U,W,Q){if(B){!Q&&W&&h(B,N,U,W);for(var ue=B,se,he;B.prev!==B.next;){if(se=B.prev,he=B.next,W?t(B,N,U,W):e(B)){O.push(se.i/I|0),O.push(B.i/I|0),O.push(he.i/I|0),L(B),B=he.next,ue=he.next;continue}if(B=he,B===ue){Q?Q===1?(B=r(A(B),O,I),M(B,O,I,N,U,W,2)):Q===2&&o(B,O,I,N,U,W):M(A(B),O,I,N,U,W,1);break}}}}function e(B){var O=B.prev,I=B,N=B.next;if(w(O,I,N)>=0)return!1;for(var U=O.x,W=I.x,Q=N.x,ue=O.y,se=I.y,he=N.y,G=U<W?U<Q?U:Q:W<Q?W:Q,$=ue<se?ue<he?ue:he:se<he?se:he,J=U>W?U>Q?U:Q:W>Q?W:Q,Z=ue>se?ue>he?ue:he:se>he?se:he,re=N.next;re!==O;){if(re.x>=G&&re.x<=J&&re.y>=$&&re.y<=Z&&l(U,ue,W,se,Q,he,re.x,re.y)&&w(re.prev,re,re.next)>=0)return!1;re=re.next}return!0}function t(B,O,I,N){var U=B.prev,W=B,Q=B.next;if(w(U,W,Q)>=0)return!1;for(var ue=U.x,se=W.x,he=Q.x,G=U.y,$=W.y,J=Q.y,Z=ue<se?ue<he?ue:he:se<he?se:he,re=G<$?G<J?G:J:$<J?$:J,ne=ue>se?ue>he?ue:he:se>he?se:he,j=G>$?G>J?G:J:$>J?$:J,ee=p(Z,re,O,I,N),ie=p(ne,j,O,I,N),fe=B.prevZ,be=B.nextZ;fe&&fe.z>=ee&&be&&be.z<=ie;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0||(fe=fe.prevZ,be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0))return!1;be=be.nextZ}for(;fe&&fe.z>=ee;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0)return!1;fe=fe.prevZ}for(;be&&be.z<=ie;){if(be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0)return!1;be=be.nextZ}return!0}function r(B,O,I){var N=B;do{var U=N.prev,W=N.next.next;!S(U,W)&&E(U,N,N.next,W)&&u(U,W)&&u(W,U)&&(O.push(U.i/I|0),O.push(N.i/I|0),O.push(W.i/I|0),L(N),L(N.next),N=B=W),N=N.next}while(N!==B);return A(N)}function o(B,O,I,N,U,W){var Q=B;do{for(var ue=Q.next.next;ue!==Q.prev;){if(Q.i!==ue.i&&_(Q,ue)){var se=f(Q,ue);Q=A(Q,Q.next),se=A(se,se.next),M(Q,O,I,N,U,W,0),M(se,O,I,N,U,W,0);return}ue=ue.next}Q=Q.next}while(Q!==B)}function a(B,O,I,N){var U=[],W,Q,ue,se,he;for(W=0,Q=O.length;W<Q;W++)ue=O[W]*N,se=W<Q-1?O[W+1]*N:B.length,he=x(B,ue,se,N,!1),he===he.next&&(he.steiner=!0),U.push(T(he));for(U.sort(i),W=0;W<U.length;W++)I=n(U[W],I);return I}function i(B,O){return B.x-O.x}function n(B,O){var I=s(B,O);if(!I)return O;var N=f(I,B);return A(N,N.next),A(I,I.next)}function s(B,O){var I=O,N=B.x,U=B.y,W=-1/0,Q;do{if(U<=I.y&&U>=I.next.y&&I.next.y!==I.y){var ue=I.x+(U-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(ue<=N&&ue>W&&(W=ue,Q=I.x<I.next.x?I:I.next,ue===N))return Q}I=I.next}while(I!==O);if(!Q)return null;var se=Q,he=Q.x,G=Q.y,$=1/0,J;I=Q;do N>=I.x&&I.x>=he&&N!==I.x&&l(U<G?N:W,U,he,G,U<G?W:N,U,I.x,I.y)&&(J=Math.abs(U-I.y)/(N-I.x),u(I,B)&&(J<$||J===$&&(I.x>Q.x||I.x===Q.x&&c(Q,I)))&&(Q=I,$=J)),I=I.next;while(I!==se);return Q}function c(B,O){return w(B.prev,B,O.prev)<0&&w(O.next,B,B.next)<0}function h(B,O,I,N){var U=B;do U.z===0&&(U.z=p(U.x,U.y,O,I,N)),U.prevZ=U.prev,U.nextZ=U.next,U=U.next;while(U!==B);U.prevZ.nextZ=null,U.prevZ=null,v(U)}function v(B){var O,I,N,U,W,Q,ue,se,he=1;do{for(I=B,B=null,W=null,Q=0;I;){for(Q++,N=I,ue=0,O=0;O<he&&(ue++,N=N.nextZ,!!N);O++);for(se=he;ue>0||se>0&&N;)ue!==0&&(se===0||!N||I.z<=N.z)?(U=I,I=I.nextZ,ue--):(U=N,N=N.nextZ,se--),W?W.nextZ=U:B=U,U.prevZ=W,W=U;I=N}W.nextZ=null,he*=2}while(Q>1);return B}function p(B,O,I,N,U){return B=(B-I)*U|0,O=(O-N)*U|0,B=(B|B<<8)&16711935,B=(B|B<<4)&252645135,B=(B|B<<2)&858993459,B=(B|B<<1)&1431655765,O=(O|O<<8)&16711935,O=(O|O<<4)&252645135,O=(O|O<<2)&858993459,O=(O|O<<1)&1431655765,B|O<<1}function T(B){var O=B,I=B;do(O.x<I.x||O.x===I.x&&O.y<I.y)&&(I=O),O=O.next;while(O!==B);return I}function l(B,O,I,N,U,W,Q,ue){return(U-Q)*(O-ue)>=(B-Q)*(W-ue)&&(B-Q)*(N-ue)>=(I-Q)*(O-ue)&&(I-Q)*(W-ue)>=(U-Q)*(N-ue)}function _(B,O){return B.next.i!==O.i&&B.prev.i!==O.i&&!d(B,O)&&(u(B,O)&&u(O,B)&&y(B,O)&&(w(B.prev,B,O.prev)||w(B,O.prev,O))||S(B,O)&&w(B.prev,B,B.next)>0&&w(O.prev,O,O.next)>0)}function w(B,O,I){return(O.y-B.y)*(I.x-O.x)-(O.x-B.x)*(I.y-O.y)}function S(B,O){return B.x===O.x&&B.y===O.y}function E(B,O,I,N){var U=b(w(B,O,I)),W=b(w(B,O,N)),Q=b(w(I,N,B)),ue=b(w(I,N,O));return!!(U!==W&&Q!==ue||U===0&&m(B,I,O)||W===0&&m(B,N,O)||Q===0&&m(I,B,N)||ue===0&&m(I,O,N))}function m(B,O,I){return O.x<=Math.max(B.x,I.x)&&O.x>=Math.min(B.x,I.x)&&O.y<=Math.max(B.y,I.y)&&O.y>=Math.min(B.y,I.y)}function b(B){return B>0?1:B<0?-1:0}function d(B,O){var I=B;do{if(I.i!==B.i&&I.next.i!==B.i&&I.i!==O.i&&I.next.i!==O.i&&E(I,I.next,B,O))return!0;I=I.next}while(I!==B);return!1}function u(B,O){return w(B.prev,B,B.next)<0?w(B,O,B.next)>=0&&w(B,B.prev,O)>=0:w(B,O,B.prev)<0||w(B,B.next,O)<0}function y(B,O){var I=B,N=!1,U=(B.x+O.x)/2,W=(B.y+O.y)/2;do I.y>W!=I.next.y>W&&I.next.y!==I.y&&U<(I.next.x-I.x)*(W-I.y)/(I.next.y-I.y)+I.x&&(N=!N),I=I.next;while(I!==B);return N}function f(B,O){var I=new z(B.i,B.x,B.y),N=new z(O.i,O.x,O.y),U=B.next,W=O.prev;return B.next=O,O.prev=B,I.next=U,U.prev=I,N.next=I,I.prev=N,W.next=N,N.prev=W,N}function P(B,O,I,N){var U=new z(B,O,I);return N?(U.next=N.next,U.prev=N,N.next.prev=U,N.next=U):(U.prev=U,U.next=U),U}function L(B){B.next.prev=B.prev,B.prev.next=B.next,B.prevZ&&(B.prevZ.nextZ=B.nextZ),B.nextZ&&(B.nextZ.prevZ=B.prevZ)}function z(B,O,I){this.i=B,this.x=O,this.y=I,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}g.deviation=function(B,O,I,N){var U=O&&O.length,W=U?O[0]*I:B.length,Q=Math.abs(F(B,0,W,I));if(U)for(var ue=0,se=O.length;ue<se;ue++){var he=O[ue]*I,G=ue<se-1?O[ue+1]*I:B.length;Q-=Math.abs(F(B,he,G,I))}var $=0;for(ue=0;ue<N.length;ue+=3){var J=N[ue]*I,Z=N[ue+1]*I,re=N[ue+2]*I;$+=Math.abs((B[J]-B[re])*(B[Z+1]-B[J+1])-(B[J]-B[Z])*(B[re+1]-B[J+1]))}return Q===0&&$===0?0:Math.abs(($-Q)/Q)};function F(B,O,I,N){for(var U=0,W=O,Q=I-N;W<I;W+=N)U+=(B[Q]-B[W])*(B[W+1]+B[Q+1]),Q=W;return U}g.flatten=function(B){for(var O=B[0][0].length,I={vertices:[],holes:[],dimensions:O},N=0,U=0;U<B.length;U++){for(var W=0;W<B[U].length;W++)for(var Q=0;Q<O;Q++)I.vertices.push(B[U][W][Q]);U>0&&(N+=B[U-1].length,I.holes.push(N))}return I}}}),$U=Ye({"node_modules/array-normalize/index.js"(X,H){"use strict";var g=d0();H.exports=x;function x(A,M,e){if(!A||A.length==null)throw Error("Argument should be an array");M==null&&(M=1),e==null&&(e=g(A,M));for(var t=0;t<M;t++){var r=e[M+t],o=e[t],a=t,i=A.length;if(r===1/0&&o===-1/0)for(a=t;a<i;a+=M)A[a]=A[a]===r?1:A[a]===o?0:.5;else if(r===1/0)for(a=t;a<i;a+=M)A[a]=A[a]===r?1:0;else if(o===-1/0)for(a=t;a<i;a+=M)A[a]=A[a]===o?0:1;else{var n=r-o;for(a=t;a<i;a+=M)isNaN(A[a])||(A[a]=n===0?.5:(A[a]-o)/n)}}return A}}}),QU=Ye({"node_modules/es6-weak-map/is-implemented.js"(X,H){"use strict";H.exports=function(){var g,x;if(typeof WeakMap!="function")return!1;try{g=new WeakMap([[x={},"one"],[{},"two"],[{},"three"]])}catch{return!1}return!(String(g)!=="[object WeakMap]"||typeof g.set!="function"||g.set({},1)!==g||typeof g.delete!="function"||typeof g.has!="function"||g.get(x)!=="one")}}}),ej=Ye({"node_modules/es5-ext/function/noop.js"(X,H){"use strict";H.exports=function(){}}}),gg=Ye({"node_modules/es5-ext/object/is-value.js"(X,H){"use strict";var g=ej()();H.exports=function(x){return x!==g&&x!==null}}}),U5=Ye({"node_modules/es5-ext/object/set-prototype-of/is-implemented.js"(X,H){"use strict";var g=Object.create,x=Object.getPrototypeOf,A={};H.exports=function(){var M=Object.setPrototypeOf,e=arguments[0]||g;return typeof M!="function"?!1:x(M(e(null),A))===A}}}),j5=Ye({"node_modules/es5-ext/object/is-object.js"(X,H){"use strict";var g=gg(),x={function:!0,object:!0};H.exports=function(A){return g(A)&&x[typeof A]||!1}}}),tm=Ye({"node_modules/es5-ext/object/valid-value.js"(X,H){"use strict";var g=gg();H.exports=function(x){if(!g(x))throw new TypeError("Cannot use null or undefined");return x}}}),tj=Ye({"node_modules/es5-ext/object/create.js"(X,H){"use strict";var g=Object.create,x;U5()()||(x=V5()),H.exports=function(){var A,M,e;return!x||x.level!==1?g:(A={},M={},e={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){if(t==="__proto__"){M[t]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}M[t]=e}),Object.defineProperties(A,M),Object.defineProperty(x,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:A}),function(t,r){return g(t===null?A:t,r)})}()}}),V5=Ye({"node_modules/es5-ext/object/set-prototype-of/shim.js"(X,H){"use strict";var g=j5(),x=tm(),A=Object.prototype.isPrototypeOf,M=Object.defineProperty,e={configurable:!0,enumerable:!1,writable:!0,value:void 0},t;t=function(r,o){if(x(r),o===null||g(o))return r;throw new TypeError("Prototype must be null or an object")},H.exports=function(r){var o,a;return r?(r.level===2?r.set?(a=r.set,o=function(i,n){return a.call(t(i,n),n),i}):o=function(i,n){return t(i,n).__proto__=n,i}:o=function i(n,s){var c;return t(n,s),c=A.call(i.nullPolyfill,n),c&&delete i.nullPolyfill.__proto__,s===null&&(s=i.nullPolyfill),n.__proto__=s,c&&M(i.nullPolyfill,"__proto__",e),n},Object.defineProperty(o,"level",{configurable:!1,enumerable:!1,writable:!1,value:r.level})):null}(function(){var r=Object.create(null),o={},a,i=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(i){try{a=i.set,a.call(r,o)}catch{}if(Object.getPrototypeOf(r)===o)return{set:a,level:2}}return r.__proto__=o,Object.getPrototypeOf(r)===o?{level:2}:(r={},r.__proto__=o,Object.getPrototypeOf(r)===o?{level:1}:!1)}()),tj()}}),mT=Ye({"node_modules/es5-ext/object/set-prototype-of/index.js"(X,H){"use strict";H.exports=U5()()?Object.setPrototypeOf:V5()}}),rj=Ye({"node_modules/es5-ext/object/valid-object.js"(X,H){"use strict";var g=j5();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not an Object");return x}}}),aj=Ye({"node_modules/es5-ext/string/random-uniq.js"(X,H){"use strict";var g=Object.create(null),x=Math.random;H.exports=function(){var A;do A=x().toString(36).slice(2);while(g[A]);return A}}}),g0=Ye({"node_modules/type/value/is.js"(X,H){"use strict";var g=void 0;H.exports=function(x){return x!==g&&x!==null}}}),gT=Ye({"node_modules/type/object/is.js"(X,H){"use strict";var g=g0(),x={object:!0,function:!0,undefined:!0};H.exports=function(A){return g(A)?hasOwnProperty.call(x,typeof A):!1}}}),ij=Ye({"node_modules/type/prototype/is.js"(X,H){"use strict";var g=gT();H.exports=function(x){if(!g(x))return!1;try{return x.constructor?x.constructor.prototype===x:!1}catch{return!1}}}}),nj=Ye({"node_modules/type/function/is.js"(X,H){"use strict";var g=ij();H.exports=function(x){if(typeof x!="function"||!hasOwnProperty.call(x,"length"))return!1;try{if(typeof x.length!="number"||typeof x.call!="function"||typeof x.apply!="function")return!1}catch{return!1}return!g(x)}}}),q5=Ye({"node_modules/type/plain-function/is.js"(X,H){"use strict";var g=nj(),x=/^\s*class[\s{/}]/,A=Function.prototype.toString;H.exports=function(M){return!(!g(M)||x.test(A.call(M)))}}}),oj=Ye({"node_modules/es5-ext/object/assign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Object.assign,x;return typeof g!="function"?!1:(x={foo:"raz"},g(x,{bar:"dwa"},{trzy:"trzy"}),x.foo+x.bar+x.trzy==="razdwatrzy")}}}),sj=Ye({"node_modules/es5-ext/object/keys/is-implemented.js"(X,H){"use strict";H.exports=function(){try{return Object.keys("primitive"),!0}catch{return!1}}}}),lj=Ye({"node_modules/es5-ext/object/keys/shim.js"(X,H){"use strict";var g=gg(),x=Object.keys;H.exports=function(A){return x(g(A)?Object(A):A)}}}),uj=Ye({"node_modules/es5-ext/object/keys/index.js"(X,H){"use strict";H.exports=sj()()?Object.keys:lj()}}),cj=Ye({"node_modules/es5-ext/object/assign/shim.js"(X,H){"use strict";var g=uj(),x=tm(),A=Math.max;H.exports=function(M,e){var t,r,o=A(arguments.length,2),a;for(M=Object(x(M)),a=function(i){try{M[i]=e[i]}catch(n){t||(t=n)}},r=1;r<o;++r)e=arguments[r],g(e).forEach(a);if(t!==void 0)throw t;return M}}}),yT=Ye({"node_modules/es5-ext/object/assign/index.js"(X,H){"use strict";H.exports=oj()()?Object.assign:cj()}}),H5=Ye({"node_modules/es5-ext/object/normalize-options.js"(X,H){"use strict";var g=gg(),x=Array.prototype.forEach,A=Object.create,M=function(e,t){var r;for(r in e)t[r]=e[r]};H.exports=function(e){var t=A(null);return x.call(arguments,function(r){g(r)&&M(Object(r),t)}),t}}}),fj=Ye({"node_modules/es5-ext/string/#/contains/is-implemented.js"(X,H){"use strict";var g="razdwatrzy";H.exports=function(){return typeof g.contains!="function"?!1:g.contains("dwa")===!0&&g.contains("foo")===!1}}}),hj=Ye({"node_modules/es5-ext/string/#/contains/shim.js"(X,H){"use strict";var g=String.prototype.indexOf;H.exports=function(x){return g.call(this,x,arguments[1])>-1}}}),G5=Ye({"node_modules/es5-ext/string/#/contains/index.js"(X,H){"use strict";H.exports=fj()()?String.prototype.contains:hj()}}),rm=Ye({"node_modules/d/index.js"(X,H){"use strict";var g=g0(),x=q5(),A=yT(),M=H5(),e=G5(),t=H.exports=function(r,o){var a,i,n,s,c;return arguments.length<2||typeof r!="string"?(s=o,o=r,r=null):s=arguments[2],g(r)?(a=e.call(r,"c"),i=e.call(r,"e"),n=e.call(r,"w")):(a=n=!0,i=!1),c={value:o,configurable:a,enumerable:i,writable:n},s?A(M(s),c):c};t.gs=function(r,o,a){var i,n,s,c;return typeof r!="string"?(s=a,a=o,o=r,r=null):s=arguments[3],g(o)?x(o)?g(a)?x(a)||(s=a,a=void 0):a=void 0:(s=o,o=a=void 0):o=void 0,g(r)?(i=e.call(r,"c"),n=e.call(r,"e")):(i=!0,n=!1),c={get:o,set:a,configurable:i,enumerable:n},s?A(M(s),c):c}}}),_x=Ye({"node_modules/es5-ext/function/is-arguments.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call(function(){return arguments}());H.exports=function(A){return g.call(A)===x}}}),xx=Ye({"node_modules/es5-ext/string/is-string.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call("");H.exports=function(A){return typeof A=="string"||A&&typeof A=="object"&&(A instanceof String||g.call(A)===x)||!1}}}),pj=Ye({"node_modules/ext/global-this/is-implemented.js"(X,H){"use strict";H.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}}}),dj=Ye({"node_modules/ext/global-this/implementation.js"(X,H){var g=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};H.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return g()}try{return __global__||g()}finally{delete Object.prototype.__global__}}()}}),bx=Ye({"node_modules/ext/global-this/index.js"(X,H){"use strict";H.exports=pj()()?globalThis:dj()}}),vj=Ye({"node_modules/es6-symbol/is-implemented.js"(X,H){"use strict";var g=bx(),x={object:!0,symbol:!0};H.exports=function(){var A=g.Symbol,M;if(typeof A!="function")return!1;M=A("test symbol");try{String(M)}catch{return!1}return!(!x[typeof A.iterator]||!x[typeof A.toPrimitive]||!x[typeof A.toStringTag])}}}),mj=Ye({"node_modules/es6-symbol/is-symbol.js"(X,H){"use strict";H.exports=function(g){return g?typeof g=="symbol"?!0:!g.constructor||g.constructor.name!=="Symbol"?!1:g[g.constructor.toStringTag]==="Symbol":!1}}}),W5=Ye({"node_modules/es6-symbol/validate-symbol.js"(X,H){"use strict";var g=mj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not a symbol");return x}}}),gj=Ye({"node_modules/es6-symbol/lib/private/generate-name.js"(X,H){"use strict";var g=rm(),x=Object.create,A=Object.defineProperty,M=Object.prototype,e=x(null);H.exports=function(t){for(var r=0,o,a;e[t+(r||"")];)++r;return t+=r||"",e[t]=!0,o="@@"+t,A(M,o,g.gs(null,function(i){a||(a=!0,A(this,o,g(i)),a=!1)})),o}}}),yj=Ye({"node_modules/es6-symbol/lib/private/setup/standard-symbols.js"(X,H){"use strict";var g=rm(),x=bx().Symbol;H.exports=function(A){return Object.defineProperties(A,{hasInstance:g("",x&&x.hasInstance||A("hasInstance")),isConcatSpreadable:g("",x&&x.isConcatSpreadable||A("isConcatSpreadable")),iterator:g("",x&&x.iterator||A("iterator")),match:g("",x&&x.match||A("match")),replace:g("",x&&x.replace||A("replace")),search:g("",x&&x.search||A("search")),species:g("",x&&x.species||A("species")),split:g("",x&&x.split||A("split")),toPrimitive:g("",x&&x.toPrimitive||A("toPrimitive")),toStringTag:g("",x&&x.toStringTag||A("toStringTag")),unscopables:g("",x&&x.unscopables||A("unscopables"))})}}}),_j=Ye({"node_modules/es6-symbol/lib/private/setup/symbol-registry.js"(X,H){"use strict";var g=rm(),x=W5(),A=Object.create(null);H.exports=function(M){return Object.defineProperties(M,{for:g(function(e){return A[e]?A[e]:A[e]=M(String(e))}),keyFor:g(function(e){var t;x(e);for(t in A)if(A[t]===e)return t})})}}}),xj=Ye({"node_modules/es6-symbol/polyfill.js"(X,H){"use strict";var g=rm(),x=W5(),A=bx().Symbol,M=gj(),e=yj(),t=_j(),r=Object.create,o=Object.defineProperties,a=Object.defineProperty,i,n,s;if(typeof A=="function")try{String(A()),s=!0}catch{}else A=null;n=function(h){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return i(h)},H.exports=i=function c(h){var v;if(this instanceof c)throw new TypeError("Symbol is not a constructor");return s?A(h):(v=r(n.prototype),h=h===void 0?"":String(h),o(v,{__description__:g("",h),__name__:g("",M(h))}))},e(i),t(i),o(n.prototype,{constructor:g(i),toString:g("",function(){return this.__name__})}),o(i.prototype,{toString:g(function(){return"Symbol ("+x(this).__description__+")"}),valueOf:g(function(){return x(this)})}),a(i.prototype,i.toPrimitive,g("",function(){var c=x(this);return typeof c=="symbol"?c:c.toString()})),a(i.prototype,i.toStringTag,g("c","Symbol")),a(n.prototype,i.toStringTag,g("c",i.prototype[i.toStringTag])),a(n.prototype,i.toPrimitive,g("c",i.prototype[i.toPrimitive]))}}),yg=Ye({"node_modules/es6-symbol/index.js"(X,H){"use strict";H.exports=vj()()?bx().Symbol:xj()}}),bj=Ye({"node_modules/es5-ext/array/#/clear.js"(X,H){"use strict";var g=tm();H.exports=function(){return g(this).length=0,this}}}),k1=Ye({"node_modules/es5-ext/object/valid-callable.js"(X,H){"use strict";H.exports=function(g){if(typeof g!="function")throw new TypeError(g+" is not a function");return g}}}),wj=Ye({"node_modules/type/string/coerce.js"(X,H){"use strict";var g=g0(),x=gT(),A=Object.prototype.toString;H.exports=function(M){if(!g(M))return null;if(x(M)){var e=M.toString;if(typeof e!="function"||e===A)return null}try{return""+M}catch{return null}}}}),Tj=Ye({"node_modules/type/lib/safe-to-string.js"(X,H){"use strict";H.exports=function(g){try{return g.toString()}catch{try{return String(g)}catch{return null}}}}}),Aj=Ye({"node_modules/type/lib/to-short-string.js"(X,H){"use strict";var g=Tj(),x=/[\n\r\u2028\u2029]/g;H.exports=function(A){var M=g(A);return M===null?"<Non-coercible to string value>":(M.length>100&&(M=M.slice(0,99)+"\u2026"),M=M.replace(x,function(e){switch(e){case`
+`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),M)}}}),Z5=Ye({"node_modules/type/lib/resolve-exception.js"(X,H){"use strict";var g=g0(),x=gT(),A=wj(),M=Aj(),e=function(t,r){return t.replace("%v",M(r))};H.exports=function(t,r,o){if(!x(o))throw new TypeError(e(r,t));if(!g(t)){if("default"in o)return o.default;if(o.isOptional)return null}var a=A(o.errorMessage);throw g(a)||(a=r),new TypeError(e(a,t))}}}),Sj=Ye({"node_modules/type/value/ensure.js"(X,H){"use strict";var g=Z5(),x=g0();H.exports=function(A){return x(A)?A:g(A,"Cannot use %v",arguments[1])}}}),Mj=Ye({"node_modules/type/plain-function/ensure.js"(X,H){"use strict";var g=Z5(),x=q5();H.exports=function(A){return x(A)?A:g(A,"%v is not a plain function",arguments[1])}}}),Ej=Ye({"node_modules/es5-ext/array/from/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Array.from,x,A;return typeof g!="function"?!1:(x=["raz","dwa"],A=g(x),!!(A&&A!==x&&A[1]==="dwa"))}}}),kj=Ye({"node_modules/es5-ext/function/is-function.js"(X,H){"use strict";var g=Object.prototype.toString,x=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);H.exports=function(A){return typeof A=="function"&&x(g.call(A))}}}),Cj=Ye({"node_modules/es5-ext/math/sign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Math.sign;return typeof g!="function"?!1:g(10)===1&&g(-20)===-1}}}),Lj=Ye({"node_modules/es5-ext/math/sign/shim.js"(X,H){"use strict";H.exports=function(g){return g=Number(g),isNaN(g)||g===0?g:g>0?1:-1}}}),Pj=Ye({"node_modules/es5-ext/math/sign/index.js"(X,H){"use strict";H.exports=Cj()()?Math.sign:Lj()}}),Ij=Ye({"node_modules/es5-ext/number/to-integer.js"(X,H){"use strict";var g=Pj(),x=Math.abs,A=Math.floor;H.exports=function(M){return isNaN(M)?0:(M=Number(M),M===0||!isFinite(M)?M:g(M)*A(x(M)))}}}),Rj=Ye({"node_modules/es5-ext/number/to-pos-integer.js"(X,H){"use strict";var g=Ij(),x=Math.max;H.exports=function(A){return x(0,g(A))}}}),Dj=Ye({"node_modules/es5-ext/array/from/shim.js"(X,H){"use strict";var g=yg().iterator,x=_x(),A=kj(),M=Rj(),e=k1(),t=tm(),r=gg(),o=xx(),a=Array.isArray,i=Function.prototype.call,n={configurable:!0,enumerable:!0,writable:!0,value:null},s=Object.defineProperty;H.exports=function(c){var h=arguments[1],v=arguments[2],p,T,l,_,w,S,E,m,b,d;if(c=Object(t(c)),r(h)&&e(h),!this||this===Array||!A(this)){if(!h){if(x(c))return w=c.length,w!==1?Array.apply(null,c):(_=new Array(1),_[0]=c[0],_);if(a(c)){for(_=new Array(w=c.length),T=0;T<w;++T)_[T]=c[T];return _}}_=[]}else p=this;if(!a(c)){if((b=c[g])!==void 0){for(E=e(b).call(c),p&&(_=new p),m=E.next(),T=0;!m.done;)d=h?i.call(h,v,m.value,T):m.value,p?(n.value=d,s(_,T,n)):_[T]=d,m=E.next(),++T;w=T}else if(o(c)){for(w=c.length,p&&(_=new p),T=0,l=0;T<w;++T)d=c[T],T+1<w&&(S=d.charCodeAt(0),S>=55296&&S<=56319&&(d+=c[++T])),d=h?i.call(h,v,d,l):d,p?(n.value=d,s(_,l,n)):_[l]=d,++l;w=l}}if(w===void 0)for(w=M(c.length),p&&(_=new p(w)),T=0;T<w;++T)d=h?i.call(h,v,c[T],T):c[T],p?(n.value=d,s(_,T,n)):_[T]=d;return p&&(n.value=null,_.length=w),_}}}),zj=Ye({"node_modules/es5-ext/array/from/index.js"(X,H){"use strict";H.exports=Ej()()?Array.from:Dj()}}),Fj=Ye({"node_modules/es5-ext/object/copy.js"(X,H){"use strict";var g=zj(),x=yT(),A=tm();H.exports=function(M){var e=Object(A(M)),t=arguments[1],r=Object(arguments[2]);if(e!==M&&!t)return e;var o={};return t?g(t,function(a){(r.ensure||a in M)&&(o[a]=M[a])}):x(o,M),o}}}),Oj=Ye({"node_modules/es5-ext/object/_iterate.js"(X,H){"use strict";var g=k1(),x=tm(),A=Function.prototype.bind,M=Function.prototype.call,e=Object.keys,t=Object.prototype.propertyIsEnumerable;H.exports=function(r,o){return function(a,i){var n,s=arguments[2],c=arguments[3];return a=Object(x(a)),g(i),n=e(a),c&&n.sort(typeof c=="function"?A.call(c,a):void 0),typeof r!="function"&&(r=n[r]),M.call(r,n,function(h,v){return t.call(a,h)?M.call(i,s,a[h],h,a,v):o})}}}}),Bj=Ye({"node_modules/es5-ext/object/for-each.js"(X,H){"use strict";H.exports=Oj()("forEach")}}),Nj=Ye({"node_modules/es5-ext/object/map.js"(X,H){"use strict";var g=k1(),x=Bj(),A=Function.prototype.call;H.exports=function(M,e){var t={},r=arguments[2];return g(e),x(M,function(o,a,i,n){t[a]=A.call(e,r,o,a,i,n)}),t}}}),Uj=Ye({"node_modules/d/auto-bind.js"(X,H){"use strict";var g=g0(),x=Sj(),A=Mj(),M=Fj(),e=H5(),t=Nj(),r=Function.prototype.bind,o=Object.defineProperty,a=Object.prototype.hasOwnProperty,i;i=function(n,s,c){var h=x(s)&&A(s.value),v;return v=M(s),delete v.writable,delete v.value,v.get=function(){return!c.overwriteDefinition&&a.call(this,n)?h:(s.value=r.call(h,c.resolveContext?c.resolveContext(this):this),o(this,n,s),this[n])},v},H.exports=function(n){var s=e(arguments[1]);return g(s.resolveContext)&&A(s.resolveContext),t(n,function(c,h){return i(h,c,s)})}}}),X5=Ye({"node_modules/es6-iterator/index.js"(X,H){"use strict";var g=bj(),x=yT(),A=k1(),M=tm(),e=rm(),t=Uj(),r=yg(),o=Object.defineProperty,a=Object.defineProperties,i;H.exports=i=function(n,s){if(!(this instanceof i))throw new TypeError("Constructor requires 'new'");a(this,{__list__:e("w",M(n)),__context__:e("w",s),__nextIndex__:e("w",0)}),s&&(A(s.on),s.on("_add",this._onAdd),s.on("_delete",this._onDelete),s.on("_clear",this._onClear))},delete i.prototype.constructor,a(i.prototype,x({_next:e(function(){var n;if(this.__list__){if(this.__redo__&&(n=this.__redo__.shift(),n!==void 0))return n;if(this.__nextIndex__<this.__list__.length)return this.__nextIndex__++;this._unBind()}}),next:e(function(){return this._createResult(this._next())}),_createResult:e(function(n){return n===void 0?{done:!0,value:void 0}:{done:!1,value:this._resolve(n)}}),_resolve:e(function(n){return this.__list__[n]}),_unBind:e(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off("_add",this._onAdd),this.__context__.off("_delete",this._onDelete),this.__context__.off("_clear",this._onClear),this.__context__=null)}),toString:e(function(){return"[object "+(this[r.toStringTag]||"Object")+"]"})},t({_onAdd:e(function(n){if(!(n>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){o(this,"__redo__",e("c",[n]));return}this.__redo__.forEach(function(s,c){s>=n&&(this.__redo__[c]=++s)},this),this.__redo__.push(n)}}),_onDelete:e(function(n){var s;n>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(s=this.__redo__.indexOf(n),s!==-1&&this.__redo__.splice(s,1),this.__redo__.forEach(function(c,h){c>n&&(this.__redo__[h]=--c)},this)))}),_onClear:e(function(){this.__redo__&&g.call(this.__redo__),this.__nextIndex__=0})}))),o(i.prototype,r.iterator,e(function(){return this}))}}),jj=Ye({"node_modules/es6-iterator/array.js"(X,H){"use strict";var g=mT(),x=G5(),A=rm(),M=yg(),e=X5(),t=Object.defineProperty,r;r=H.exports=function(o,a){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");e.call(this,o),a?x.call(a,"key+value")?a="key+value":x.call(a,"key")?a="key":a="value":a="value",t(this,"__kind__",A("",a))},g&&g(r,e),delete r.prototype.constructor,r.prototype=Object.create(e.prototype,{_resolve:A(function(o){return this.__kind__==="value"?this.__list__[o]:this.__kind__==="key+value"?[o,this.__list__[o]]:o})}),t(r.prototype,M.toStringTag,A("c","Array Iterator"))}}),Vj=Ye({"node_modules/es6-iterator/string.js"(X,H){"use strict";var g=mT(),x=rm(),A=yg(),M=X5(),e=Object.defineProperty,t;t=H.exports=function(r){if(!(this instanceof t))throw new TypeError("Constructor requires 'new'");r=String(r),M.call(this,r),e(this,"__length__",x("",r.length))},g&&g(t,M),delete t.prototype.constructor,t.prototype=Object.create(M.prototype,{_next:x(function(){if(this.__list__){if(this.__nextIndex__<this.__length__)return this.__nextIndex__++;this._unBind()}}),_resolve:x(function(r){var o=this.__list__[r],a;return this.__nextIndex__===this.__length__?o:(a=o.charCodeAt(0),a>=55296&&a<=56319?o+this.__list__[this.__nextIndex__++]:o)})}),e(t.prototype,A.toStringTag,x("c","String Iterator"))}}),qj=Ye({"node_modules/es6-iterator/is-iterable.js"(X,H){"use strict";var g=_x(),x=gg(),A=xx(),M=yg().iterator,e=Array.isArray;H.exports=function(t){return x(t)?e(t)||A(t)||g(t)?!0:typeof t[M]=="function":!1}}}),Hj=Ye({"node_modules/es6-iterator/valid-iterable.js"(X,H){"use strict";var g=qj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not iterable");return x}}}),Y5=Ye({"node_modules/es6-iterator/get.js"(X,H){"use strict";var g=_x(),x=xx(),A=jj(),M=Vj(),e=Hj(),t=yg().iterator;H.exports=function(r){return typeof e(r)[t]=="function"?r[t]():g(r)?new A(r):x(r)?new M(r):new A(r)}}}),Gj=Ye({"node_modules/es6-iterator/for-of.js"(X,H){"use strict";var g=_x(),x=k1(),A=xx(),M=Y5(),e=Array.isArray,t=Function.prototype.call,r=Array.prototype.some;H.exports=function(o,a){var i,n=arguments[2],s,c,h,v,p,T,l;if(e(o)||g(o)?i="array":A(o)?i="string":o=M(o),x(a),c=function(){h=!0},i==="array"){r.call(o,function(_){return t.call(a,n,_,c),h});return}if(i==="string"){for(p=o.length,v=0;v<p&&(T=o[v],v+1<p&&(l=T.charCodeAt(0),l>=55296&&l<=56319&&(T+=o[++v])),t.call(a,n,T,c),!h);++v);return}for(s=o.next();!s.done;){if(t.call(a,n,s.value,c),h)return;s=o.next()}}}}),Wj=Ye({"node_modules/es6-weak-map/is-native-implemented.js"(X,H){"use strict";H.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()}}),Zj=Ye({"node_modules/es6-weak-map/polyfill.js"(X,H){"use strict";var g=gg(),x=mT(),A=rj(),M=tm(),e=aj(),t=rm(),r=Y5(),o=Gj(),a=yg().toStringTag,i=Wj(),n=Array.isArray,s=Object.defineProperty,c=Object.prototype.hasOwnProperty,h=Object.getPrototypeOf,v;H.exports=v=function(){var p=arguments[0],T;if(!(this instanceof v))throw new TypeError("Constructor requires 'new'");return T=i&&x&&WeakMap!==v?x(new WeakMap,h(this)):this,g(p)&&(n(p)||(p=r(p))),s(T,"__weakMapData__",t("c","$weakMap$"+e())),p&&o(p,function(l){M(l),T.set(l[0],l[1])}),T},i&&(x&&x(v,WeakMap),v.prototype=Object.create(WeakMap.prototype,{constructor:t(v)})),Object.defineProperties(v.prototype,{delete:t(function(p){return c.call(A(p),this.__weakMapData__)?(delete p[this.__weakMapData__],!0):!1}),get:t(function(p){if(c.call(A(p),this.__weakMapData__))return p[this.__weakMapData__]}),has:t(function(p){return c.call(A(p),this.__weakMapData__)}),set:t(function(p,T){return s(A(p),this.__weakMapData__,t("c",T)),this}),toString:t(function(){return"[object WeakMap]"})}),s(v.prototype,a,t("c","WeakMap"))}}),K5=Ye({"node_modules/es6-weak-map/index.js"(X,H){"use strict";H.exports=QU()()?WeakMap:Zj()}}),Xj=Ye({"node_modules/array-find-index/index.js"(X,H){"use strict";H.exports=function(g,x,A){if(typeof Array.prototype.findIndex=="function")return g.findIndex(x,A);if(typeof x!="function")throw new TypeError("predicate must be a function");var M=Object(g),e=M.length;if(e===0)return-1;for(var t=0;t<e;t++)if(x.call(A,M[t],t,M))return t;return-1}}}),J5=Ye({"node_modules/regl-line2d/index.js"(X,H){"use strict";var g=hg(),x=d0(),A=Wf(),M=Ev(),e=v0(),t=JU(),r=$U(),{float32:o,fract32:a}=vT(),i=K5(),n=E1(),s=Xj(),c=`
+precision highp float;
+
+attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;
+attribute vec4 color;
+attribute float lineEnd, lineTop;
+
+uniform vec2 scale, scaleFract, translate, translateFract;
+uniform float thickness, pixelRatio, id, depth;
+uniform vec4 viewport;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+
+vec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {
+ // the order is important
+ return position * scale + translate
+ + positionFract * scale + translateFract
+ + position * scaleFract
+ + positionFract * scaleFract;
+}
+
+void main() {
+ float lineStart = 1. - lineEnd;
+ float lineOffset = lineTop * 2. - 1.;
+
+ vec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);
+ tangent = normalize(diff * scale * viewport.zw);
+ vec2 normal = vec2(-tangent.y, tangent.x);
+
+ vec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart
+ + project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd
+
+ + thickness * normal * .5 * lineOffset / viewport.zw;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ fragColor = color / 255.;
+}
+`,h=`
+precision highp float;
+
+uniform float dashLength, pixelRatio, thickness, opacity, id;
+uniform sampler2D dashTexture;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+
+void main() {
+ float alpha = 1.;
+
+ float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
+ float dash = texture2D(dashTexture, vec2(t, .5)).r;
+
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= alpha * opacity * dash;
+}
+`,v=`
+precision highp float;
+
+attribute vec2 position, positionFract;
+
+uniform vec4 color;
+uniform vec2 scale, scaleFract, translate, translateFract;
+uniform float pixelRatio, id;
+uniform vec4 viewport;
+uniform float opacity;
+
+varying vec4 fragColor;
+
+const float MAX_LINES = 256.;
+
+void main() {
+ float depth = (MAX_LINES - 4. - id) / (MAX_LINES);
+
+ vec2 position = position * scale + translate
+ + positionFract * scale + translateFract
+ + position * scaleFract
+ + positionFract * scaleFract;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ fragColor = color / 255.;
+ fragColor.a *= opacity;
+}
+`,p=`
+precision highp float;
+varying vec4 fragColor;
+
+void main() {
+ gl_FragColor = fragColor;
+}
+`,T=`
+precision highp float;
+
+attribute vec2 aCoord, bCoord, nextCoord, prevCoord;
+attribute vec4 aColor, bColor;
+attribute float lineEnd, lineTop;
+
+uniform vec2 scale, translate;
+uniform float thickness, pixelRatio, id, depth;
+uniform vec4 viewport;
+uniform float miterLimit, miterMode;
+
+varying vec4 fragColor;
+varying vec4 startCutoff, endCutoff;
+varying vec2 tangent;
+varying vec2 startCoord, endCoord;
+varying float enableStartMiter, enableEndMiter;
+
+const float REVERSE_THRESHOLD = -.875;
+const float MIN_DIFF = 1e-6;
+
+// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead
+// TODO: precalculate dot products, normalize things beforehead etc.
+// TODO: refactor to rectangular algorithm
+
+float distToLine(vec2 p, vec2 a, vec2 b) {
+ vec2 diff = b - a;
+ vec2 perp = normalize(vec2(-diff.y, diff.x));
+ return dot(p - a, perp);
+}
+
+bool isNaN( float val ){
+ return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;
+}
+
+void main() {
+ vec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;
+
+ vec2 adjustedScale;
+ adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;
+ adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;
+
+ vec2 scaleRatio = adjustedScale * viewport.zw;
+ vec2 normalWidth = thickness / scaleRatio;
+
+ float lineStart = 1. - lineEnd;
+ float lineBot = 1. - lineTop;
+
+ fragColor = (lineStart * aColor + lineEnd * bColor) / 255.;
+
+ if (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;
+
+ if (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);
+ if (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);
+
+
+ vec2 prevDiff = aCoord - prevCoord;
+ vec2 currDiff = bCoord - aCoord;
+ vec2 nextDiff = nextCoord - bCoord;
+
+ vec2 prevTangent = normalize(prevDiff * scaleRatio);
+ vec2 currTangent = normalize(currDiff * scaleRatio);
+ vec2 nextTangent = normalize(nextDiff * scaleRatio);
+
+ vec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);
+ vec2 currNormal = vec2(-currTangent.y, currTangent.x);
+ vec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);
+
+ vec2 startJoinDirection = normalize(prevTangent - currTangent);
+ vec2 endJoinDirection = normalize(currTangent - nextTangent);
+
+ // collapsed/unidirectional segment cases
+ // FIXME: there should be more elegant solution
+ vec2 prevTanDiff = abs(prevTangent - currTangent);
+ vec2 nextTanDiff = abs(nextTangent - currTangent);
+ if (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {
+ startJoinDirection = currNormal;
+ }
+ if (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {
+ endJoinDirection = currNormal;
+ }
+ if (aCoord == bCoord) {
+ endJoinDirection = startJoinDirection;
+ currNormal = prevNormal;
+ currTangent = prevTangent;
+ }
+
+ tangent = currTangent;
+
+ //calculate join shifts relative to normals
+ float startJoinShift = dot(currNormal, startJoinDirection);
+ float endJoinShift = dot(currNormal, endJoinDirection);
+
+ float startMiterRatio = abs(1. / startJoinShift);
+ float endMiterRatio = abs(1. / endJoinShift);
+
+ vec2 startJoin = startJoinDirection * startMiterRatio;
+ vec2 endJoin = endJoinDirection * endMiterRatio;
+
+ vec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;
+ startTopJoin = sign(startJoinShift) * startJoin * .5;
+ startBotJoin = -startTopJoin;
+
+ endTopJoin = sign(endJoinShift) * endJoin * .5;
+ endBotJoin = -endTopJoin;
+
+ vec2 aTopCoord = aCoord + normalWidth * startTopJoin;
+ vec2 bTopCoord = bCoord + normalWidth * endTopJoin;
+ vec2 aBotCoord = aCoord + normalWidth * startBotJoin;
+ vec2 bBotCoord = bCoord + normalWidth * endBotJoin;
+
+ //miter anti-clipping
+ float baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));
+ float abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));
+
+ //prevent close to reverse direction switch
+ bool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);
+ bool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);
+
+ if (prevReverse) {
+ //make join rectangular
+ vec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;
+ float normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);
+ aBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
+ aTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
+ }
+ else if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {
+ //handle miter clipping
+ bTopCoord -= normalWidth * endTopJoin;
+ bTopCoord += normalize(endTopJoin * normalWidth) * baClipping;
+ }
+
+ if (nextReverse) {
+ //make join rectangular
+ vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;
+ float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);
+ bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
+ bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
+ }
+ else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {
+ //handle miter clipping
+ aBotCoord -= normalWidth * startBotJoin;
+ aBotCoord += normalize(startBotJoin * normalWidth) * abClipping;
+ }
+
+ vec2 aTopPosition = (aTopCoord) * adjustedScale + translate;
+ vec2 aBotPosition = (aBotCoord) * adjustedScale + translate;
+
+ vec2 bTopPosition = (bTopCoord) * adjustedScale + translate;
+ vec2 bBotPosition = (bBotCoord) * adjustedScale + translate;
+
+ //position is normalized 0..1 coord on the screen
+ vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;
+
+ startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;
+ endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ enableStartMiter = step(dot(currTangent, prevTangent), .5);
+ enableEndMiter = step(dot(currTangent, nextTangent), .5);
+
+ //bevel miter cutoffs
+ if (miterMode == 1.) {
+ if (enableStartMiter == 1.) {
+ vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;
+ startCutoff = vec4(aCoord, aCoord);
+ startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
+ startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ startCutoff += viewport.xyxy;
+ startCutoff += startMiterWidth.xyxy;
+ }
+
+ if (enableEndMiter == 1.) {
+ vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;
+ endCutoff = vec4(bCoord, bCoord);
+ endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
+ endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ endCutoff += viewport.xyxy;
+ endCutoff += endMiterWidth.xyxy;
+ }
+ }
+
+ //round miter cutoffs
+ else if (miterMode == 2.) {
+ if (enableStartMiter == 1.) {
+ vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;
+ startCutoff = vec4(aCoord, aCoord);
+ startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
+ startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ startCutoff += viewport.xyxy;
+ startCutoff += startMiterWidth.xyxy;
+ }
+
+ if (enableEndMiter == 1.) {
+ vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;
+ endCutoff = vec4(bCoord, bCoord);
+ endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
+ endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ endCutoff += viewport.xyxy;
+ endCutoff += endMiterWidth.xyxy;
+ }
+ }
+}
+`,l=`
+precision highp float;
+
+uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;
+uniform sampler2D dashTexture;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+varying vec4 startCutoff, endCutoff;
+varying vec2 startCoord, endCoord;
+varying float enableStartMiter, enableEndMiter;
+
+float distToLine(vec2 p, vec2 a, vec2 b) {
+ vec2 diff = b - a;
+ vec2 perp = normalize(vec2(-diff.y, diff.x));
+ return dot(p - a, perp);
+}
+
+void main() {
+ float alpha = 1., distToStart, distToEnd;
+ float cutoff = thickness * .5;
+
+ //bevel miter
+ if (miterMode == 1.) {
+ if (enableStartMiter == 1.) {
+ distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
+ if (distToStart < -1.) {
+ discard;
+ return;
+ }
+ alpha *= min(max(distToStart + 1., 0.), 1.);
+ }
+
+ if (enableEndMiter == 1.) {
+ distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
+ if (distToEnd < -1.) {
+ discard;
+ return;
+ }
+ alpha *= min(max(distToEnd + 1., 0.), 1.);
+ }
+ }
+
+ // round miter
+ else if (miterMode == 2.) {
+ if (enableStartMiter == 1.) {
+ distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
+ if (distToStart < 0.) {
+ float radius = length(gl_FragCoord.xy - startCoord);
+
+ if(radius > cutoff + .5) {
+ discard;
+ return;
+ }
+
+ alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
+ }
+ }
+
+ if (enableEndMiter == 1.) {
+ distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
+ if (distToEnd < 0.) {
+ float radius = length(gl_FragCoord.xy - endCoord);
+
+ if(radius > cutoff + .5) {
+ discard;
+ return;
+ }
+
+ alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
+ }
+ }
+ }
+
+ float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
+ float dash = texture2D(dashTexture, vec2(t, .5)).r;
+
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= alpha * opacity * dash;
+}
+`;H.exports=_;function _(w,S){if(!(this instanceof _))return new _(w,S);if(typeof w=="function"?(S||(S={}),S.regl=w):S=w,S.length&&(S.positions=S),w=S.regl,!w.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=w._gl,this.regl=w,this.passes=[],this.shaders=_.shaders.has(w)?_.shaders.get(w):_.shaders.set(w,_.createShaders(w)).get(w),this.update(S)}_.dashMult=2,_.maxPatternLength=256,_.precisionThreshold=3e6,_.maxPoints=1e4,_.maxLines=2048,_.shaders=new i,_.createShaders=function(w){let S=w.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),E={primitive:"triangle strip",instances:w.prop("count"),count:4,offset:0,uniforms:{miterMode:(u,y)=>y.join==="round"?2:1,miterLimit:w.prop("miterLimit"),scale:w.prop("scale"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),thickness:w.prop("thickness"),dashTexture:w.prop("dashTexture"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),dashLength:w.prop("dashLength"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight],depth:w.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(u,y)=>!y.overlay},stencil:{enable:!1},scissor:{enable:!0,box:w.prop("viewport")},viewport:w.prop("viewport")},m=w(A({vert:c,frag:h,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},E)),b;try{b=w(A({cull:{enable:!0,face:"back"},vert:T,frag:l,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aColor:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:w.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},E))}catch{b=m}return{fill:w({primitive:"triangle",elements:(u,y)=>y.triangles,offset:0,vert:v,frag:p,uniforms:{scale:w.prop("scale"),color:w.prop("fill"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight]},attributes:{position:{buffer:w.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8}},blend:E.blend,depth:{enable:!1},scissor:E.scissor,stencil:E.stencil,viewport:E.viewport}),rect:m,miter:b}},_.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},_.prototype.render=function(...w){w.length&&this.update(...w),this.draw()},_.prototype.draw=function(...w){return(w.length?w:this.passes).forEach((S,E)=>{if(S&&Array.isArray(S))return this.draw(...S);typeof S=="number"&&(S=this.passes[S]),S&&S.count>1&&S.opacity&&(this.regl._refresh(),S.fill&&S.triangles&&S.triangles.length>2&&this.shaders.fill(S),S.thickness&&(S.scale[0]*S.viewport.width>_.precisionThreshold||S.scale[1]*S.viewport.height>_.precisionThreshold?this.shaders.rect(S):S.join==="rect"||!S.join&&(S.thickness<=2||S.count>=_.maxPoints)?this.shaders.rect(S):this.shaders.miter(S)))}),this},_.prototype.update=function(w){if(!w)return;w.length!=null?typeof w[0]=="number"&&(w=[{positions:w}]):Array.isArray(w)||(w=[w]);let{regl:S,gl:E}=this;if(w.forEach((b,d)=>{let u=this.passes[d];if(b!==void 0){if(b===null){this.passes[d]=null;return}if(typeof b[0]=="number"&&(b={positions:b}),b=M(b,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),u||(this.passes[d]=u={id:d,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:S.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:S.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},b=A({},_.defaults,b)),b.thickness!=null&&(u.thickness=parseFloat(b.thickness)),b.opacity!=null&&(u.opacity=parseFloat(b.opacity)),b.miterLimit!=null&&(u.miterLimit=parseFloat(b.miterLimit)),b.overlay!=null&&(u.overlay=!!b.overlay,d<_.maxLines&&(u.depth=2*(_.maxLines-1-d%_.maxLines)/_.maxLines-1)),b.join!=null&&(u.join=b.join),b.hole!=null&&(u.hole=b.hole),b.fill!=null&&(u.fill=b.fill?g(b.fill,"uint8"):null),b.viewport!=null&&(u.viewport=n(b.viewport)),u.viewport||(u.viewport=n([E.drawingBufferWidth,E.drawingBufferHeight])),b.close!=null&&(u.close=b.close),b.positions===null&&(b.positions=[]),b.positions){let P,L;if(b.positions.x&&b.positions.y){let O=b.positions.x,I=b.positions.y;L=u.count=Math.max(O.length,I.length),P=new Float64Array(L*2);for(let N=0;N<L;N++)P[N*2]=O[N],P[N*2+1]=I[N]}else P=e(b.positions,"float64"),L=u.count=Math.floor(P.length/2);let z=u.bounds=x(P,2);if(u.fill){let O=[],I={},N=0;for(let U=0,W=0,Q=u.count;U<Q;U++){let ue=P[U*2],se=P[U*2+1];isNaN(ue)||isNaN(se)||ue==null||se==null?(ue=P[N*2],se=P[N*2+1],I[U]=N):N=U,O[W++]=ue,O[W++]=se}if(b.splitNull){u.count-1 in I||(I[u.count]=u.count-1);let U=Object.keys(I).map(Number).sort((se,he)=>se-he),W=[],Q=0,ue=u.hole!=null?u.hole[0]:null;if(ue!=null){let se=s(U,he=>he>=ue);U=U.slice(0,se),U.push(ue)}for(let se=0;se<U.length;se++){let he=O.slice(Q*2,U[se]*2).concat(ue?O.slice(ue*2):[]),G=(u.hole||[]).map(J=>J-ue+(U[se]-Q)),$=t(he,G);$=$.map(J=>J+Q+(J+Q<U[se]?0:ue-U[se])),W.push(...$),Q=U[se]+1}for(let se=0,he=W.length;se<he;se++)I[W[se]]!=null&&(W[se]=I[W[se]]);u.triangles=W}else{let U=t(O,u.hole||[]);for(let W=0,Q=U.length;W<Q;W++)I[U[W]]!=null&&(U[W]=I[U[W]]);u.triangles=U}}let F=new Float64Array(P);r(F,2,z);let B=new Float64Array(L*2+6);u.close?P[0]===P[L*2-2]&&P[1]===P[L*2-1]?(B[0]=F[L*2-4],B[1]=F[L*2-3]):(B[0]=F[L*2-2],B[1]=F[L*2-1]):(B[0]=F[0],B[1]=F[1]),B.set(F,2),u.close?P[0]===P[L*2-2]&&P[1]===P[L*2-1]?(B[L*2+2]=F[2],B[L*2+3]=F[3],u.count-=1):(B[L*2+2]=F[0],B[L*2+3]=F[1],B[L*2+4]=F[2],B[L*2+5]=F[3]):(B[L*2+2]=F[L*2-2],B[L*2+3]=F[L*2-1],B[L*2+4]=F[L*2-2],B[L*2+5]=F[L*2-1]);var y=o(B);u.positionBuffer(y);var f=a(B,y);u.positionFractBuffer(f)}if(b.range?u.range=b.range:u.range||(u.range=u.bounds),(b.range||b.positions)&&u.count){let P=u.bounds,L=P[2]-P[0],z=P[3]-P[1],F=u.range[2]-u.range[0],B=u.range[3]-u.range[1];u.scale=[L/F,z/B],u.translate=[-u.range[0]/F+P[0]/F||0,-u.range[1]/B+P[1]/B||0],u.scaleFract=a(u.scale),u.translateFract=a(u.translate)}if(b.dashes){let P=0,L;if(!b.dashes||b.dashes.length<2)P=1,L=new Uint8Array([255,255,255,255,255,255,255,255]);else{P=0;for(let B=0;B<b.dashes.length;++B)P+=b.dashes[B];L=new Uint8Array(P*_.dashMult);let z=0,F=255;for(let B=0;B<2;B++)for(let O=0;O<b.dashes.length;++O){for(let I=0,N=b.dashes[O]*_.dashMult*.5;I<N;++I)L[z++]=F;F^=255}}u.dashLength=P,u.dashTexture({channels:1,data:L,width:L.length,height:1,mag:"linear",min:"linear"},0,0)}if(b.color){let P=u.count,L=b.color;L||(L="transparent");let z=new Uint8Array(P*4+4);if(!Array.isArray(L)||typeof L[0]=="number"){let F=g(L,"uint8");for(let B=0;B<P+1;B++)z.set(F,B*4)}else{for(let F=0;F<P;F++){let B=g(L[F],"uint8");z.set(B,F*4)}z.set(g(L[0],"uint8"),P*4)}u.colorBuffer({usage:"dynamic",type:"uint8",data:z})}}}),w.length<this.passes.length){for(let b=w.length;b<this.passes.length;b++){let d=this.passes[b];d&&(d.colorBuffer.destroy(),d.positionBuffer.destroy(),d.dashTexture.destroy())}this.passes.length=w.length}let m=[];for(let b=0;b<this.passes.length;b++)this.passes[b]!==null&&m.push(this.passes[b]);return this.passes=m,this},_.prototype.destroy=function(){return this.passes.forEach(w=>{w.colorBuffer.destroy(),w.positionBuffer.destroy(),w.dashTexture.destroy()}),this.passes.length=0,this}}}),Yj=Ye({"node_modules/regl-error2d/index.js"(X,H){"use strict";var g=d0(),x=hg(),A=B5(),M=Ev(),e=Wf(),t=v0(),{float32:r,fract32:o}=vT();H.exports=i;var a=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function i(n,s){if(typeof n=="function"?(s||(s={}),s.regl=n):s=n,s.length&&(s.positions=s),n=s.regl,!n.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let c=n._gl,h,v,p,T,l,_,w={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},S=[];return T=n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),v=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),p=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),_=n.buffer({usage:"static",type:"float",data:a}),d(s),h=n({vert:`
+ precision highp float;
+
+ attribute vec2 position, positionFract;
+ attribute vec4 error;
+ attribute vec4 color;
+
+ attribute vec2 direction, lineOffset, capOffset;
+
+ uniform vec4 viewport;
+ uniform float lineWidth, capSize;
+ uniform vec2 scale, scaleFract, translate, translateFract;
+
+ varying vec4 fragColor;
+
+ void main() {
+ fragColor = color / 255.;
+
+ vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;
+
+ vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;
+
+ vec2 position = position + dxy;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ pos += pixelOffset / viewport.zw;
+
+ gl_Position = vec4(pos * 2. - 1., 0, 1);
+ }
+ `,frag:`
+ precision highp float;
+
+ varying vec4 fragColor;
+
+ uniform float opacity;
+
+ void main() {
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= opacity;
+ }
+ `,uniforms:{range:n.prop("range"),lineWidth:n.prop("lineWidth"),capSize:n.prop("capSize"),opacity:n.prop("opacity"),scale:n.prop("scale"),translate:n.prop("translate"),scaleFract:n.prop("scaleFract"),translateFract:n.prop("translateFract"),viewport:(y,f)=>[f.viewport.x,f.viewport.y,y.viewportWidth,y.viewportHeight]},attributes:{color:{buffer:T,offset:(y,f)=>f.offset*4,divisor:1},position:{buffer:v,offset:(y,f)=>f.offset*8,divisor:1},positionFract:{buffer:p,offset:(y,f)=>f.offset*8,divisor:1},error:{buffer:l,offset:(y,f)=>f.offset*16,divisor:1},direction:{buffer:_,stride:24,offset:0},lineOffset:{buffer:_,stride:24,offset:8},capOffset:{buffer:_,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:n.prop("viewport")},viewport:n.prop("viewport"),stencil:!1,instances:n.prop("count"),count:a.length}),e(E,{update:d,draw:m,destroy:u,regl:n,gl:c,canvas:c.canvas,groups:S}),E;function E(y){y?d(y):y===null&&u(),m()}function m(y){if(typeof y=="number")return b(y);y&&!Array.isArray(y)&&(y=[y]),n._refresh(),S.forEach((f,P)=>{if(f){if(y&&(y[P]?f.draw=!0:f.draw=!1),!f.draw){f.draw=!0;return}b(P)}})}function b(y){typeof y=="number"&&(y=S[y]),y!=null&&y&&y.count&&y.color&&y.opacity&&y.positions&&y.positions.length>1&&(y.scaleRatio=[y.scale[0]*y.viewport.width,y.scale[1]*y.viewport.height],h(y),y.after&&y.after(y))}function d(y){if(!y)return;y.length!=null?typeof y[0]=="number"&&(y=[{positions:y}]):Array.isArray(y)||(y=[y]);let f=0,P=0;if(E.groups=S=y.map((F,B)=>{let O=S[B];if(F)typeof F=="function"?F={after:F}:typeof F[0]=="number"&&(F={positions:F});else return O;return F=M(F,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),O||(S[B]=O={id:B,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},F=e({},w,F)),A(O,F,[{lineWidth:I=>+I*.5,capSize:I=>+I*.5,opacity:parseFloat,errors:I=>(I=t(I),P+=I.length,I),positions:(I,N)=>(I=t(I,"float64"),N.count=Math.floor(I.length/2),N.bounds=g(I,2),N.offset=f,f+=N.count,I)},{color:(I,N)=>{let U=N.count;if(I||(I="transparent"),!Array.isArray(I)||typeof I[0]=="number"){let Q=I;I=Array(U);for(let ue=0;ue<U;ue++)I[ue]=Q}if(I.length<U)throw Error("Not enough colors");let W=new Uint8Array(U*4);for(let Q=0;Q<U;Q++){let ue=x(I[Q],"uint8");W.set(ue,Q*4)}return W},range:(I,N,U)=>{let W=N.bounds;return I||(I=W),N.scale=[1/(I[2]-I[0]),1/(I[3]-I[1])],N.translate=[-I[0],-I[1]],N.scaleFract=o(N.scale),N.translateFract=o(N.translate),I},viewport:I=>{let N;return Array.isArray(I)?N={x:I[0],y:I[1],width:I[2]-I[0],height:I[3]-I[1]}:I?(N={x:I.x||I.left||0,y:I.y||I.top||0},I.right?N.width=I.right-N.x:N.width=I.w||I.width||0,I.bottom?N.height=I.bottom-N.y:N.height=I.h||I.height||0):N={x:0,y:0,width:c.drawingBufferWidth,height:c.drawingBufferHeight},N}}]),O}),f||P){let F=S.reduce((N,U,W)=>N+(U?U.count:0),0),B=new Float64Array(F*2),O=new Uint8Array(F*4),I=new Float32Array(F*4);S.forEach((N,U)=>{if(!N)return;let{positions:W,count:Q,offset:ue,color:se,errors:he}=N;Q&&(O.set(se,ue*4),I.set(he,ue*4),B.set(W,ue*2))});var L=r(B);v(L);var z=o(B,L);p(z),T(O),l(I)}}function u(){v.destroy(),p.destroy(),T.destroy(),l.destroy(),_.destroy()}}}}),Kj=Ye({"node_modules/unquote/index.js"(X,H){var g=/[\'\"]/;H.exports=function(A){return A?(g.test(A.charAt(0))&&(A=A.substr(1)),g.test(A.charAt(A.length-1))&&(A=A.substr(0,A.length-1)),A):""}}}),$5=Ye({"node_modules/css-global-keywords/index.json"(){}}),Q5=Ye({"node_modules/css-system-font-keywords/index.json"(){}}),ek=Ye({"node_modules/css-font-weight-keywords/index.json"(){}}),tk=Ye({"node_modules/css-font-style-keywords/index.json"(){}}),rk=Ye({"node_modules/css-font-stretch-keywords/index.json"(){}}),Jj=Ye({"node_modules/parenthesis/index.js"(X,H){"use strict";function g(M,e){if(typeof M!="string")return[M];var t=[M];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],o=e.escape||"___",a=!!e.flat;r.forEach(function(s){var c=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),h=[];function v(p,T,l){var _=t.push(p.slice(s[0].length,-s[1].length))-1;return h.push(_),o+_+o}t.forEach(function(p,T){for(var l,_=0;p!=l;)if(l=p,p=p.replace(c,v),_++>1e4)throw Error("References have circular dependency. Please, check them.");t[T]=p}),h=h.reverse(),t=t.map(function(p){return h.forEach(function(T){p=p.replace(new RegExp("(\\"+o+T+"\\"+o+")","g"),s[0]+"$1"+s[1])}),p})});var i=new RegExp("\\"+o+"([0-9]+)\\"+o);function n(s,c,h){for(var v=[],p,T=0;p=i.exec(s);){if(T++>1e4)throw Error("Circular references in parenthesis");v.push(s.slice(0,p.index)),v.push(n(c[p[1]],c)),s=s.slice(p.index+p[0].length)}return v.push(s),v}return a?t:n(t[0],t)}function x(M,e){if(e&&e.flat){var t=e&&e.escape||"___",r=M[0],o;if(!r)return"";for(var a=new RegExp("\\"+t+"([0-9]+)\\"+t),i=0;r!=o;){if(i++>1e4)throw Error("Circular references in "+M);o=r,r=r.replace(a,n)}return r}return M.reduce(function s(c,h){return Array.isArray(h)&&(h=h.reduce(s,"")),c+h},"");function n(s,c){if(M[c]==null)throw Error("Reference "+c+"is undefined");return M[c]}}function A(M,e){return Array.isArray(M)?x(M,e):g(M,e)}A.parse=g,A.stringify=x,H.exports=A}}),$j=Ye({"node_modules/string-split-by/index.js"(X,H){"use strict";var g=Jj();H.exports=function(A,M,e){if(A==null)throw Error("First argument should be a string");if(M==null)throw Error("Separator should be a string or a RegExp");e?(typeof e=="string"||Array.isArray(e))&&(e={ignore:e}):e={},e.escape==null&&(e.escape=!0),e.ignore==null?e.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof e.ignore=="string"&&(e.ignore=[e.ignore]),e.ignore=e.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var t=g.parse(A,{flat:!0,brackets:e.ignore}),r=t[0],o=r.split(M);if(e.escape){for(var a=[],i=0;i<o.length;i++){var n=o[i],s=o[i+1];n[n.length-1]==="\\"&&n[n.length-2]!=="\\"?(a.push(n+M+s),i++):a.push(n)}o=a}for(var i=0;i<o.length;i++)t[0]=o[i],o[i]=g.stringify(t,{flat:!0});return o}}}),Qj=Ye({"node_modules/css-font-size-keywords/index.json"(){}}),ak=Ye({"node_modules/css-font/lib/util.js"(X,H){"use strict";var g=Qj();H.exports={isSize:function(A){return/^[\d\.]/.test(A)||A.indexOf("/")!==-1||g.indexOf(A)!==-1}}}}),eV=Ye({"node_modules/css-font/parse.js"(X,H){"use strict";var g=Kj(),x=$5(),A=Q5(),M=ek(),e=tk(),t=rk(),r=$j(),o=ak().isSize;H.exports=i;var a=i.cache={};function i(s){if(typeof s!="string")throw new Error("Font argument must be a string.");if(a[s])return a[s];if(s==="")throw new Error("Cannot parse an empty string.");if(A.indexOf(s)!==-1)return a[s]={system:s};for(var c={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},h=r(s,/\s+/),v;v=h.shift();){if(x.indexOf(v)!==-1)return["style","variant","weight","stretch"].forEach(function(T){c[T]=v}),a[s]=c;if(e.indexOf(v)!==-1){c.style=v;continue}if(v==="normal"||v==="small-caps"){c.variant=v;continue}if(t.indexOf(v)!==-1){c.stretch=v;continue}if(M.indexOf(v)!==-1){c.weight=v;continue}if(o(v)){var p=r(v,"/");if(c.size=p[0],p[1]!=null?c.lineHeight=n(p[1]):h[0]==="/"&&(h.shift(),c.lineHeight=n(h.shift())),!h.length)throw new Error("Missing required font-family.");return c.family=r(h.join(" "),/\s*,\s*/).map(g),a[s]=c}throw new Error("Unknown or unsupported font token: "+v)}throw new Error("Missing required font-size.")}function n(s){var c=parseFloat(s);return c.toString()===s?c:s}}}),ik=Ye({"node_modules/css-font/stringify.js"(X,H){"use strict";var g=Ev(),x=ak().isSize,A=s($5()),M=s(Q5()),e=s(ek()),t=s(tk()),r=s(rk()),o={normal:1,"small-caps":1},a={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},i={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};H.exports=function(h){if(h=g(h,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),h.system)return h.system&&n(h.system,M),h.system;if(n(h.style,t),n(h.variant,o),n(h.weight,e),n(h.stretch,r),h.size==null&&(h.size=i.size),typeof h.size=="number"&&(h.size+="px"),!x)throw Error("Bad size value `"+h.size+"`");h.family||(h.family=i.family),Array.isArray(h.family)&&(h.family.length||(h.family=[i.family]),h.family=h.family.map(function(p){return a[p]?p:'"'+p+'"'}).join(", "));var v=[];return v.push(h.style),h.variant!==h.style&&v.push(h.variant),h.weight!==h.variant&&h.weight!==h.style&&v.push(h.weight),h.stretch!==h.weight&&h.stretch!==h.variant&&h.stretch!==h.style&&v.push(h.stretch),v.push(h.size+(h.lineHeight==null||h.lineHeight==="normal"||h.lineHeight+""=="1"?"":"/"+h.lineHeight)),v.push(h.family),v.filter(Boolean).join(" ")};function n(c,h){if(c&&!h[c]&&!A[c])throw Error("Unknown keyword `"+c+"`");return c}function s(c){for(var h={},v=0;v<c.length;v++)h[c[v]]=1;return h}}}),tV=Ye({"node_modules/css-font/index.js"(X,H){"use strict";H.exports={parse:eV(),stringify:ik()}}}),nk=Ye({"node_modules/regl/dist/regl.unchecked.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():g.createREGL=x()})(X,function(){"use strict";var g=function(Qt,ra){for(var Ta=Object.keys(ra),si=0;si<Ta.length;++si)Qt[Ta[si]]=ra[Ta[si]];return Qt},x=0,A=0,M=5,e=6;function t(Qt,ra){this.id=x++,this.type=Qt,this.data=ra}function r(Qt){return Qt.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function o(Qt){if(Qt.length===0)return[];var ra=Qt.charAt(0),Ta=Qt.charAt(Qt.length-1);if(Qt.length>1&&ra===Ta&&(ra==='"'||ra==="'"))return['"'+r(Qt.substr(1,Qt.length-2))+'"'];var si=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Qt);if(si)return o(Qt.substr(0,si.index)).concat(o(si[1])).concat(o(Qt.substr(si.index+si[0].length)));var wi=Qt.split(".");if(wi.length===1)return['"'+r(Qt)+'"'];for(var xi=[],bi=0;bi<wi.length;++bi)xi=xi.concat(o(wi[bi]));return xi}function a(Qt){return"["+o(Qt).join("][")+"]"}function i(Qt,ra){return new t(Qt,a(ra+""))}function n(Qt){return typeof Qt=="function"&&!Qt._reglType||Qt instanceof t}function s(Qt,ra){if(typeof Qt=="function")return new t(A,Qt);if(typeof Qt=="number"||typeof Qt=="boolean")return new t(M,Qt);if(Array.isArray(Qt))return new t(e,Qt.map(function(Ta,si){return s(Ta,ra+"["+si+"]")}));if(Qt instanceof t)return Qt}var c={DynamicVariable:t,define:i,isDynamic:n,unbox:s,accessor:a},h={next:typeof requestAnimationFrame=="function"?function(Qt){return requestAnimationFrame(Qt)}:function(Qt){return setTimeout(Qt,16)},cancel:typeof cancelAnimationFrame=="function"?function(Qt){return cancelAnimationFrame(Qt)}:clearTimeout},v=typeof performance<"u"&&performance.now?function(){return performance.now()}:function(){return+new Date};function p(){var Qt={"":0},ra=[""];return{id:function(Ta){var si=Qt[Ta];return si||(si=Qt[Ta]=ra.length,ra.push(Ta),si)},str:function(Ta){return ra[Ta]}}}function T(Qt,ra,Ta){var si=document.createElement("canvas");g(si.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Qt.appendChild(si),Qt===document.body&&(si.style.position="absolute",g(Qt.style,{margin:0,padding:0}));function wi(){var Fi=window.innerWidth,cn=window.innerHeight;if(Qt!==document.body){var fn=si.getBoundingClientRect();Fi=fn.right-fn.left,cn=fn.bottom-fn.top}si.width=Ta*Fi,si.height=Ta*cn}var xi;Qt!==document.body&&typeof ResizeObserver=="function"?(xi=new ResizeObserver(function(){setTimeout(wi)}),xi.observe(Qt)):window.addEventListener("resize",wi,!1);function bi(){xi?xi.disconnect():window.removeEventListener("resize",wi),Qt.removeChild(si)}return wi(),{canvas:si,onDestroy:bi}}function l(Qt,ra){function Ta(si){try{return Qt.getContext(si,ra)}catch{return null}}return Ta("webgl")||Ta("experimental-webgl")||Ta("webgl-experimental")}function _(Qt){return typeof Qt.nodeName=="string"&&typeof Qt.appendChild=="function"&&typeof Qt.getBoundingClientRect=="function"}function w(Qt){return typeof Qt.drawArrays=="function"||typeof Qt.drawElements=="function"}function S(Qt){return typeof Qt=="string"?Qt.split():Qt}function E(Qt){return typeof Qt=="string"?document.querySelector(Qt):Qt}function m(Qt){var ra=Qt||{},Ta,si,wi,xi,bi={},Fi=[],cn=[],fn=typeof window>"u"?1:window.devicePixelRatio,Gi=!1,Io={},nn=function(ui){},on=function(){};if(typeof ra=="string"?Ta=document.querySelector(ra):typeof ra=="object"&&(_(ra)?Ta=ra:w(ra)?(xi=ra,wi=xi.canvas):("gl"in ra?xi=ra.gl:"canvas"in ra?wi=E(ra.canvas):"container"in ra&&(si=E(ra.container)),"attributes"in ra&&(bi=ra.attributes),"extensions"in ra&&(Fi=S(ra.extensions)),"optionalExtensions"in ra&&(cn=S(ra.optionalExtensions)),"onDone"in ra&&(nn=ra.onDone),"profile"in ra&&(Gi=!!ra.profile),"pixelRatio"in ra&&(fn=+ra.pixelRatio),"cachedCode"in ra&&(Io=ra.cachedCode))),Ta&&(Ta.nodeName.toLowerCase()==="canvas"?wi=Ta:si=Ta),!xi){if(!wi){var Oi=T(si||document.body,nn,fn);if(!Oi)return null;wi=Oi.canvas,on=Oi.onDestroy}bi.premultipliedAlpha===void 0&&(bi.premultipliedAlpha=!0),xi=l(wi,bi)}return xi?{gl:xi,canvas:wi,container:si,extensions:Fi,optionalExtensions:cn,pixelRatio:fn,profile:Gi,cachedCode:Io,onDone:nn,onDestroy:on}:(on(),nn("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function b(Qt,ra){var Ta={};function si(bi){var Fi=bi.toLowerCase(),cn;try{cn=Ta[Fi]=Qt.getExtension(Fi)}catch{}return!!cn}for(var wi=0;wi<ra.extensions.length;++wi){var xi=ra.extensions[wi];if(!si(xi))return ra.onDestroy(),ra.onDone('"'+xi+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return ra.optionalExtensions.forEach(si),{extensions:Ta,restore:function(){Object.keys(Ta).forEach(function(bi){if(Ta[bi]&&!si(bi))throw new Error("(regl): error restoring extension "+bi)})}}}function d(Qt,ra){for(var Ta=Array(Qt),si=0;si<Qt;++si)Ta[si]=ra(si);return Ta}var u=5120,y=5121,f=5122,P=5123,L=5124,z=5125,F=5126;function B(Qt){for(var ra=16;ra<=1<<28;ra*=16)if(Qt<=ra)return ra;return 0}function O(Qt){var ra,Ta;return ra=(Qt>65535)<<4,Qt>>>=ra,Ta=(Qt>255)<<3,Qt>>>=Ta,ra|=Ta,Ta=(Qt>15)<<2,Qt>>>=Ta,ra|=Ta,Ta=(Qt>3)<<1,Qt>>>=Ta,ra|=Ta,ra|Qt>>1}function I(){var Qt=d(8,function(){return[]});function ra(xi){var bi=B(xi),Fi=Qt[O(bi)>>2];return Fi.length>0?Fi.pop():new ArrayBuffer(bi)}function Ta(xi){Qt[O(xi.byteLength)>>2].push(xi)}function si(xi,bi){var Fi=null;switch(xi){case u:Fi=new Int8Array(ra(bi),0,bi);break;case y:Fi=new Uint8Array(ra(bi),0,bi);break;case f:Fi=new Int16Array(ra(2*bi),0,bi);break;case P:Fi=new Uint16Array(ra(2*bi),0,bi);break;case L:Fi=new Int32Array(ra(4*bi),0,bi);break;case z:Fi=new Uint32Array(ra(4*bi),0,bi);break;case F:Fi=new Float32Array(ra(4*bi),0,bi);break;default:return null}return Fi.length!==bi?Fi.subarray(0,bi):Fi}function wi(xi){Ta(xi.buffer)}return{alloc:ra,free:Ta,allocType:si,freeType:wi}}var N=I();N.zero=I();var U=3408,W=3410,Q=3411,ue=3412,se=3413,he=3414,G=3415,$=33901,J=33902,Z=3379,re=3386,ne=34921,j=36347,ee=36348,ie=35661,fe=35660,be=34930,Ae=36349,Be=34076,Ie=34024,Ze=7936,at=7937,it=7938,et=35724,lt=34047,Me=36063,ge=34852,ce=3553,ze=34067,tt=34069,nt=33984,Qe=6408,Ct=5126,St=5121,Ot=36160,jt=36053,ur=36064,ar=16384,Cr=function(Qt,ra){var Ta=1;ra.ext_texture_filter_anisotropic&&(Ta=Qt.getParameter(lt));var si=1,wi=1;ra.webgl_draw_buffers&&(si=Qt.getParameter(ge),wi=Qt.getParameter(Me));var xi=!!ra.oes_texture_float;if(xi){var bi=Qt.createTexture();Qt.bindTexture(ce,bi),Qt.texImage2D(ce,0,Qe,1,1,0,Qe,Ct,null);var Fi=Qt.createFramebuffer();if(Qt.bindFramebuffer(Ot,Fi),Qt.framebufferTexture2D(Ot,ur,ce,bi,0),Qt.bindTexture(ce,null),Qt.checkFramebufferStatus(Ot)!==jt)xi=!1;else{Qt.viewport(0,0,1,1),Qt.clearColor(1,0,0,1),Qt.clear(ar);var cn=N.allocType(Ct,4);Qt.readPixels(0,0,1,1,Qe,Ct,cn),Qt.getError()?xi=!1:(Qt.deleteFramebuffer(Fi),Qt.deleteTexture(bi),xi=cn[0]===1),N.freeType(cn)}}var fn=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Gi=!0;if(!fn){var Io=Qt.createTexture(),nn=N.allocType(St,36);Qt.activeTexture(nt),Qt.bindTexture(ze,Io),Qt.texImage2D(tt,0,Qe,3,3,0,Qe,St,nn),N.freeType(nn),Qt.bindTexture(ze,null),Qt.deleteTexture(Io),Gi=!Qt.getError()}return{colorBits:[Qt.getParameter(W),Qt.getParameter(Q),Qt.getParameter(ue),Qt.getParameter(se)],depthBits:Qt.getParameter(he),stencilBits:Qt.getParameter(G),subpixelBits:Qt.getParameter(U),extensions:Object.keys(ra).filter(function(on){return!!ra[on]}),maxAnisotropic:Ta,maxDrawbuffers:si,maxColorAttachments:wi,pointSizeDims:Qt.getParameter($),lineWidthDims:Qt.getParameter(J),maxViewportDims:Qt.getParameter(re),maxCombinedTextureUnits:Qt.getParameter(ie),maxCubeMapSize:Qt.getParameter(Be),maxRenderbufferSize:Qt.getParameter(Ie),maxTextureUnits:Qt.getParameter(be),maxTextureSize:Qt.getParameter(Z),maxAttributes:Qt.getParameter(ne),maxVertexUniforms:Qt.getParameter(j),maxVertexTextureUnits:Qt.getParameter(fe),maxVaryingVectors:Qt.getParameter(ee),maxFragmentUniforms:Qt.getParameter(Ae),glsl:Qt.getParameter(et),renderer:Qt.getParameter(at),vendor:Qt.getParameter(Ze),version:Qt.getParameter(it),readFloat:xi,npotTextureCube:Gi}},vr=function(Qt){return Qt instanceof Uint8Array||Qt instanceof Uint16Array||Qt instanceof Uint32Array||Qt instanceof Int8Array||Qt instanceof Int16Array||Qt instanceof Int32Array||Qt instanceof Float32Array||Qt instanceof Float64Array||Qt instanceof Uint8ClampedArray};function _r(Qt){return!!Qt&&typeof Qt=="object"&&Array.isArray(Qt.shape)&&Array.isArray(Qt.stride)&&typeof Qt.offset=="number"&&Qt.shape.length===Qt.stride.length&&(Array.isArray(Qt.data)||vr(Qt.data))}var yt=function(Qt){return Object.keys(Qt).map(function(ra){return Qt[ra]})},Fe={shape:Te,flatten:ke};function Ke(Qt,ra,Ta){for(var si=0;si<ra;++si)Ta[si]=Qt[si]}function Ne(Qt,ra,Ta,si){for(var wi=0,xi=0;xi<ra;++xi)for(var bi=Qt[xi],Fi=0;Fi<Ta;++Fi)si[wi++]=bi[Fi]}function Ee(Qt,ra,Ta,si,wi,xi){for(var bi=xi,Fi=0;Fi<ra;++Fi)for(var cn=Qt[Fi],fn=0;fn<Ta;++fn)for(var Gi=cn[fn],Io=0;Io<si;++Io)wi[bi++]=Gi[Io]}function Ve(Qt,ra,Ta,si,wi){for(var xi=1,bi=Ta+1;bi<ra.length;++bi)xi*=ra[bi];var Fi=ra[Ta];if(ra.length-Ta===4){var cn=ra[Ta+1],fn=ra[Ta+2],Gi=ra[Ta+3];for(bi=0;bi<Fi;++bi)Ee(Qt[bi],cn,fn,Gi,si,wi),wi+=xi}else for(bi=0;bi<Fi;++bi)Ve(Qt[bi],ra,Ta+1,si,wi),wi+=xi}function ke(Qt,ra,Ta,si){var wi=1;if(ra.length)for(var xi=0;xi<ra.length;++xi)wi*=ra[xi];else wi=0;var bi=si||N.allocType(Ta,wi);switch(ra.length){case 0:break;case 1:Ke(Qt,ra[0],bi);break;case 2:Ne(Qt,ra[0],ra[1],bi);break;case 3:Ee(Qt,ra[0],ra[1],ra[2],bi,0);break;default:Ve(Qt,ra,0,bi,0)}return bi}function Te(Qt){for(var ra=[],Ta=Qt;Ta.length;Ta=Ta[0])ra.push(Ta.length);return ra}var Le={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,"[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,"[object ArrayBuffer]":5121},rt=5120,dt=5122,xt=5124,It=5121,Bt=5123,Gt=5125,Kt=5126,sr=5126,sa={int8:rt,int16:dt,int32:xt,uint8:It,uint16:Bt,uint32:Gt,float:Kt,float32:sr},Aa=35048,La=35040,ka={dynamic:Aa,stream:La,static:35044},Ga=Fe.flatten,Ma=Fe.shape,Ua=35044,ni=35040,Wt=5121,zt=5126,Vt=[];Vt[5120]=1,Vt[5122]=2,Vt[5124]=4,Vt[5121]=1,Vt[5123]=2,Vt[5125]=4,Vt[5126]=4;function Ut(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function xr(Qt,ra){for(var Ta=0;Ta<ra.length;++Ta)Qt[Ta]=ra[Ta]}function Zr(Qt,ra,Ta,si,wi,xi,bi){for(var Fi=0,cn=0;cn<Ta;++cn)for(var fn=0;fn<si;++fn)Qt[Fi++]=ra[wi*cn+xi*fn+bi]}function pa(Qt,ra,Ta,si){var wi=0,xi={};function bi(ui){this.id=wi++,this.buffer=Qt.createBuffer(),this.type=ui,this.usage=Ua,this.byteLength=0,this.dimension=1,this.dtype=Wt,this.persistentData=null,Ta.profile&&(this.stats={size:0})}bi.prototype.bind=function(){Qt.bindBuffer(this.type,this.buffer)},bi.prototype.destroy=function(){nn(this)};var Fi=[];function cn(ui,Mi){var tn=Fi.pop();return tn||(tn=new bi(ui)),tn.bind(),Io(tn,Mi,ni,0,1,!1),tn}function fn(ui){Fi.push(ui)}function Gi(ui,Mi,tn){ui.byteLength=Mi.byteLength,Qt.bufferData(ui.type,Mi,tn)}function Io(ui,Mi,tn,pn,qi,Dn){var bn;if(ui.usage=tn,Array.isArray(Mi)){if(ui.dtype=pn||zt,Mi.length>0){var _o;if(Array.isArray(Mi[0])){bn=Ma(Mi);for(var Zi=1,Ui=1;Ui<bn.length;++Ui)Zi*=bn[Ui];ui.dimension=Zi,_o=Ga(Mi,bn,ui.dtype),Gi(ui,_o,tn),Dn?ui.persistentData=_o:N.freeType(_o)}else if(typeof Mi[0]=="number"){ui.dimension=qi;var Zn=N.allocType(ui.dtype,Mi.length);xr(Zn,Mi),Gi(ui,Zn,tn),Dn?ui.persistentData=Zn:N.freeType(Zn)}else vr(Mi[0])&&(ui.dimension=Mi[0].length,ui.dtype=pn||Ut(Mi[0])||zt,_o=Ga(Mi,[Mi.length,Mi[0].length],ui.dtype),Gi(ui,_o,tn),Dn?ui.persistentData=_o:N.freeType(_o))}}else if(vr(Mi))ui.dtype=pn||Ut(Mi),ui.dimension=qi,Gi(ui,Mi,tn),Dn&&(ui.persistentData=new Uint8Array(new Uint8Array(Mi.buffer)));else if(_r(Mi)){bn=Mi.shape;var Rn=Mi.stride,xn=Mi.offset,dn=0,jn=0,Ro=0,rs=0;bn.length===1?(dn=bn[0],jn=1,Ro=Rn[0],rs=0):bn.length===2&&(dn=bn[0],jn=bn[1],Ro=Rn[0],rs=Rn[1]),ui.dtype=pn||Ut(Mi.data)||zt,ui.dimension=jn;var wn=N.allocType(ui.dtype,dn*jn);Zr(wn,Mi.data,dn,jn,Ro,rs,xn),Gi(ui,wn,tn),Dn?ui.persistentData=wn:N.freeType(wn)}else Mi instanceof ArrayBuffer&&(ui.dtype=Wt,ui.dimension=qi,Gi(ui,Mi,tn),Dn&&(ui.persistentData=new Uint8Array(new Uint8Array(Mi))))}function nn(ui){ra.bufferCount--,si(ui);var Mi=ui.buffer;Qt.deleteBuffer(Mi),ui.buffer=null,delete xi[ui.id]}function on(ui,Mi,tn,pn){ra.bufferCount++;var qi=new bi(Mi);xi[qi.id]=qi;function Dn(Zi){var Ui=Ua,Zn=null,Rn=0,xn=0,dn=1;return Array.isArray(Zi)||vr(Zi)||_r(Zi)||Zi instanceof ArrayBuffer?Zn=Zi:typeof Zi=="number"?Rn=Zi|0:Zi&&("data"in Zi&&(Zn=Zi.data),"usage"in Zi&&(Ui=ka[Zi.usage]),"type"in Zi&&(xn=sa[Zi.type]),"dimension"in Zi&&(dn=Zi.dimension|0),"length"in Zi&&(Rn=Zi.length|0)),qi.bind(),Zn?Io(qi,Zn,Ui,xn,dn,pn):(Rn&&Qt.bufferData(qi.type,Rn,Ui),qi.dtype=xn||Wt,qi.usage=Ui,qi.dimension=dn,qi.byteLength=Rn),Ta.profile&&(qi.stats.size=qi.byteLength*Vt[qi.dtype]),Dn}function bn(Zi,Ui){Qt.bufferSubData(qi.type,Ui,Zi)}function _o(Zi,Ui){var Zn=(Ui||0)|0,Rn;if(qi.bind(),vr(Zi)||Zi instanceof ArrayBuffer)bn(Zi,Zn);else if(Array.isArray(Zi)){if(Zi.length>0){if(typeof Zi[0]=="number"){var xn=N.allocType(qi.dtype,Zi.length);xr(xn,Zi),bn(xn,Zn),N.freeType(xn)}else if(Array.isArray(Zi[0])||vr(Zi[0])){Rn=Ma(Zi);var dn=Ga(Zi,Rn,qi.dtype);bn(dn,Zn),N.freeType(dn)}}}else if(_r(Zi)){Rn=Zi.shape;var jn=Zi.stride,Ro=0,rs=0,wn=0,oo=0;Rn.length===1?(Ro=Rn[0],rs=1,wn=jn[0],oo=0):Rn.length===2&&(Ro=Rn[0],rs=Rn[1],wn=jn[0],oo=jn[1]);var Xo=Array.isArray(Zi.data)?qi.dtype:Ut(Zi.data),os=N.allocType(Xo,Ro*rs);Zr(os,Zi.data,Ro,rs,wn,oo,Zi.offset),bn(os,Zn),N.freeType(os)}return Dn}return tn||Dn(ui),Dn._reglType="buffer",Dn._buffer=qi,Dn.subdata=_o,Ta.profile&&(Dn.stats=qi.stats),Dn.destroy=function(){nn(qi)},Dn}function Oi(){yt(xi).forEach(function(ui){ui.buffer=Qt.createBuffer(),Qt.bindBuffer(ui.type,ui.buffer),Qt.bufferData(ui.type,ui.persistentData||ui.byteLength,ui.usage)})}return Ta.profile&&(ra.getTotalBufferSize=function(){var ui=0;return Object.keys(xi).forEach(function(Mi){ui+=xi[Mi].stats.size}),ui}),{create:on,createStream:cn,destroyStream:fn,clear:function(){yt(xi).forEach(nn),Fi.forEach(nn)},getBuffer:function(ui){return ui&&ui._buffer instanceof bi?ui._buffer:null},restore:Oi,_initBuffer:Io}}var Xr=0,Ea=0,Fa=1,qa=1,ya=4,$a=4,mt={points:Xr,point:Ea,lines:Fa,line:qa,triangles:ya,triangle:$a,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},gt=0,Er=1,kr=4,br=5120,Tr=5121,Mr=5122,Fr=5123,Lr=5124,Jr=5125,oa=34963,ca=35040,kt=35044;function ir(Qt,ra,Ta,si){var wi={},xi=0,bi={uint8:Tr,uint16:Fr};ra.oes_element_index_uint&&(bi.uint32=Jr);function Fi(Oi){this.id=xi++,wi[this.id]=this,this.buffer=Oi,this.primType=kr,this.vertCount=0,this.type=0}Fi.prototype.bind=function(){this.buffer.bind()};var cn=[];function fn(Oi){var ui=cn.pop();return ui||(ui=new Fi(Ta.create(null,oa,!0,!1)._buffer)),Io(ui,Oi,ca,-1,-1,0,0),ui}function Gi(Oi){cn.push(Oi)}function Io(Oi,ui,Mi,tn,pn,qi,Dn){Oi.buffer.bind();var bn;if(ui){var _o=Dn;!Dn&&(!vr(ui)||_r(ui)&&!vr(ui.data))&&(_o=ra.oes_element_index_uint?Jr:Fr),Ta._initBuffer(Oi.buffer,ui,Mi,_o,3)}else Qt.bufferData(oa,qi,Mi),Oi.buffer.dtype=bn||Tr,Oi.buffer.usage=Mi,Oi.buffer.dimension=3,Oi.buffer.byteLength=qi;if(bn=Dn,!Dn){switch(Oi.buffer.dtype){case Tr:case br:bn=Tr;break;case Fr:case Mr:bn=Fr;break;case Jr:case Lr:bn=Jr;break;default:}Oi.buffer.dtype=bn}Oi.type=bn;var Zi=pn;Zi<0&&(Zi=Oi.buffer.byteLength,bn===Fr?Zi>>=1:bn===Jr&&(Zi>>=2)),Oi.vertCount=Zi;var Ui=tn;if(tn<0){Ui=kr;var Zn=Oi.buffer.dimension;Zn===1&&(Ui=gt),Zn===2&&(Ui=Er),Zn===3&&(Ui=kr)}Oi.primType=Ui}function nn(Oi){si.elementsCount--,delete wi[Oi.id],Oi.buffer.destroy(),Oi.buffer=null}function on(Oi,ui){var Mi=Ta.create(null,oa,!0),tn=new Fi(Mi._buffer);si.elementsCount++;function pn(qi){if(!qi)Mi(),tn.primType=kr,tn.vertCount=0,tn.type=Tr;else if(typeof qi=="number")Mi(qi),tn.primType=kr,tn.vertCount=qi|0,tn.type=Tr;else{var Dn=null,bn=kt,_o=-1,Zi=-1,Ui=0,Zn=0;Array.isArray(qi)||vr(qi)||_r(qi)?Dn=qi:("data"in qi&&(Dn=qi.data),"usage"in qi&&(bn=ka[qi.usage]),"primitive"in qi&&(_o=mt[qi.primitive]),"count"in qi&&(Zi=qi.count|0),"type"in qi&&(Zn=bi[qi.type]),"length"in qi?Ui=qi.length|0:(Ui=Zi,Zn===Fr||Zn===Mr?Ui*=2:(Zn===Jr||Zn===Lr)&&(Ui*=4))),Io(tn,Dn,bn,_o,Zi,Ui,Zn)}return pn}return pn(Oi),pn._reglType="elements",pn._elements=tn,pn.subdata=function(qi,Dn){return Mi.subdata(qi,Dn),pn},pn.destroy=function(){nn(tn)},pn}return{create:on,createStream:fn,destroyStream:Gi,getElements:function(Oi){return typeof Oi=="function"&&Oi._elements instanceof Fi?Oi._elements:null},clear:function(){yt(wi).forEach(nn)}}}var mr=new Float32Array(1),$r=new Uint32Array(mr.buffer),ma=5123;function Ba(Qt){for(var ra=N.allocType(ma,Qt.length),Ta=0;Ta<Qt.length;++Ta)if(isNaN(Qt[Ta]))ra[Ta]=65535;else if(Qt[Ta]===1/0)ra[Ta]=31744;else if(Qt[Ta]===-1/0)ra[Ta]=64512;else{mr[0]=Qt[Ta];var si=$r[0],wi=si>>>31<<15,xi=(si<<1>>>24)-127,bi=si>>13&1023;if(xi<-24)ra[Ta]=wi;else if(xi<-14){var Fi=-14-xi;ra[Ta]=wi+(bi+1024>>Fi)}else xi>15?ra[Ta]=wi+31744:ra[Ta]=wi+(xi+15<<10)+bi}return ra}function Ca(Qt){return Array.isArray(Qt)||vr(Qt)}var da=34467,Sa=3553,Ti=34067,ai=34069,an=6408,sn=6406,Mn=6407,On=6409,$n=6410,Cn=32854,Lo=32855,Xi=36194,Jo=32819,zo=32820,as=33635,Pn=34042,go=6402,In=34041,Do=35904,Ho=35906,Qo=36193,Xn=33776,po=33777,ys=33778,Is=33779,Fs=35986,$o=35987,fi=34798,mn=35840,ol=35841,Os=35842,so=35843,Ns=36196,fs=5121,al=5123,vl=5125,ji=5126,To=10242,Yn=10243,_s=10497,Yo=33071,Nn=33648,Wl=10240,Zu=10241,ml=9728,Bu=9729,El=9984,qs=9985,Jl=9986,Nu=9987,Ic=33170,Xu=4352,Th=4353,bf=4354,Rs=34046,Yc=3317,If=37440,Zl=37441,yl=37443,oc=37444,_c=33984,Zs=[El,Jl,qs,Nu],_l=[0,On,$n,Mn,an],Bs={};Bs[On]=Bs[sn]=Bs[go]=1,Bs[In]=Bs[$n]=2,Bs[Mn]=Bs[Do]=3,Bs[an]=Bs[Ho]=4;function $s(Qt){return"[object "+Qt+"]"}var sc=$s("HTMLCanvasElement"),zl=$s("OffscreenCanvas"),Yu=$s("CanvasRenderingContext2D"),Qs=$s("ImageBitmap"),fp=$s("HTMLImageElement"),es=$s("HTMLVideoElement"),Wh=Object.keys(Le).concat([sc,zl,Yu,Qs,fp,es]),Ss=[];Ss[fs]=1,Ss[ji]=4,Ss[Qo]=2,Ss[al]=2,Ss[vl]=4;var So=[];So[Cn]=2,So[Lo]=2,So[Xi]=2,So[In]=4,So[Xn]=.5,So[po]=.5,So[ys]=1,So[Is]=1,So[Fs]=.5,So[$o]=1,So[fi]=1,So[mn]=.5,So[ol]=.25,So[Os]=.5,So[so]=.25,So[Ns]=.5;function hf(Qt){return Array.isArray(Qt)&&(Qt.length===0||typeof Qt[0]=="number")}function Ku(Qt){if(!Array.isArray(Qt))return!1;var ra=Qt.length;return!(ra===0||!Ca(Qt[0]))}function cu(Qt){return Object.prototype.toString.call(Qt)}function Zf(Qt){return cu(Qt)===sc}function Rc(Qt){return cu(Qt)===zl}function pf(Qt){return cu(Qt)===Yu}function Fl(Qt){return cu(Qt)===Qs}function lh(Qt){return cu(Qt)===fp}function Xf(Qt){return cu(Qt)===es}function Rf(Qt){if(!Qt)return!1;var ra=cu(Qt);return Wh.indexOf(ra)>=0?!0:hf(Qt)||Ku(Qt)||_r(Qt)}function Kc(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function Yf(Qt,ra){var Ta=ra.length;switch(Qt.type){case fs:case al:case vl:case ji:var si=N.allocType(Qt.type,Ta);si.set(ra),Qt.data=si;break;case Qo:Qt.data=Ba(ra);break;default:}}function uh(Qt,ra){return N.allocType(Qt.type===Qo?ji:Qt.type,ra)}function Ju(Qt,ra){Qt.type===Qo?(Qt.data=Ba(ra),N.freeType(ra)):Qt.data=ra}function Df(Qt,ra,Ta,si,wi,xi){for(var bi=Qt.width,Fi=Qt.height,cn=Qt.channels,fn=bi*Fi*cn,Gi=uh(Qt,fn),Io=0,nn=0;nn<Fi;++nn)for(var on=0;on<bi;++on)for(var Oi=0;Oi<cn;++Oi)Gi[Io++]=ra[Ta*on+si*nn+wi*Oi+xi];Ju(Qt,Gi)}function Dc(Qt,ra,Ta,si,wi,xi){var bi;if(typeof So[Qt]<"u"?bi=So[Qt]:bi=Bs[Qt]*Ss[ra],xi&&(bi*=6),wi){for(var Fi=0,cn=Ta;cn>=1;)Fi+=bi*cn*cn,cn/=2;return Fi}else return bi*Ta*si}function Jc(Qt,ra,Ta,si,wi,xi,bi){var Fi={"don't care":Xu,"dont care":Xu,nice:bf,fast:Th},cn={repeat:_s,clamp:Yo,mirror:Nn},fn={nearest:ml,linear:Bu},Gi=g({mipmap:Nu,"nearest mipmap nearest":El,"linear mipmap nearest":qs,"nearest mipmap linear":Jl,"linear mipmap linear":Nu},fn),Io={none:0,browser:oc},nn={uint8:fs,rgba4:Jo,rgb565:as,"rgb5 a1":zo},on={alpha:sn,luminance:On,"luminance alpha":$n,rgb:Mn,rgba:an,rgba4:Cn,"rgb5 a1":Lo,rgb565:Xi},Oi={};ra.ext_srgb&&(on.srgb=Do,on.srgba=Ho),ra.oes_texture_float&&(nn.float32=nn.float=ji),ra.oes_texture_half_float&&(nn.float16=nn["half float"]=Qo),ra.webgl_depth_texture&&(g(on,{depth:go,"depth stencil":In}),g(nn,{uint16:al,uint32:vl,"depth stencil":Pn})),ra.webgl_compressed_texture_s3tc&&g(Oi,{"rgb s3tc dxt1":Xn,"rgba s3tc dxt1":po,"rgba s3tc dxt3":ys,"rgba s3tc dxt5":Is}),ra.webgl_compressed_texture_atc&&g(Oi,{"rgb atc":Fs,"rgba atc explicit alpha":$o,"rgba atc interpolated alpha":fi}),ra.webgl_compressed_texture_pvrtc&&g(Oi,{"rgb pvrtc 4bppv1":mn,"rgb pvrtc 2bppv1":ol,"rgba pvrtc 4bppv1":Os,"rgba pvrtc 2bppv1":so}),ra.webgl_compressed_texture_etc1&&(Oi["rgb etc1"]=Ns);var ui=Array.prototype.slice.call(Qt.getParameter(da));Object.keys(Oi).forEach(function(He){var st=Oi[He];ui.indexOf(st)>=0&&(on[He]=st)});var Mi=Object.keys(on);Ta.textureFormats=Mi;var tn=[];Object.keys(on).forEach(function(He){var st=on[He];tn[st]=He});var pn=[];Object.keys(nn).forEach(function(He){var st=nn[He];pn[st]=He});var qi=[];Object.keys(fn).forEach(function(He){var st=fn[He];qi[st]=He});var Dn=[];Object.keys(Gi).forEach(function(He){var st=Gi[He];Dn[st]=He});var bn=[];Object.keys(cn).forEach(function(He){var st=cn[He];bn[st]=He});var _o=Mi.reduce(function(He,st){var Et=on[st];return Et===On||Et===sn||Et===On||Et===$n||Et===go||Et===In||ra.ext_srgb&&(Et===Do||Et===Ho)?He[Et]=Et:Et===Lo||st.indexOf("rgba")>=0?He[Et]=an:He[Et]=Mn,He},{});function Zi(){this.internalformat=an,this.format=an,this.type=fs,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=oc,this.width=0,this.height=0,this.channels=0}function Ui(He,st){He.internalformat=st.internalformat,He.format=st.format,He.type=st.type,He.compressed=st.compressed,He.premultiplyAlpha=st.premultiplyAlpha,He.flipY=st.flipY,He.unpackAlignment=st.unpackAlignment,He.colorSpace=st.colorSpace,He.width=st.width,He.height=st.height,He.channels=st.channels}function Zn(He,st){if(!(typeof st!="object"||!st)){if("premultiplyAlpha"in st&&(He.premultiplyAlpha=st.premultiplyAlpha),"flipY"in st&&(He.flipY=st.flipY),"alignment"in st&&(He.unpackAlignment=st.alignment),"colorSpace"in st&&(He.colorSpace=Io[st.colorSpace]),"type"in st){var Et=st.type;He.type=nn[Et]}var Ht=He.width,yr=He.height,Ir=He.channels,wr=!1;"shape"in st?(Ht=st.shape[0],yr=st.shape[1],st.shape.length===3&&(Ir=st.shape[2],wr=!0)):("radius"in st&&(Ht=yr=st.radius),"width"in st&&(Ht=st.width),"height"in st&&(yr=st.height),"channels"in st&&(Ir=st.channels,wr=!0)),He.width=Ht|0,He.height=yr|0,He.channels=Ir|0;var qt=!1;if("format"in st){var tr=st.format,dr=He.internalformat=on[tr];He.format=_o[dr],tr in nn&&("type"in st||(He.type=nn[tr])),tr in Oi&&(He.compressed=!0),qt=!0}!wr&&qt?He.channels=Bs[He.format]:wr&&!qt&&He.channels!==_l[He.format]&&(He.format=He.internalformat=_l[He.channels])}}function Rn(He){Qt.pixelStorei(If,He.flipY),Qt.pixelStorei(Zl,He.premultiplyAlpha),Qt.pixelStorei(yl,He.colorSpace),Qt.pixelStorei(Yc,He.unpackAlignment)}function xn(){Zi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function dn(He,st){var Et=null;if(Rf(st)?Et=st:st&&(Zn(He,st),"x"in st&&(He.xOffset=st.x|0),"y"in st&&(He.yOffset=st.y|0),Rf(st.data)&&(Et=st.data)),st.copy){var Ht=wi.viewportWidth,yr=wi.viewportHeight;He.width=He.width||Ht-He.xOffset,He.height=He.height||yr-He.yOffset,He.needsCopy=!0}else if(!Et)He.width=He.width||1,He.height=He.height||1,He.channels=He.channels||4;else if(vr(Et))He.channels=He.channels||4,He.data=Et,!("type"in st)&&He.type===fs&&(He.type=Kc(Et));else if(hf(Et))He.channels=He.channels||4,Yf(He,Et),He.alignment=1,He.needsFree=!0;else if(_r(Et)){var Ir=Et.data;!Array.isArray(Ir)&&He.type===fs&&(He.type=Kc(Ir));var wr=Et.shape,qt=Et.stride,tr,dr,Pr,Vr,Hr,aa;wr.length===3?(Pr=wr[2],aa=qt[2]):(Pr=1,aa=1),tr=wr[0],dr=wr[1],Vr=qt[0],Hr=qt[1],He.alignment=1,He.width=tr,He.height=dr,He.channels=Pr,He.format=He.internalformat=_l[Pr],He.needsFree=!0,Df(He,Ir,Vr,Hr,aa,Et.offset)}else if(Zf(Et)||Rc(Et)||pf(Et))Zf(Et)||Rc(Et)?He.element=Et:He.element=Et.canvas,He.width=He.element.width,He.height=He.element.height,He.channels=4;else if(Fl(Et))He.element=Et,He.width=Et.width,He.height=Et.height,He.channels=4;else if(lh(Et))He.element=Et,He.width=Et.naturalWidth,He.height=Et.naturalHeight,He.channels=4;else if(Xf(Et))He.element=Et,He.width=Et.videoWidth,He.height=Et.videoHeight,He.channels=4;else if(Ku(Et)){var Qr=He.width||Et[0].length,Gr=He.height||Et.length,ia=He.channels;Ca(Et[0][0])?ia=ia||Et[0][0].length:ia=ia||1;for(var Ur=Fe.shape(Et),wa=1,Oa=0;Oa<Ur.length;++Oa)wa*=Ur[Oa];var ri=uh(He,wa);Fe.flatten(Et,Ur,"",ri),Ju(He,ri),He.alignment=1,He.width=Qr,He.height=Gr,He.channels=ia,He.format=He.internalformat=_l[ia],He.needsFree=!0}He.type===ji||He.type}function jn(He,st,Et){var Ht=He.element,yr=He.data,Ir=He.internalformat,wr=He.format,qt=He.type,tr=He.width,dr=He.height;Rn(He),Ht?Qt.texImage2D(st,Et,wr,wr,qt,Ht):He.compressed?Qt.compressedTexImage2D(st,Et,Ir,tr,dr,0,yr):He.needsCopy?(si(),Qt.copyTexImage2D(st,Et,wr,He.xOffset,He.yOffset,tr,dr,0)):Qt.texImage2D(st,Et,wr,tr,dr,0,wr,qt,yr||null)}function Ro(He,st,Et,Ht,yr){var Ir=He.element,wr=He.data,qt=He.internalformat,tr=He.format,dr=He.type,Pr=He.width,Vr=He.height;Rn(He),Ir?Qt.texSubImage2D(st,yr,Et,Ht,tr,dr,Ir):He.compressed?Qt.compressedTexSubImage2D(st,yr,Et,Ht,qt,Pr,Vr,wr):He.needsCopy?(si(),Qt.copyTexSubImage2D(st,yr,Et,Ht,He.xOffset,He.yOffset,Pr,Vr)):Qt.texSubImage2D(st,yr,Et,Ht,Pr,Vr,tr,dr,wr)}var rs=[];function wn(){return rs.pop()||new xn}function oo(He){He.needsFree&&N.freeType(He.data),xn.call(He),rs.push(He)}function Xo(){Zi.call(this),this.genMipmaps=!1,this.mipmapHint=Xu,this.mipmask=0,this.images=Array(16)}function os(He,st,Et){var Ht=He.images[0]=wn();He.mipmask=1,Ht.width=He.width=st,Ht.height=He.height=Et,Ht.channels=He.channels=4}function As(He,st){var Et=null;if(Rf(st))Et=He.images[0]=wn(),Ui(Et,He),dn(Et,st),He.mipmask=1;else if(Zn(He,st),Array.isArray(st.mipmap))for(var Ht=st.mipmap,yr=0;yr<Ht.length;++yr)Et=He.images[yr]=wn(),Ui(Et,He),Et.width>>=yr,Et.height>>=yr,dn(Et,Ht[yr]),He.mipmask|=1<<yr;else Et=He.images[0]=wn(),Ui(Et,He),dn(Et,st),He.mipmask=1;Ui(He,He.images[0]),He.compressed&&(He.internalformat===Xn||He.internalformat===po||He.internalformat===ys||He.internalformat)}function $l(He,st){for(var Et=He.images,Ht=0;Ht<Et.length;++Ht){if(!Et[Ht])return;jn(Et[Ht],st,Ht)}}var Uc=[];function Ws(){var He=Uc.pop()||new Xo;Zi.call(He),He.mipmask=0;for(var st=0;st<16;++st)He.images[st]=null;return He}function jc(He){for(var st=He.images,Et=0;Et<st.length;++Et)st[Et]&&oo(st[Et]),st[Et]=null;Uc.push(He)}function Ol(){this.minFilter=ml,this.magFilter=ml,this.wrapS=Yo,this.wrapT=Yo,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=Xu}function vc(He,st){if("min"in st){var Et=st.min;He.minFilter=Gi[Et],Zs.indexOf(He.minFilter)>=0&&!("faces"in st)&&(He.genMipmaps=!0)}if("mag"in st){var Ht=st.mag;He.magFilter=fn[Ht]}var yr=He.wrapS,Ir=He.wrapT;if("wrap"in st){var wr=st.wrap;typeof wr=="string"?yr=Ir=cn[wr]:Array.isArray(wr)&&(yr=cn[wr[0]],Ir=cn[wr[1]])}else{if("wrapS"in st){var qt=st.wrapS;yr=cn[qt]}if("wrapT"in st){var tr=st.wrapT;Ir=cn[tr]}}if(He.wrapS=yr,He.wrapT=Ir,"anisotropic"in st){var dr=st.anisotropic;He.anisotropic=st.anisotropic}if("mipmap"in st){var Pr=!1;switch(typeof st.mipmap){case"string":He.mipmapHint=Fi[st.mipmap],He.genMipmaps=!0,Pr=!0;break;case"boolean":Pr=He.genMipmaps=st.mipmap;break;case"object":He.genMipmaps=!1,Pr=!0;break;default:}Pr&&!("min"in st)&&(He.minFilter=El)}}function mc(He,st){Qt.texParameteri(st,Zu,He.minFilter),Qt.texParameteri(st,Wl,He.magFilter),Qt.texParameteri(st,To,He.wrapS),Qt.texParameteri(st,Yn,He.wrapT),ra.ext_texture_filter_anisotropic&&Qt.texParameteri(st,Rs,He.anisotropic),He.genMipmaps&&(Qt.hint(Ic,He.mipmapHint),Qt.generateMipmap(st))}var rf=0,Yl={},Mc=Ta.maxTextureUnits,Vc=Array(Mc).map(function(){return null});function Ds(He){Zi.call(this),this.mipmask=0,this.internalformat=an,this.id=rf++,this.refCount=1,this.target=He,this.texture=Qt.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ol,bi.profile&&(this.stats={size:0})}function af(He){Qt.activeTexture(_c),Qt.bindTexture(He.target,He.texture)}function Cs(){var He=Vc[0];He?Qt.bindTexture(He.target,He.texture):Qt.bindTexture(Sa,null)}function ve(He){var st=He.texture,Et=He.unit,Ht=He.target;Et>=0&&(Qt.activeTexture(_c+Et),Qt.bindTexture(Ht,null),Vc[Et]=null),Qt.deleteTexture(st),He.texture=null,He.params=null,He.pixels=null,He.refCount=0,delete Yl[He.id],xi.textureCount--}g(Ds.prototype,{bind:function(){var He=this;He.bindCount+=1;var st=He.unit;if(st<0){for(var Et=0;Et<Mc;++Et){var Ht=Vc[Et];if(Ht){if(Ht.bindCount>0)continue;Ht.unit=-1}Vc[Et]=He,st=Et;break}st>=Mc,bi.profile&&xi.maxTextureUnits<st+1&&(xi.maxTextureUnits=st+1),He.unit=st,Qt.activeTexture(_c+st),Qt.bindTexture(He.target,He.texture)}return st},unbind:function(){this.bindCount-=1},decRef:function(){--this.refCount<=0&&ve(this)}});function K(He,st){var Et=new Ds(Sa);Yl[Et.id]=Et,xi.textureCount++;function Ht(wr,qt){var tr=Et.texInfo;Ol.call(tr);var dr=Ws();return typeof wr=="number"?typeof qt=="number"?os(dr,wr|0,qt|0):os(dr,wr|0,wr|0):wr?(vc(tr,wr),As(dr,wr)):os(dr,1,1),tr.genMipmaps&&(dr.mipmask=(dr.width<<1)-1),Et.mipmask=dr.mipmask,Ui(Et,dr),Et.internalformat=dr.internalformat,Ht.width=dr.width,Ht.height=dr.height,af(Et),$l(dr,Sa),mc(tr,Sa),Cs(),jc(dr),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,dr.width,dr.height,tr.genMipmaps,!1)),Ht.format=tn[Et.internalformat],Ht.type=pn[Et.type],Ht.mag=qi[tr.magFilter],Ht.min=Dn[tr.minFilter],Ht.wrapS=bn[tr.wrapS],Ht.wrapT=bn[tr.wrapT],Ht}function yr(wr,qt,tr,dr){var Pr=qt|0,Vr=tr|0,Hr=dr|0,aa=wn();return Ui(aa,Et),aa.width=0,aa.height=0,dn(aa,wr),aa.width=aa.width||(Et.width>>Hr)-Pr,aa.height=aa.height||(Et.height>>Hr)-Vr,af(Et),Ro(aa,Sa,Pr,Vr,Hr),Cs(),oo(aa),Ht}function Ir(wr,qt){var tr=wr|0,dr=qt|0||tr;if(tr===Et.width&&dr===Et.height)return Ht;Ht.width=Et.width=tr,Ht.height=Et.height=dr,af(Et);for(var Pr=0;Et.mipmask>>Pr;++Pr){var Vr=tr>>Pr,Hr=dr>>Pr;if(!Vr||!Hr)break;Qt.texImage2D(Sa,Pr,Et.format,Vr,Hr,0,Et.format,Et.type,null)}return Cs(),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,tr,dr,!1,!1)),Ht}return Ht(He,st),Ht.subimage=yr,Ht.resize=Ir,Ht._reglType="texture2d",Ht._texture=Et,bi.profile&&(Ht.stats=Et.stats),Ht.destroy=function(){Et.decRef()},Ht}function ye(He,st,Et,Ht,yr,Ir){var wr=new Ds(Ti);Yl[wr.id]=wr,xi.cubeCount++;var qt=new Array(6);function tr(Vr,Hr,aa,Qr,Gr,ia){var Ur,wa=wr.texInfo;for(Ol.call(wa),Ur=0;Ur<6;++Ur)qt[Ur]=Ws();if(typeof Vr=="number"||!Vr){var Oa=Vr|0||1;for(Ur=0;Ur<6;++Ur)os(qt[Ur],Oa,Oa)}else if(typeof Vr=="object")if(Hr)As(qt[0],Vr),As(qt[1],Hr),As(qt[2],aa),As(qt[3],Qr),As(qt[4],Gr),As(qt[5],ia);else if(vc(wa,Vr),Zn(wr,Vr),"faces"in Vr){var ri=Vr.faces;for(Ur=0;Ur<6;++Ur)Ui(qt[Ur],wr),As(qt[Ur],ri[Ur])}else for(Ur=0;Ur<6;++Ur)As(qt[Ur],Vr);for(Ui(wr,qt[0]),wa.genMipmaps?wr.mipmask=(qt[0].width<<1)-1:wr.mipmask=qt[0].mipmask,wr.internalformat=qt[0].internalformat,tr.width=qt[0].width,tr.height=qt[0].height,af(wr),Ur=0;Ur<6;++Ur)$l(qt[Ur],ai+Ur);for(mc(wa,Ti),Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,wa.genMipmaps,!0)),tr.format=tn[wr.internalformat],tr.type=pn[wr.type],tr.mag=qi[wa.magFilter],tr.min=Dn[wa.minFilter],tr.wrapS=bn[wa.wrapS],tr.wrapT=bn[wa.wrapT],Ur=0;Ur<6;++Ur)jc(qt[Ur]);return tr}function dr(Vr,Hr,aa,Qr,Gr){var ia=aa|0,Ur=Qr|0,wa=Gr|0,Oa=wn();return Ui(Oa,wr),Oa.width=0,Oa.height=0,dn(Oa,Hr),Oa.width=Oa.width||(wr.width>>wa)-ia,Oa.height=Oa.height||(wr.height>>wa)-Ur,af(wr),Ro(Oa,ai+Vr,ia,Ur,wa),Cs(),oo(Oa),tr}function Pr(Vr){var Hr=Vr|0;if(Hr!==wr.width){tr.width=wr.width=Hr,tr.height=wr.height=Hr,af(wr);for(var aa=0;aa<6;++aa)for(var Qr=0;wr.mipmask>>Qr;++Qr)Qt.texImage2D(ai+aa,Qr,wr.format,Hr>>Qr,Hr>>Qr,0,wr.format,wr.type,null);return Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,!1,!0)),tr}}return tr(He,st,Et,Ht,yr,Ir),tr.subimage=dr,tr.resize=Pr,tr._reglType="textureCube",tr._texture=wr,bi.profile&&(tr.stats=wr.stats),tr.destroy=function(){wr.decRef()},tr}function te(){for(var He=0;He<Mc;++He)Qt.activeTexture(_c+He),Qt.bindTexture(Sa,null),Vc[He]=null;yt(Yl).forEach(ve),xi.cubeCount=0,xi.textureCount=0}bi.profile&&(xi.getTotalTextureSize=function(){var He=0;return Object.keys(Yl).forEach(function(st){He+=Yl[st].stats.size}),He});function xe(){for(var He=0;He<Mc;++He){var st=Vc[He];st&&(st.bindCount=0,st.unit=-1,Vc[He]=null)}yt(Yl).forEach(function(Et){Et.texture=Qt.createTexture(),Qt.bindTexture(Et.target,Et.texture);for(var Ht=0;Ht<32;++Ht)if(Et.mipmask&1<<Ht)if(Et.target===Sa)Qt.texImage2D(Sa,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);else for(var yr=0;yr<6;++yr)Qt.texImage2D(ai+yr,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);mc(Et.texInfo,Et.target)})}function We(){for(var He=0;He<Mc;++He){var st=Vc[He];st&&(st.bindCount=0,st.unit=-1,Vc[He]=null),Qt.activeTexture(_c+He),Qt.bindTexture(Sa,null),Qt.bindTexture(Ti,null)}}return{create2D:K,createCube:ye,clear:te,getTexture:function(He){return null},restore:xe,refresh:We}}var Eu=36161,wf=32854,zc=32855,Us=36194,Kf=33189,Zh=36168,ch=34041,df=35907,Ah=34836,ku=34842,fh=34843,ru=[];ru[wf]=2,ru[zc]=2,ru[Us]=2,ru[Kf]=2,ru[Zh]=1,ru[ch]=4,ru[df]=4,ru[Ah]=16,ru[ku]=8,ru[fh]=6;function Cu(Qt,ra,Ta){return ru[Qt]*ra*Ta}var xc=function(Qt,ra,Ta,si,wi){var xi={rgba4:wf,rgb565:Us,"rgb5 a1":zc,depth:Kf,stencil:Zh,"depth stencil":ch};ra.ext_srgb&&(xi.srgba=df),ra.ext_color_buffer_half_float&&(xi.rgba16f=ku,xi.rgb16f=fh),ra.webgl_color_buffer_float&&(xi.rgba32f=Ah);var bi=[];Object.keys(xi).forEach(function(on){var Oi=xi[on];bi[Oi]=on});var Fi=0,cn={};function fn(on){this.id=Fi++,this.refCount=1,this.renderbuffer=on,this.format=wf,this.width=0,this.height=0,wi.profile&&(this.stats={size:0})}fn.prototype.decRef=function(){--this.refCount<=0&&Gi(this)};function Gi(on){var Oi=on.renderbuffer;Qt.bindRenderbuffer(Eu,null),Qt.deleteRenderbuffer(Oi),on.renderbuffer=null,on.refCount=0,delete cn[on.id],si.renderbufferCount--}function Io(on,Oi){var ui=new fn(Qt.createRenderbuffer());cn[ui.id]=ui,si.renderbufferCount++;function Mi(pn,qi){var Dn=0,bn=0,_o=wf;if(typeof pn=="object"&&pn){var Zi=pn;if("shape"in Zi){var Ui=Zi.shape;Dn=Ui[0]|0,bn=Ui[1]|0}else"radius"in Zi&&(Dn=bn=Zi.radius|0),"width"in Zi&&(Dn=Zi.width|0),"height"in Zi&&(bn=Zi.height|0);"format"in Zi&&(_o=xi[Zi.format])}else typeof pn=="number"?(Dn=pn|0,typeof qi=="number"?bn=qi|0:bn=Dn):pn||(Dn=bn=1);if(!(Dn===ui.width&&bn===ui.height&&_o===ui.format))return Mi.width=ui.width=Dn,Mi.height=ui.height=bn,ui.format=_o,Qt.bindRenderbuffer(Eu,ui.renderbuffer),Qt.renderbufferStorage(Eu,_o,Dn,bn),wi.profile&&(ui.stats.size=Cu(ui.format,ui.width,ui.height)),Mi.format=bi[ui.format],Mi}function tn(pn,qi){var Dn=pn|0,bn=qi|0||Dn;return Dn===ui.width&&bn===ui.height||(Mi.width=ui.width=Dn,Mi.height=ui.height=bn,Qt.bindRenderbuffer(Eu,ui.renderbuffer),Qt.renderbufferStorage(Eu,ui.format,Dn,bn),wi.profile&&(ui.stats.size=Cu(ui.format,ui.width,ui.height))),Mi}return Mi(on,Oi),Mi.resize=tn,Mi._reglType="renderbuffer",Mi._renderbuffer=ui,wi.profile&&(Mi.stats=ui.stats),Mi.destroy=function(){ui.decRef()},Mi}wi.profile&&(si.getTotalRenderbufferSize=function(){var on=0;return Object.keys(cn).forEach(function(Oi){on+=cn[Oi].stats.size}),on});function nn(){yt(cn).forEach(function(on){on.renderbuffer=Qt.createRenderbuffer(),Qt.bindRenderbuffer(Eu,on.renderbuffer),Qt.renderbufferStorage(Eu,on.format,on.width,on.height)}),Qt.bindRenderbuffer(Eu,null)}return{create:Io,clear:function(){yt(cn).forEach(Gi)},restore:nn}},kl=36160,Fc=36161,$u=3553,vu=34069,xl=36064,hh=36096,Sh=36128,Uu=33306,bc=36053,lc=36193,hp=5121,vf=5126,Tf=6407,Lu=6408,zf=[];zf[Lu]=4,zf[Tf]=3;var au=[];au[hp]=1,au[vf]=4,au[lc]=2;function $c(Qt,ra,Ta,si,wi,xi){var bi={cur:null,next:null,dirty:!1,setFBO:null},Fi=["rgba"],cn=["rgba4","rgb565","rgb5 a1"];ra.ext_srgb&&cn.push("srgba"),ra.ext_color_buffer_half_float&&cn.push("rgba16f","rgb16f"),ra.webgl_color_buffer_float&&cn.push("rgba32f");var fn=["uint8"];ra.oes_texture_half_float&&fn.push("half float","float16"),ra.oes_texture_float&&fn.push("float","float32");function Gi(xn,dn,jn){this.target=xn,this.texture=dn,this.renderbuffer=jn;var Ro=0,rs=0;dn?(Ro=dn.width,rs=dn.height):jn&&(Ro=jn.width,rs=jn.height),this.width=Ro,this.height=rs}function Io(xn){xn&&(xn.texture&&xn.texture._texture.decRef(),xn.renderbuffer&&xn.renderbuffer._renderbuffer.decRef())}function nn(xn,dn,jn){if(xn)if(xn.texture){var Ro=xn.texture._texture,rs=Math.max(1,Ro.width),wn=Math.max(1,Ro.height);Ro.refCount+=1}else{var oo=xn.renderbuffer._renderbuffer;oo.refCount+=1}}function on(xn,dn){dn&&(dn.texture?Qt.framebufferTexture2D(kl,xn,dn.target,dn.texture._texture.texture,0):Qt.framebufferRenderbuffer(kl,xn,Fc,dn.renderbuffer._renderbuffer.renderbuffer))}function Oi(xn){var dn=$u,jn=null,Ro=null,rs=xn;typeof xn=="object"&&(rs=xn.data,"target"in xn&&(dn=xn.target|0));var wn=rs._reglType;return wn==="texture2d"||wn==="textureCube"?jn=rs:wn==="renderbuffer"&&(Ro=rs,dn=Fc),new Gi(dn,jn,Ro)}function ui(xn,dn,jn,Ro,rs){if(jn){var wn=si.create2D({width:xn,height:dn,format:Ro,type:rs});return wn._texture.refCount=0,new Gi($u,wn,null)}else{var oo=wi.create({width:xn,height:dn,format:Ro});return oo._renderbuffer.refCount=0,new Gi(Fc,null,oo)}}function Mi(xn){return xn&&(xn.texture||xn.renderbuffer)}function tn(xn,dn,jn){xn&&(xn.texture?xn.texture.resize(dn,jn):xn.renderbuffer&&xn.renderbuffer.resize(dn,jn),xn.width=dn,xn.height=jn)}var pn=0,qi={};function Dn(){this.id=pn++,qi[this.id]=this,this.framebuffer=Qt.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function bn(xn){xn.colorAttachments.forEach(Io),Io(xn.depthAttachment),Io(xn.stencilAttachment),Io(xn.depthStencilAttachment)}function _o(xn){var dn=xn.framebuffer;Qt.deleteFramebuffer(dn),xn.framebuffer=null,xi.framebufferCount--,delete qi[xn.id]}function Zi(xn){var dn;Qt.bindFramebuffer(kl,xn.framebuffer);var jn=xn.colorAttachments;for(dn=0;dn<jn.length;++dn)on(xl+dn,jn[dn]);for(dn=jn.length;dn<Ta.maxColorAttachments;++dn)Qt.framebufferTexture2D(kl,xl+dn,$u,null,0);Qt.framebufferTexture2D(kl,Uu,$u,null,0),Qt.framebufferTexture2D(kl,hh,$u,null,0),Qt.framebufferTexture2D(kl,Sh,$u,null,0),on(hh,xn.depthAttachment),on(Sh,xn.stencilAttachment),on(Uu,xn.depthStencilAttachment);var Ro=Qt.checkFramebufferStatus(kl);Qt.isContextLost(),Qt.bindFramebuffer(kl,bi.next?bi.next.framebuffer:null),bi.cur=bi.next,Qt.getError()}function Ui(xn,dn){var jn=new Dn;xi.framebufferCount++;function Ro(wn,oo){var Xo,os=0,As=0,$l=!0,Uc=!0,Ws=null,jc=!0,Ol="rgba",vc="uint8",mc=1,rf=null,Yl=null,Mc=null,Vc=!1;if(typeof wn=="number")os=wn|0,As=oo|0||os;else if(!wn)os=As=1;else{var Ds=wn;if("shape"in Ds){var af=Ds.shape;os=af[0],As=af[1]}else"radius"in Ds&&(os=As=Ds.radius),"width"in Ds&&(os=Ds.width),"height"in Ds&&(As=Ds.height);("color"in Ds||"colors"in Ds)&&(Ws=Ds.color||Ds.colors,Array.isArray(Ws)),Ws||("colorCount"in Ds&&(mc=Ds.colorCount|0),"colorTexture"in Ds&&(jc=!!Ds.colorTexture,Ol="rgba4"),"colorType"in Ds&&(vc=Ds.colorType,jc||(vc==="half float"||vc==="float16"?Ol="rgba16f":(vc==="float"||vc==="float32")&&(Ol="rgba32f"))),"colorFormat"in Ds&&(Ol=Ds.colorFormat,Fi.indexOf(Ol)>=0?jc=!0:cn.indexOf(Ol)>=0&&(jc=!1))),("depthTexture"in Ds||"depthStencilTexture"in Ds)&&(Vc=!!(Ds.depthTexture||Ds.depthStencilTexture)),"depth"in Ds&&(typeof Ds.depth=="boolean"?$l=Ds.depth:(rf=Ds.depth,Uc=!1)),"stencil"in Ds&&(typeof Ds.stencil=="boolean"?Uc=Ds.stencil:(Yl=Ds.stencil,$l=!1)),"depthStencil"in Ds&&(typeof Ds.depthStencil=="boolean"?$l=Uc=Ds.depthStencil:(Mc=Ds.depthStencil,$l=!1,Uc=!1))}var Cs=null,ve=null,K=null,ye=null;if(Array.isArray(Ws))Cs=Ws.map(Oi);else if(Ws)Cs=[Oi(Ws)];else for(Cs=new Array(mc),Xo=0;Xo<mc;++Xo)Cs[Xo]=ui(os,As,jc,Ol,vc);os=os||Cs[0].width,As=As||Cs[0].height,rf?ve=Oi(rf):$l&&!Uc&&(ve=ui(os,As,Vc,"depth","uint32")),Yl?K=Oi(Yl):Uc&&!$l&&(K=ui(os,As,!1,"stencil","uint8")),Mc?ye=Oi(Mc):!rf&&!Yl&&Uc&&$l&&(ye=ui(os,As,Vc,"depth stencil","depth stencil"));var te=null;for(Xo=0;Xo<Cs.length;++Xo)if(nn(Cs[Xo],os,As),Cs[Xo]&&Cs[Xo].texture){var xe=zf[Cs[Xo].texture._texture.format]*au[Cs[Xo].texture._texture.type];te===null&&(te=xe)}return nn(ve,os,As),nn(K,os,As),nn(ye,os,As),bn(jn),jn.width=os,jn.height=As,jn.colorAttachments=Cs,jn.depthAttachment=ve,jn.stencilAttachment=K,jn.depthStencilAttachment=ye,Ro.color=Cs.map(Mi),Ro.depth=Mi(ve),Ro.stencil=Mi(K),Ro.depthStencil=Mi(ye),Ro.width=jn.width,Ro.height=jn.height,Zi(jn),Ro}function rs(wn,oo){var Xo=Math.max(wn|0,1),os=Math.max(oo|0||Xo,1);if(Xo===jn.width&&os===jn.height)return Ro;for(var As=jn.colorAttachments,$l=0;$l<As.length;++$l)tn(As[$l],Xo,os);return tn(jn.depthAttachment,Xo,os),tn(jn.stencilAttachment,Xo,os),tn(jn.depthStencilAttachment,Xo,os),jn.width=Ro.width=Xo,jn.height=Ro.height=os,Zi(jn),Ro}return Ro(xn,dn),g(Ro,{resize:rs,_reglType:"framebuffer",_framebuffer:jn,destroy:function(){_o(jn),bn(jn)},use:function(wn){bi.setFBO({framebuffer:Ro},wn)}})}function Zn(xn){var dn=Array(6);function jn(rs){var wn,oo={color:null},Xo=0,os=null,As="rgba",$l="uint8",Uc=1;if(typeof rs=="number")Xo=rs|0;else if(!rs)Xo=1;else{var Ws=rs;if("shape"in Ws){var jc=Ws.shape;Xo=jc[0]}else"radius"in Ws&&(Xo=Ws.radius|0),"width"in Ws?(Xo=Ws.width|0,"height"in Ws):"height"in Ws&&(Xo=Ws.height|0);("color"in Ws||"colors"in Ws)&&(os=Ws.color||Ws.colors,Array.isArray(os)),os||("colorCount"in Ws&&(Uc=Ws.colorCount|0),"colorType"in Ws&&($l=Ws.colorType),"colorFormat"in Ws&&(As=Ws.colorFormat)),"depth"in Ws&&(oo.depth=Ws.depth),"stencil"in Ws&&(oo.stencil=Ws.stencil),"depthStencil"in Ws&&(oo.depthStencil=Ws.depthStencil)}var Ol;if(os)if(Array.isArray(os))for(Ol=[],wn=0;wn<os.length;++wn)Ol[wn]=os[wn];else Ol=[os];else{Ol=Array(Uc);var vc={radius:Xo,format:As,type:$l};for(wn=0;wn<Uc;++wn)Ol[wn]=si.createCube(vc)}for(oo.color=Array(Ol.length),wn=0;wn<Ol.length;++wn){var mc=Ol[wn];Xo=Xo||mc.width,oo.color[wn]={target:vu,data:Ol[wn]}}for(wn=0;wn<6;++wn){for(var rf=0;rf<Ol.length;++rf)oo.color[rf].target=vu+wn;wn>0&&(oo.depth=dn[0].depth,oo.stencil=dn[0].stencil,oo.depthStencil=dn[0].depthStencil),dn[wn]?dn[wn](oo):dn[wn]=Ui(oo)}return g(jn,{width:Xo,height:Xo,color:Ol})}function Ro(rs){var wn,oo=rs|0;if(oo===jn.width)return jn;var Xo=jn.color;for(wn=0;wn<Xo.length;++wn)Xo[wn].resize(oo);for(wn=0;wn<6;++wn)dn[wn].resize(oo);return jn.width=jn.height=oo,jn}return jn(xn),g(jn,{faces:dn,resize:Ro,_reglType:"framebufferCube",destroy:function(){dn.forEach(function(rs){rs.destroy()})}})}function Rn(){bi.cur=null,bi.next=null,bi.dirty=!0,yt(qi).forEach(function(xn){xn.framebuffer=Qt.createFramebuffer(),Zi(xn)})}return g(bi,{getFramebuffer:function(xn){if(typeof xn=="function"&&xn._reglType==="framebuffer"){var dn=xn._framebuffer;if(dn instanceof Dn)return dn}return null},create:Ui,createCube:Zn,clear:function(){yt(qi).forEach(_o)},restore:Rn})}var Mh=5126,Ff=34962,il=34963;function mu(){this.state=0,this.x=0,this.y=0,this.z=0,this.w=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=Mh,this.offset=0,this.stride=0,this.divisor=0}function gu(Qt,ra,Ta,si,wi,xi,bi){for(var Fi=Ta.maxAttributes,cn=new Array(Fi),fn=0;fn<Fi;++fn)cn[fn]=new mu;var Gi=0,Io={},nn={Record:mu,scope:{},state:cn,currentVAO:null,targetVAO:null,restore:Oi()?bn:function(){},createVAO:_o,getVAO:Mi,destroyBuffer:on,setVAO:Oi()?tn:pn,clear:Oi()?qi:function(){}};function on(Zi){for(var Ui=0;Ui<cn.length;++Ui){var Zn=cn[Ui];Zn.buffer===Zi&&(Qt.disableVertexAttribArray(Ui),Zn.buffer=null)}}function Oi(){return ra.oes_vertex_array_object}function ui(){return ra.angle_instanced_arrays}function Mi(Zi){return typeof Zi=="function"&&Zi._vao?Zi._vao:null}function tn(Zi){if(Zi!==nn.currentVAO){var Ui=Oi();Zi?Ui.bindVertexArrayOES(Zi.vao):Ui.bindVertexArrayOES(null),nn.currentVAO=Zi}}function pn(Zi){if(Zi!==nn.currentVAO){if(Zi)Zi.bindAttrs();else{for(var Ui=ui(),Zn=0;Zn<cn.length;++Zn){var Rn=cn[Zn];Rn.buffer?(Qt.enableVertexAttribArray(Zn),Rn.buffer.bind(),Qt.vertexAttribPointer(Zn,Rn.size,Rn.type,Rn.normalized,Rn.stride,Rn.offfset),Ui&&Rn.divisor&&Ui.vertexAttribDivisorANGLE(Zn,Rn.divisor)):(Qt.disableVertexAttribArray(Zn),Qt.vertexAttrib4f(Zn,Rn.x,Rn.y,Rn.z,Rn.w))}bi.elements?Qt.bindBuffer(il,bi.elements.buffer.buffer):Qt.bindBuffer(il,null)}nn.currentVAO=Zi}}function qi(){yt(Io).forEach(function(Zi){Zi.destroy()})}function Dn(){this.id=++Gi,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var Zi=Oi();Zi?this.vao=Zi.createVertexArrayOES():this.vao=null,Io[this.id]=this,this.buffers=[]}Dn.prototype.bindAttrs=function(){for(var Zi=ui(),Ui=this.attributes,Zn=0;Zn<Ui.length;++Zn){var Rn=Ui[Zn];Rn.buffer?(Qt.enableVertexAttribArray(Zn),Qt.bindBuffer(Ff,Rn.buffer.buffer),Qt.vertexAttribPointer(Zn,Rn.size,Rn.type,Rn.normalized,Rn.stride,Rn.offset),Zi&&Rn.divisor&&Zi.vertexAttribDivisorANGLE(Zn,Rn.divisor)):(Qt.disableVertexAttribArray(Zn),Qt.vertexAttrib4f(Zn,Rn.x,Rn.y,Rn.z,Rn.w))}for(var xn=Ui.length;xn<Fi;++xn)Qt.disableVertexAttribArray(xn);var dn=xi.getElements(this.elements);dn?Qt.bindBuffer(il,dn.buffer.buffer):Qt.bindBuffer(il,null)},Dn.prototype.refresh=function(){var Zi=Oi();Zi&&(Zi.bindVertexArrayOES(this.vao),this.bindAttrs(),nn.currentVAO=null,Zi.bindVertexArrayOES(null))},Dn.prototype.destroy=function(){if(this.vao){var Zi=Oi();this===nn.currentVAO&&(nn.currentVAO=null,Zi.bindVertexArrayOES(null)),Zi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Io[this.id]&&(delete Io[this.id],si.vaoCount-=1)};function bn(){var Zi=Oi();Zi&&yt(Io).forEach(function(Ui){Ui.refresh()})}function _o(Zi){var Ui=new Dn;si.vaoCount+=1;function Zn(Rn){var xn;if(Array.isArray(Rn))xn=Rn,Ui.elements&&Ui.ownsElements&&Ui.elements.destroy(),Ui.elements=null,Ui.ownsElements=!1,Ui.offset=0,Ui.count=0,Ui.instances=-1,Ui.primitive=4;else{if(Rn.elements){var dn=Rn.elements;Ui.ownsElements?typeof dn=="function"&&dn._reglType==="elements"?(Ui.elements.destroy(),Ui.ownsElements=!1):(Ui.elements(dn),Ui.ownsElements=!1):xi.getElements(Rn.elements)?(Ui.elements=Rn.elements,Ui.ownsElements=!1):(Ui.elements=xi.create(Rn.elements),Ui.ownsElements=!0)}else Ui.elements=null,Ui.ownsElements=!1;xn=Rn.attributes,Ui.offset=0,Ui.count=-1,Ui.instances=-1,Ui.primitive=4,Ui.elements&&(Ui.count=Ui.elements._elements.vertCount,Ui.primitive=Ui.elements._elements.primType),"offset"in Rn&&(Ui.offset=Rn.offset|0),"count"in Rn&&(Ui.count=Rn.count|0),"instances"in Rn&&(Ui.instances=Rn.instances|0),"primitive"in Rn&&(Ui.primitive=mt[Rn.primitive])}var jn={},Ro=Ui.attributes;Ro.length=xn.length;for(var rs=0;rs<xn.length;++rs){var wn=xn[rs],oo=Ro[rs]=new mu,Xo=wn.data||wn;if(Array.isArray(Xo)||vr(Xo)||_r(Xo)){var os;Ui.buffers[rs]&&(os=Ui.buffers[rs],vr(Xo)&&os._buffer.byteLength>=Xo.byteLength?os.subdata(Xo):(os.destroy(),Ui.buffers[rs]=null)),Ui.buffers[rs]||(os=Ui.buffers[rs]=wi.create(wn,Ff,!1,!0)),oo.buffer=wi.getBuffer(os),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1,jn[rs]=1}else wi.getBuffer(wn)?(oo.buffer=wi.getBuffer(wn),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1):wi.getBuffer(wn.buffer)?(oo.buffer=wi.getBuffer(wn.buffer),oo.size=(+wn.size||oo.buffer.dimension)|0,oo.normalized=!!wn.normalized||!1,"type"in wn?oo.type=sa[wn.type]:oo.type=oo.buffer.dtype,oo.offset=(wn.offset||0)|0,oo.stride=(wn.stride||0)|0,oo.divisor=(wn.divisor||0)|0,oo.state=1):"x"in wn&&(oo.x=+wn.x||0,oo.y=+wn.y||0,oo.z=+wn.z||0,oo.w=+wn.w||0,oo.state=2)}for(var As=0;As<Ui.buffers.length;++As)!jn[As]&&Ui.buffers[As]&&(Ui.buffers[As].destroy(),Ui.buffers[As]=null);return Ui.refresh(),Zn}return Zn.destroy=function(){for(var Rn=0;Rn<Ui.buffers.length;++Rn)Ui.buffers[Rn]&&Ui.buffers[Rn].destroy();Ui.buffers.length=0,Ui.ownsElements&&(Ui.elements.destroy(),Ui.elements=null,Ui.ownsElements=!1),Ui.destroy()},Zn._vao=Ui,Zn._reglType="vao",Zn(Zi)}return nn}var Jf=35632,el=35633,mf=35718,wc=35721;function ju(Qt,ra,Ta,si){var wi={},xi={};function bi(ui,Mi,tn,pn){this.name=ui,this.id=Mi,this.location=tn,this.info=pn}function Fi(ui,Mi){for(var tn=0;tn<ui.length;++tn)if(ui[tn].id===Mi.id){ui[tn].location=Mi.location;return}ui.push(Mi)}function cn(ui,Mi,tn){var pn=ui===Jf?wi:xi,qi=pn[Mi];if(!qi){var Dn=ra.str(Mi);qi=Qt.createShader(ui),Qt.shaderSource(qi,Dn),Qt.compileShader(qi),pn[Mi]=qi}return qi}var fn={},Gi=[],Io=0;function nn(ui,Mi){this.id=Io++,this.fragId=ui,this.vertId=Mi,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,si.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function on(ui,Mi,tn){var pn,qi,Dn=cn(Jf,ui.fragId),bn=cn(el,ui.vertId),_o=ui.program=Qt.createProgram();if(Qt.attachShader(_o,Dn),Qt.attachShader(_o,bn),tn)for(pn=0;pn<tn.length;++pn){var Zi=tn[pn];Qt.bindAttribLocation(_o,Zi[0],Zi[1])}Qt.linkProgram(_o);var Ui=Qt.getProgramParameter(_o,mf);si.profile&&(ui.stats.uniformsCount=Ui);var Zn=ui.uniforms;for(pn=0;pn<Ui;++pn)if(qi=Qt.getActiveUniform(_o,pn),qi)if(qi.size>1)for(var Rn=0;Rn<qi.size;++Rn){var xn=qi.name.replace("[0]","["+Rn+"]");Fi(Zn,new bi(xn,ra.id(xn),Qt.getUniformLocation(_o,xn),qi))}else Fi(Zn,new bi(qi.name,ra.id(qi.name),Qt.getUniformLocation(_o,qi.name),qi));var dn=Qt.getProgramParameter(_o,wc);si.profile&&(ui.stats.attributesCount=dn);var jn=ui.attributes;for(pn=0;pn<dn;++pn)qi=Qt.getActiveAttrib(_o,pn),qi&&Fi(jn,new bi(qi.name,ra.id(qi.name),Qt.getAttribLocation(_o,qi.name),qi))}si.profile&&(Ta.getMaxUniformsCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.uniformsCount>ui&&(ui=Mi.stats.uniformsCount)}),ui},Ta.getMaxAttributesCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.attributesCount>ui&&(ui=Mi.stats.attributesCount)}),ui});function Oi(){wi={},xi={};for(var ui=0;ui<Gi.length;++ui)on(Gi[ui],null,Gi[ui].attributes.map(function(Mi){return[Mi.location,Mi.name]}))}return{clear:function(){var ui=Qt.deleteShader.bind(Qt);yt(wi).forEach(ui),wi={},yt(xi).forEach(ui),xi={},Gi.forEach(function(Mi){Qt.deleteProgram(Mi.program)}),Gi.length=0,fn={},Ta.shaderCount=0},program:function(ui,Mi,tn,pn){var qi=fn[Mi];qi||(qi=fn[Mi]={});var Dn=qi[ui];if(Dn&&(Dn.refCount++,!pn))return Dn;var bn=new nn(Mi,ui);return Ta.shaderCount++,on(bn,tn,pn),Dn||(qi[ui]=bn),Gi.push(bn),g(bn,{destroy:function(){if(bn.refCount--,bn.refCount<=0){Qt.deleteProgram(bn.program);var _o=Gi.indexOf(bn);Gi.splice(_o,1),Ta.shaderCount--}qi[bn.vertId].refCount<=0&&(Qt.deleteShader(xi[bn.vertId]),delete xi[bn.vertId],delete fn[bn.fragId][bn.vertId]),Object.keys(fn[bn.fragId]).length||(Qt.deleteShader(wi[bn.fragId]),delete wi[bn.fragId],delete fn[bn.fragId])}})},restore:Oi,shader:cn,frag:-1,vert:-1}}var Af=6408,uc=5121,Qc=3333,$f=5126;function Vl(Qt,ra,Ta,si,wi,xi,bi){function Fi(Gi){var Io;ra.next===null?Io=uc:Io=ra.next.colorAttachments[0].texture._texture.type;var nn=0,on=0,Oi=si.framebufferWidth,ui=si.framebufferHeight,Mi=null;vr(Gi)?Mi=Gi:Gi&&(nn=Gi.x|0,on=Gi.y|0,Oi=(Gi.width||si.framebufferWidth-nn)|0,ui=(Gi.height||si.framebufferHeight-on)|0,Mi=Gi.data||null),Ta();var tn=Oi*ui*4;return Mi||(Io===uc?Mi=new Uint8Array(tn):Io===$f&&(Mi=Mi||new Float32Array(tn))),Qt.pixelStorei(Qc,4),Qt.readPixels(nn,on,Oi,ui,Af,Io,Mi),Mi}function cn(Gi){var Io;return ra.setFBO({framebuffer:Gi.framebuffer},function(){Io=Fi(Gi)}),Io}function fn(Gi){return!Gi||!("framebuffer"in Gi)?Fi(Gi):cn(Gi)}return fn}var Qf=0,Vu="";function Tc(Qt){return iu(cc(Qu(Qt)))}function cc(Qt){return Zt(li(ef(Qt),Qt.length*8))}function Cl(Qt,ra){var Ta=ef(Qt);Ta.length>16&&(Ta=li(Ta,Qt.length*8));for(var si=Array(16),wi=Array(16),xi=0;xi<16;xi++)si[xi]=Ta[xi]^909522486,wi[xi]=Ta[xi]^1549556828;var bi=li(si.concat(ef(ra)),512+ra.length*8);return Zt(li(wi.concat(bi),768))}function iu(Qt){for(var ra=Qf?"0123456789ABCDEF":"0123456789abcdef",Ta="",si,wi=0;wi<Qt.length;wi++)si=Qt.charCodeAt(wi),Ta+=ra.charAt(si>>>4&15)+ra.charAt(si&15);return Ta}function fc(Qt){for(var ra="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ta="",si=Qt.length,wi=0;wi<si;wi+=3)for(var xi=Qt.charCodeAt(wi)<<16|(wi+1<si?Qt.charCodeAt(wi+1)<<8:0)|(wi+2<si?Qt.charCodeAt(wi+2):0),bi=0;bi<4;bi++)wi*8+bi*6>Qt.length*8?Ta+=Vu:Ta+=ra.charAt(xi>>>6*(3-bi)&63);return Ta}function Oc(Qt,ra){var Ta=ra.length,si=Array(),wi,xi,bi,Fi,cn=Array(Math.ceil(Qt.length/2));for(wi=0;wi<cn.length;wi++)cn[wi]=Qt.charCodeAt(wi*2)<<8|Qt.charCodeAt(wi*2+1);for(;cn.length>0;){for(Fi=Array(),bi=0,wi=0;wi<cn.length;wi++)bi=(bi<<16)+cn[wi],xi=Math.floor(bi/Ta),bi-=xi*Ta,(Fi.length>0||xi>0)&&(Fi[Fi.length]=xi);si[si.length]=bi,cn=Fi}var fn="";for(wi=si.length-1;wi>=0;wi--)fn+=ra.charAt(si[wi]);var Gi=Math.ceil(Qt.length*8/(Math.log(ra.length)/Math.log(2)));for(wi=fn.length;wi<Gi;wi++)fn=ra[0]+fn;return fn}function Qu(Qt){for(var ra="",Ta=-1,si,wi;++Ta<Qt.length;)si=Qt.charCodeAt(Ta),wi=Ta+1<Qt.length?Qt.charCodeAt(Ta+1):0,55296<=si&&si<=56319&&56320<=wi&&wi<=57343&&(si=65536+((si&1023)<<10)+(wi&1023),Ta++),si<=127?ra+=String.fromCharCode(si):si<=2047?ra+=String.fromCharCode(192|si>>>6&31,128|si&63):si<=65535?ra+=String.fromCharCode(224|si>>>12&15,128|si>>>6&63,128|si&63):si<=2097151&&(ra+=String.fromCharCode(240|si>>>18&7,128|si>>>12&63,128|si>>>6&63,128|si&63));return ra}function ef(Qt){for(var ra=Array(Qt.length>>2),Ta=0;Ta<ra.length;Ta++)ra[Ta]=0;for(var Ta=0;Ta<Qt.length*8;Ta+=8)ra[Ta>>5]|=(Qt.charCodeAt(Ta/8)&255)<<24-Ta%32;return ra}function Zt(Qt){for(var ra="",Ta=0;Ta<Qt.length*32;Ta+=8)ra+=String.fromCharCode(Qt[Ta>>5]>>>24-Ta%32&255);return ra}function fr(Qt,ra){return Qt>>>ra|Qt<<32-ra}function Yr(Qt,ra){return Qt>>>ra}function qr(Qt,ra,Ta){return Qt&ra^~Qt&Ta}function ba(Qt,ra,Ta){return Qt&ra^Qt&Ta^ra&Ta}function Ka(Qt){return fr(Qt,2)^fr(Qt,13)^fr(Qt,22)}function oi(Qt){return fr(Qt,6)^fr(Qt,11)^fr(Qt,25)}function yi(Qt){return fr(Qt,7)^fr(Qt,18)^Yr(Qt,3)}function ki(Qt){return fr(Qt,17)^fr(Qt,19)^Yr(Qt,10)}var Bi=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function li(Qt,ra){var Ta=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),si=new Array(64),wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui;for(Qt[ra>>5]|=128<<24-ra%32,Qt[(ra+64>>9<<4)+15]=ra,nn=0;nn<Qt.length;nn+=16){for(wi=Ta[0],xi=Ta[1],bi=Ta[2],Fi=Ta[3],cn=Ta[4],fn=Ta[5],Gi=Ta[6],Io=Ta[7],on=0;on<64;on++)on<16?si[on]=Qt[on+nn]:si[on]=_i(_i(_i(ki(si[on-2]),si[on-7]),yi(si[on-15])),si[on-16]),Oi=_i(_i(_i(_i(Io,oi(cn)),qr(cn,fn,Gi)),Bi[on]),si[on]),ui=_i(Ka(wi),ba(wi,xi,bi)),Io=Gi,Gi=fn,fn=cn,cn=_i(Fi,Oi),Fi=bi,bi=xi,xi=wi,wi=_i(Oi,ui);Ta[0]=_i(wi,Ta[0]),Ta[1]=_i(xi,Ta[1]),Ta[2]=_i(bi,Ta[2]),Ta[3]=_i(Fi,Ta[3]),Ta[4]=_i(cn,Ta[4]),Ta[5]=_i(fn,Ta[5]),Ta[6]=_i(Gi,Ta[6]),Ta[7]=_i(Io,Ta[7])}return Ta}function _i(Qt,ra){var Ta=(Qt&65535)+(ra&65535),si=(Qt>>16)+(ra>>16)+(Ta>>16);return si<<16|Ta&65535}function vi(Qt){return Array.prototype.slice.call(Qt)}function ti(Qt){return vi(Qt).join("")}function rn(Qt){var ra=Qt&&Qt.cache,Ta=0,si=[],wi=[],xi=[];function bi(Oi,ui){var Mi=ui&&ui.stable;if(!Mi){for(var tn=0;tn<wi.length;++tn)if(wi[tn]===Oi&&!xi[tn])return si[tn]}var pn="g"+Ta++;return si.push(pn),wi.push(Oi),xi.push(Mi),pn}function Fi(){var Oi=[];function ui(){Oi.push.apply(Oi,vi(arguments))}var Mi=[];function tn(){var pn="v"+Ta++;return Mi.push(pn),arguments.length>0&&(Oi.push(pn,"="),Oi.push.apply(Oi,vi(arguments)),Oi.push(";")),pn}return g(ui,{def:tn,toString:function(){return ti([Mi.length>0?"var "+Mi.join(",")+";":"",ti(Oi)])}})}function cn(){var Oi=Fi(),ui=Fi(),Mi=Oi.toString,tn=ui.toString;function pn(qi,Dn){ui(qi,Dn,"=",Oi.def(qi,Dn),";")}return g(function(){Oi.apply(Oi,vi(arguments))},{def:Oi.def,entry:Oi,exit:ui,save:pn,set:function(qi,Dn,bn){pn(qi,Dn),Oi(qi,Dn,"=",bn,";")},toString:function(){return Mi()+tn()}})}function fn(){var Oi=ti(arguments),ui=cn(),Mi=cn(),tn=ui.toString,pn=Mi.toString;return g(ui,{then:function(){return ui.apply(ui,vi(arguments)),this},else:function(){return Mi.apply(Mi,vi(arguments)),this},toString:function(){var qi=pn();return qi&&(qi="else{"+qi+"}"),ti(["if(",Oi,"){",tn(),"}",qi])}})}var Gi=Fi(),Io={};function nn(Oi,ui){var Mi=[];function tn(){var _o="a"+Mi.length;return Mi.push(_o),_o}ui=ui||0;for(var pn=0;pn<ui;++pn)tn();var qi=cn(),Dn=qi.toString,bn=Io[Oi]=g(qi,{arg:tn,toString:function(){return ti(["function(",Mi.join(),"){",Dn(),"}"])}});return bn}function on(){var Oi=['"use strict";',Gi,"return {"];Object.keys(Io).forEach(function(pn){Oi.push('"',pn,'":',Io[pn].toString(),",")}),Oi.push("}");var ui=ti(Oi).replace(/;/g,`;
+`).replace(/}/g,`}
+`).replace(/{/g,`{
+`),Mi;if(ra&&(Mi=Tc(ui),ra[Mi]))return ra[Mi].apply(null,wi);var tn=Function.apply(null,si.concat(ui));return ra&&(ra[Mi]=tn),tn.apply(null,wi)}return{global:Gi,link:bi,block:Fi,proc:nn,scope:cn,cond:fn,compile:on}}var Kn="xyzw".split(""),Wn=5121,Jn=1,no=2,en=0,Ri=1,co=2,Wo=3,bs=4,Xs=5,Ms=6,Hs="dither",vs="blend.enable",Il="blend.color",fl="blend.equation",tl="blend.func",Ln="depth.enable",Ao="depth.func",js="depth.range",Ts="depth.mask",nu="colorMask",Pu="cull.enable",ec="cull.face",tf="frontFace",yu="lineWidth",Bc="polygonOffset.enable",Iu="polygonOffset.offset",Ac="sample.alpha",ro="sample.enable",Po="sample.coverage",Nc="stencil.enable",hc="stencil.mask",pc="stencil.func",Oe="stencil.opFront",R="stencil.opBack",ae="scissor.enable",we="scissor.box",Se="viewport",De="profile",ft="framebuffer",bt="vert",Dt="frag",Yt="elements",cr="primitive",hr="count",jr="offset",ea="instances",qe="vao",Je="Width",ot="Height",ht=ft+Je,At=ft+ot,_t=Se+Je,Pt=Se+ot,er="drawingBuffer",nr=er+Je,pr=er+ot,Sr=[tl,fl,pc,Oe,R,Po,Se,we,Iu],Wr=34962,ha=34963,ga=2884,Pa=3042,Ja=3024,di=2960,pi=2929,Ci=3089,$i=32823,Bn=32926,Sn=32928,ho=5126,ts=35664,yo=35665,Vo=35666,ls=5124,rl=35667,Ys=35668,Zo=35669,Go=35670,Rl=35671,Xl=35672,qu=35673,fu=35674,bl=35675,ou=35676,Sc=35678,ql=35680,Hl=4,de=1028,Re=1029,$e=2304,pt=2305,vt=32775,wt=32776,Jt=519,Rt=7680,or=0,Dr=1,Or=32774,va=513,fa=36160,Va=36064,Xa={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},_a={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},Ra={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Na={cw:$e,ccw:pt};function Qa(Qt){return Array.isArray(Qt)||vr(Qt)||_r(Qt)}function Ya(Qt){return Qt.sort(function(ra,Ta){return ra===Se?-1:Ta===Se?1:ra<Ta?-1:1})}function Da(Qt,ra,Ta,si){this.thisDep=Qt,this.contextDep=ra,this.propDep=Ta,this.append=si}function zi(Qt){return Qt&&!(Qt.thisDep||Qt.contextDep||Qt.propDep)}function Ni(Qt){return new Da(!1,!1,!1,Qt)}function Qi(Qt,ra){var Ta=Qt.type;if(Ta===en){var si=Qt.data.length;return new Da(!0,si>=1,si>=2,ra)}else if(Ta===bs){var wi=Qt.data;return new Da(wi.thisDep,wi.contextDep,wi.propDep,ra)}else{if(Ta===Xs)return new Da(!1,!1,!1,ra);if(Ta===Ms){for(var xi=!1,bi=!1,Fi=!1,cn=0;cn<Qt.data.length;++cn){var fn=Qt.data[cn];if(fn.type===Ri)Fi=!0;else if(fn.type===co)bi=!0;else if(fn.type===Wo)xi=!0;else if(fn.type===en){xi=!0;var Gi=fn.data;Gi>=1&&(bi=!0),Gi>=2&&(Fi=!0)}else fn.type===bs&&(xi=xi||fn.data.thisDep,bi=bi||fn.data.contextDep,Fi=Fi||fn.data.propDep)}return new Da(xi,bi,Fi,ra)}else return new Da(Ta===Wo,Ta===co,Ta===Ri,ra)}}var hn=new Da(!1,!1,!1,function(){});function Un(Qt,ra,Ta,si,wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui){var Mi=fn.Record,tn={add:32774,subtract:32778,"reverse subtract":32779};Ta.ext_blend_minmax&&(tn.min=vt,tn.max=wt);var pn=Ta.angle_instanced_arrays,qi=Ta.webgl_draw_buffers,Dn=Ta.oes_vertex_array_object,bn={dirty:!0,profile:ui.profile},_o={},Zi=[],Ui={},Zn={};function Rn(qt){return qt.replace(".","_")}function xn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),_o[Pr]=bn[Pr]=!!dr,Ui[Pr]=tr}function dn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),Array.isArray(dr)?(bn[Pr]=dr.slice(),_o[Pr]=dr.slice()):bn[Pr]=_o[Pr]=dr,Zn[Pr]=tr}function jn(qt){return!!isNaN(qt)}xn(Hs,Ja),xn(vs,Pa),dn(Il,"blendColor",[0,0,0,0]),dn(fl,"blendEquationSeparate",[Or,Or]),dn(tl,"blendFuncSeparate",[Dr,or,Dr,or]),xn(Ln,pi,!0),dn(Ao,"depthFunc",va),dn(js,"depthRange",[0,1]),dn(Ts,"depthMask",!0),dn(nu,nu,[!0,!0,!0,!0]),xn(Pu,ga),dn(ec,"cullFace",Re),dn(tf,tf,pt),dn(yu,yu,1),xn(Bc,$i),dn(Iu,"polygonOffset",[0,0]),xn(Ac,Bn),xn(ro,Sn),dn(Po,"sampleCoverage",[1,!1]),xn(Nc,di),dn(hc,"stencilMask",-1),dn(pc,"stencilFunc",[Jt,0,-1]),dn(Oe,"stencilOpSeparate",[de,Rt,Rt,Rt]),dn(R,"stencilOpSeparate",[Re,Rt,Rt,Rt]),xn(ae,Ci),dn(we,"scissor",[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]),dn(Se,Se,[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]);var Ro={gl:Qt,context:nn,strings:ra,next:_o,current:bn,draw:Io,elements:xi,buffer:wi,shader:Gi,attributes:fn.state,vao:fn,uniforms:cn,framebuffer:Fi,extensions:Ta,timer:on,isBufferArgs:Qa},rs={primTypes:mt,compareFuncs:_a,blendFuncs:Xa,blendEquations:tn,stencilOps:Ra,glTypes:sa,orientationType:Na};qi&&(rs.backBuffer=[Re],rs.drawBuffer=d(si.maxDrawbuffers,function(qt){return qt===0?[0]:d(qt,function(tr){return Va+tr})}));var wn=0;function oo(){var qt=rn({cache:Oi}),tr=qt.link,dr=qt.global;qt.id=wn++,qt.batchId="0";var Pr=tr(Ro),Vr=qt.shared={props:"a0"};Object.keys(Ro).forEach(function(ia){Vr[ia]=dr.def(Pr,".",ia)});var Hr=qt.next={},aa=qt.current={};Object.keys(Zn).forEach(function(ia){Array.isArray(bn[ia])&&(Hr[ia]=dr.def(Vr.next,".",ia),aa[ia]=dr.def(Vr.current,".",ia))});var Qr=qt.constants={};Object.keys(rs).forEach(function(ia){Qr[ia]=dr.def(JSON.stringify(rs[ia]))}),qt.invoke=function(ia,Ur){switch(Ur.type){case en:var wa=["this",Vr.context,Vr.props,qt.batchId];return ia.def(tr(Ur.data),".call(",wa.slice(0,Math.max(Ur.data.length+1,4)),")");case Ri:return ia.def(Vr.props,Ur.data);case co:return ia.def(Vr.context,Ur.data);case Wo:return ia.def("this",Ur.data);case bs:return Ur.data.append(qt,ia),Ur.data.ref;case Xs:return Ur.data.toString();case Ms:return Ur.data.map(function(Oa){return qt.invoke(ia,Oa)})}},qt.attribCache={};var Gr={};return qt.scopeAttrib=function(ia){var Ur=ra.id(ia);if(Ur in Gr)return Gr[Ur];var wa=fn.scope[Ur];wa||(wa=fn.scope[Ur]=new Mi);var Oa=Gr[Ur]=tr(wa);return Oa},qt}function Xo(qt){var tr=qt.static,dr=qt.dynamic,Pr;if(De in tr){var Vr=!!tr[De];Pr=Ni(function(aa,Qr){return Vr}),Pr.enable=Vr}else if(De in dr){var Hr=dr[De];Pr=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}return Pr}function os(qt,tr){var dr=qt.static,Pr=qt.dynamic;if(ft in dr){var Vr=dr[ft];return Vr?(Vr=Fi.getFramebuffer(Vr),Ni(function(aa,Qr){var Gr=aa.link(Vr),ia=aa.shared;Qr.set(ia.framebuffer,".next",Gr);var Ur=ia.context;return Qr.set(Ur,"."+ht,Gr+".width"),Qr.set(Ur,"."+At,Gr+".height"),Gr})):Ni(function(aa,Qr){var Gr=aa.shared;Qr.set(Gr.framebuffer,".next","null");var ia=Gr.context;return Qr.set(ia,"."+ht,ia+"."+nr),Qr.set(ia,"."+At,ia+"."+pr),"null"})}else if(ft in Pr){var Hr=Pr[ft];return Qi(Hr,function(aa,Qr){var Gr=aa.invoke(Qr,Hr),ia=aa.shared,Ur=ia.framebuffer,wa=Qr.def(Ur,".getFramebuffer(",Gr,")");Qr.set(Ur,".next",wa);var Oa=ia.context;return Qr.set(Oa,"."+ht,wa+"?"+wa+".width:"+Oa+"."+nr),Qr.set(Oa,"."+At,wa+"?"+wa+".height:"+Oa+"."+pr),wa})}else return null}function As(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Gr){if(Gr in Pr){var ia=Pr[Gr],Ur=!0,wa=ia.x|0,Oa=ia.y|0,ri,Pi;return"width"in ia?ri=ia.width|0:Ur=!1,"height"in ia?Pi=ia.height|0:Ur=!1,new Da(!Ur&&tr&&tr.thisDep,!Ur&&tr&&tr.contextDep,!Ur&&tr&&tr.propDep,function(An,ln){var Ii=An.shared.context,Wi=ri;"width"in ia||(Wi=ln.def(Ii,".",ht,"-",wa));var Hi=Pi;return"height"in ia||(Hi=ln.def(Ii,".",At,"-",Oa)),[wa,Oa,Wi,Hi]})}else if(Gr in Vr){var mi=Vr[Gr],Di=Qi(mi,function(An,ln){var Ii=An.invoke(ln,mi),Wi=An.shared.context,Hi=ln.def(Ii,".x|0"),yn=ln.def(Ii,".y|0"),zn=ln.def('"width" in ',Ii,"?",Ii,".width|0:","(",Wi,".",ht,"-",Hi,")"),ms=ln.def('"height" in ',Ii,"?",Ii,".height|0:","(",Wi,".",At,"-",yn,")");return[Hi,yn,zn,ms]});return tr&&(Di.thisDep=Di.thisDep||tr.thisDep,Di.contextDep=Di.contextDep||tr.contextDep,Di.propDep=Di.propDep||tr.propDep),Di}else return tr?new Da(tr.thisDep,tr.contextDep,tr.propDep,function(An,ln){var Ii=An.shared.context;return[0,0,ln.def(Ii,".",ht),ln.def(Ii,".",At)]}):null}var aa=Hr(Se);if(aa){var Qr=aa;aa=new Da(aa.thisDep,aa.contextDep,aa.propDep,function(Gr,ia){var Ur=Qr.append(Gr,ia),wa=Gr.shared.context;return ia.set(wa,"."+_t,Ur[2]),ia.set(wa,"."+Pt,Ur[3]),Ur})}return{viewport:aa,scissor_box:Hr(we)}}function $l(qt,tr){var dr=qt.static,Pr=typeof dr[Dt]=="string"&&typeof dr[bt]=="string";if(Pr){if(Object.keys(tr.dynamic).length>0)return null;var Vr=tr.static,Hr=Object.keys(Vr);if(Hr.length>0&&typeof Vr[Hr[0]]=="number"){for(var aa=[],Qr=0;Qr<Hr.length;++Qr)aa.push([Vr[Hr[Qr]]|0,Hr[Qr]]);return aa}}return null}function Uc(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Ur){if(Ur in Pr){var wa=ra.id(Pr[Ur]),Oa=Ni(function(){return wa});return Oa.id=wa,Oa}else if(Ur in Vr){var ri=Vr[Ur];return Qi(ri,function(Pi,mi){var Di=Pi.invoke(mi,ri),An=mi.def(Pi.shared.strings,".id(",Di,")");return An})}return null}var aa=Hr(Dt),Qr=Hr(bt),Gr=null,ia;return zi(aa)&&zi(Qr)?(Gr=Gi.program(Qr.id,aa.id,null,dr),ia=Ni(function(Ur,wa){return Ur.link(Gr)})):ia=new Da(aa&&aa.thisDep||Qr&&Qr.thisDep,aa&&aa.contextDep||Qr&&Qr.contextDep,aa&&aa.propDep||Qr&&Qr.propDep,function(Ur,wa){var Oa=Ur.shared.shader,ri;aa?ri=aa.append(Ur,wa):ri=wa.def(Oa,".",Dt);var Pi;Qr?Pi=Qr.append(Ur,wa):Pi=wa.def(Oa,".",bt);var mi=Oa+".program("+Pi+","+ri;return wa.def(mi+")")}),{frag:aa,vert:Qr,progVar:ia,program:Gr}}function Ws(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={},Hr=!1;function aa(){if(qe in dr){var ln=dr[qe];return ln!==null&&fn.getVAO(ln)===null&&(ln=fn.createVAO(ln)),Hr=!0,Vr.vao=ln,Ni(function(Wi){var Hi=fn.getVAO(ln);return Hi?Wi.link(Hi):"null"})}else if(qe in Pr){Hr=!0;var Ii=Pr[qe];return Qi(Ii,function(Wi,Hi){var yn=Wi.invoke(Hi,Ii);return Hi.def(Wi.shared.vao+".getVAO("+yn+")")})}return null}var Qr=aa(),Gr=!1;function ia(){if(Yt in dr){var ln=dr[Yt];if(Vr.elements=ln,Qa(ln)){var Ii=Vr.elements=xi.create(ln,!0);ln=xi.getElements(Ii),Gr=!0}else ln&&(ln=xi.getElements(ln),Gr=!0);var Wi=Ni(function(yn,zn){if(ln){var ms=yn.link(ln);return yn.ELEMENTS=ms,ms}return yn.ELEMENTS=null,null});return Wi.value=ln,Wi}else if(Yt in Pr){Gr=!0;var Hi=Pr[Yt];return Qi(Hi,function(yn,zn){var ms=yn.shared,us=ms.isBufferArgs,Vs=ms.elements,qo=yn.invoke(zn,Hi),Ls=zn.def("null"),wl=zn.def(us,"(",qo,")"),Ru=yn.cond(wl).then(Ls,"=",Vs,".createStream(",qo,");").else(Ls,"=",Vs,".getElements(",qo,");");return zn.entry(Ru),zn.exit(yn.cond(wl).then(Vs,".destroyStream(",Ls,");")),yn.ELEMENTS=Ls,Ls})}else if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.elements+".getElements("+yn.shared.vao+".currentVAO.elements):null")});return null}var Ur=ia();function wa(){if(cr in dr){var ln=dr[cr];return Vr.primitive=ln,Ni(function(Wi,Hi){return mt[ln]})}else if(cr in Pr){var Ii=Pr[cr];return Qi(Ii,function(Wi,Hi){var yn=Wi.constants.primTypes,zn=Wi.invoke(Hi,Ii);return Hi.def(yn,"[",zn,"]")})}else{if(Gr)return zi(Ur)?Ur.value?Ni(function(Wi,Hi){return Hi.def(Wi.ELEMENTS,".primType")}):Ni(function(){return Hl}):new Da(Ur.thisDep,Ur.contextDep,Ur.propDep,function(Wi,Hi){var yn=Wi.ELEMENTS;return Hi.def(yn,"?",yn,".primType:",Hl)});if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(Wi,Hi){return Hi.def(Wi.shared.vao+".currentVAO?"+Wi.shared.vao+".currentVAO.primitive:"+Hl)})}return null}function Oa(ln,Ii){if(ln in dr){var Wi=dr[ln]|0;return Ii?Vr.offset=Wi:Vr.instances=Wi,Ni(function(yn,zn){return Ii&&(yn.OFFSET=Wi),Wi})}else if(ln in Pr){var Hi=Pr[ln];return Qi(Hi,function(yn,zn){var ms=yn.invoke(zn,Hi);return Ii&&(yn.OFFSET=ms),ms})}else if(Ii){if(Gr)return Ni(function(yn,zn){return yn.OFFSET=0,0});if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.vao+".currentVAO.offset:0")})}else if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.vao+".currentVAO.instances:-1")});return null}var ri=Oa(jr,!0);function Pi(){if(hr in dr){var ln=dr[hr]|0;return Vr.count=ln,Ni(function(){return ln})}else if(hr in Pr){var Ii=Pr[hr];return Qi(Ii,function(zn,ms){var us=zn.invoke(ms,Ii);return us})}else if(Gr)if(zi(Ur)){if(Ur)return ri?new Da(ri.thisDep,ri.contextDep,ri.propDep,function(zn,ms){var us=ms.def(zn.ELEMENTS,".vertCount-",zn.OFFSET);return us}):Ni(function(zn,ms){return ms.def(zn.ELEMENTS,".vertCount")});var Wi=Ni(function(){return-1});return Wi}else{var Hi=new Da(Ur.thisDep||ri.thisDep,Ur.contextDep||ri.contextDep,Ur.propDep||ri.propDep,function(zn,ms){var us=zn.ELEMENTS;return zn.OFFSET?ms.def(us,"?",us,".vertCount-",zn.OFFSET,":-1"):ms.def(us,"?",us,".vertCount:-1")});return Hi}else if(Hr){var yn=new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(zn,ms){return ms.def(zn.shared.vao,".currentVAO?",zn.shared.vao,".currentVAO.count:-1")});return yn}return null}var mi=wa(),Di=Pi(),An=Oa(ea,!1);return{elements:Ur,primitive:mi,count:Di,instances:An,offset:ri,vao:Qr,vaoActive:Hr,elementsActive:Gr,static:Vr}}function jc(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Zi.forEach(function(Hr){var aa=Rn(Hr);function Qr(Gr,ia){if(Hr in dr){var Ur=Gr(dr[Hr]);Vr[aa]=Ni(function(){return Ur})}else if(Hr in Pr){var wa=Pr[Hr];Vr[aa]=Qi(wa,function(Oa,ri){return ia(Oa,ri,Oa.invoke(ri,wa))})}}switch(Hr){case Pu:case vs:case Hs:case Nc:case Ln:case ae:case Bc:case Ac:case ro:case Ts:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){return Ur});case Ao:return Qr(function(Gr){return _a[Gr]},function(Gr,ia,Ur){var wa=Gr.constants.compareFuncs;return ia.def(wa,"[",Ur,"]")});case js:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){var wa=ia.def("+",Ur,"[0]"),Oa=ia.def("+",Ur,"[1]");return[wa,Oa]});case tl:return Qr(function(Gr){var ia="srcRGB"in Gr?Gr.srcRGB:Gr.src,Ur="srcAlpha"in Gr?Gr.srcAlpha:Gr.src,wa="dstRGB"in Gr?Gr.dstRGB:Gr.dst,Oa="dstAlpha"in Gr?Gr.dstAlpha:Gr.dst;return[Xa[ia],Xa[wa],Xa[Ur],Xa[Oa]]},function(Gr,ia,Ur){var wa=Gr.constants.blendFuncs;function Oa(Ii,Wi){var Hi=ia.def('"',Ii,Wi,'" in ',Ur,"?",Ur,".",Ii,Wi,":",Ur,".",Ii);return Hi}var ri=Oa("src","RGB"),Pi=Oa("dst","RGB"),mi=ia.def(wa,"[",ri,"]"),Di=ia.def(wa,"[",Oa("src","Alpha"),"]"),An=ia.def(wa,"[",Pi,"]"),ln=ia.def(wa,"[",Oa("dst","Alpha"),"]");return[mi,An,Di,ln]});case fl:return Qr(function(Gr){if(typeof Gr=="string")return[tn[Gr],tn[Gr]];if(typeof Gr=="object")return[tn[Gr.rgb],tn[Gr.alpha]]},function(Gr,ia,Ur){var wa=Gr.constants.blendEquations,Oa=ia.def(),ri=ia.def(),Pi=Gr.cond("typeof ",Ur,'==="string"');return Pi.then(Oa,"=",ri,"=",wa,"[",Ur,"];"),Pi.else(Oa,"=",wa,"[",Ur,".rgb];",ri,"=",wa,"[",Ur,".alpha];"),ia(Pi),[Oa,ri]});case Il:return Qr(function(Gr){return d(4,function(ia){return+Gr[ia]})},function(Gr,ia,Ur){return d(4,function(wa){return ia.def("+",Ur,"[",wa,"]")})});case hc:return Qr(function(Gr){return Gr|0},function(Gr,ia,Ur){return ia.def(Ur,"|0")});case pc:return Qr(function(Gr){var ia=Gr.cmp||"keep",Ur=Gr.ref||0,wa="mask"in Gr?Gr.mask:-1;return[_a[ia],Ur,wa]},function(Gr,ia,Ur){var wa=Gr.constants.compareFuncs,Oa=ia.def('"cmp" in ',Ur,"?",wa,"[",Ur,".cmp]",":",Rt),ri=ia.def(Ur,".ref|0"),Pi=ia.def('"mask" in ',Ur,"?",Ur,".mask|0:-1");return[Oa,ri,Pi]});case Oe:case R:return Qr(function(Gr){var ia=Gr.fail||"keep",Ur=Gr.zfail||"keep",wa=Gr.zpass||"keep";return[Hr===R?Re:de,Ra[ia],Ra[Ur],Ra[wa]]},function(Gr,ia,Ur){var wa=Gr.constants.stencilOps;function Oa(ri){return ia.def('"',ri,'" in ',Ur,"?",wa,"[",Ur,".",ri,"]:",Rt)}return[Hr===R?Re:de,Oa("fail"),Oa("zfail"),Oa("zpass")]});case Iu:return Qr(function(Gr){var ia=Gr.factor|0,Ur=Gr.units|0;return[ia,Ur]},function(Gr,ia,Ur){var wa=ia.def(Ur,".factor|0"),Oa=ia.def(Ur,".units|0");return[wa,Oa]});case ec:return Qr(function(Gr){var ia=0;return Gr==="front"?ia=de:Gr==="back"&&(ia=Re),ia},function(Gr,ia,Ur){return ia.def(Ur,'==="front"?',de,":",Re)});case yu:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){return Ur});case tf:return Qr(function(Gr){return Na[Gr]},function(Gr,ia,Ur){return ia.def(Ur+'==="cw"?'+$e+":"+pt)});case nu:return Qr(function(Gr){return Gr.map(function(ia){return!!ia})},function(Gr,ia,Ur){return d(4,function(wa){return"!!"+Ur+"["+wa+"]"})});case Po:return Qr(function(Gr){var ia="value"in Gr?Gr.value:1,Ur=!!Gr.invert;return[ia,Ur]},function(Gr,ia,Ur){var wa=ia.def('"value" in ',Ur,"?+",Ur,".value:1"),Oa=ia.def("!!",Ur,".invert");return[wa,Oa]})}}),Vr}function Ol(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Object.keys(dr).forEach(function(Hr){var aa=dr[Hr],Qr;if(typeof aa=="number"||typeof aa=="boolean")Qr=Ni(function(){return aa});else if(typeof aa=="function"){var Gr=aa._reglType;Gr==="texture2d"||Gr==="textureCube"?Qr=Ni(function(ia){return ia.link(aa)}):(Gr==="framebuffer"||Gr==="framebufferCube")&&(Qr=Ni(function(ia){return ia.link(aa.color[0])}))}else Ca(aa)&&(Qr=Ni(function(ia){var Ur=ia.global.def("[",d(aa.length,function(wa){return aa[wa]}),"]");return Ur}));Qr.value=aa,Vr[Hr]=Qr}),Object.keys(Pr).forEach(function(Hr){var aa=Pr[Hr];Vr[Hr]=Qi(aa,function(Qr,Gr){return Qr.invoke(Gr,aa)})}),Vr}function vc(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Object.keys(dr).forEach(function(Hr){var aa=dr[Hr],Qr=ra.id(Hr),Gr=new Mi;if(Qa(aa))Gr.state=Jn,Gr.buffer=wi.getBuffer(wi.create(aa,Wr,!1,!0)),Gr.type=0;else{var ia=wi.getBuffer(aa);if(ia)Gr.state=Jn,Gr.buffer=ia,Gr.type=0;else if("constant"in aa){var Ur=aa.constant;Gr.buffer="null",Gr.state=no,typeof Ur=="number"?Gr.x=Ur:Kn.forEach(function(An,ln){ln<Ur.length&&(Gr[An]=Ur[ln])})}else{Qa(aa.buffer)?ia=wi.getBuffer(wi.create(aa.buffer,Wr,!1,!0)):ia=wi.getBuffer(aa.buffer);var wa=aa.offset|0,Oa=aa.stride|0,ri=aa.size|0,Pi=!!aa.normalized,mi=0;"type"in aa&&(mi=sa[aa.type]);var Di=aa.divisor|0;Gr.buffer=ia,Gr.state=Jn,Gr.size=ri,Gr.normalized=Pi,Gr.type=mi||ia.dtype,Gr.offset=wa,Gr.stride=Oa,Gr.divisor=Di}}Vr[Hr]=Ni(function(An,ln){var Ii=An.attribCache;if(Qr in Ii)return Ii[Qr];var Wi={isStream:!1};return Object.keys(Gr).forEach(function(Hi){Wi[Hi]=Gr[Hi]}),Gr.buffer&&(Wi.buffer=An.link(Gr.buffer),Wi.type=Wi.type||Wi.buffer+".dtype"),Ii[Qr]=Wi,Wi})}),Object.keys(Pr).forEach(function(Hr){var aa=Pr[Hr];function Qr(Gr,ia){var Ur=Gr.invoke(ia,aa),wa=Gr.shared,Oa=Gr.constants,ri=wa.isBufferArgs,Pi=wa.buffer,mi={isStream:ia.def(!1)},Di=new Mi;Di.state=Jn,Object.keys(Di).forEach(function(Wi){mi[Wi]=ia.def(""+Di[Wi])});var An=mi.buffer,ln=mi.type;ia("if(",ri,"(",Ur,")){",mi.isStream,"=true;",An,"=",Pi,".createStream(",Wr,",",Ur,");",ln,"=",An,".dtype;","}else{",An,"=",Pi,".getBuffer(",Ur,");","if(",An,"){",ln,"=",An,".dtype;",'}else if("constant" in ',Ur,"){",mi.state,"=",no,";","if(typeof "+Ur+'.constant === "number"){',mi[Kn[0]],"=",Ur,".constant;",Kn.slice(1).map(function(Wi){return mi[Wi]}).join("="),"=0;","}else{",Kn.map(function(Wi,Hi){return mi[Wi]+"="+Ur+".constant.length>"+Hi+"?"+Ur+".constant["+Hi+"]:0;"}).join(""),"}}else{","if(",ri,"(",Ur,".buffer)){",An,"=",Pi,".createStream(",Wr,",",Ur,".buffer);","}else{",An,"=",Pi,".getBuffer(",Ur,".buffer);","}",ln,'="type" in ',Ur,"?",Oa.glTypes,"[",Ur,".type]:",An,".dtype;",mi.normalized,"=!!",Ur,".normalized;");function Ii(Wi){ia(mi[Wi],"=",Ur,".",Wi,"|0;")}return Ii("size"),Ii("offset"),Ii("stride"),Ii("divisor"),ia("}}"),ia.exit("if(",mi.isStream,"){",Pi,".destroyStream(",An,");","}"),mi}Vr[Hr]=Qi(aa,Qr)}),Vr}function mc(qt){var tr=qt.static,dr=qt.dynamic,Pr={};return Object.keys(tr).forEach(function(Vr){var Hr=tr[Vr];Pr[Vr]=Ni(function(aa,Qr){return typeof Hr=="number"||typeof Hr=="boolean"?""+Hr:aa.link(Hr)})}),Object.keys(dr).forEach(function(Vr){var Hr=dr[Vr];Pr[Vr]=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}),Pr}function rf(qt,tr,dr,Pr,Vr){var Hr=qt.static,aa=qt.dynamic,Qr=$l(qt,tr),Gr=os(qt,Vr),ia=As(qt,Gr,Vr),Ur=Ws(qt,Vr),wa=jc(qt,Vr),Oa=Uc(qt,Vr,Qr);function ri(Ii){var Wi=ia[Ii];Wi&&(wa[Ii]=Wi)}ri(Se),ri(Rn(we));var Pi=Object.keys(wa).length>0,mi={framebuffer:Gr,draw:Ur,shader:Oa,state:wa,dirty:Pi,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(mi.profile=Xo(qt,Vr),mi.uniforms=Ol(dr,Vr),mi.drawVAO=mi.scopeVAO=Ur.vao,!mi.drawVAO&&Oa.program&&!Qr&&Ta.angle_instanced_arrays&&Ur.static.elements){var Di=!0,An=Oa.program.attributes.map(function(Ii){var Wi=tr.static[Ii];return Di=Di&&!!Wi,Wi});if(Di&&An.length>0){var ln=fn.getVAO(fn.createVAO({attributes:An,elements:Ur.static.elements}));mi.drawVAO=new Da(null,null,null,function(Ii,Wi){return Ii.link(ln)}),mi.useVAO=!0}}return Qr?mi.useVAO=!0:mi.attributes=vc(tr,Vr),mi.context=mc(Pr,Vr),mi}function Yl(qt,tr,dr){var Pr=qt.shared,Vr=Pr.context,Hr=qt.scope();Object.keys(dr).forEach(function(aa){tr.save(Vr,"."+aa);var Qr=dr[aa],Gr=Qr.append(qt,tr);Array.isArray(Gr)?Hr(Vr,".",aa,"=[",Gr.join(),"];"):Hr(Vr,".",aa,"=",Gr,";")}),tr(Hr)}function Mc(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.framebuffer,Qr;qi&&(Qr=tr.def(Vr.extensions,".webgl_draw_buffers"));var Gr=qt.constants,ia=Gr.drawBuffer,Ur=Gr.backBuffer,wa;dr?wa=dr.append(qt,tr):wa=tr.def(aa,".next"),Pr||tr("if(",wa,"!==",aa,".cur){"),tr("if(",wa,"){",Hr,".bindFramebuffer(",fa,",",wa,".framebuffer);"),qi&&tr(Qr,".drawBuffersWEBGL(",ia,"[",wa,".colorAttachments.length]);"),tr("}else{",Hr,".bindFramebuffer(",fa,",null);"),qi&&tr(Qr,".drawBuffersWEBGL(",Ur,");"),tr("}",aa,".cur=",wa,";"),Pr||tr("}")}function Vc(qt,tr,dr){var Pr=qt.shared,Vr=Pr.gl,Hr=qt.current,aa=qt.next,Qr=Pr.current,Gr=Pr.next,ia=qt.cond(Qr,".dirty");Zi.forEach(function(Ur){var wa=Rn(Ur);if(!(wa in dr.state)){var Oa,ri;if(wa in aa){Oa=aa[wa],ri=Hr[wa];var Pi=d(bn[wa].length,function(Di){return ia.def(Oa,"[",Di,"]")});ia(qt.cond(Pi.map(function(Di,An){return Di+"!=="+ri+"["+An+"]"}).join("||")).then(Vr,".",Zn[wa],"(",Pi,");",Pi.map(function(Di,An){return ri+"["+An+"]="+Di}).join(";"),";"))}else{Oa=ia.def(Gr,".",wa);var mi=qt.cond(Oa,"!==",Qr,".",wa);ia(mi),wa in Ui?mi(qt.cond(Oa).then(Vr,".enable(",Ui[wa],");").else(Vr,".disable(",Ui[wa],");"),Qr,".",wa,"=",Oa,";"):mi(Vr,".",Zn[wa],"(",Oa,");",Qr,".",wa,"=",Oa,";")}}}),Object.keys(dr.state).length===0&&ia(Qr,".dirty=false;"),tr(ia)}function Ds(qt,tr,dr,Pr){var Vr=qt.shared,Hr=qt.current,aa=Vr.current,Qr=Vr.gl,Gr;Ya(Object.keys(dr)).forEach(function(ia){var Ur=dr[ia];if(!(Pr&&!Pr(Ur))){var wa=Ur.append(qt,tr);if(Ui[ia]){var Oa=Ui[ia];zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(qt.cond(Gr).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",Gr,";")):(tr(qt.cond(wa).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",wa,";"))}else if(Ca(wa)){var ri=Hr[ia];tr(Qr,".",Zn[ia],"(",wa,");",wa.map(function(Pi,mi){return ri+"["+mi+"]="+Pi}).join(";"),";")}else zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(Qr,".",Zn[ia],"(",Gr,");",aa,".",ia,"=",Gr,";")):tr(Qr,".",Zn[ia],"(",wa,");",aa,".",ia,"=",wa,";")}})}function af(qt,tr){pn&&(qt.instancing=tr.def(qt.shared.extensions,".angle_instanced_arrays"))}function Cs(qt,tr,dr,Pr,Vr){var Hr=qt.shared,aa=qt.stats,Qr=Hr.current,Gr=Hr.timer,ia=dr.profile;function Ur(){return typeof performance>"u"?"Date.now()":"performance.now()"}var wa,Oa;function ri(Ii){wa=tr.def(),Ii(wa,"=",Ur(),";"),typeof Vr=="string"?Ii(aa,".count+=",Vr,";"):Ii(aa,".count++;"),on&&(Pr?(Oa=tr.def(),Ii(Oa,"=",Gr,".getNumPendingQueries();")):Ii(Gr,".beginQuery(",aa,");"))}function Pi(Ii){Ii(aa,".cpuTime+=",Ur(),"-",wa,";"),on&&(Pr?Ii(Gr,".pushScopeStats(",Oa,",",Gr,".getNumPendingQueries(),",aa,");"):Ii(Gr,".endQuery();"))}function mi(Ii){var Wi=tr.def(Qr,".profile");tr(Qr,".profile=",Ii,";"),tr.exit(Qr,".profile=",Wi,";")}var Di;if(ia){if(zi(ia)){ia.enable?(ri(tr),Pi(tr.exit),mi("true")):mi("false");return}Di=ia.append(qt,tr),mi(Di)}else Di=tr.def(Qr,".profile");var An=qt.block();ri(An),tr("if(",Di,"){",An,"}");var ln=qt.block();Pi(ln),tr.exit("if(",Di,"){",ln,"}")}function ve(qt,tr,dr,Pr,Vr){var Hr=qt.shared;function aa(Gr){switch(Gr){case ts:case rl:case Rl:return 2;case yo:case Ys:case Xl:return 3;case Vo:case Zo:case qu:return 4;default:return 1}}function Qr(Gr,ia,Ur){var wa=Hr.gl,Oa=tr.def(Gr,".location"),ri=tr.def(Hr.attributes,"[",Oa,"]"),Pi=Ur.state,mi=Ur.buffer,Di=[Ur.x,Ur.y,Ur.z,Ur.w],An=["buffer","normalized","offset","stride"];function ln(){tr("if(!",ri,".buffer){",wa,".enableVertexAttribArray(",Oa,");}");var Wi=Ur.type,Hi;if(Ur.size?Hi=tr.def(Ur.size,"||",ia):Hi=ia,tr("if(",ri,".type!==",Wi,"||",ri,".size!==",Hi,"||",An.map(function(zn){return ri+"."+zn+"!=="+Ur[zn]}).join("||"),"){",wa,".bindBuffer(",Wr,",",mi,".buffer);",wa,".vertexAttribPointer(",[Oa,Hi,Wi,Ur.normalized,Ur.stride,Ur.offset],");",ri,".type=",Wi,";",ri,".size=",Hi,";",An.map(function(zn){return ri+"."+zn+"="+Ur[zn]+";"}).join(""),"}"),pn){var yn=Ur.divisor;tr("if(",ri,".divisor!==",yn,"){",qt.instancing,".vertexAttribDivisorANGLE(",[Oa,yn],");",ri,".divisor=",yn,";}")}}function Ii(){tr("if(",ri,".buffer){",wa,".disableVertexAttribArray(",Oa,");",ri,".buffer=null;","}if(",Kn.map(function(Wi,Hi){return ri+"."+Wi+"!=="+Di[Hi]}).join("||"),"){",wa,".vertexAttrib4f(",Oa,",",Di,");",Kn.map(function(Wi,Hi){return ri+"."+Wi+"="+Di[Hi]+";"}).join(""),"}")}Pi===Jn?ln():Pi===no?Ii():(tr("if(",Pi,"===",Jn,"){"),ln(),tr("}else{"),Ii(),tr("}"))}Pr.forEach(function(Gr){var ia=Gr.name,Ur=dr.attributes[ia],wa;if(Ur){if(!Vr(Ur))return;wa=Ur.append(qt,tr)}else{if(!Vr(hn))return;var Oa=qt.scopeAttrib(ia);wa={},Object.keys(new Mi).forEach(function(ri){wa[ri]=tr.def(Oa,".",ri)})}Qr(qt.link(Gr),aa(Gr.info.type),wa)})}function K(qt,tr,dr,Pr,Vr,Hr){for(var aa=qt.shared,Qr=aa.gl,Gr,ia=0;ia<Pr.length;++ia){var Ur=Pr[ia],wa=Ur.name,Oa=Ur.info.type,ri=dr.uniforms[wa],Pi=qt.link(Ur),mi=Pi+".location",Di;if(ri){if(!Vr(ri))continue;if(zi(ri)){var An=ri.value;if(Oa===Sc||Oa===ql){var ln=qt.link(An._texture||An.color[0]._texture);tr(Qr,".uniform1i(",mi,",",ln+".bind());"),tr.exit(ln,".unbind();")}else if(Oa===fu||Oa===bl||Oa===ou){var Ii=qt.global.def("new Float32Array(["+Array.prototype.slice.call(An)+"])"),Wi=2;Oa===bl?Wi=3:Oa===ou&&(Wi=4),tr(Qr,".uniformMatrix",Wi,"fv(",mi,",false,",Ii,");")}else{switch(Oa){case ho:Gr="1f";break;case ts:Gr="2f";break;case yo:Gr="3f";break;case Vo:Gr="4f";break;case Go:Gr="1i";break;case ls:Gr="1i";break;case Rl:Gr="2i";break;case rl:Gr="2i";break;case Xl:Gr="3i";break;case Ys:Gr="3i";break;case qu:Gr="4i";break;case Zo:Gr="4i";break}tr(Qr,".uniform",Gr,"(",mi,",",Ca(An)?Array.prototype.slice.call(An):An,");")}continue}else Di=ri.append(qt,tr)}else{if(!Vr(hn))continue;Di=tr.def(aa.uniforms,"[",ra.id(wa),"]")}Oa===Sc?tr("if(",Di,"&&",Di,'._reglType==="framebuffer"){',Di,"=",Di,".color[0];","}"):Oa===ql&&tr("if(",Di,"&&",Di,'._reglType==="framebufferCube"){',Di,"=",Di,".color[0];","}");var Hi=1;switch(Oa){case Sc:case ql:var yn=tr.def(Di,"._texture");tr(Qr,".uniform1i(",mi,",",yn,".bind());"),tr.exit(yn,".unbind();");continue;case ls:case Go:Gr="1i";break;case rl:case Rl:Gr="2i",Hi=2;break;case Ys:case Xl:Gr="3i",Hi=3;break;case Zo:case qu:Gr="4i",Hi=4;break;case ho:Gr="1f";break;case ts:Gr="2f",Hi=2;break;case yo:Gr="3f",Hi=3;break;case Vo:Gr="4f",Hi=4;break;case fu:Gr="Matrix2fv";break;case bl:Gr="Matrix3fv";break;case ou:Gr="Matrix4fv";break}if(Gr.charAt(0)==="M"){tr(Qr,".uniform",Gr,"(",mi,",");var zn=Math.pow(Oa-fu+2,2),ms=qt.global.def("new Float32Array(",zn,")");Array.isArray(Di)?tr("false,(",d(zn,function(wl){return ms+"["+wl+"]="+Di[wl]}),",",ms,")"):tr("false,(Array.isArray(",Di,")||",Di," instanceof Float32Array)?",Di,":(",d(zn,function(wl){return ms+"["+wl+"]="+Di+"["+wl+"]"}),",",ms,")"),tr(");")}else if(Hi>1){for(var us=[],Vs=[],qo=0;qo<Hi;++qo)Array.isArray(Di)?Vs.push(Di[qo]):Vs.push(tr.def(Di+"["+qo+"]")),Hr&&us.push(tr.def());Hr&&tr("if(!",qt.batchId,"||",us.map(function(wl,Ru){return wl+"!=="+Vs[Ru]}).join("||"),"){",us.map(function(wl,Ru){return wl+"="+Vs[Ru]+";"}).join("")),tr(Qr,".uniform",Gr,"(",mi,",",Vs.join(","),");"),Hr&&tr("}")}else{if(Hr){var Ls=tr.def();tr("if(!",qt.batchId,"||",Ls,"!==",Di,"){",Ls,"=",Di,";")}tr(Qr,".uniform",Gr,"(",mi,",",Di,");"),Hr&&tr("}")}}}function ye(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.draw,Qr=Pr.draw;function Gr(){var Hi=Qr.elements,yn,zn=tr;return Hi?((Hi.contextDep&&Pr.contextDynamic||Hi.propDep)&&(zn=dr),yn=Hi.append(qt,zn),Qr.elementsActive&&zn("if("+yn+")"+Hr+".bindBuffer("+ha+","+yn+".buffer.buffer);")):(yn=zn.def(),zn(yn,"=",aa,".",Yt,";","if(",yn,"){",Hr,".bindBuffer(",ha,",",yn,".buffer.buffer);}","else if(",Vr.vao,".currentVAO){",yn,"=",qt.shared.elements+".getElements("+Vr.vao,".currentVAO.elements);",Dn?"":"if("+yn+")"+Hr+".bindBuffer("+ha+","+yn+".buffer.buffer);","}")),yn}function ia(){var Hi=Qr.count,yn,zn=tr;return Hi?((Hi.contextDep&&Pr.contextDynamic||Hi.propDep)&&(zn=dr),yn=Hi.append(qt,zn)):yn=zn.def(aa,".",hr),yn}var Ur=Gr();function wa(Hi){var yn=Qr[Hi];return yn?yn.contextDep&&Pr.contextDynamic||yn.propDep?yn.append(qt,dr):yn.append(qt,tr):tr.def(aa,".",Hi)}var Oa=wa(cr),ri=wa(jr),Pi=ia();if(typeof Pi=="number"){if(Pi===0)return}else dr("if(",Pi,"){"),dr.exit("}");var mi,Di;pn&&(mi=wa(ea),Di=qt.instancing);var An=Ur+".type",ln=Qr.elements&&zi(Qr.elements)&&!Qr.vaoActive;function Ii(){function Hi(){dr(Di,".drawElementsInstancedANGLE(",[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)",mi],");")}function yn(){dr(Di,".drawArraysInstancedANGLE(",[Oa,ri,Pi,mi],");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}function Wi(){function Hi(){dr(Hr+".drawElements("+[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)"]+");")}function yn(){dr(Hr+".drawArrays("+[Oa,ri,Pi]+");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}pn&&(typeof mi!="number"||mi>=0)?typeof mi=="string"?(dr("if(",mi,">0){"),Ii(),dr("}else if(",mi,"<0){"),Wi(),dr("}")):Ii():Wi()}function te(qt,tr,dr,Pr,Vr){var Hr=oo(),aa=Hr.proc("body",Vr);return pn&&(Hr.instancing=aa.def(Hr.shared.extensions,".angle_instanced_arrays")),qt(Hr,aa,dr,Pr),Hr.compile().body}function xe(qt,tr,dr,Pr){af(qt,tr),dr.useVAO?dr.drawVAO?tr(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,tr),");"):tr(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(tr(qt.shared.vao,".setVAO(null);"),ve(qt,tr,dr,Pr.attributes,function(){return!0})),K(qt,tr,dr,Pr.uniforms,function(){return!0},!1),ye(qt,tr,tr,dr)}function We(qt,tr){var dr=qt.proc("draw",1);af(qt,dr),Yl(qt,dr,tr.context),Mc(qt,dr,tr.framebuffer),Vc(qt,dr,tr),Ds(qt,dr,tr.state),Cs(qt,dr,tr,!1,!0);var Pr=tr.shader.progVar.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",Pr,".program);"),tr.shader.program)xe(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Vr=qt.global.def("{}"),Hr=dr.def(Pr,".id"),aa=dr.def(Vr,"[",Hr,"]");dr(qt.cond(aa).then(aa,".call(this,a0);").else(aa,"=",Vr,"[",Hr,"]=",qt.link(function(Qr){return te(xe,qt,tr,Qr,1)}),"(",Pr,");",aa,".call(this,a0);"))}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function He(qt,tr,dr,Pr){qt.batchId="a1",af(qt,tr);function Vr(){return!0}ve(qt,tr,dr,Pr.attributes,Vr),K(qt,tr,dr,Pr.uniforms,Vr,!1),ye(qt,tr,tr,dr)}function st(qt,tr,dr,Pr){af(qt,tr);var Vr=dr.contextDep,Hr=tr.def(),aa="a0",Qr="a1",Gr=tr.def();qt.shared.props=Gr,qt.batchId=Hr;var ia=qt.scope(),Ur=qt.scope();tr(ia.entry,"for(",Hr,"=0;",Hr,"<",Qr,";++",Hr,"){",Gr,"=",aa,"[",Hr,"];",Ur,"}",ia.exit);function wa(An){return An.contextDep&&Vr||An.propDep}function Oa(An){return!wa(An)}if(dr.needsContext&&Yl(qt,Ur,dr.context),dr.needsFramebuffer&&Mc(qt,Ur,dr.framebuffer),Ds(qt,Ur,dr.state,wa),dr.profile&&wa(dr.profile)&&Cs(qt,Ur,dr,!1,!0),Pr)dr.useVAO?dr.drawVAO?wa(dr.drawVAO)?Ur(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,Ur),");"):ia(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,ia),");"):ia(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(ia(qt.shared.vao,".setVAO(null);"),ve(qt,ia,dr,Pr.attributes,Oa),ve(qt,Ur,dr,Pr.attributes,wa)),K(qt,ia,dr,Pr.uniforms,Oa,!1),K(qt,Ur,dr,Pr.uniforms,wa,!0),ye(qt,ia,Ur,dr);else{var ri=qt.global.def("{}"),Pi=dr.shader.progVar.append(qt,Ur),mi=Ur.def(Pi,".id"),Di=Ur.def(ri,"[",mi,"]");Ur(qt.shared.gl,".useProgram(",Pi,".program);","if(!",Di,"){",Di,"=",ri,"[",mi,"]=",qt.link(function(An){return te(He,qt,dr,An,2)}),"(",Pi,");}",Di,".call(this,a0[",Hr,"],",Hr,");")}}function Et(qt,tr){var dr=qt.proc("batch",2);qt.batchId="0",af(qt,dr);var Pr=!1,Vr=!0;Object.keys(tr.context).forEach(function(ri){Pr=Pr||tr.context[ri].propDep}),Pr||(Yl(qt,dr,tr.context),Vr=!1);var Hr=tr.framebuffer,aa=!1;Hr?(Hr.propDep?Pr=aa=!0:Hr.contextDep&&Pr&&(aa=!0),aa||Mc(qt,dr,Hr)):Mc(qt,dr,null),tr.state.viewport&&tr.state.viewport.propDep&&(Pr=!0);function Qr(ri){return ri.contextDep&&Pr||ri.propDep}Vc(qt,dr,tr),Ds(qt,dr,tr.state,function(ri){return!Qr(ri)}),(!tr.profile||!Qr(tr.profile))&&Cs(qt,dr,tr,!1,"a1"),tr.contextDep=Pr,tr.needsContext=Vr,tr.needsFramebuffer=aa;var Gr=tr.shader.progVar;if(Gr.contextDep&&Pr||Gr.propDep)st(qt,dr,tr,null);else{var ia=Gr.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",ia,".program);"),tr.shader.program)st(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Ur=qt.global.def("{}"),wa=dr.def(ia,".id"),Oa=dr.def(Ur,"[",wa,"]");dr(qt.cond(Oa).then(Oa,".call(this,a0,a1);").else(Oa,"=",Ur,"[",wa,"]=",qt.link(function(ri){return te(st,qt,tr,ri,2)}),"(",ia,");",Oa,".call(this,a0,a1);"))}}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function Ht(qt,tr){var dr=qt.proc("scope",3);qt.batchId="a2";var Pr=qt.shared,Vr=Pr.current;if(Yl(qt,dr,tr.context),tr.framebuffer&&tr.framebuffer.append(qt,dr),Ya(Object.keys(tr.state)).forEach(function(Qr){var Gr=tr.state[Qr],ia=Gr.append(qt,dr);Ca(ia)?ia.forEach(function(Ur,wa){jn(Ur)?dr.set(qt.next[Qr],"["+wa+"]",Ur):dr.set(qt.next[Qr],"["+wa+"]",qt.link(Ur,{stable:!0}))}):zi(Gr)?dr.set(Pr.next,"."+Qr,qt.link(ia,{stable:!0})):dr.set(Pr.next,"."+Qr,ia)}),Cs(qt,dr,tr,!0,!0),[Yt,jr,hr,ea,cr].forEach(function(Qr){var Gr=tr.draw[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.draw,"."+Qr,ia):dr.set(Pr.draw,"."+Qr,qt.link(ia),{stable:!0})}}),Object.keys(tr.uniforms).forEach(function(Qr){var Gr=tr.uniforms[Qr].append(qt,dr);Array.isArray(Gr)&&(Gr="["+Gr.map(function(ia){return jn(ia)?ia:qt.link(ia,{stable:!0})})+"]"),dr.set(Pr.uniforms,"["+qt.link(ra.id(Qr),{stable:!0})+"]",Gr)}),Object.keys(tr.attributes).forEach(function(Qr){var Gr=tr.attributes[Qr].append(qt,dr),ia=qt.scopeAttrib(Qr);Object.keys(new Mi).forEach(function(Ur){dr.set(ia,"."+Ur,Gr[Ur])})}),tr.scopeVAO){var Hr=tr.scopeVAO.append(qt,dr);jn(Hr)?dr.set(Pr.vao,".targetVAO",Hr):dr.set(Pr.vao,".targetVAO",qt.link(Hr,{stable:!0}))}function aa(Qr){var Gr=tr.shader[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.shader,"."+Qr,ia):dr.set(Pr.shader,"."+Qr,qt.link(ia,{stable:!0}))}}aa(bt),aa(Dt),Object.keys(tr.state).length>0&&(dr(Vr,".dirty=true;"),dr.exit(Vr,".dirty=true;")),dr("a1(",qt.shared.context,",a0,",qt.batchId,");")}function yr(qt){if(!(typeof qt!="object"||Ca(qt))){for(var tr=Object.keys(qt),dr=0;dr<tr.length;++dr)if(c.isDynamic(qt[tr[dr]]))return!0;return!1}}function Ir(qt,tr,dr){var Pr=tr.static[dr];if(!Pr||!yr(Pr))return;var Vr=qt.global,Hr=Object.keys(Pr),aa=!1,Qr=!1,Gr=!1,ia=qt.global.def("{}");Hr.forEach(function(wa){var Oa=Pr[wa];if(c.isDynamic(Oa)){typeof Oa=="function"&&(Oa=Pr[wa]=c.unbox(Oa));var ri=Qi(Oa,null);aa=aa||ri.thisDep,Gr=Gr||ri.propDep,Qr=Qr||ri.contextDep}else{switch(Vr(ia,".",wa,"="),typeof Oa){case"number":Vr(Oa);break;case"string":Vr('"',Oa,'"');break;case"object":Array.isArray(Oa)&&Vr("[",Oa.join(),"]");break;default:Vr(qt.link(Oa));break}Vr(";")}});function Ur(wa,Oa){Hr.forEach(function(ri){var Pi=Pr[ri];if(c.isDynamic(Pi)){var mi=wa.invoke(Oa,Pi);Oa(ia,".",ri,"=",mi,";")}})}tr.dynamic[dr]=new c.DynamicVariable(bs,{thisDep:aa,contextDep:Qr,propDep:Gr,ref:ia,append:Ur}),delete tr.static[dr]}function wr(qt,tr,dr,Pr,Vr){var Hr=oo();Hr.stats=Hr.link(Vr),Object.keys(tr.static).forEach(function(Qr){Ir(Hr,tr,Qr)}),Sr.forEach(function(Qr){Ir(Hr,qt,Qr)});var aa=rf(qt,tr,dr,Pr,Hr);return aa.shader.program&&(aa.shader.program.attributes.sort(function(Qr,Gr){return Qr.name<Gr.name?-1:1}),aa.shader.program.uniforms.sort(function(Qr,Gr){return Qr.name<Gr.name?-1:1})),We(Hr,aa),Ht(Hr,aa),Et(Hr,aa),g(Hr.compile(),{destroy:function(){aa.shader.program.destroy()}})}return{next:_o,current:bn,procs:function(){var qt=oo(),tr=qt.proc("poll"),dr=qt.proc("refresh"),Pr=qt.block();tr(Pr),dr(Pr);var Vr=qt.shared,Hr=Vr.gl,aa=Vr.next,Qr=Vr.current;Pr(Qr,".dirty=false;"),Mc(qt,tr),Mc(qt,dr,null,!0);var Gr;pn&&(Gr=qt.link(pn)),Ta.oes_vertex_array_object&&dr(qt.link(Ta.oes_vertex_array_object),".bindVertexArrayOES(null);");var ia=dr.def(Vr.attributes),Ur=dr.def(0),wa=qt.cond(Ur,".buffer");wa.then(Hr,".enableVertexAttribArray(i);",Hr,".bindBuffer(",Wr,",",Ur,".buffer.buffer);",Hr,".vertexAttribPointer(i,",Ur,".size,",Ur,".type,",Ur,".normalized,",Ur,".stride,",Ur,".offset);").else(Hr,".disableVertexAttribArray(i);",Hr,".vertexAttrib4f(i,",Ur,".x,",Ur,".y,",Ur,".z,",Ur,".w);",Ur,".buffer=null;");var Oa=qt.link(si.maxAttributes,{stable:!0});return dr("for(var i=0;i<",Oa,";++i){",Ur,"=",ia,"[i];",wa,"}"),pn&&dr("for(var i=0;i<",Oa,";++i){",Gr,".vertexAttribDivisorANGLE(i,",ia,"[i].divisor);","}"),dr(qt.shared.vao,".currentVAO=null;",qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"),Object.keys(Ui).forEach(function(ri){var Pi=Ui[ri],mi=Pr.def(aa,".",ri),Di=qt.block();Di("if(",mi,"){",Hr,".enable(",Pi,")}else{",Hr,".disable(",Pi,")}",Qr,".",ri,"=",mi,";"),dr(Di),tr("if(",mi,"!==",Qr,".",ri,"){",Di,"}")}),Object.keys(Zn).forEach(function(ri){var Pi=Zn[ri],mi=bn[ri],Di,An,ln=qt.block();if(ln(Hr,".",Pi,"("),Ca(mi)){var Ii=mi.length;Di=qt.global.def(aa,".",ri),An=qt.global.def(Qr,".",ri),ln(d(Ii,function(Wi){return Di+"["+Wi+"]"}),");",d(Ii,function(Wi){return An+"["+Wi+"]="+Di+"["+Wi+"];"}).join("")),tr("if(",d(Ii,function(Wi){return Di+"["+Wi+"]!=="+An+"["+Wi+"]"}).join("||"),"){",ln,"}")}else Di=Pr.def(aa,".",ri),An=Pr.def(Qr,".",ri),ln(Di,");",Qr,".",ri,"=",Di,";"),tr("if(",Di,"!==",An,"){",ln,"}");dr(ln)}),qt.compile()}(),compile:wr}}function Vn(){return{vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0}}var No=34918,Gn=34919,Fo=35007,Ks=function(Qt,ra){if(!ra.ext_disjoint_timer_query)return null;var Ta=[];function si(){return Ta.pop()||ra.ext_disjoint_timer_query.createQueryEXT()}function wi(tn){Ta.push(tn)}var xi=[];function bi(tn){var pn=si();ra.ext_disjoint_timer_query.beginQueryEXT(Fo,pn),xi.push(pn),on(xi.length-1,xi.length,tn)}function Fi(){ra.ext_disjoint_timer_query.endQueryEXT(Fo)}function cn(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var fn=[];function Gi(){return fn.pop()||new cn}function Io(tn){fn.push(tn)}var nn=[];function on(tn,pn,qi){var Dn=Gi();Dn.startQueryIndex=tn,Dn.endQueryIndex=pn,Dn.sum=0,Dn.stats=qi,nn.push(Dn)}var Oi=[],ui=[];function Mi(){var tn,pn,qi=xi.length;if(qi!==0){ui.length=Math.max(ui.length,qi+1),Oi.length=Math.max(Oi.length,qi+1),Oi[0]=0,ui[0]=0;var Dn=0;for(tn=0,pn=0;pn<xi.length;++pn){var bn=xi[pn];ra.ext_disjoint_timer_query.getQueryObjectEXT(bn,Gn)?(Dn+=ra.ext_disjoint_timer_query.getQueryObjectEXT(bn,No),wi(bn)):xi[tn++]=bn,Oi[pn+1]=Dn,ui[pn+1]=tn}for(xi.length=tn,tn=0,pn=0;pn<nn.length;++pn){var _o=nn[pn],Zi=_o.startQueryIndex,Ui=_o.endQueryIndex;_o.sum+=Oi[Ui]-Oi[Zi];var Zn=ui[Zi],Rn=ui[Ui];Rn===Zn?(_o.stats.gpuTime+=_o.sum/1e6,Io(_o)):(_o.startQueryIndex=Zn,_o.endQueryIndex=Rn,nn[tn++]=_o)}nn.length=tn}}return{beginQuery:bi,endQuery:Fi,pushScopeStats:on,update:Mi,getNumPendingQueries:function(){return xi.length},clear:function(){Ta.push.apply(Ta,xi);for(var tn=0;tn<Ta.length;tn++)ra.ext_disjoint_timer_query.deleteQueryEXT(Ta[tn]);xi.length=0,Ta.length=0},restore:function(){xi.length=0,Ta.length=0}}},Gs=16384,sl=256,Vi=1024,ao=34962,ns="webglcontextlost",hs="webglcontextrestored",hl=1,Dl=2,hu=3;function Ll(Qt,ra){for(var Ta=0;Ta<Qt.length;++Ta)if(Qt[Ta]===ra)return Ta;return-1}function dc(Qt){var ra=m(Qt);if(!ra)return null;var Ta=ra.gl,si=Ta.getContextAttributes(),wi=Ta.isContextLost(),xi=b(Ta,ra);if(!xi)return null;var bi=p(),Fi=Vn(),cn=ra.cachedCode||{},fn=xi.extensions,Gi=Ks(Ta,fn),Io=v(),nn=Ta.drawingBufferWidth,on=Ta.drawingBufferHeight,Oi={tick:0,time:0,viewportWidth:nn,viewportHeight:on,framebufferWidth:nn,framebufferHeight:on,drawingBufferWidth:nn,drawingBufferHeight:on,pixelRatio:ra.pixelRatio},ui={},Mi={elements:null,primitive:4,count:-1,offset:0,instances:-1},tn=Cr(Ta,fn),pn=pa(Ta,Fi,ra,bn),qi=ir(Ta,fn,pn,Fi),Dn=gu(Ta,fn,tn,Fi,pn,qi,Mi);function bn(te){return Dn.destroyBuffer(te)}var _o=ju(Ta,bi,Fi,ra),Zi=Jc(Ta,fn,tn,function(){Rn.procs.poll()},Oi,Fi,ra),Ui=xc(Ta,fn,tn,Fi,ra),Zn=$c(Ta,fn,tn,Zi,Ui,Fi),Rn=Un(Ta,bi,fn,tn,pn,qi,Zi,Zn,ui,Dn,_o,Mi,Oi,Gi,cn,ra),xn=Vl(Ta,Zn,Rn.procs.poll,Oi,si,fn,tn),dn=Rn.next,jn=Ta.canvas,Ro=[],rs=[],wn=[],oo=[ra.onDestroy],Xo=null;function os(){if(Ro.length===0){Gi&&Gi.update(),Xo=null;return}Xo=h.next(os),Vc();for(var te=Ro.length-1;te>=0;--te){var xe=Ro[te];xe&&xe(Oi,null,0)}Ta.flush(),Gi&&Gi.update()}function As(){!Xo&&Ro.length>0&&(Xo=h.next(os))}function $l(){Xo&&(h.cancel(os),Xo=null)}function Uc(te){te.preventDefault(),wi=!0,$l(),rs.forEach(function(xe){xe()})}function Ws(te){Ta.getError(),wi=!1,xi.restore(),_o.restore(),pn.restore(),Zi.restore(),Ui.restore(),Zn.restore(),Dn.restore(),Gi&&Gi.restore(),Rn.procs.refresh(),As(),wn.forEach(function(xe){xe()})}jn&&(jn.addEventListener(ns,Uc,!1),jn.addEventListener(hs,Ws,!1));function jc(){Ro.length=0,$l(),jn&&(jn.removeEventListener(ns,Uc),jn.removeEventListener(hs,Ws)),_o.clear(),Zn.clear(),Ui.clear(),Dn.clear(),Zi.clear(),qi.clear(),pn.clear(),Gi&&Gi.clear(),oo.forEach(function(te){te()})}function Ol(te){function xe(Hr){var aa=g({},Hr);delete aa.uniforms,delete aa.attributes,delete aa.context,delete aa.vao,"stencil"in aa&&aa.stencil.op&&(aa.stencil.opBack=aa.stencil.opFront=aa.stencil.op,delete aa.stencil.op);function Qr(Gr){if(Gr in aa){var ia=aa[Gr];delete aa[Gr],Object.keys(ia).forEach(function(Ur){aa[Gr+"."+Ur]=ia[Ur]})}}return Qr("blend"),Qr("depth"),Qr("cull"),Qr("stencil"),Qr("polygonOffset"),Qr("scissor"),Qr("sample"),"vao"in Hr&&(aa.vao=Hr.vao),aa}function We(Hr,aa){var Qr={},Gr={};return Object.keys(Hr).forEach(function(ia){var Ur=Hr[ia];if(c.isDynamic(Ur)){Gr[ia]=c.unbox(Ur,ia);return}else if(aa&&Array.isArray(Ur)){for(var wa=0;wa<Ur.length;++wa)if(c.isDynamic(Ur[wa])){Gr[ia]=c.unbox(Ur,ia);return}}Qr[ia]=Ur}),{dynamic:Gr,static:Qr}}var He=We(te.context||{},!0),st=We(te.uniforms||{},!0),Et=We(te.attributes||{},!1),Ht=We(xe(te),!1),yr={gpuTime:0,cpuTime:0,count:0},Ir=Rn.compile(Ht,Et,st,He,yr),wr=Ir.draw,qt=Ir.batch,tr=Ir.scope,dr=[];function Pr(Hr){for(;dr.length<Hr;)dr.push(null);return dr}function Vr(Hr,aa){var Qr;if(typeof Hr=="function")return tr.call(this,null,Hr,0);if(typeof aa=="function")if(typeof Hr=="number")for(Qr=0;Qr<Hr;++Qr)tr.call(this,null,aa,Qr);else if(Array.isArray(Hr))for(Qr=0;Qr<Hr.length;++Qr)tr.call(this,Hr[Qr],aa,Qr);else return tr.call(this,Hr,aa,0);else if(typeof Hr=="number"){if(Hr>0)return qt.call(this,Pr(Hr|0),Hr|0)}else if(Array.isArray(Hr)){if(Hr.length)return qt.call(this,Hr,Hr.length)}else return wr.call(this,Hr)}return g(Vr,{stats:yr,destroy:function(){Ir.destroy()}})}var vc=Zn.setFBO=Ol({framebuffer:c.define.call(null,hl,"framebuffer")});function mc(te,xe){var We=0;Rn.procs.poll();var He=xe.color;He&&(Ta.clearColor(+He[0]||0,+He[1]||0,+He[2]||0,+He[3]||0),We|=Gs),"depth"in xe&&(Ta.clearDepth(+xe.depth),We|=sl),"stencil"in xe&&(Ta.clearStencil(xe.stencil|0),We|=Vi),Ta.clear(We)}function rf(te){if("framebuffer"in te)if(te.framebuffer&&te.framebuffer_reglType==="framebufferCube")for(var xe=0;xe<6;++xe)vc(g({framebuffer:te.framebuffer.faces[xe]},te),mc);else vc(te,mc);else mc(null,te)}function Yl(te){Ro.push(te);function xe(){var We=Ll(Ro,te);function He(){var st=Ll(Ro,He);Ro[st]=Ro[Ro.length-1],Ro.length-=1,Ro.length<=0&&$l()}Ro[We]=He}return As(),{cancel:xe}}function Mc(){var te=dn.viewport,xe=dn.scissor_box;te[0]=te[1]=xe[0]=xe[1]=0,Oi.viewportWidth=Oi.framebufferWidth=Oi.drawingBufferWidth=te[2]=xe[2]=Ta.drawingBufferWidth,Oi.viewportHeight=Oi.framebufferHeight=Oi.drawingBufferHeight=te[3]=xe[3]=Ta.drawingBufferHeight}function Vc(){Oi.tick+=1,Oi.time=af(),Mc(),Rn.procs.poll()}function Ds(){Zi.refresh(),Mc(),Rn.procs.refresh(),Gi&&Gi.update()}function af(){return(v()-Io)/1e3}Ds();function Cs(te,xe){var We;switch(te){case"frame":return Yl(xe);case"lost":We=rs;break;case"restore":We=wn;break;case"destroy":We=oo;break;default:}return We.push(xe),{cancel:function(){for(var He=0;He<We.length;++He)if(We[He]===xe){We[He]=We[We.length-1],We.pop();return}}}}function ve(){return cn}function K(te){Object.entries(te).forEach(function(xe){cn[xe[0]]=xe[1]})}var ye=g(Ol,{clear:rf,prop:c.define.bind(null,hl),context:c.define.bind(null,Dl),this:c.define.bind(null,hu),draw:Ol({}),buffer:function(te){return pn.create(te,ao,!1,!1)},elements:function(te){return qi.create(te,!1)},texture:Zi.create2D,cube:Zi.createCube,renderbuffer:Ui.create,framebuffer:Zn.create,framebufferCube:Zn.createCube,vao:Dn.createVAO,attributes:si,frame:Yl,on:Cs,limits:tn,hasExtension:function(te){return tn.extensions.indexOf(te.toLowerCase())>=0},read:xn,destroy:jc,_gl:Ta,_refresh:Ds,poll:function(){Vc(),Gi&&Gi.update()},now:af,stats:Fi,getCachedCode:ve,preloadCachedCode:K});return ra.onDone(null,ye),ye}return dc})}}),rV=Ye({"node_modules/gl-util/context.js"(X,H){"use strict";var g=Ev();H.exports=function(o){if(o?typeof o=="string"&&(o={container:o}):o={},A(o)?o={container:o}:M(o)?o={container:o}:e(o)?o={gl:o}:o=g(o,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),o.pixelRatio||(o.pixelRatio=window.pixelRatio||1),o.gl)return o.gl;if(o.canvas&&(o.container=o.canvas.parentNode),o.container){if(typeof o.container=="string"){var a=document.querySelector(o.container);if(!a)throw Error("Element "+o.container+" is not found");o.container=a}A(o.container)?(o.canvas=o.container,o.container=o.canvas.parentNode):o.canvas||(o.canvas=t(),o.container.appendChild(o.canvas),x(o))}else if(!o.canvas)if(typeof document<"u")o.container=document.body||document.documentElement,o.canvas=t(),o.container.appendChild(o.canvas),x(o);else throw Error("Not DOM environment. Use headless-gl.");return o.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(i){try{o.gl=o.canvas.getContext(i,o.attrs)}catch{}return o.gl}),o.gl};function x(r){if(r.container)if(r.container==document.body)document.body.style.width||(r.canvas.width=r.width||r.pixelRatio*window.innerWidth),document.body.style.height||(r.canvas.height=r.height||r.pixelRatio*window.innerHeight);else{var o=r.container.getBoundingClientRect();r.canvas.width=r.width||o.right-o.left,r.canvas.height=r.height||o.bottom-o.top}}function A(r){return typeof r.getContext=="function"&&"width"in r&&"height"in r}function M(r){return typeof r.nodeName=="string"&&typeof r.appendChild=="function"&&typeof r.getBoundingClientRect=="function"}function e(r){return typeof r.drawArrays=="function"||typeof r.drawElements=="function"}function t(){var r=document.createElement("canvas");return r.style.position="absolute",r.style.top=0,r.style.left=0,r}}}),aV=Ye({"node_modules/font-atlas/index.js"(X,H){"use strict";var g=ik(),x=[32,126];H.exports=A;function A(M){M=M||{};var e=M.shape?M.shape:M.canvas?[M.canvas.width,M.canvas.height]:[512,512],t=M.canvas||document.createElement("canvas"),r=M.font,o=typeof M.step=="number"?[M.step,M.step]:M.step||[32,32],a=M.chars||x;if(r&&typeof r!="string"&&(r=g(r)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var i=[],n=a[0],s=0;n<=a[1];n++)i[s++]=String.fromCharCode(n);a=i}e=e.slice(),t.width=e[0],t.height=e[1];var c=t.getContext("2d");c.fillStyle="#000",c.fillRect(0,0,t.width,t.height),c.font=r,c.textAlign="center",c.textBaseline="middle",c.fillStyle="#fff";for(var h=o[0]/2,v=o[1]/2,n=0;n<a.length;n++)c.fillText(a[n],h,v),(h+=o[0])>e[0]-o[0]/2&&(h=o[0]/2,v+=o[1]);return t}}}),ok=Ye({"node_modules/bit-twiddle/twiddle.js"(X){"use strict";"use restrict";var H=32;X.INT_BITS=H,X.INT_MAX=2147483647,X.INT_MIN=-1<<H-1,X.sign=function(A){return(A>0)-(A<0)},X.abs=function(A){var M=A>>H-1;return(A^M)-M},X.min=function(A,M){return M^(A^M)&-(A<M)},X.max=function(A,M){return A^(A^M)&-(A<M)},X.isPow2=function(A){return!(A&A-1)&&!!A},X.log2=function(A){var M,e;return M=(A>65535)<<4,A>>>=M,e=(A>255)<<3,A>>>=e,M|=e,e=(A>15)<<2,A>>>=e,M|=e,e=(A>3)<<1,A>>>=e,M|=e,M|A>>1},X.log10=function(A){return A>=1e9?9:A>=1e8?8:A>=1e7?7:A>=1e6?6:A>=1e5?5:A>=1e4?4:A>=1e3?3:A>=100?2:A>=10?1:0},X.popCount=function(A){return A=A-(A>>>1&1431655765),A=(A&858993459)+(A>>>2&858993459),(A+(A>>>4)&252645135)*16843009>>>24};function g(A){var M=32;return A&=-A,A&&M--,A&65535&&(M-=16),A&16711935&&(M-=8),A&252645135&&(M-=4),A&858993459&&(M-=2),A&1431655765&&(M-=1),M}X.countTrailingZeros=g,X.nextPow2=function(A){return A+=A===0,--A,A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A+1},X.prevPow2=function(A){return A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A-(A>>>1)},X.parity=function(A){return A^=A>>>16,A^=A>>>8,A^=A>>>4,A&=15,27030>>>A&1};var x=new Array(256);(function(A){for(var M=0;M<256;++M){var e=M,t=M,r=7;for(e>>>=1;e;e>>>=1)t<<=1,t|=e&1,--r;A[M]=t<<r&255}})(x),X.reverse=function(A){return x[A&255]<<24|x[A>>>8&255]<<16|x[A>>>16&255]<<8|x[A>>>24&255]},X.interleave2=function(A,M){return A&=65535,A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,M&=65535,M=(M|M<<8)&16711935,M=(M|M<<4)&252645135,M=(M|M<<2)&858993459,M=(M|M<<1)&1431655765,A|M<<1},X.deinterleave2=function(A,M){return A=A>>>M&1431655765,A=(A|A>>>1)&858993459,A=(A|A>>>2)&252645135,A=(A|A>>>4)&16711935,A=(A|A>>>16)&65535,A<<16>>16},X.interleave3=function(A,M,e){return A&=1023,A=(A|A<<16)&4278190335,A=(A|A<<8)&251719695,A=(A|A<<4)&3272356035,A=(A|A<<2)&1227133513,M&=1023,M=(M|M<<16)&4278190335,M=(M|M<<8)&251719695,M=(M|M<<4)&3272356035,M=(M|M<<2)&1227133513,A|=M<<1,e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,A|e<<2},X.deinterleave3=function(A,M){return A=A>>>M&1227133513,A=(A|A>>>2)&3272356035,A=(A|A>>>4)&251719695,A=(A|A>>>8)&4278190335,A=(A|A>>>16)&1023,A<<22>>22},X.nextCombination=function(A){var M=A|A-1;return M+1|(~M&-~M)-1>>>g(A)+1}}}),iV=Ye({"node_modules/dup/dup.js"(X,H){"use strict";function g(M,e,t){var r=M[t]|0;if(r<=0)return[];var o=new Array(r),a;if(t===M.length-1)for(a=0;a<r;++a)o[a]=e;else for(a=0;a<r;++a)o[a]=g(M,e,t+1);return o}function x(M,e){var t,r;for(t=new Array(M),r=0;r<M;++r)t[r]=e;return t}function A(M,e){switch(typeof e>"u"&&(e=0),typeof M){case"number":if(M>0)return x(M|0,e);break;case"object":if(typeof M.length=="number")return g(M,e,0);break}return[]}H.exports=A}}),nV=Ye({"node_modules/typedarray-pool/pool.js"(X){"use strict";var H=ok(),g=iV(),x=t0().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:g([32,0]),UINT16:g([32,0]),UINT32:g([32,0]),BIGUINT64:g([32,0]),INT8:g([32,0]),INT16:g([32,0]),INT32:g([32,0]),BIGINT64:g([32,0]),FLOAT:g([32,0]),DOUBLE:g([32,0]),DATA:g([32,0]),UINT8C:g([32,0]),BUFFER:g([32,0])});var A=typeof Uint8ClampedArray<"u",M=typeof BigUint64Array<"u",e=typeof BigInt64Array<"u",t=window.__TYPEDARRAY_POOL;t.UINT8C||(t.UINT8C=g([32,0])),t.BIGUINT64||(t.BIGUINT64=g([32,0])),t.BIGINT64||(t.BIGINT64=g([32,0])),t.BUFFER||(t.BUFFER=g([32,0]));var r=t.DATA,o=t.BUFFER;X.free=function(u){if(x.isBuffer(u))o[H.log2(u.length)].push(u);else{if(Object.prototype.toString.call(u)!=="[object ArrayBuffer]"&&(u=u.buffer),!u)return;var y=u.length||u.byteLength,f=H.log2(y)|0;r[f].push(u)}};function a(d){if(d){var u=d.length||d.byteLength,y=H.log2(u);r[y].push(d)}}function i(d){a(d.buffer)}X.freeUint8=X.freeUint16=X.freeUint32=X.freeBigUint64=X.freeInt8=X.freeInt16=X.freeInt32=X.freeBigInt64=X.freeFloat32=X.freeFloat=X.freeFloat64=X.freeDouble=X.freeUint8Clamped=X.freeDataView=i,X.freeArrayBuffer=a,X.freeBuffer=function(u){o[H.log2(u.length)].push(u)},X.malloc=function(u,y){if(y===void 0||y==="arraybuffer")return n(u);switch(y){case"uint8":return s(u);case"uint16":return c(u);case"uint32":return h(u);case"int8":return v(u);case"int16":return p(u);case"int32":return T(u);case"float":case"float32":return l(u);case"double":case"float64":return _(u);case"uint8_clamped":return w(u);case"bigint64":return E(u);case"biguint64":return S(u);case"buffer":return b(u);case"data":case"dataview":return m(u);default:return null}return null};function n(u){var u=H.nextPow2(u),y=H.log2(u),f=r[y];return f.length>0?f.pop():new ArrayBuffer(u)}X.mallocArrayBuffer=n;function s(d){return new Uint8Array(n(d),0,d)}X.mallocUint8=s;function c(d){return new Uint16Array(n(2*d),0,d)}X.mallocUint16=c;function h(d){return new Uint32Array(n(4*d),0,d)}X.mallocUint32=h;function v(d){return new Int8Array(n(d),0,d)}X.mallocInt8=v;function p(d){return new Int16Array(n(2*d),0,d)}X.mallocInt16=p;function T(d){return new Int32Array(n(4*d),0,d)}X.mallocInt32=T;function l(d){return new Float32Array(n(4*d),0,d)}X.mallocFloat32=X.mallocFloat=l;function _(d){return new Float64Array(n(8*d),0,d)}X.mallocFloat64=X.mallocDouble=_;function w(d){return A?new Uint8ClampedArray(n(d),0,d):s(d)}X.mallocUint8Clamped=w;function S(d){return M?new BigUint64Array(n(8*d),0,d):null}X.mallocBigUint64=S;function E(d){return e?new BigInt64Array(n(8*d),0,d):null}X.mallocBigInt64=E;function m(d){return new DataView(n(d),0,d)}X.mallocDataView=m;function b(d){d=H.nextPow2(d);var u=H.log2(d),y=o[u];return y.length>0?y.pop():new x(d)}X.mallocBuffer=b,X.clearCache=function(){for(var u=0;u<32;++u)t.UINT8[u].length=0,t.UINT16[u].length=0,t.UINT32[u].length=0,t.INT8[u].length=0,t.INT16[u].length=0,t.INT32[u].length=0,t.FLOAT[u].length=0,t.DOUBLE[u].length=0,t.BIGUINT64[u].length=0,t.BIGINT64[u].length=0,t.UINT8C[u].length=0,r[u].length=0,o[u].length=0}}}),oV=Ye({"node_modules/is-plain-obj/index.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(x){var A;return g.call(x)==="[object Object]"&&(A=Object.getPrototypeOf(x),A===null||A===Object.getPrototypeOf({}))}}}),sk=Ye({"node_modules/parse-unit/index.js"(X,H){H.exports=function(x,A){A||(A=[0,""]),x=String(x);var M=parseFloat(x,10);return A[0]=M,A[1]=x.match(/[\d.\-\+]*\s*(.*)/)[1]||"",A}}}),sV=Ye({"node_modules/to-px/topx.js"(X,H){"use strict";var g=sk();H.exports=e;var x=96;function A(t,r){var o=g(getComputedStyle(t).getPropertyValue(r));return o[0]*e(o[1],t)}function M(t,r){var o=document.createElement("div");o.style["font-size"]="128"+t,r.appendChild(o);var a=A(o,"font-size")/128;return r.removeChild(o),a}function e(t,r){switch(r=r||document.body,t=(t||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),t){case"%":return r.clientHeight/100;case"ch":case"ex":return M(t,r);case"em":return A(r,"font-size");case"rem":return A(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return x;case"cm":return x/2.54;case"mm":return x/25.4;case"pt":return x/72;case"pc":return x/6}return 1}}}),lV=Ye({"node_modules/detect-kerning/index.js"(X,H){"use strict";H.exports=M;var g=M.canvas=document.createElement("canvas"),x=g.getContext("2d"),A=e([32,126]);M.createPairs=e,M.ascii=A;function M(t,r){Array.isArray(t)&&(t=t.join(", "));var o={},a,i=16,n=.05;r&&(r.length===2&&typeof r[0]=="number"?a=e(r):Array.isArray(r)?a=r:(r.o?a=e(r.o):r.pairs&&(a=r.pairs),r.fontSize&&(i=r.fontSize),r.threshold!=null&&(n=r.threshold))),a||(a=A),x.font=i+"px "+t;for(var s=0;s<a.length;s++){var c=a[s],h=x.measureText(c[0]).width+x.measureText(c[1]).width,v=x.measureText(c).width;if(Math.abs(h-v)>i*n){var p=(v-h)/i;o[c]=p*1e3}}return o}function e(t){for(var r=[],o=t[0];o<=t[1];o++)for(var a=String.fromCharCode(o),i=t[0];i<t[1];i++){var n=String.fromCharCode(i),s=a+n;r.push(s)}return r}}}),uV=Ye({"node_modules/font-measure/index.js"(X,H){"use strict";H.exports=g,g.canvas=document.createElement("canvas"),g.cache={};function g(n,t){t||(t={}),(typeof n=="string"||Array.isArray(n))&&(t.family=n);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var o=t.size||t.fontSize||t.em||48,a=t.weight||t.fontWeight||"",i=t.style||t.fontStyle||"",n=[i,a,o].join(" ")+"px "+r,s=t.origin||"top";if(g.cache[r]&&o<=g.cache[r].em)return x(g.cache[r],s);var c=t.canvas||g.canvas,h=c.getContext("2d"),v={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},p=Math.ceil(o*1.5);c.height=p,c.width=p*.5,h.font=n;var T="H",l={top:0};h.clearRect(0,0,p,p),h.textBaseline="top",h.fillStyle="black",h.fillText(T,0,0);var _=A(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline="bottom",h.fillText(T,0,p);var w=A(h.getImageData(0,0,p,p));l.lineHeight=l.bottom=p-w+_,h.clearRect(0,0,p,p),h.textBaseline="alphabetic",h.fillText(T,0,p);var S=A(h.getImageData(0,0,p,p)),E=p-S-1+_;l.baseline=l.alphabetic=E,h.clearRect(0,0,p,p),h.textBaseline="middle",h.fillText(T,0,p*.5);var m=A(h.getImageData(0,0,p,p));l.median=l.middle=p-m-1+_-p*.5,h.clearRect(0,0,p,p),h.textBaseline="hanging",h.fillText(T,0,p*.5);var b=A(h.getImageData(0,0,p,p));l.hanging=p-b-1+_-p*.5,h.clearRect(0,0,p,p),h.textBaseline="ideographic",h.fillText(T,0,p);var d=A(h.getImageData(0,0,p,p));if(l.ideographic=p-d-1+_,v.upper&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.upper,0,0),l.upper=A(h.getImageData(0,0,p,p)),l.capHeight=l.baseline-l.upper),v.lower&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.lower,0,0),l.lower=A(h.getImageData(0,0,p,p)),l.xHeight=l.baseline-l.lower),v.tittle&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.tittle,0,0),l.tittle=A(h.getImageData(0,0,p,p))),v.ascent&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.ascent,0,0),l.ascent=A(h.getImageData(0,0,p,p))),v.descent&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.descent,0,0),l.descent=M(h.getImageData(0,0,p,p))),v.overshoot){h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.overshoot,0,0);var u=M(h.getImageData(0,0,p,p));l.overshoot=u-E}for(var y in l)l[y]/=o;return l.em=o,g.cache[r]=l,x(l,s)}function x(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var o in e)o!=="em"&&(r[o]=e[o]-t);return r}function A(e){for(var t=e.height,r=e.data,o=3;o<r.length;o+=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}function M(e){for(var t=e.height,r=e.data,o=r.length-1;o>0;o-=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}}}),cV=Ye({"node_modules/gl-text/dist.js"(X,H){"use strict";var g=tV(),x=Ev(),A=nk(),M=rV(),e=K5(),t=hg(),r=aV(),o=nV(),a=E1(),i=oV(),n=sk(),s=sV(),c=lV(),h=Wf(),v=uV(),p=v0(),T=ok(),l=T.nextPow2,_=new e,w=!1;document.body&&(S=document.body.appendChild(document.createElement("div")),S.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(S).fontStretch&&(w=!0),document.body.removeChild(S));var S,E=function(d){m(d)?(d={regl:d},this.gl=d.regl._gl):this.gl=M(d),this.shader=_.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=d.regl||A({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),_.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(i(d)?d:{})};E.prototype.createShader=function(){var d=this.regl,u=d({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:d.prop("count"),offset:d.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:d.this("sizeBuffer")},width:{offset:0,stride:8,buffer:d.this("sizeBuffer")},char:d.this("charBuffer"),position:d.this("position")},uniforms:{atlasSize:function(f,P){return[P.atlas.width,P.atlas.height]},atlasDim:function(f,P){return[P.atlas.cols,P.atlas.rows]},atlas:function(f,P){return P.atlas.texture},charStep:function(f,P){return P.atlas.step},em:function(f,P){return P.atlas.em},color:d.prop("color"),opacity:d.prop("opacity"),viewport:d.this("viewportArray"),scale:d.this("scale"),align:d.prop("align"),baseline:d.prop("baseline"),translate:d.this("translate"),positionOffset:d.prop("positionOffset")},primitive:"points",viewport:d.this("viewport"),vert:`
+ precision highp float;
+ attribute float width, charOffset, char;
+ attribute vec2 position;
+ uniform float fontSize, charStep, em, align, baseline;
+ uniform vec4 viewport;
+ uniform vec4 color;
+ uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;
+ varying vec2 charCoord, charId;
+ varying float charWidth;
+ varying vec4 fontColor;
+ void main () {
+ vec2 offset = floor(em * (vec2(align + charOffset, baseline)
+ + vec2(positionOffset.x, -positionOffset.y)))
+ / (viewport.zw * scale.xy);
+
+ vec2 position = (position + translate) * scale;
+ position += offset * scale;
+
+ charCoord = position * viewport.zw + viewport.xy;
+
+ gl_Position = vec4(position * 2. - 1., 0, 1);
+
+ gl_PointSize = charStep;
+
+ charId.x = mod(char, atlasDim.x);
+ charId.y = floor(char / atlasDim.x);
+
+ charWidth = width * em;
+
+ fontColor = color / 255.;
+ }`,frag:`
+ precision highp float;
+ uniform float fontSize, charStep, opacity;
+ uniform vec2 atlasSize;
+ uniform vec4 viewport;
+ uniform sampler2D atlas;
+ varying vec4 fontColor;
+ varying vec2 charCoord, charId;
+ varying float charWidth;
+
+ float lightness(vec4 color) {
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+ }
+
+ void main () {
+ vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;
+ float halfCharStep = floor(charStep * .5 + .5);
+
+ // invert y and shift by 1px (FF expecially needs that)
+ uv.y = charStep - uv.y;
+
+ // ignore points outside of character bounding box
+ float halfCharWidth = ceil(charWidth * .5);
+ if (floor(uv.x) > halfCharStep + halfCharWidth ||
+ floor(uv.x) < halfCharStep - halfCharWidth) return;
+
+ uv += charId * charStep;
+ uv = uv / atlasSize;
+
+ vec4 color = fontColor;
+ vec4 mask = texture2D(atlas, uv);
+
+ float maskY = lightness(mask);
+ // float colorY = lightness(color);
+ color.a *= maskY;
+ color.a *= opacity;
+
+ // color.a += .1;
+
+ // antialiasing, see yiq color space y-channel formula
+ // color.rgb += (1. - color.rgb) * (1. - mask.rgb);
+
+ gl_FragColor = color;
+ }`}),y={};return{regl:d,draw:u,atlas:y}},E.prototype.update=function(d){var u=this;if(typeof d=="string")d={text:d};else if(!d)return;d=x(d,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),d.opacity!=null&&(Array.isArray(d.opacity)?this.opacity=d.opacity.map(function(ce){return parseFloat(ce)}):this.opacity=parseFloat(d.opacity)),d.viewport!=null&&(this.viewport=a(d.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),d.kerning!=null&&(this.kerning=d.kerning),d.offset!=null&&(typeof d.offset=="number"&&(d.offset=[d.offset,0]),this.positionOffset=p(d.offset)),d.direction&&(this.direction=d.direction),d.range&&(this.range=d.range,this.scale=[1/(d.range[2]-d.range[0]),1/(d.range[3]-d.range[1])],this.translate=[-d.range[0],-d.range[1]]),d.scale&&(this.scale=d.scale),d.translate&&(this.translate=d.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!d.font&&(d.font=E.baseFontSize+"px sans-serif");var y=!1,f=!1;if(d.font&&(Array.isArray(d.font)?d.font:[d.font]).forEach(function(ce,ze){if(typeof ce=="string")try{ce=g.parse(ce)}catch{ce=g.parse(E.baseFontSize+"px "+ce)}else{var tt=ce.style,nt=ce.weight,Qe=ce.stretch,Ct=ce.variant;ce=g.parse(g.stringify(ce)),tt&&(ce.style=tt),nt&&(ce.weight=nt),Qe&&(ce.stretch=Qe),Ct&&(ce.variant=Ct)}var St=g.stringify({size:E.baseFontSize,family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style}),Ot=n(ce.size),jt=Math.round(Ot[0]*s(Ot[1]));if(jt!==u.fontSize[ze]&&(f=!0,u.fontSize[ze]=jt),(!u.font[ze]||St!=u.font[ze].baseString)&&(y=!0,u.font[ze]=E.fonts[St],!u.font[ze])){var ur=ce.family.join(", "),ar=[ce.style];ce.style!=ce.variant&&ar.push(ce.variant),ce.variant!=ce.weight&&ar.push(ce.weight),w&&ce.weight!=ce.stretch&&ar.push(ce.stretch),u.font[ze]={baseString:St,family:ur,weight:ce.weight,stretch:ce.stretch,style:ce.style,variant:ce.variant,width:{},kerning:{},metrics:v(ur,{origin:"top",fontSize:E.baseFontSize,fontStyle:ar.join(" ")})},E.fonts[St]=u.font[ze]}}),(y||f)&&this.font.forEach(function(ce,ze){var tt=g.stringify({size:u.fontSize[ze],family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style});if(u.fontAtlas[ze]=u.shader.atlas[tt],!u.fontAtlas[ze]){var nt=ce.metrics;u.shader.atlas[tt]=u.fontAtlas[ze]={fontString:tt,step:Math.ceil(u.fontSize[ze]*nt.bottom*.5)*2,em:u.fontSize[ze],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:u.regl.texture()}}d.text==null&&(d.text=u.text)}),typeof d.text=="string"&&d.position&&d.position.length>2){for(var P=Array(d.position.length*.5),L=0;L<P.length;L++)P[L]=d.text;d.text=P}var z;if(d.text!=null||y){if(this.textOffsets=[0],Array.isArray(d.text)){this.count=d.text[0].length,this.counts=[this.count];for(var F=1;F<d.text.length;F++)this.textOffsets[F]=this.textOffsets[F-1]+d.text[F-1].length,this.count+=d.text[F].length,this.counts.push(d.text[F].length);this.text=d.text.join("")}else this.text=d.text,this.count=this.text.length,this.counts=[this.count];z=[],this.font.forEach(function(ce,ze){E.atlasContext.font=ce.baseString;for(var tt=u.fontAtlas[ze],nt=0;nt<u.text.length;nt++){var Qe=u.text.charAt(nt);if(tt.ids[Qe]==null&&(tt.ids[Qe]=tt.chars.length,tt.chars.push(Qe),z.push(Qe)),ce.width[Qe]==null&&(ce.width[Qe]=E.atlasContext.measureText(Qe).width/E.baseFontSize,u.kerning)){var Ct=[];for(var St in ce.width)Ct.push(St+Qe,Qe+St);h(ce.kerning,c(ce.family,{pairs:Ct}))}}})}if(d.position)if(d.position.length>2){for(var B=!d.position[0].length,O=o.mallocFloat(this.count*2),I=0,N=0;I<this.counts.length;I++){var U=this.counts[I];if(B)for(var W=0;W<U;W++)O[N++]=d.position[I*2],O[N++]=d.position[I*2+1];else for(var Q=0;Q<U;Q++)O[N++]=d.position[I][0],O[N++]=d.position[I][1]}this.position.call?this.position({type:"float",data:O}):this.position=this.regl.buffer({type:"float",data:O}),o.freeFloat(O)}else this.position.destroy&&this.position.destroy(),this.position={constant:d.position};if(d.text||y){var ue=o.mallocUint8(this.count),se=o.mallocFloat(this.count*2);this.textWidth=[];for(var he=0,G=0;he<this.counts.length;he++){for(var $=this.counts[he],J=this.font[he]||this.font[0],Z=this.fontAtlas[he]||this.fontAtlas[0],re=0;re<$;re++){var ne=this.text.charAt(G),j=this.text.charAt(G-1);if(ue[G]=Z.ids[ne],se[G*2]=J.width[ne],re){var ee=se[G*2-2],ie=se[G*2],fe=se[G*2-1],be=fe+ee*.5+ie*.5;if(this.kerning){var Ae=J.kerning[j+ne];Ae&&(be+=Ae*.001)}se[G*2+1]=be}else se[G*2+1]=se[G*2]*.5;G++}this.textWidth.push(se.length?se[G*2-2]*.5+se[G*2-1]:0)}d.align||(d.align=this.align),this.charBuffer({data:ue,type:"uint8",usage:"stream"}),this.sizeBuffer({data:se,type:"float",usage:"stream"}),o.freeUint8(ue),o.freeFloat(se),z.length&&this.font.forEach(function(ce,ze){var tt=u.fontAtlas[ze],nt=tt.step,Qe=Math.floor(E.maxAtlasSize/nt),Ct=Math.min(Qe,tt.chars.length),St=Math.ceil(tt.chars.length/Ct),Ot=l(Ct*nt),jt=l(St*nt);tt.width=Ot,tt.height=jt,tt.rows=St,tt.cols=Ct,tt.em&&tt.texture({data:r({canvas:E.atlasCanvas,font:tt.fontString,chars:tt.chars,shape:[Ot,jt],step:[nt,nt]})})})}if(d.align&&(this.align=d.align,this.alignOffset=this.textWidth.map(function(ce,ze){var tt=Array.isArray(u.align)?u.align.length>1?u.align[ze]:u.align[0]:u.align;if(typeof tt=="number")return tt;switch(tt){case"right":case"end":return-ce;case"center":case"centre":case"middle":return-ce*.5}return 0})),this.baseline==null&&d.baseline==null&&(d.baseline=0),d.baseline!=null&&(this.baseline=d.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ce,ze){var tt=(u.font[ze]||u.font[0]).metrics,nt=0;return nt+=tt.bottom*.5,typeof ce=="number"?nt+=ce-tt.baseline:nt+=-tt[ce],nt*=-1,nt})),d.color!=null)if(d.color||(d.color="transparent"),typeof d.color=="string"||!isNaN(d.color))this.color=t(d.color,"uint8");else{var Be;if(typeof d.color[0]=="number"&&d.color.length>this.counts.length){var Ie=d.color.length;Be=o.mallocUint8(Ie);for(var Ze=(d.color.subarray||d.color.slice).bind(d.color),at=0;at<Ie;at+=4)Be.set(t(Ze(at,at+4),"uint8"),at)}else{var it=d.color.length;Be=o.mallocUint8(it*4);for(var et=0;et<it;et++)Be.set(t(d.color[et]||0,"uint8"),et*4)}this.color=Be}if(d.position||d.text||d.color||d.baseline||d.align||d.font||d.offset||d.opacity){var lt=this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(lt){var Me=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(Me);for(var ge=0;ge<this.batch.length;ge++)this.batch[ge]={count:this.counts.length>1?this.counts[ge]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[ge]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(ge*4,ge*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[ge]:this.opacity,baseline:this.baselineOffset[ge]!=null?this.baselineOffset[ge]:this.baselineOffset[0],align:this.align?this.alignOffset[ge]!=null?this.alignOffset[ge]:this.alignOffset[0]:0,atlas:this.fontAtlas[ge]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(ge*2,ge*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}},E.prototype.destroy=function(){},E.prototype.kerning=!0,E.prototype.position={constant:new Float32Array(2)},E.prototype.translate=null,E.prototype.scale=null,E.prototype.font=null,E.prototype.text="",E.prototype.positionOffset=[0,0],E.prototype.opacity=1,E.prototype.color=new Uint8Array([0,0,0,255]),E.prototype.alignOffset=[0,0],E.maxAtlasSize=1024,E.atlasCanvas=document.createElement("canvas"),E.atlasContext=E.atlasCanvas.getContext("2d",{alpha:!1}),E.baseFontSize=64,E.fonts={};function m(b){return typeof b=="function"&&b._gl&&b.prop&&b.texture&&b.buffer}H.exports=E}}),_T=Ye({"src/lib/prepare_regl.js"(X,H){"use strict";var g=g5(),x=nk();H.exports=function(M,e,t){var r=M._fullLayout,o=!0;return r._glcanvas.each(function(a){if(a.regl){a.regl.preloadCachedCode(t);return}if(!(a.pick&&!r._has("parcoords"))){try{a.regl=x({canvas:this,attributes:{antialias:!a.pick,preserveDrawingBuffer:!0},pixelRatio:M._context.plotGlPixelRatio||window.devicePixelRatio,extensions:e||[],cachedCode:t||{}})}catch{o=!1}a.regl||(o=!1),o&&this.addEventListener("webglcontextlost",function(i){M&&M.emit&&M.emit("plotly_webglcontextlost",{event:i,layer:a.key})},!1)}}),o||g({container:r._glcontainer.node()}),o}}}),lk=Ye({"src/traces/scattergl/plot.js"(c,H){"use strict";var g=N5(),x=J5(),A=Yj(),M=cV(),e=ta(),t=Jd().selectMode,r=_T(),o=uu(),a=zS(),i=F5().styleTextSelection,n={};function s(h,v,p,T){var l=h._size,_=h.width*T,w=h.height*T,S=l.l*T,E=l.b*T,m=l.r*T,b=l.t*T,d=l.w*T,u=l.h*T;return[S+v.domain[0]*d,E+p.domain[0]*u,_-m-(1-v.domain[1])*d,w-b-(1-p.domain[1])*u]}var c=H.exports=function(v,p,T){if(T.length){var l=v._fullLayout,_=p._scene,w=p.xaxis,S=p.yaxis,E,m;if(_){var b=r(v,["ANGLE_instanced_arrays","OES_element_index_uint"],n);if(!b){_.init();return}var d=_.count,u=l._glcanvas.data()[0].regl;if(a(v,p,T),_.dirty){if((_.line2d||_.error2d)&&!(_.scatter2d||_.fill2d||_.glText)&&u.clear({}),_.error2d===!0&&(_.error2d=A(u)),_.line2d===!0&&(_.line2d=x(u)),_.scatter2d===!0&&(_.scatter2d=g(u)),_.fill2d===!0&&(_.fill2d=x(u)),_.glText===!0)for(_.glText=new Array(d),E=0;E<d;E++)_.glText[E]=new M(u);if(_.glText){if(d>_.glText.length){var y=d-_.glText.length;for(E=0;E<y;E++)_.glText.push(new M(u))}else if(d<_.glText.length){var f=_.glText.length-d,P=_.glText.splice(d,f);P.forEach(function(j){j.destroy()})}for(E=0;E<d;E++)_.glText[E].update(_.textOptions[E])}if(_.line2d&&(_.line2d.update(_.lineOptions),_.lineOptions=_.lineOptions.map(function(j){if(j&&j.positions){for(var ee=j.positions,ie=0;ie<ee.length&&(isNaN(ee[ie])||isNaN(ee[ie+1]));)ie+=2;for(var fe=ee.length-2;fe>ie&&(isNaN(ee[fe])||isNaN(ee[fe+1]));)fe-=2;j.positions=ee.slice(ie,fe+2)}return j}),_.line2d.update(_.lineOptions)),_.error2d){var L=(_.errorXOptions||[]).concat(_.errorYOptions||[]);_.error2d.update(L)}_.scatter2d&&_.scatter2d.update(_.markerOptions),_.fillOrder=e.repeat(null,d),_.fill2d&&(_.fillOptions=_.fillOptions.map(function(j,ee){var ie=T[ee];if(!(!j||!ie||!ie[0]||!ie[0].trace)){var fe=ie[0],be=fe.trace,Ae=fe.t,Be=_.lineOptions[ee],Ie,Ze,at=[];be._ownfill&&at.push(ee),be._nexttrace&&at.push(ee+1),at.length&&(_.fillOrder[ee]=at);var it=[],et=Be&&Be.positions||Ae.positions,lt,Me;if(be.fill==="tozeroy"){for(lt=0;lt<et.length&&isNaN(et[lt+1]);)lt+=2;for(Me=et.length-2;Me>lt&&isNaN(et[Me+1]);)Me-=2;et[lt+1]!==0&&(it=[et[lt],0]),it=it.concat(et.slice(lt,Me+2)),et[Me+1]!==0&&(it=it.concat([et[Me],0]))}else if(be.fill==="tozerox"){for(lt=0;lt<et.length&&isNaN(et[lt]);)lt+=2;for(Me=et.length-2;Me>lt&&isNaN(et[Me]);)Me-=2;et[lt]!==0&&(it=[0,et[lt+1]]),it=it.concat(et.slice(lt,Me+2)),et[Me]!==0&&(it=it.concat([0,et[Me+1]]))}else if(be.fill==="toself"||be.fill==="tonext"){for(it=[],Ie=0,j.splitNull=!0,Ze=0;Ze<et.length;Ze+=2)(isNaN(et[Ze])||isNaN(et[Ze+1]))&&(it=it.concat(et.slice(Ie,Ze)),it.push(et[Ie],et[Ie+1]),it.push(null,null),Ie=Ze+2);it=it.concat(et.slice(Ie)),Ie&&it.push(et[Ie],et[Ie+1])}else{var ge=be._nexttrace;if(ge){var ce=_.lineOptions[ee+1];if(ce){var ze=ce.positions;if(be.fill==="tonexty"){for(it=et.slice(),ee=Math.floor(ze.length/2);ee--;){var tt=ze[ee*2],nt=ze[ee*2+1];isNaN(tt)||isNaN(nt)||it.push(tt,nt)}j.fill=ge.fillcolor}}}}if(be._prevtrace&&be._prevtrace.fill==="tonext"){var Qe=_.lineOptions[ee-1].positions,Ct=it.length/2;Ie=Ct;var St=[Ie];for(Ze=0;Ze<Qe.length;Ze+=2)(isNaN(Qe[Ze])||isNaN(Qe[Ze+1]))&&(St.push(Ze/2+Ct+1),Ie=Ze+2);it=it.concat(Qe),j.hole=St}return j.fillmode=be.fill,j.opacity=be.opacity,j.positions=it,j}}),_.fill2d.update(_.fillOptions))}var z=l.dragmode,F=t(z),B=l.clickmode.indexOf("select")>-1;for(E=0;E<d;E++){var O=T[E][0],I=O.trace,N=O.t,U=N.index,W=I._length,Q=N.x,ue=N.y;if(I.selectedpoints||F||B){if(F||(F=!0),I.selectedpoints){var se=_.selectBatch[U]=e.selIndices2selPoints(I),he={};for(m=0;m<se.length;m++)he[se[m]]=1;var G=[];for(m=0;m<W;m++)he[m]||G.push(m);_.unselectBatch[U]=G}var $=N.xpx=new Array(W),J=N.ypx=new Array(W);for(m=0;m<W;m++)$[m]=w.c2p(Q[m]),J[m]=S.c2p(ue[m])}else N.xpx=N.ypx=null}if(F){if(_.select2d||(_.select2d=g(l._glcanvas.data()[1].regl)),_.scatter2d){var Z=new Array(d);for(E=0;E<d;E++)Z[E]=_.selectBatch[E].length||_.unselectBatch[E].length?_.markerUnselectedOptions[E]:{};_.scatter2d.update(Z)}_.select2d&&(_.select2d.update(_.markerOptions),_.select2d.update(_.markerSelectedOptions)),_.glText&&T.forEach(function(j){var ee=((j||[])[0]||{}).trace||{};o.hasText(ee)&&i(j)})}else _.scatter2d&&_.scatter2d.update(_.markerOptions);var re={viewport:s(l,w,S,v._context.plotGlPixelRatio),range:[(w._rl||w.range)[0],(S._rl||S.range)[0],(w._rl||w.range)[1],(S._rl||S.range)[1]]},ne=e.repeat(re,_.count);_.fill2d&&_.fill2d.update(ne),_.line2d&&_.line2d.update(ne),_.error2d&&_.error2d.update(ne.concat(ne)),_.scatter2d&&_.scatter2d.update(ne),_.select2d&&_.select2d.update(ne),_.glText&&_.glText.forEach(function(j){j.update(re)})}}};c.reglPrecompiled=n}}),fV=Ye({"src/traces/scattergl/index.js"(X,H){"use strict";var g=ZU();g.plot=lk(),H.exports=g}}),hV=Ye({"lib/scattergl.js"(X,H){"use strict";H.exports=fV()}}),uk=Ye({"src/traces/splom/attributes.js"(X,H){"use strict";var g=Pc(),x=tu(),A=Cc().axisHoverFormat,M=xs().hovertemplateAttrs,e=yx(),t=wh().idRegex,r=cl().templatedArray,o=Oo().extendFlat,a=g.marker,i=a.line,n=o(x("marker.line",{editTypeOverride:"calc"}),{width:o({},i.width,{editType:"calc"}),editType:"calc"}),s=o(x("marker"),{symbol:a.symbol,angle:a.angle,size:o({},a.size,{editType:"markerSize"}),sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,opacity:a.opacity,colorbar:a.colorbar,line:n,editType:"calc"});s.color.editType=s.cmin.editType=s.cmax.editType="style";function c(h){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:t[h],editType:"plot"}}}H.exports={dimensions:r("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:o({},e.text,{}),hovertext:o({},e.hovertext,{}),hovertemplate:M(),xhoverformat:A("x"),yhoverformat:A("y"),marker:s,xaxes:c("x"),yaxes:c("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:e.selected.marker,editType:"calc"},unselected:{marker:e.unselected.marker,editType:"calc"},opacity:e.opacity}}}),xT=Ye({"src/traces/parcoords/merge_length.js"(X,H){"use strict";H.exports=function(g,x,A,M){M||(M=1/0);var e,t;for(e=0;e<x.length;e++)t=x[e],t.visible&&(M=Math.min(M,t[A].length));for(M===1/0&&(M=0),g._length=M,e=0;e<x.length;e++)t=x[e],t.visible&&(t._length=M);return M}}}),pV=Ye({"src/traces/splom/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=uk(),M=uu(),e=md(),t=xT(),r=pT().isOpenSymbol;H.exports=function(n,s,c,h){function v(m,b){return g.coerce(n,s,A,m,b)}var p=x(n,s,{name:"dimensions",handleItemDefaults:o}),T=v("diagonal.visible"),l=v("showupperhalf"),_=v("showlowerhalf"),w=t(s,p,"values");if(!w||!T&&!l&&!_){s.visible=!1;return}v("text"),v("hovertext"),v("hovertemplate"),v("xhoverformat"),v("yhoverformat"),e(n,s,c,h,v,{noAngleRef:!0,noStandOff:!0});var S=r(s.marker.symbol),E=M.isBubble(s);v("marker.line.width",S||E?1:0),a(n,s,h,v),g.coerceSelectionMarkerOpacity(s,v)};function o(i,n){function s(h,v){return g.coerce(i,n,A.dimensions,h,v)}s("label");var c=s("values");c&&c.length?s("visible"):n.visible=!1,s("axis.type"),s("axis.matches")}function a(i,n,s,c){var h=n.dimensions,v=h.length,p=n.showupperhalf,T=n.showlowerhalf,l=n.diagonal.visible,_,w,S=new Array(v),E=new Array(v);for(_=0;_<v;_++){var m=_?_+1:"";S[_]="x"+m,E[_]="y"+m}var b=c("xaxes",S),d=c("yaxes",E),u=n._diag=new Array(v);n._xaxes={},n._yaxes={};var y=[],f=[];function P(W,Q,ue,se){if(W){var he=W.charAt(0),G=s._splomAxes[he];if(n["_"+he+"axes"][W]=1,se.push(W),!(W in G)){var $=G[W]={};ue&&($.label=ue.label||"",ue.visible&&ue.axis&&(ue.axis.type&&($.type=ue.axis.type),ue.axis.matches&&($.matches=Q)))}}}var L=!l&&!T,z=!l&&!p;for(n._axesDim={},_=0;_<v;_++){var F=h[_],B=_===0,O=_===v-1,I=B&&L||O&&z?void 0:b[_],N=B&&z||O&&L?void 0:d[_];P(I,N,F,y),P(N,I,F,f),u[_]=[I,N],n._axesDim[I]=_,n._axesDim[N]=_}for(_=0;_<y.length;_++)for(w=0;w<f.length;w++){var U=y[_]+f[w];(_>w&&p||_<w&&T||_===w&&(l||!T||!p))&&(s._splomSubplots[U]=1)}(!T||!l&&p&&T)&&(s._splomGridDflt.xside="bottom",s._splomGridDflt.yside="left")}}}),dV=Ye({"src/traces/splom/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A._fullLayout,t=M.uid,r=e._splomScenes;r||(r=e._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},a={matrix:!1,selectBatch:[],unselectBatch:[]},i=r[M.uid];return i||(i=r[t]=g.extendFlat({},o,a),i.draw=function(){i.matrix&&i.matrix.draw&&(i.selectBatch.length||i.unselectBatch.length?i.matrix.draw(i.unselectBatch,i.selectBatch):i.matrix.draw()),i.dirty=!1},i.destroy=function(){i.matrix&&i.matrix.destroy&&i.matrix.destroy(),i.matrixOptions=null,i.selectBatch=null,i.unselectBatch=null,i=null}),i.dirty||g.extendFlat(i,o),i}}}),vV=Ye({"src/traces/splom/calc.js"(X,H){"use strict";var g=ta(),x=Xc(),A=Bd().calcMarkerSize,M=Bd().calcAxisExpansion,e=Fd(),t=m0().markerSelection,r=m0().markerStyle,o=dV(),a=ks().BADNUM,i=mg().TOO_MANY_POINTS;H.exports=function(s,c){var h=c.dimensions,v=c._length,p={},T=p.cdata=[],l=p.data=[],_=c._visibleDims=[],w,S,E,m,b;function d(L,z){for(var F=L.makeCalcdata({v:z.values,vcalendar:c.calendar},"v"),B=0;B<F.length;B++)F[B]=F[B]===a?NaN:F[B];T.push(F),l.push(L.type==="log"?g.simpleMap(F,L.c2l):F)}for(w=0;w<h.length;w++)if(E=h[w],E.visible){if(m=x.getFromId(s,c._diag[w][0]),b=x.getFromId(s,c._diag[w][1]),m&&b&&m.type!==b.type){g.log("Skipping splom dimension "+w+" with conflicting axis types");continue}m?(d(m,E),b&&b.type==="category"&&(b._categories=m._categories.slice())):d(b,E),_.push(w)}e(s,c),g.extendFlat(p,r(s,c));var u=T.length,y=u*v>i,f;for(y?f=p.sizeAvg||Math.max(p.size,3):f=A(c,v),S=0;S<_.length;S++)w=_[S],E=h[w],m=x.getFromId(s,c._diag[w][0])||{},b=x.getFromId(s,c._diag[w][1])||{},M(s,c,m,b,T[S],T[S],f);var P=o(s,c);return P.matrix||(P.matrix=!0),P.matrixOptions=p,P.selectedOptions=t(s,c,c.selected),P.unselectedOptions=t(s,c,c.unselected),[{x:!1,y:!1,t:{},trace:c}]}}}),mV=Ye({"node_modules/performance-now/lib/performance-now.js"(X,H){(function(){var g,x,A,M,e,t;typeof performance<"u"&&performance!==null&&performance.now?H.exports=function(){return performance.now()}:typeof process<"u"&&process!==null&&process.hrtime?(H.exports=function(){return(g()-e)/1e6},x=process.hrtime,g=function(){var r;return r=x(),r[0]*1e9+r[1]},M=g(),t=process.uptime()*1e9,e=M-t):Date.now?(H.exports=function(){return Date.now()-A},A=Date.now()):(H.exports=function(){return new Date().getTime()-A},A=new Date().getTime())}).call(X)}}),gV=Ye({"node_modules/raf/index.js"(X,H){var g=mV(),x=window,A=["moz","webkit"],M="AnimationFrame",e=x["request"+M],t=x["cancel"+M]||x["cancelRequest"+M];for(r=0;!e&&r<A.length;r++)e=x[A[r]+"Request"+M],t=x[A[r]+"Cancel"+M]||x[A[r]+"CancelRequest"+M];var r;(!e||!t)&&(o=0,a=0,i=[],n=1e3/60,e=function(s){if(i.length===0){var c=g(),h=Math.max(0,n-(c-o));o=h+c,setTimeout(function(){var v=i.slice(0);i.length=0;for(var p=0;p<v.length;p++)if(!v[p].cancelled)try{v[p].callback(o)}catch(T){setTimeout(function(){throw T},0)}},Math.round(h))}return i.push({handle:++a,callback:s,cancelled:!1}),a},t=function(s){for(var c=0;c<i.length;c++)i[c].handle===s&&(i[c].cancelled=!0)});var o,a,i,n;H.exports=function(s){return e.call(x,s)},H.exports.cancel=function(){t.apply(x,arguments)},H.exports.polyfill=function(s){s||(s=x),s.requestAnimationFrame=e,s.cancelAnimationFrame=t}}}),yV=Ye({"node_modules/array-range/index.js"(X,H){H.exports=function(x,A){var M=typeof x=="number",e=typeof A=="number";M&&!e?(A=x,x=0):!M&&!e&&(x=0,A=0),x=x|0,A=A|0;var t=A-x;if(t<0)throw new Error("array length must be positive");for(var r=new Array(t),o=0,a=x;o<t;o++,a++)r[o]=a;return r}}}),_V=Ye({"node_modules/regl-splom/index.js"(X,H){"use strict";var g=N5(),x=Ev(),A=d0(),M=gV(),e=yV(),t=E1(),r=v0();H.exports=o;function o(s,c){if(!(this instanceof o))return new o(s,c);this.traces=[],this.passes={},this.regl=s,this.scatter=g(s),this.canvas=this.scatter.canvas}o.prototype.render=function(...s){return s.length&&this.update(...s),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=M(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,M(()=>{this.dirty=!1})),this)},o.prototype.update=function(...s){if(!s.length)return;for(let v=0;v<s.length;v++)this.updateItem(v,s[v]);this.traces=this.traces.filter(Boolean);let c=[],h=0;for(let v=0;v<this.traces.length;v++){let p=this.traces[v],T=this.traces[v].passes;for(let l=0;l<T.length;l++)c.push(this.passes[T[l]]);p.passOffset=h,h+=p.passes.length}return this.scatter.update(...c),this},o.prototype.updateItem=function(s,c){let{regl:h}=this;if(c===null)return this.traces[s]=null,this;if(!c)return this;let v=x(c,{data:"data items columns rows values dimensions samples x",snap:"snap cluster",size:"sizes size radius",color:"colors color fill fill-color fillColor",opacity:"opacity alpha transparency opaque",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",borderColor:"borderColors borderColor bordercolor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range ranges databox dataBox",viewport:"viewport viewBox viewbox",domain:"domain domains area areas",padding:"pad padding paddings pads margin margins",transpose:"transpose transposed",diagonal:"diagonal diag showDiagonal",upper:"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf",lower:"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower"}),p=this.traces[s]||(this.traces[s]={id:s,buffer:h.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),color:"black",marker:null,size:12,borderColor:"transparent",borderSize:1,viewport:t([h._gl.drawingBufferWidth,h._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(v.color!=null&&(p.color=v.color),v.size!=null&&(p.size=v.size),v.marker!=null&&(p.marker=v.marker),v.borderColor!=null&&(p.borderColor=v.borderColor),v.borderSize!=null&&(p.borderSize=v.borderSize),v.opacity!=null&&(p.opacity=v.opacity),v.viewport&&(p.viewport=t(v.viewport)),v.diagonal!=null&&(p.diagonal=v.diagonal),v.upper!=null&&(p.upper=v.upper),v.lower!=null&&(p.lower=v.lower),v.data){p.buffer(r(v.data)),p.columns=v.data.length,p.count=v.data[0].length,p.bounds=[];for(let y=0;y<p.columns;y++)p.bounds[y]=A(v.data[y],1)}let T;v.range&&(p.range=v.range,T=p.range&&typeof p.range[0]!="number"),v.domain&&(p.domain=v.domain);let l=!1;v.padding!=null&&(Array.isArray(v.padding)&&v.padding.length===p.columns&&typeof v.padding[v.padding.length-1]=="number"?(p.padding=v.padding.map(n),l=!0):p.padding=n(v.padding));let _=p.columns,w=p.count,S=p.viewport.width,E=p.viewport.height,m=p.viewport.x,b=p.viewport.y,d=S/_,u=E/_;p.passes=[];for(let y=0;y<_;y++)for(let f=0;f<_;f++){if(!p.diagonal&&f===y||!p.upper&&y>f||!p.lower&&y<f)continue;let P=a(p.id,y,f),L=this.passes[P]||(this.passes[P]={});if(v.data&&(v.transpose?L.positions={x:{buffer:p.buffer,offset:f,count:w,stride:_},y:{buffer:p.buffer,offset:y,count:w,stride:_}}:L.positions={x:{buffer:p.buffer,offset:f*w,count:w},y:{buffer:p.buffer,offset:y*w,count:w}},L.bounds=i(p.bounds,y,f)),v.domain||v.viewport||v.data){let z=l?i(p.padding,y,f):p.padding;if(p.domain){let[F,B,O,I]=i(p.domain,y,f);L.viewport=[m+F*S+z[0],b+B*E+z[1],m+O*S-z[2],b+I*E-z[3]]}else L.viewport=[m+f*d+d*z[0],b+y*u+u*z[1],m+(f+1)*d-d*z[2],b+(y+1)*u-u*z[3]]}v.color&&(L.color=p.color),v.size&&(L.size=p.size),v.marker&&(L.marker=p.marker),v.borderSize&&(L.borderSize=p.borderSize),v.borderColor&&(L.borderColor=p.borderColor),v.opacity&&(L.opacity=p.opacity),v.range&&(L.range=T?i(p.range,y,f):p.range||L.bounds),p.passes.push(P)}return this},o.prototype.draw=function(...s){if(!s.length)this.scatter.draw();else{let c=[];for(let h=0;h<s.length;h++)if(typeof s[h]=="number"){let{passes:v,passOffset:p}=this.traces[s[h]];c.push(...e(p,p+v.length))}else if(s[h].length){let v=s[h],{passes:p,passOffset:T}=this.traces[h];p=p.map((l,_)=>{c[T+_]=v})}this.scatter.draw(...c)}return this},o.prototype.destroy=function(){return this.traces.forEach(s=>{s.buffer&&s.buffer.destroy&&s.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function a(s,c,h){let v=s.id!=null?s.id:s,p=c,T=h;return v<<16|(p&255)<<8|T&255}function i(s,c,h){let v,p,T,l,_,w,S,E,m=s[c],b=s[h];return m.length>2?(v=m[0],T=m[2],p=m[1],l=m[3]):m.length?(v=p=m[0],T=l=m[1]):(v=m.x,p=m.y,T=m.x+m.width,l=m.y+m.height),b.length>2?(_=b[0],S=b[2],w=b[1],E=b[3]):b.length?(_=w=b[0],S=E=b[1]):(_=b.x,w=b.y,S=b.x+b.width,E=b.y+b.height),[_,p,S,l]}function n(s){if(typeof s=="number")return[s,s,s,s];if(s.length===2)return[s[0],s[1],s[0],s[1]];{let c=t(s);return[c.x,c.y,c.x+c.width,c.y+c.height]}}}}),xV=Ye({"src/traces/splom/plot.js"(X,H){"use strict";var g=_V(),x=ta(),A=Xc(),M=Jd().selectMode;H.exports=function(r,o,a){if(a.length)for(var i=0;i<a.length;i++)e(r,a[i][0])};function e(t,r){var o=t._fullLayout,a=o._size,i=r.trace,n=r.t,s=o._splomScenes[i.uid],c=s.matrixOptions,h=c.cdata,v=o._glcanvas.data()[0].regl,p=o.dragmode,T,l,_,w,S;if(h.length!==0){c.lower=i.showupperhalf,c.upper=i.showlowerhalf,c.diagonal=i.diagonal.visible;var E=i._visibleDims,m=h.length,b=s.viewOpts={};for(b.ranges=new Array(m),b.domains=new Array(m),S=0;S<E.length;S++){_=E[S];var d=b.ranges[S]=new Array(4),u=b.domains[S]=new Array(4);T=A.getFromId(t,i._diag[_][0]),T&&(d[0]=T._rl[0],d[2]=T._rl[1],u[0]=T.domain[0],u[2]=T.domain[1]),l=A.getFromId(t,i._diag[_][1]),l&&(d[1]=l._rl[0],d[3]=l._rl[1],u[1]=l.domain[0],u[3]=l.domain[1])}var y=t._context.plotGlPixelRatio,f=a.l*y,P=a.b*y,L=a.w*y,z=a.h*y;b.viewport=[f,P,L+f,z+P],s.matrix===!0&&(s.matrix=g(v));var F=o.clickmode.indexOf("select")>-1,B=M(p)||!!i.selectedpoints||F,O=!0;if(B){var I=i._length;if(i.selectedpoints){s.selectBatch=i.selectedpoints;var N=i.selectedpoints,U={};for(_=0;_<N.length;_++)U[N[_]]=!0;var W=[];for(_=0;_<I;_++)U[_]||W.push(_);s.unselectBatch=W}var Q=n.xpx=new Array(m),ue=n.ypx=new Array(m);for(S=0;S<E.length;S++){if(_=E[S],T=A.getFromId(t,i._diag[_][0]),T)for(Q[S]=new Array(I),w=0;w<I;w++)Q[S][w]=T.c2p(h[S][w]);if(l=A.getFromId(t,i._diag[_][1]),l)for(ue[S]=new Array(I),w=0;w<I;w++)ue[S][w]=l.c2p(h[S][w])}if(s.selectBatch.length||s.unselectBatch.length){var se=x.extendFlat({},c,s.unselectedOptions,b),he=x.extendFlat({},c,s.selectedOptions,b);s.matrix.update(se,he),O=!1}}else n.xpx=n.ypx=null;if(O){var G=x.extendFlat({},c,b);s.matrix.update(G,null)}}}}}),ck=Ye({"src/traces/splom/helpers.js"(X){"use strict";X.getDimIndex=function(g,x){for(var A=x._id,M=A.charAt(0),e={x:0,y:1}[M],t=g._visibleDims,r=0;r<t.length;r++){var o=t[r];if(g._diag[o][e]===A)return r}return!1}}}),bV=Ye({"src/traces/splom/hover.js"(X,H){"use strict";var g=ck(),x=hT().calcHover,A=Co().getFromId,M=Oo().extendFlat;function e(r,o,a,i,n){n||(n={});var s=(i||"").charAt(0)==="x",c=(i||"").charAt(0)==="y",h=t(r,o,a);if((s||c)&&n.hoversubplots==="axis"&&h[0])for(var v=(s?r.xa:r.ya)._subplotsWith,p=n.gd,T=M({},r),l=0;l<v.length;l++){var _=v[l];if(_!==r.xa._id+r.ya._id){c?T.xa=A(p,_,"x"):T.ya=A(p,_,"y");var w=s||c,S=t(T,o,a,w);h=h.concat(S)}}return h}function t(r,o,a,i){var n=r.cd,s=n[0].trace,c=r.scene,h=c.matrixOptions.cdata,v=r.xa,p=r.ya,T=v.c2p(o),l=p.c2p(a),_=r.distance,w=g.getDimIndex(s,v),S=g.getDimIndex(s,p);if(w===!1||S===!1)return[r];for(var E=h[w],m=h[S],b,d,u=_,y=0;y<E.length;y++)if(!(i&&y!==r.index)){var f=E[y],P=m[y],L=v.c2p(f)-T,z=p.c2p(P)-l,F=Math.sqrt(L*L+z*z);(i||F<u)&&(u=d=F,b=y)}return r.index=b,r.distance=u,r.dxy=d,b===void 0?[r]:[x(r,E,m,s)]}H.exports={hoverPoints:e}}}),wV=Ye({"src/traces/splom/select.js"(X,H){"use strict";var g=ta(),x=g.pushUnique,A=uu(),M=ck();H.exports=function(t,r){var o=t.cd,a=o[0].trace,i=o[0].t,n=t.scene,s=n.matrixOptions.cdata,c=t.xaxis,h=t.yaxis,v=[];if(!n)return v;var p=!A.hasMarkers(a)&&!A.hasText(a);if(a.visible!==!0||p)return v;var T=M.getDimIndex(a,c),l=M.getDimIndex(a,h);if(T===!1||l===!1)return v;var _=i.xpx[T],w=i.ypx[l],S=s[T],E=s[l],m=(t.scene.selectBatch||[]).slice(),b=[];if(r!==!1&&!r.degenerate)for(var d=0;d<S.length;d++)r.contains([_[d],w[d]],null,d,t)?(v.push({pointNumber:d,x:S[d],y:E[d]}),x(m,d)):m.indexOf(d)!==-1?x(m,d):b.push(d);var u=n.matrixOptions;return!m.length&&!b.length?n.matrix.update(u,null):!n.selectBatch.length&&!n.unselectBatch.length&&n.matrix.update(n.unselectedOptions,g.extendFlat({},u,n.selectedOptions,n.viewOpts)),n.selectBatch=m,n.unselectBatch=b,v}}}),TV=Ye({"src/traces/splom/edit_style.js"(X,H){"use strict";var g=ta(),x=Fd(),A=m0().markerStyle;H.exports=function(e,t){var r=t.trace,o=e._fullLayout._splomScenes[r.uid];if(o){x(e,r),g.extendFlat(o.matrixOptions,A(e,r));var a=g.extendFlat({},o.matrixOptions,o.viewOpts);o.matrix.update(a,null)}}}}),AV=Ye({"src/traces/splom/base_index.js"(X,H){"use strict";var g=Hn(),x=GS();H.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:uk(),supplyDefaults:pV(),colorbar:cp(),calc:vV(),plot:xV(),hoverPoints:bV().hoverPoints,selectPoints:wV(),editStyle:TV(),meta:{}},g.register(x)}}),SV=Ye({"src/traces/splom/base_plot.js"(X,H){"use strict";var g=J5(),x=Hn(),A=_T(),M=jh().getModuleCalcData,e=Pf(),t=Xc().getFromId,r=Co().shouldShowZeroLine,o="splom",a={};function i(p){var T=p._fullLayout,l=x.getModule(o),_=M(p.calcdata,l)[0],w=A(p,["ANGLE_instanced_arrays","OES_element_index_uint"],a);w&&(T._hasOnlyLargeSploms&&c(p),l.plot(p,{},_))}function n(p){var T=p.calcdata,l=p._fullLayout;l._hasOnlyLargeSploms&&c(p);for(var _=0;_<T.length;_++){var w=T[_][0],S=w.trace,E=l._splomScenes[S.uid];S.type==="splom"&&E&&E.matrix&&s(p,S,E)}}function s(p,T,l){for(var _=l.matrixOptions.data.length,w=T._visibleDims,S=l.viewOpts.ranges=new Array(_),E=0;E<w.length;E++){var m=w[E],b=S[E]=new Array(4),d=t(p,T._diag[m][0]);d&&(b[0]=d.r2l(d.range[0]),b[2]=d.r2l(d.range[1]));var u=t(p,T._diag[m][1]);u&&(b[1]=u.r2l(u.range[0]),b[3]=u.r2l(u.range[1]))}l.selectBatch.length||l.unselectBatch.length?l.matrix.update({ranges:S},{ranges:S}):l.matrix.update({ranges:S})}function c(p){var T=p._fullLayout,l=T._glcanvas.data()[0].regl,_=T._splomGrid;_||(_=T._splomGrid=g(l)),_.update(h(p))}function h(p){var T=p._context.plotGlPixelRatio,l=p._fullLayout,_=l._size,w=[0,0,l.width*T,l.height*T],S={},E;function m(W,Q,ue,se,he,G){ue*=T,se*=T,he*=T,G*=T;var $=Q[W+"color"],J=Q[W+"width"],Z=String($+J);Z in S?S[Z].data.push(NaN,NaN,ue,se,he,G):S[Z]={data:[ue,se,he,G],join:"rect",thickness:J*T,color:$,viewport:w,range:w,overlay:!1}}for(E in l._splomSubplots){var b=l._plots[E],d=b.xaxis,u=b.yaxis,y=d._gridVals,f=u._gridVals,P=d._offset,L=d._length,z=u._length,F=_.b+u.domain[0]*_.h,B=-u._m,O=-B*u.r2l(u.range[0],u.calendar),I,N;if(d.showgrid)for(E=0;E<y.length;E++)I=P+d.l2p(y[E].x),m("grid",d,I,F,I,F+z);if(u.showgrid)for(E=0;E<f.length;E++)N=F+O+B*f[E].x,m("grid",u,P,N,P+L,N);r(p,d,u)&&(I=P+d.l2p(0),m("zeroline",d,I,F,I,F+z)),r(p,u,d)&&(N=F+O+0,m("zeroline",u,P,N,P+L,N))}var U=[];for(E in S)U.push(S[E]);return U}function v(p,T,l,_){var w={},S;if(_._splomScenes){for(S=0;S<p.length;S++){var E=p[S];E.type==="splom"&&(w[E.uid]=1)}for(S=0;S<l.length;S++){var m=l[S];if(!w[m.uid]){var b=_._splomScenes[m.uid];b&&b.destroy&&b.destroy(),_._splomScenes[m.uid]=null,delete _._splomScenes[m.uid]}}}Object.keys(_._splomScenes||{}).length===0&&delete _._splomScenes,_._splomGrid&&!T._hasOnlyLargeSploms&&_._hasOnlyLargeSploms&&(_._splomGrid.destroy(),_._splomGrid=null,delete _._splomGrid),e.clean(p,T,l,_)}H.exports={name:o,attr:e.attr,attrRegex:e.attrRegex,layoutAttributes:e.layoutAttributes,supplyLayoutDefaults:e.supplyLayoutDefaults,drawFramework:e.drawFramework,plot:i,drag:n,updateGrid:c,clean:v,updateFx:e.updateFx,toSVG:e.toSVG,reglPrecompiled:a}}}),MV=Ye({"src/traces/splom/index.js"(X,H){"use strict";var g=AV();g.basePlotModule=SV(),H.exports=g}}),EV=Ye({"lib/splom.js"(X,H){"use strict";H.exports=MV()}}),fk=Ye({"src/traces/parcoords/attributes.js"(X,H){"use strict";var g=tu(),x=Vh(),A=Au(),M=Wu().attributes,e=Oo().extendFlat,t=cl().templatedArray;H.exports={domain:M({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:A({editType:"plot"}),tickfont:A({autoShadowDflt:!0,editType:"plot"}),rangefont:A({editType:"plot"}),dimensions:t("dimension",{label:{valType:"string",editType:"plot"},tickvals:e({},x.tickvals,{editType:"plot"}),ticktext:e({},x.ticktext,{editType:"plot"}),tickformat:e({},x.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:e({editType:"calc"},g("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}}}),wx=Ye({"src/traces/parcoords/constants.js"(X,H){"use strict";H.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}}}),kv=Ye({"src/lib/gup.js"(X,H){"use strict";var g=T_();function x(A){return[A]}H.exports={keyFun:function(A){return A.key},repeat:x,descend:g,wrap:x,unwrap:function(A){return A[0]}}}}),hk=Ye({"src/traces/parcoords/axisbrush.js"(X,H){"use strict";var g=wx(),x=_n(),A=kv().keyFun,M=kv().repeat,e=ta().sorterAsc,t=ta().strTranslate,r=g.bar.snapRatio;function o(U,W){return U*(1-r)+W*r}var a=g.bar.snapClose;function i(U,W){return U*(1-a)+W*a}function n(U,W,Q,ue){if(s(Q,ue))return Q;var se=U?-1:1,he=0,G=W.length-1;if(se<0){var $=he;he=G,G=$}for(var J=W[he],Z=J,re=he;se*re<se*G;re+=se){var ne=re+se,j=W[ne];if(se*Q<se*i(J,j))return o(J,Z);if(se*Q<se*j||ne===G)return o(j,J);Z=J,J=j}}function s(U,W){for(var Q=0;Q<W.length;Q++)if(U>=W[Q][0]&&U<=W[Q][1])return!0;return!1}function c(U){U.attr("x",-g.bar.captureWidth/2).attr("width",g.bar.captureWidth)}function h(U){U.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function v(U){if(!U.brush.filterSpecified)return"0,"+U.height;for(var W=p(U.brush.filter.getConsolidated(),U.height),Q=[0],ue,se,he,G=W.length?W[0][0]:null,$=0;$<W.length;$++)ue=W[$],se=ue[1]-ue[0],Q.push(G),Q.push(se),he=$+1,he<W.length&&(G=W[he][0]-ue[1]);return Q.push(U.height),Q}function p(U,W){return U.map(function(Q){return Q.map(function(ue){return Math.max(0,ue*W)}).sort(e)})}function T(U,W){var Q=g.bar.handleHeight;if(!(W>U[1]+Q||W<U[0]-Q))return W>=.9*U[1]+.1*U[0]?"n":W<=.9*U[0]+.1*U[1]?"s":"ns"}function l(){x.select(document.body).style("cursor",null)}function _(U){U.attr("stroke-dasharray",v)}function w(U,W){var Q=x.select(U).selectAll(".highlight, .highlight-shadow"),ue=W?Q.transition().duration(g.bar.snapDuration).each("end",W):Q;_(ue)}function S(U,W){var Q=U.brush,ue=Q.filterSpecified,se=NaN,he={},G;if(ue){var $=U.height,J=Q.filter.getConsolidated(),Z=p(J,$),re=NaN,ne=NaN,j=NaN;for(G=0;G<=Z.length;G++){var ee=Z[G];if(ee&&ee[0]<=W&&W<=ee[1]){re=G;break}else if(ne=G?G-1:NaN,ee&&ee[0]>W){j=G;break}}if(se=re,isNaN(se)&&(isNaN(ne)||isNaN(j)?se=isNaN(ne)?j:ne:se=W-Z[ne][1]<Z[j][0]-W?ne:j),!isNaN(se)){var ie=Z[se],fe=T(ie,W);fe&&(he.interval=J[se],he.intervalPix=ie,he.region=fe)}}if(U.ordinal&&!he.region){var be=U.unitTickvals,Ae=U.unitToPaddedPx.invert(W);for(G=0;G<be.length;G++){var Be=[be[Math.max(G-1,0)]*.25+be[G]*.75,be[Math.min(G+1,be.length-1)]*.25+be[G]*.75];if(Ae>=Be[0]&&Ae<=Be[1]){he.clickableOrdinalRange=Be;break}}}return he}function E(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.unitToPaddedPx.invert(Q),se=W.brush,he=S(W,Q),G=he.interval,$=se.svgBrush;if($.wasDragged=!1,$.grabbingBar=he.region==="ns",$.grabbingBar){var J=G.map(W.unitToPaddedPx);$.grabPoint=Q-J[0]-g.verticalPadding,$.barLength=J[1]-J[0]}$.clickableOrdinalRange=he.clickableOrdinalRange,$.stayingIntervals=W.multiselect&&se.filterSpecified?se.filter.getConsolidated():[],G&&($.stayingIntervals=$.stayingIntervals.filter(function(Z){return Z[0]!==G[0]&&Z[1]!==G[1]})),$.startExtent=he.region?G[he.region==="s"?1:0]:ue,W.parent.inBrushDrag=!0,$.brushStartCallback()}function m(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.brush.svgBrush;ue.wasDragged=!0,ue._dragging=!0,ue.grabbingBar?ue.newExtent=[Q-ue.grabPoint,Q+ue.barLength-ue.grabPoint].map(W.unitToPaddedPx.invert):ue.newExtent=[ue.startExtent,W.unitToPaddedPx.invert(Q)].sort(e),W.brush.filterSpecified=!0,ue.extent=ue.stayingIntervals.concat([ue.newExtent]),ue.brushCallback(W),w(U.parentNode)}function b(U,W){var Q=W.brush,ue=Q.filter,se=Q.svgBrush;se._dragging||(d(U,W),m(U,W),W.brush.svgBrush.wasDragged=!1),se._dragging=!1;var he=x.event;he.sourceEvent.stopPropagation();var G=se.grabbingBar;if(se.grabbingBar=!1,se.grabLocation=void 0,W.parent.inBrushDrag=!1,l(),!se.wasDragged){se.wasDragged=void 0,se.clickableOrdinalRange?Q.filterSpecified&&W.multiselect?se.extent.push(se.clickableOrdinalRange):(se.extent=[se.clickableOrdinalRange],Q.filterSpecified=!0):G?(se.extent=se.stayingIntervals,se.extent.length===0&&z(Q)):z(Q),se.brushCallback(W),w(U.parentNode),se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[]);return}var $=function(){ue.set(ue.getConsolidated())};if(W.ordinal){var J=W.unitTickvals;J[J.length-1]<J[0]&&J.reverse(),se.newExtent=[n(0,J,se.newExtent[0],se.stayingIntervals),n(1,J,se.newExtent[1],se.stayingIntervals)];var Z=se.newExtent[1]>se.newExtent[0];se.extent=se.stayingIntervals.concat(Z?[se.newExtent]:[]),se.extent.length||z(Q),se.brushCallback(W),Z?w(U.parentNode,$):($(),w(U.parentNode))}else $();se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[])}function d(U,W){var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=S(W,Q),se="crosshair";ue.clickableOrdinalRange?se="pointer":ue.region&&(se=ue.region+"-resize"),x.select(document.body).style("cursor",se)}function u(U){U.on("mousemove",function(W){x.event.preventDefault(),W.parent.inBrushDrag||d(this,W)}).on("mouseleave",function(W){W.parent.inBrushDrag||l()}).call(x.behavior.drag().on("dragstart",function(W){E(this,W)}).on("drag",function(W){m(this,W)}).on("dragend",function(W){b(this,W)}))}function y(U,W){return U[0]-W[0]}function f(U,W,Q){var ue=Q._context.staticPlot,se=U.selectAll(".background").data(M);se.enter().append("rect").classed("background",!0).call(c).call(h).style("pointer-events",ue?"none":"auto").attr("transform",t(0,g.verticalPadding)),se.call(u).attr("height",function($){return $.height-g.verticalPadding});var he=U.selectAll(".highlight-shadow").data(M);he.enter().append("line").classed("highlight-shadow",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width+g.bar.strokeWidth).attr("stroke",W).attr("opacity",g.bar.strokeOpacity).attr("stroke-linecap","butt"),he.attr("y1",function($){return $.height}).call(_);var G=U.selectAll(".highlight").data(M);G.enter().append("line").classed("highlight",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width-g.bar.strokeWidth).attr("stroke",g.bar.fillColor).attr("opacity",g.bar.fillOpacity).attr("stroke-linecap","butt"),G.attr("y1",function($){return $.height}).call(_)}function P(U,W,Q){var ue=U.selectAll("."+g.cn.axisBrush).data(M,A);ue.enter().append("g").classed(g.cn.axisBrush,!0),f(ue,W,Q)}function L(U){return U.svgBrush.extent.map(function(W){return W.slice()})}function z(U){U.filterSpecified=!1,U.svgBrush.extent=[[-1/0,1/0]]}function F(U){return function(Q){var ue=Q.brush,se=L(ue),he=se.slice();ue.filter.set(he),U()}}function B(U){for(var W=U.slice(),Q=[],ue,se=W.shift();se;){for(ue=se.slice();(se=W.shift())&&se[0]<=ue[1];)ue[1]=Math.max(ue[1],se[1]);Q.push(ue)}return Q.length===1&&Q[0][0]>Q[0][1]&&(Q=[]),Q}function O(){var U=[],W,Q;return{set:function(ue){U=ue.map(function(se){return se.slice().sort(e)}).sort(y),U.length===1&&U[0][0]===-1/0&&U[0][1]===1/0&&(U=[[0,-1]]),W=B(U),Q=U.reduce(function(se,he){return[Math.min(se[0],he[0]),Math.max(se[1],he[1])]},[1/0,-1/0])},get:function(){return U.slice()},getConsolidated:function(){return W},getBounds:function(){return Q}}}function I(U,W,Q,ue,se,he){var G=O();return G.set(Q),{filter:G,filterSpecified:W,svgBrush:{extent:[],brushStartCallback:ue,brushCallback:F(se),brushEndCallback:he}}}function N(U,W){if(Array.isArray(U[0])?(U=U.map(function(ue){return ue.sort(e)}),W.multiselect?U=B(U.sort(y)):U=[U[0]]):U=[U.sort(e)],W.tickvals){var Q=W.tickvals.slice().sort(e);if(U=U.map(function(ue){var se=[n(0,Q,ue[0],[]),n(1,Q,ue[1],[])];if(se[1]>se[0])return se}).filter(function(ue){return ue}),!U.length)return}return U.length>1?U:U[0]}H.exports={makeBrush:I,ensureAxisBrush:P,cleanRanges:N}}}),kV=Ye({"src/traces/parcoords/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=Co(),r=fk(),o=hk(),a=wx().maxDimensionCount,i=xT();function n(c,h,v,p,T){var l=T("line.color",v);if(x(c,"line")&&g.isArrayOrTypedArray(l)){if(l.length)return T("line.colorscale"),A(c,h,p,T,{prefix:"line.",cLetter:"c"}),l.length;h.line.color=v}return 1/0}function s(c,h,v,p){function T(E,m){return g.coerce(c,h,r.dimensions,E,m)}var l=T("values"),_=T("visible");if(l&&l.length||(_=h.visible=!1),_){T("label"),T("tickvals"),T("ticktext"),T("tickformat");var w=T("range");h._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:w},t.setConvert(h._ax,p.layout),T("multiselect");var S=T("constraintrange");S&&(h.constraintrange=o.cleanRanges(S,h))}}H.exports=function(h,v,p,T){function l(m,b){return g.coerce(h,v,r,m,b)}var _=h.dimensions;Array.isArray(_)&&_.length>a&&(g.log("parcoords traces support up to "+a+" dimensions at the moment"),_.splice(a));var w=e(h,v,{name:"dimensions",layout:T,handleItemDefaults:s}),S=n(h,v,p,T,l);M(v,T,l),(!Array.isArray(w)||!w.length)&&(v.visible=!1),i(v,w,"values",S);var E=g.extendFlat({},T.font,{size:Math.round(T.font.size/1.2)});g.coerceFont(l,"labelfont",E),g.coerceFont(l,"tickfont",E,{autoShadowDflt:!0}),g.coerceFont(l,"rangefont",E),l("labelangle"),l("labelside"),l("unselected.line.color"),l("unselected.line.opacity")}}}),CV=Ye({"src/traces/parcoords/calc.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Su(),A=kv().wrap;H.exports=function(t,r){var o,a;return x.hasColorscale(r,"line")&&g(r.line.color)?(o=r.line.color,a=x.extractOpts(r.line).colorscale,x.calc(t,r,{vals:o,containerStr:"line",cLetter:"c"})):(o=M(r._length),a=[[0,r.line.color],[1,r.line.color]]),A({lineColor:o,cscale:a})};function M(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=.5;return t}}});function LV(X){var H,g,x,A=[],M=1,e;if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(X=String(X).toLowerCase(),bT.default[X])A=bT.default[X].slice(),e="rgb";else if(X==="transparent")M=0,e="rgb",A=[0,0,0];else if(X[0]==="#"){var t=X.slice(1),r=t.length,o=r<=4;M=1,o?(A=[parseInt(t[0]+t[0],16),parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16)],r===4&&(M=parseInt(t[3]+t[3],16)/255)):(A=[parseInt(t[0]+t[1],16),parseInt(t[2]+t[3],16),parseInt(t[4]+t[5],16)],r===8&&(M=parseInt(t[6]+t[7],16)/255)),A[0]||(A[0]=0),A[1]||(A[1]=0),A[2]||(A[2]=0),e="rgb"}else if(x=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(X)){var a=x[1];e=a.replace(/a$/,"");var i=e==="cmyk"?4:e==="gray"?1:3;A=x[2].trim().split(/\s*[,\/]\s*|\s+/),e==="color"&&(e=A.shift()),A=A.map(function(n,s){if(n[n.length-1]==="%")return n=parseFloat(n)/100,s===3?n:e==="rgb"?n*255:e[0]==="h"||e[0]==="l"&&!s?n*100:e==="lab"?n*125:e==="lch"?s<2?n*150:n*360:e[0]==="o"&&!s?n:e==="oklab"?n*.4:e==="oklch"?s<2?n*.4:n*360:n;if(e[s]==="h"||s===2&&e[e.length-1]==="h"){if(wT[n]!==void 0)return wT[n];if(n.endsWith("deg"))return parseFloat(n);if(n.endsWith("turn"))return parseFloat(n)*360;if(n.endsWith("grad"))return parseFloat(n)*360/400;if(n.endsWith("rad"))return parseFloat(n)*180/Math.PI}return n==="none"?0:parseFloat(n)}),M=A.length>i?A.pop():1}else/[0-9](?:\s|\/|,)/.test(X)&&(A=X.match(/([0-9]+)/g).map(function(n){return parseFloat(n)}),e=((g=(H=X.match(/([a-z])/ig))==null?void 0:H.join(""))==null?void 0:g.toLowerCase())||"rgb");return{space:e,values:A,alpha:M}}var bT,pk,wT,PV=Qn({"node_modules/color-parse/index.js"(){bT=Ul(d5(),1),pk=LV,wT={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),Tx,dk=Qn({"node_modules/color-space/rgb.js"(){Tx={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}}}),Ax,IV=Qn({"node_modules/color-space/hsl.js"(){dk(),Ax={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(X){var H=X[0]/360,g=X[1]/100,x=X[2]/100,A,M,e,t,r,o=0;if(g===0)return r=x*255,[r,r,r];for(M=x<.5?x*(1+g):x+g-x*g,A=2*x-M,t=[0,0,0];o<3;)e=H+1/3*-(o-1),e<0?e++:e>1&&e--,r=6*e<1?A+(M-A)*6*e:2*e<1?M:3*e<2?A+(M-A)*(2/3-e)*6:A,t[o++]=r*255;return t}},Tx.hsl=function(X){var H=X[0]/255,g=X[1]/255,x=X[2]/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=M-A,t,r,o;return M===A?t=0:H===M?t=(g-x)/e:g===M?t=2+(x-H)/e:x===M&&(t=4+(H-g)/e),t=Math.min(t*60,360),t<0&&(t+=360),o=(A+M)/2,M===A?r=0:o<=.5?r=e/(M+A):r=e/(2-M-A),[t,r*100,o*100]}}}),vk={};Ps(vk,{default:()=>RV});function RV(X){Array.isArray(X)&&X.raw&&(X=String.raw(...arguments)),X instanceof Number&&(X=+X);var H,g,x,A=pk(X);if(!A.space)return[];let M=A.space[0]==="h"?Ax.min:Tx.min,e=A.space[0]==="h"?Ax.max:Tx.max;return H=Array(3),H[0]=Math.min(Math.max(A.values[0],M[0]),e[0]),H[1]=Math.min(Math.max(A.values[1],M[1]),e[1]),H[2]=Math.min(Math.max(A.values[2],M[2]),e[2]),A.space[0]==="h"&&(H=Ax.rgb(H)),H.push(Math.min(Math.max(A.alpha,0),1)),H}var DV=Qn({"node_modules/color-rgba/index.js"(){PV(),dk(),IV()}}),mk=Ye({"src/traces/parcoords/helpers.js"(X){"use strict";var H=ta().isTypedArray;X.convertTypedArray=function(g){return H(g)?Array.prototype.slice.call(g):g},X.isOrdinal=function(g){return!!g.tickvals},X.isVisible=function(g){return g.visible||!("visible"in g)}}}),zV=Ye({"src/traces/parcoords/lines.js"(X,H){"use strict";var g=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(`
+`),x=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(`
+`),A=wx().maxDimensionCount,M=ta(),e=1e-6,t=2048,r=new Uint8Array(4),o=new Uint8Array(4),a={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function i(b){b.read({x:0,y:0,width:1,height:1,data:r})}function n(b,d,u,y,f){var P=b._gl;P.enable(P.SCISSOR_TEST),P.scissor(d,u,y,f),b.clear({color:[0,0,0,0],depth:1})}function s(b,d,u,y,f,P){var L=P.key;function z(F){var B=Math.min(y,f-F*y);F===0&&(window.cancelAnimationFrame(u.currentRafs[L]),delete u.currentRafs[L],n(b,P.scissorX,P.scissorY,P.scissorWidth,P.viewBoxSize[1])),!u.clearOnly&&(P.count=2*B,P.offset=2*F*y,d(P),F*y+B<f&&(u.currentRafs[L]=window.requestAnimationFrame(function(){z(F+1)})),u.drawCompleted=!1)}u.drawCompleted||(i(b),u.drawCompleted=!0),z(0)}function c(b){return Math.max(e,Math.min(1-e,b))}function h(b,d){for(var u=new Array(256),y=0;y<256;y++)u[y]=b(y/255).concat(d);return u}function v(b,d){return(b>>>8*d)%256/255}function p(b,d,u){for(var y=new Array(b*(A+4)),f=0,P=0;P<b;P++){for(var L=0;L<A;L++)y[f++]=L<d.length?d[L].paddedUnitValues[P]:.5;y[f++]=v(P,2),y[f++]=v(P,1),y[f++]=v(P,0),y[f++]=c(u[P])}return y}function T(b,d,u){for(var y=new Array(d*8),f=0,P=0;P<d;P++)for(var L=0;L<2;L++)for(var z=0;z<4;z++){var F=b*4+z,B=u[P*64+F];F===63&&L===0&&(B*=-1),y[f++]=B}return y}function l(b){var d="0"+b;return d.substr(d.length-2)}function _(b){return b<A?"p"+l(b+1)+"_"+l(b+4):"colors"}function w(b,d,u){for(var y=0;y<=A;y+=4)b[_(y)](T(y/4,d,u))}function S(b){for(var d={},u=0;u<=A;u+=4)d[_(u)]=b.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return d}function E(b,d,u,y,f,P,L,z,F,B,O,I,N,U){for(var W=[[],[]],Q=0;Q<64;Q++)W[0][Q]=Q===f?1:0,W[1][Q]=Q===P?1:0;L*=U,z*=U,F*=U,B*=U;var ue=b.lines.canvasOverdrag*U,se=b.domain,he=b.canvasWidth*U,G=b.canvasHeight*U,$=b.pad.l*U,J=b.pad.b*U,Z=b.layoutHeight*U,re=b.layoutWidth*U,ne=b.deselectedLines.color,j=b.deselectedLines.opacity,ee=M.extendFlat({key:O,resolution:[he,G],viewBoxPos:[L+ue,z],viewBoxSize:[F,B],i0:f,i1:P,dim0A:W[0].slice(0,16),dim0B:W[0].slice(16,32),dim0C:W[0].slice(32,48),dim0D:W[0].slice(48,64),dim1A:W[1].slice(0,16),dim1B:W[1].slice(16,32),dim1C:W[1].slice(32,48),dim1D:W[1].slice(48,64),drwLayer:I,contextColor:[ne[0]/255,ne[1]/255,ne[2]/255,j!=="auto"?ne[3]*j:Math.max(1/255,Math.pow(1/b.lines.color.length,1/3))],scissorX:(y===d?0:L+ue)+($-ue)+re*se.x[0],scissorWidth:(y===u?he-L+ue:F+.5)+(y===d?L+ue:0),scissorY:z+J+Z*se.y[0],scissorHeight:B,viewportX:$-ue+re*se.x[0],viewportY:J+Z*se.y[0],viewportWidth:he,viewportHeight:G},N);return ee}function m(b){var d=t-1,u=Math.max(0,Math.floor(b[0]*d),0),y=Math.min(d,Math.ceil(b[1]*d),d);return[Math.min(u,y),Math.max(u,y)]}H.exports=function(b,d){var u=d.context,y=d.pick,f=d.regl,P=f._gl,L=P.getParameter(P.ALIASED_LINE_WIDTH_RANGE),z=Math.max(L[0],Math.min(L[1],d.viewModel.plotGlPixelRatio)),F={currentRafs:{},drawCompleted:!0,clearOnly:!1},B,O,I,N,U=S(f),W,Q=f.texture(a),ue=[];he(d);var se=f({profile:!1,blend:{enable:u,func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:1,dstAlpha:1},equation:{rgb:"add",alpha:"add"},color:[0,0,0,0]},depth:{enable:!u,mask:!0,func:"less",range:[0,1]},cull:{enable:!0,face:"back"},scissor:{enable:!0,box:{x:f.prop("scissorX"),y:f.prop("scissorY"),width:f.prop("scissorWidth"),height:f.prop("scissorHeight")}},viewport:{x:f.prop("viewportX"),y:f.prop("viewportY"),width:f.prop("viewportWidth"),height:f.prop("viewportHeight")},dither:!1,vert:g,frag:x,primitive:"lines",lineWidth:z,attributes:U,uniforms:{resolution:f.prop("resolution"),viewBoxPos:f.prop("viewBoxPos"),viewBoxSize:f.prop("viewBoxSize"),dim0A:f.prop("dim0A"),dim1A:f.prop("dim1A"),dim0B:f.prop("dim0B"),dim1B:f.prop("dim1B"),dim0C:f.prop("dim0C"),dim1C:f.prop("dim1C"),dim0D:f.prop("dim0D"),dim1D:f.prop("dim1D"),loA:f.prop("loA"),hiA:f.prop("hiA"),loB:f.prop("loB"),hiB:f.prop("hiB"),loC:f.prop("loC"),hiC:f.prop("hiC"),loD:f.prop("loD"),hiD:f.prop("hiD"),palette:Q,contextColor:f.prop("contextColor"),maskTexture:f.prop("maskTexture"),drwLayer:f.prop("drwLayer"),maskHeight:f.prop("maskHeight")},offset:f.prop("offset"),count:f.prop("count")});function he(ne){B=ne.model,O=ne.viewModel,I=O.dimensions.slice(),N=I[0]?I[0].values.length:0;var j=B.lines,ee=y?j.color.map(function(fe,be){return be/j.color.length}):j.color,ie=p(N,I,ee);w(U,N,ie),!u&&!y&&(Q=f.texture(M.extendFlat({data:h(B.unitToColor,255)},a)))}function G(ne){var j,ee,ie,fe=[[],[]];for(ie=0;ie<64;ie++){var be=!ne&&ie<I.length?I[ie].brush.filter.getBounds():[-1/0,1/0];fe[0][ie]=be[0],fe[1][ie]=be[1]}var Ae=t*8,Be=new Array(Ae);for(j=0;j<Ae;j++)Be[j]=255;if(!ne)for(j=0;j<I.length;j++){var Ie=j%8,Ze=(j-Ie)/8,at=Math.pow(2,Ie),it=I[j],et=it.brush.filter.get();if(!(et.length<2)){var lt=m(et[0])[1];for(ee=1;ee<et.length;ee++){var Me=m(et[ee]);for(ie=lt+1;ie<Me[0];ie++)Be[ie*8+Ze]&=~at;lt=Math.max(lt,Me[1])}}}var ge={shape:[8,t],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:Be};return W?W(ge):W=f.texture(ge),{maskTexture:W,maskHeight:t,loA:fe[0].slice(0,16),loB:fe[0].slice(16,32),loC:fe[0].slice(32,48),loD:fe[0].slice(48,64),hiA:fe[1].slice(0,16),hiB:fe[1].slice(16,32),hiC:fe[1].slice(32,48),hiD:fe[1].slice(48,64)}}function $(ne,j,ee){var ie=ne.length,fe,be,Ae,Be=1/0,Ie=-1/0;for(fe=0;fe<ie;fe++)ne[fe].dim0.canvasX<Be&&(Be=ne[fe].dim0.canvasX,be=fe),ne[fe].dim1.canvasX>Ie&&(Ie=ne[fe].dim1.canvasX,Ae=fe);ie===0&&n(f,0,0,B.canvasWidth,B.canvasHeight);var Ze=G(u);for(fe=0;fe<ie;fe++){var at=ne[fe],it=at.dim0.crossfilterDimensionIndex,et=at.dim1.crossfilterDimensionIndex,lt=at.canvasX,Me=at.canvasY,ge=lt+at.panelSizeX,ce=at.plotGlPixelRatio;if(j||!ue[it]||ue[it][0]!==lt||ue[it][1]!==ge){ue[it]=[lt,ge];var ze=E(B,be,Ae,fe,it,et,lt,Me,at.panelSizeX,at.panelSizeY,at.dim0.crossfilterDimensionIndex,u?0:y?2:1,Ze,ce);F.clearOnly=ee;var tt=j?B.lines.blockLineCount:N;s(f,se,F,tt,N,ze)}}}function J(ne,j){return f.read({x:ne,y:j,width:1,height:1,data:o}),o}function Z(ne,j,ee,ie){var fe=new Uint8Array(4*ee*ie);return f.read({x:ne,y:j,width:ee,height:ie,data:fe}),fe}function re(){b.style["pointer-events"]="none",Q.destroy(),W&&W.destroy();for(var ne in U)U[ne].destroy()}return{render:$,readPixel:J,readPixels:Z,destroy:re,update:he}}}}),FV=Ye({"src/traces/parcoords/parcoords.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.isArrayOrTypedArray,M=x.numberFormat,e=(DV(),Hf(vk)).default,t=Co(),r=x.strRotate,o=x.strTranslate,a=jl(),i=Bo(),n=Su(),s=kv(),c=s.keyFun,h=s.repeat,v=s.unwrap,p=mk(),T=wx(),l=hk(),_=zV();function w(ue,se,he){return x.aggNums(ue,null,se,he)}function S(ue,se){return m(w(Math.min,ue,se),w(Math.max,ue,se))}function E(ue){var se=ue.range;return se?m(se[0],se[1]):S(ue.values,ue._length)}function m(ue,se){return(isNaN(ue)||!isFinite(ue))&&(ue=0),(isNaN(se)||!isFinite(se))&&(se=0),ue===se&&(ue===0?(ue-=1,se+=1):(ue*=.9,se*=1.1)),[ue,se]}function b(ue,se){return se?function(he,G){var $=se[G];return $??ue(he)}:ue}function d(ue,se,he,G,$){var J=E(he);return G?g.scale.ordinal().domain(G.map(b(M(he.tickformat),$))).range(G.map(function(Z){var re=(Z-J[0])/(J[1]-J[0]);return ue-se+re*(2*se-ue)})):g.scale.linear().domain(J).range([ue-se,se])}function u(ue,se){return g.scale.linear().range([se,ue-se])}function y(ue,se){return g.scale.linear().domain(E(ue)).range([se,1-se])}function f(ue){if(ue.tickvals){var se=E(ue);return g.scale.ordinal().domain(ue.tickvals).range(ue.tickvals.map(function(he){return(he-se[0])/(se[1]-se[0])}))}}function P(ue){var se=ue.map(function(J){return J[0]}),he=ue.map(function(J){var Z=e(J[1]);return g.rgb("rgb("+Z[0]+","+Z[1]+","+Z[2]+")")}),G=function(J){return function(Z){return Z[J]}},$="rgb".split("").map(function(J){return g.scale.linear().clamp(!0).domain(se).range(he.map(G(J)))});return function(J){return $.map(function(Z){return Z(J)})}}function L(ue){return ue.dimensions.some(function(se){return se.brush.filterSpecified})}function z(ue,se,he){var G=v(se),$=G.trace,J=p.convertTypedArray(G.lineColor),Z=$.line,re={color:e($.unselected.line.color),opacity:$.unselected.line.opacity},ne=n.extractOpts(Z),j=ne.reversescale?n.flipScale(G.cscale):G.cscale,ee=$.domain,ie=$.dimensions,fe=ue.width,be=$.labelangle,Ae=$.labelside,Be=$.labelfont,Ie=$.tickfont,Ze=$.rangefont,at=x.extendDeepNoArrays({},Z,{color:J.map(g.scale.linear().domain(E({values:J,range:[ne.min,ne.max],_length:$._length}))),blockLineCount:T.blockLineCount,canvasOverdrag:T.overdrag*T.canvasPixelRatio}),it=Math.floor(fe*(ee.x[1]-ee.x[0])),et=Math.floor(ue.height*(ee.y[1]-ee.y[0])),lt=ue.margin||{l:80,r:80,t:100,b:80},Me=it,ge=et;return{key:he,colCount:ie.filter(p.isVisible).length,dimensions:ie,tickDistance:T.tickDistance,unitToColor:P(j),lines:at,deselectedLines:re,labelAngle:be,labelSide:Ae,labelFont:Be,tickFont:Ie,rangeFont:Ze,layoutWidth:fe,layoutHeight:ue.height,domain:ee,translateX:ee.x[0]*fe,translateY:ue.height-ee.y[1]*ue.height,pad:lt,canvasWidth:Me*T.canvasPixelRatio+2*at.canvasOverdrag,canvasHeight:ge*T.canvasPixelRatio,width:Me,height:ge,canvasPixelRatio:T.canvasPixelRatio}}function F(ue,se,he){var G=he.width,$=he.height,J=he.dimensions,Z=he.canvasPixelRatio,re=function(fe){return G*fe/Math.max(1,he.colCount-1)},ne=T.verticalPadding/$,j=u($,T.verticalPadding),ee={key:he.key,xScale:re,model:he,inBrushDrag:!1},ie={};return ee.dimensions=J.filter(p.isVisible).map(function(fe,be){var Ae=y(fe,ne),Be=ie[fe.label];ie[fe.label]=(Be||0)+1;var Ie=fe.label+(Be?"__"+Be:""),Ze=fe.constraintrange,at=Ze&&Ze.length;at&&!A(Ze[0])&&(Ze=[Ze]);var it=at?Ze.map(function(Ct){return Ct.map(Ae)}):[[-1/0,1/0]],et=function(){var Ct=ee;Ct.focusLayer&&Ct.focusLayer.render(Ct.panels,!0);var St=L(Ct);!ue.contextShown()&&St?(Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!0),ue.contextShown(!0)):ue.contextShown()&&!St&&(Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!0,!0),ue.contextShown(!1))},lt=fe.values;lt.length>fe._length&&(lt=lt.slice(0,fe._length));var Me=fe.tickvals,ge;function ce(Ct,St){return{val:Ct,text:ge[St]}}function ze(Ct,St){return Ct.val-St.val}if(A(Me)&&Me.length){x.isTypedArray(Me)&&(Me=Array.from(Me)),ge=fe.ticktext,!A(ge)||!ge.length?ge=Me.map(M(fe.tickformat)):ge.length>Me.length?ge=ge.slice(0,Me.length):Me.length>ge.length&&(Me=Me.slice(0,ge.length));for(var tt=1;tt<Me.length;tt++)if(Me[tt]<Me[tt-1]){for(var nt=Me.map(ce).sort(ze),Qe=0;Qe<Me.length;Qe++)Me[Qe]=nt[Qe].val,ge[Qe]=nt[Qe].text;break}}else Me=void 0;return lt=p.convertTypedArray(lt),{key:Ie,label:fe.label,tickFormat:fe.tickformat,tickvals:Me,ticktext:ge,ordinal:p.isOrdinal(fe),multiselect:fe.multiselect,xIndex:be,crossfilterDimensionIndex:be,visibleIndex:fe._index,height:$,values:lt,paddedUnitValues:lt.map(Ae),unitTickvals:Me&&Me.map(Ae),xScale:re,x:re(be),canvasX:re(be)*Z,unitToPaddedPx:j,domainScale:d($,T.verticalPadding,fe,Me,ge),ordinalScale:f(fe),parent:ee,model:he,brush:l.makeBrush(ue,at,it,function(){ue.linePickActive(!1)},et,function(Ct){if(ee.focusLayer.render(ee.panels,!0),ee.pickLayer&&ee.pickLayer.render(ee.panels,!0),ue.linePickActive(!0),se&&se.filterChanged){var St=Ae.invert,Ot=Ct.map(function(jt){return jt.map(St).sort(x.sorterAsc)}).sort(function(jt,ur){return jt[0]-ur[0]});se.filterChanged(ee.key,fe._index,Ot)}})}}),ee}function B(ue){ue.classed(T.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function O(){var ue=!0,se=!1;return{linePickActive:function(he){return arguments.length?ue=!!he:ue},contextShown:function(he){return arguments.length?se=!!he:se}}}function I(ue,se){var he=se==="top"?1:-1,G=ue*Math.PI/180,$=Math.sin(G),J=Math.cos(G);return{dir:he,dx:$,dy:J,degrees:ue}}function N(ue,se,he){for(var G=se.panels||(se.panels=[]),$=ue.data(),J=0;J<$.length-1;J++){var Z=G[J]||(G[J]={}),re=$[J],ne=$[J+1];Z.dim0=re,Z.dim1=ne,Z.canvasX=re.canvasX,Z.panelSizeX=ne.canvasX-re.canvasX,Z.panelSizeY=se.model.canvasHeight,Z.y=0,Z.canvasY=0,Z.plotGlPixelRatio=he}}function U(ue){for(var se=0;se<ue.length;se++)for(var he=0;he<ue[se].length;he++)for(var G=ue[se][he].trace,$=G.dimensions,J=0;J<$.length;J++){var Z=$[J].values,re=$[J]._ax;re&&(re.range?re.range=m(re.range[0],re.range[1]):re.range=S(Z,G._length),re.dtick||(re.dtick=.01*(Math.abs(re.range[1]-re.range[0])||1)),re.tickformat=$[J].tickformat,t.calcTicks(re),re.cleanRange())}}function W(ue,se){return t.tickText(ue._ax,se,!1).text}function Q(ue,se){if(ue.ordinal)return"";var he=ue.domainScale.domain(),G=he[se?he.length-1:0];return W(ue.model.dimensions[ue.visibleIndex],G)}H.exports=function(se,he,G,$){var J=se._context.staticPlot,Z=se._fullLayout,re=Z._toppaper,ne=Z._glcontainer,j=se._context.plotGlPixelRatio,ee=se._fullLayout.paper_bgcolor;U(he);var ie=O(),fe=he.filter(function(Qe){return v(Qe).trace.visible}).map(z.bind(0,G)).map(F.bind(0,ie,$));ne.each(function(Qe,Ct){return x.extendFlat(Qe,fe[Ct])});var be=ne.selectAll(".gl-canvas").each(function(Qe){Qe.viewModel=fe[0],Qe.viewModel.plotGlPixelRatio=j,Qe.viewModel.paperColor=ee,Qe.model=Qe.viewModel?Qe.viewModel.model:null}),Ae=null,Be=be.filter(function(Qe){return Qe.pick});Be.style("pointer-events",J?"none":"auto").on("mousemove",function(Qe){if(ie.linePickActive()&&Qe.lineLayer&&$&&$.hover){var Ct=g.event,St=this.width,Ot=this.height,jt=g.mouse(this),ur=jt[0],ar=jt[1];if(ur<0||ar<0||ur>=St||ar>=Ot)return;var Cr=Qe.lineLayer.readPixel(ur,Ot-1-ar),vr=Cr[3]!==0,_r=vr?Cr[2]+256*(Cr[1]+256*Cr[0]):null,yt={x:ur,y:ar,clientX:Ct.clientX,clientY:Ct.clientY,dataIndex:Qe.model.key,curveNumber:_r};_r!==Ae&&(vr?$.hover(yt):$.unhover&&$.unhover(yt),Ae=_r)}}),be.style("opacity",function(Qe){return Qe.pick?0:1}),re.style("background","rgba(255, 255, 255, 0)");var Ie=re.selectAll("."+T.cn.parcoords).data(fe,c);Ie.exit().remove(),Ie.enter().append("g").classed(T.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),Ie.attr("transform",function(Qe){return o(Qe.model.translateX,Qe.model.translateY)});var Ze=Ie.selectAll("."+T.cn.parcoordsControlView).data(h,c);Ze.enter().append("g").classed(T.cn.parcoordsControlView,!0),Ze.attr("transform",function(Qe){return o(Qe.model.pad.l,Qe.model.pad.t)});var at=Ze.selectAll("."+T.cn.yAxis).data(function(Qe){return Qe.dimensions},c);at.enter().append("g").classed(T.cn.yAxis,!0),Ze.each(function(Qe){N(at,Qe,j)}),be.each(function(Qe){if(Qe.viewModel){!Qe.lineLayer||$?Qe.lineLayer=_(this,Qe):Qe.lineLayer.update(Qe),(Qe.key||Qe.key===0)&&(Qe.viewModel[Qe.key]=Qe.lineLayer);var Ct=!Qe.context||$;Qe.lineLayer.render(Qe.viewModel.panels,Ct)}}),at.attr("transform",function(Qe){return o(Qe.xScale(Qe.xIndex),0)}),at.call(g.behavior.drag().origin(function(Qe){return Qe}).on("drag",function(Qe){var Ct=Qe.parent;ie.linePickActive(!1),Qe.x=Math.max(-T.overdrag,Math.min(Qe.model.width+T.overdrag,g.event.x)),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,at.sort(function(St,Ot){return St.x-Ot.x}).each(function(St,Ot){St.xIndex=Ot,St.x=Qe===St?St.x:St.xScale(St.xIndex),St.canvasX=St.x*St.model.canvasPixelRatio}),N(at,Ct,j),at.filter(function(St){return Math.abs(Qe.xIndex-St.xIndex)!==0}).attr("transform",function(St){return o(St.xScale(St.xIndex),0)}),g.select(this).attr("transform",o(Qe.x,0)),at.each(function(St,Ot,jt){jt===Qe.parent.key&&(Ct.dimensions[Ot]=St)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer.render&&Ct.focusLayer.render(Ct.panels)}).on("dragend",function(Qe){var Ct=Qe.parent;Qe.x=Qe.xScale(Qe.xIndex),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,N(at,Ct,j),g.select(this).attr("transform",function(St){return o(St.x,0)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer&&Ct.focusLayer.render(Ct.panels),Ct.pickLayer&&Ct.pickLayer.render(Ct.panels,!0),ie.linePickActive(!0),$&&$.axesMoved&&$.axesMoved(Ct.key,Ct.dimensions.map(function(St){return St.crossfilterDimensionIndex}))})),at.exit().remove();var it=at.selectAll("."+T.cn.axisOverlays).data(h,c);it.enter().append("g").classed(T.cn.axisOverlays,!0),it.selectAll("."+T.cn.axis).remove();var et=it.selectAll("."+T.cn.axis).data(h,c);et.enter().append("g").classed(T.cn.axis,!0),et.each(function(Qe){var Ct=Qe.model.height/Qe.model.tickDistance,St=Qe.domainScale,Ot=St.domain();g.select(this).call(g.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(Ct,Qe.tickFormat).tickValues(Qe.ordinal?Ot:null).tickFormat(function(jt){return p.isOrdinal(Qe)?jt:W(Qe.model.dimensions[Qe.visibleIndex],jt)}).scale(St)),i.font(et.selectAll("text"),Qe.model.tickFont)}),et.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),et.selectAll("text").style("cursor","default");var lt=it.selectAll("."+T.cn.axisHeading).data(h,c);lt.enter().append("g").classed(T.cn.axisHeading,!0);var Me=lt.selectAll("."+T.cn.axisTitle).data(h,c);Me.enter().append("text").classed(T.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",J?"none":"auto"),Me.text(function(Qe){return Qe.label}).each(function(Qe){var Ct=g.select(this);i.font(Ct,Qe.model.labelFont),a.convertToTspans(Ct,se)}).attr("transform",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=T.axisTitleOffset;return(Ct.dir>0?"":o(0,2*St+Qe.model.height))+r(Ct.degrees)+o(-St*Ct.dx,-St*Ct.dy)}).attr("text-anchor",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=Math.abs(Ct.dx),Ot=Math.abs(Ct.dy);return 2*St>Ot?Ct.dir*Ct.dx<0?"start":"end":"middle"});var ge=it.selectAll("."+T.cn.axisExtent).data(h,c);ge.enter().append("g").classed(T.cn.axisExtent,!0);var ce=ge.selectAll("."+T.cn.axisExtentTop).data(h,c);ce.enter().append("g").classed(T.cn.axisExtentTop,!0),ce.attr("transform",o(0,-T.axisExtentOffset));var ze=ce.selectAll("."+T.cn.axisExtentTopText).data(h,c);ze.enter().append("text").classed(T.cn.axisExtentTopText,!0).call(B),ze.text(function(Qe){return Q(Qe,!0)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)});var tt=ge.selectAll("."+T.cn.axisExtentBottom).data(h,c);tt.enter().append("g").classed(T.cn.axisExtentBottom,!0),tt.attr("transform",function(Qe){return o(0,Qe.model.height+T.axisExtentOffset)});var nt=tt.selectAll("."+T.cn.axisExtentBottomText).data(h,c);nt.enter().append("text").classed(T.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(B),nt.text(function(Qe){return Q(Qe,!1)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)}),l.ensureAxisBrush(it,ee,se)}}}),gk=Ye({"src/traces/parcoords/plot.js"(r,H){"use strict";var g=FV(),x=_T(),A=mk().isVisible,M={};function e(o,a,i){var n=a.indexOf(i),s=o.indexOf(n);return s===-1&&(s+=a.length),s}function t(o,a){return function(n,s){return e(o,a,n)-e(o,a,s)}}var r=H.exports=function(a,i){var n=a._fullLayout,s=x(a,[],M);if(s){var c={},h={},v={},p={},T=n._size;i.forEach(function(E,m){var b=E[0].trace;v[m]=b.index;var d=p[m]=b.index;c[m]=a.data[d].dimensions,h[m]=a.data[d].dimensions.slice()});var l=function(E,m,b){var d=h[E][m],u=b.map(function(F){return F.slice()}),y="dimensions["+m+"].constraintrange",f=n._tracePreGUI[a._fullData[v[E]]._fullInput.uid];if(f[y]===void 0){var P=d.constraintrange;f[y]=P||null}var L=a._fullData[v[E]].dimensions[m];u.length?(u.length===1&&(u=u[0]),d.constraintrange=u,L.constraintrange=u.slice(),u=[u]):(delete d.constraintrange,delete L.constraintrange,u=null);var z={};z[y]=u,a.emit("plotly_restyle",[z,[p[E]]])},_=function(E){a.emit("plotly_hover",E)},w=function(E){a.emit("plotly_unhover",E)},S=function(E,m){var b=t(m,h[E].filter(A));c[E].sort(b),h[E].filter(function(d){return!A(d)}).sort(function(d){return h[E].indexOf(d)}).forEach(function(d){c[E].splice(c[E].indexOf(d),1),c[E].splice(h[E].indexOf(d),0,d)}),a.emit("plotly_restyle",[{dimensions:[c[E]]},[p[E]]])};g(a,i,{width:T.w,height:T.h,margin:{t:T.t,r:T.r,b:T.b,l:T.l}},{filterChanged:l,hover:_,unhover:w,axesMoved:S})}};r.reglPrecompiled=M}}),OV=Ye({"src/traces/parcoords/base_plot.js"(X){"use strict";var H=_n(),g=jh().getModuleCalcData,x=gk(),A=vd();X.name="parcoords",X.plot=function(M){var e=g(M.calcdata,"parcoords")[0];e.length&&x(M,e)},X.clean=function(M,e,t,r){var o=r._has&&r._has("parcoords"),a=e._has&&e._has("parcoords");o&&!a&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},X.toSVG=function(M){var e=M._fullLayout._glimages,t=H.select(M).selectAll(".svg-container"),r=t.filter(function(a,i){return i===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function o(){var a=this,i=a.toDataURL("image/png"),n=e.append("svg:image");n.attr({xmlns:A.svg,"xlink:href":i,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}r.each(o),window.setTimeout(function(){H.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}}}),BV=Ye({"src/traces/parcoords/base_index.js"(X,H){"use strict";H.exports={attributes:fk(),supplyDefaults:kV(),calc:CV(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:OV(),categories:["gl","regl","noOpacity","noHover"],meta:{}}}}),NV=Ye({"src/traces/parcoords/index.js"(X,H){"use strict";var g=BV();g.plot=gk(),H.exports=g}}),UV=Ye({"lib/parcoords.js"(X,H){"use strict";H.exports=NV()}}),yk=Ye({"src/traces/parcats/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Pl(),A=Au(),M=tu(),e=xs().hovertemplateAttrs,t=Wu().attributes,r=g({editType:"calc"},M("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});H.exports={domain:t({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:g({},x.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:A({editType:"calc"}),tickfont:A({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:r,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}}}),jV=Ye({"src/traces/parcats/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=yk(),r=xT(),o=xp().isTypedArraySpec;function a(n,s,c,h,v){v("line.shape"),v("line.hovertemplate");var p=v("line.color",h.colorway[0]);if(x(n,"line")&&g.isArrayOrTypedArray(p)){if(p.length)return v("line.colorscale"),A(n,s,h,v,{prefix:"line.",cLetter:"c"}),p.length;s.line.color=c}return 1/0}function i(n,s){function c(w,S){return g.coerce(n,s,t.dimensions,w,S)}var h=c("values"),v=c("visible");if(h&&h.length||(v=s.visible=!1),v){c("label"),c("displayindex",s._index);var p=n.categoryarray,T=g.isArrayOrTypedArray(p)&&p.length>0||o(p),l;T&&(l="array");var _=c("categoryorder",l);_==="array"?(c("categoryarray"),c("ticktext")):(delete n.categoryarray,delete n.ticktext),!T&&_==="array"&&(s.categoryorder="trace")}}H.exports=function(s,c,h,v){function p(w,S){return g.coerce(s,c,t,w,S)}var T=e(s,c,{name:"dimensions",handleItemDefaults:i}),l=a(s,c,h,v,p);M(c,v,p),(!Array.isArray(T)||!T.length)&&(c.visible=!1),r(c,T,"values",l),p("hoveron"),p("hovertemplate"),p("arrangement"),p("bundlecolors"),p("sortpaths"),p("counts");var _=v.font;g.coerceFont(p,"labelfont",_,{overrideDflt:{size:Math.round(_.size)}}),g.coerceFont(p,"tickfont",_,{autoShadowDflt:!0,overrideDflt:{size:Math.round(_.size/1.2)}})}}}),VV=Ye({"src/traces/parcats/calc.js"(X,H){"use strict";var g=kv().wrap,x=Up().hasColorscale,A=jp(),M=tS(),e=Bo(),t=ta(),r=jo();H.exports=function(_,w){var S=t.filterVisible(w.dimensions);if(S.length===0)return[];var E=S.map(function(G){var $;if(G.categoryorder==="trace")$=null;else if(G.categoryorder==="array")$=G.categoryarray;else{$=M(G.values);for(var J=!0,Z=0;Z<$.length;Z++)if(!r($[Z])){J=!1;break}$.sort(J?t.sorterAsc:void 0),G.categoryorder==="category descending"&&($=$.reverse())}return h(G.values,$)}),m,b,d;t.isArrayOrTypedArray(w.counts)?m=w.counts:m=[w.counts],v(S),S.forEach(function(G,$){p(G,E[$])});var u=w.line,y;u?(x(w,"line")&&A(_,w,{vals:w.line.color,containerStr:"line",cLetter:"c"}),y=e.tryColorscale(u)):y=t.identity;function f(G){var $,J;return t.isArrayOrTypedArray(u.color)?($=u.color[G%u.color.length],J=$):$=u.color,{color:y($),rawColor:J}}var P=S[0].values.length,L={},z=E.map(function(G){return G.inds});d=0;var F,B;for(F=0;F<P;F++){var O=[];for(B=0;B<z.length;B++)O.push(z[B][F]);b=m[F%m.length],d+=b;var I=f(F),N=O+"-"+I.rawColor;L[N]===void 0&&(L[N]=s(O,I.color,I.rawColor)),c(L[N],F,b)}var U=S.map(function(G,$){return a($,G._index,G._displayindex,G.label,d)});for(F=0;F<P;F++)for(b=m[F%m.length],B=0;B<U.length;B++){var W=U[B].containerInd,Q=E[B].inds[F],ue=U[B].categories;if(ue[Q]===void 0){var se=w.dimensions[W]._categoryarray[Q],he=w.dimensions[W]._ticktext[Q];ue[Q]=i(B,Q,se,he)}n(ue[Q],F,b)}return g(o(U,L,d))};function o(l,_,w){var S=l.map(function(E){return E.categories.length}).reduce(function(E,m){return Math.max(E,m)});return{dimensions:l,paths:_,trace:void 0,maxCats:S,count:w}}function a(l,_,w,S,E){return{dimensionInd:l,containerInd:_,displayInd:w,dimensionLabel:S,count:E,categories:[],dragX:null}}function i(l,_,w,S){return{dimensionInd:l,categoryInd:_,categoryValue:w,displayInd:_,categoryLabel:S,valueInds:[],count:0,dragY:null}}function n(l,_,w){l.valueInds.push(_),l.count+=w}function s(l,_,w){return{categoryInds:l,color:_,rawColor:w,valueInds:[],count:0}}function c(l,_,w){l.valueInds.push(_),l.count+=w}function h(l,_){_==null?_=[]:_=_.map(function(y){return y});var w={},S={},E=[];_.forEach(function(y,f){w[y]=0,S[y]=f});for(var m=0;m<l.length;m++){var b=l[m],d;w[b]===void 0?(w[b]=1,d=_.push(b)-1,S[b]=d):(w[b]++,d=S[b]),E.push(d)}var u=_.map(function(y){return w[y]});return{uniqueValues:_,uniqueCounts:u,inds:E}}function v(l){var _=l.map(function(S){return S.displayindex}),w;if(T(_))for(w=0;w<l.length;w++)l[w]._displayindex=l[w].displayindex;else for(w=0;w<l.length;w++)l[w]._displayindex=w}function p(l,_){l._categoryarray=_.uniqueValues,l.ticktext===null||l.ticktext===void 0?l._ticktext=[]:l._ticktext=l.ticktext.slice();for(var w=l._ticktext.length;w<_.uniqueValues.length;w++)l._ticktext.push(_.uniqueValues[w])}function T(l){for(var _=new Array(l.length),w=0;w<l.length;w++){if(l[w]<0||l[w]>=l.length||_[l[w]]!==void 0)return!1;_[l[w]]=!0}return!0}}}),qV=Ye({"src/traces/parcats/parcats.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolateNumber,A=E2(),M=Lc(),e=ta(),t=e.strTranslate,r=Bo(),o=bh(),a=jl();function i(Z,re,ne,j){var ee=re._context.staticPlot,ie=Z.map(se.bind(0,re,ne)),fe=j.selectAll("g.parcatslayer").data([null]);fe.enter().append("g").attr("class","parcatslayer").style("pointer-events",ee?"none":"all");var be=fe.selectAll("g.trace.parcats").data(ie,n),Ae=be.enter().append("g").attr("class","trace parcats");be.attr("transform",function(ce){return t(ce.x,ce.y)}),Ae.append("g").attr("class","paths");var Be=be.select("g.paths"),Ie=Be.selectAll("path.path").data(function(ce){return ce.paths},n);Ie.attr("fill",function(ce){return ce.model.color});var Ze=Ie.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(ce){return ce.model.color}).attr("fill-opacity",0);_(Ze),Ie.attr("d",function(ce){return ce.svgD}),Ze.empty()||Ie.sort(c),Ie.exit().remove(),Ie.on("mouseover",h).on("mouseout",v).on("click",l),Ae.append("g").attr("class","dimensions");var at=be.select("g.dimensions"),it=at.selectAll("g.dimension").data(function(ce){return ce.dimensions},n);it.enter().append("g").attr("class","dimension"),it.attr("transform",function(ce){return t(ce.x,0)}),it.exit().remove();var et=it.selectAll("g.category").data(function(ce){return ce.categories},n),lt=et.enter().append("g").attr("class","category");et.attr("transform",function(ce){return t(0,ce.y)}),lt.append("rect").attr("class","catrect").attr("pointer-events","none"),et.select("rect.catrect").attr("fill","none").attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}),E(lt);var Me=et.selectAll("rect.bandrect").data(function(ce){return ce.bands},n);Me.each(function(){e.raiseToTop(this)}),Me.attr("fill",function(ce){return ce.color});var ge=Me.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(ce){return ce.color}).attr("fill-opacity",0);Me.attr("fill",function(ce){return ce.color}).attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}).attr("y",function(ce){return ce.y}).attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":ce.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),b(ge),Me.exit().remove(),lt.append("text").attr("class","catlabel").attr("pointer-events","none"),et.select("text.catlabel").attr("text-anchor",function(ce){return s(ce)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(ce){return s(ce)?ce.width+5:-5}).attr("y",function(ce){return ce.height/2}).text(function(ce){return ce.model.categoryLabel}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.categorylabelfont),a.convertToTspans(g.select(this),re)}),lt.append("text").attr("class","dimlabel"),et.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(ce){return ce.width/2}).attr("y",-5).text(function(ce,ze){return ze===0?ce.parcatsViewModel.model.dimensions[ce.model.dimensionInd].dimensionLabel:null}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.labelfont)}),et.selectAll("rect.bandrect").on("mouseover",B).on("mouseout",O),et.exit().remove(),it.call(g.behavior.drag().origin(function(ce){return{x:ce.x,y:0}}).on("dragstart",I).on("drag",N).on("dragend",U)),be.each(function(ce){ce.traceSelection=g.select(this),ce.pathSelection=g.select(this).selectAll("g.paths").selectAll("path.path"),ce.dimensionSelection=g.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),be.exit().remove()}H.exports=function(Z,re,ne,j){i(ne,Z,j,re)};function n(Z){return Z.key}function s(Z){var re=Z.parcatsViewModel.dimensions.length,ne=Z.parcatsViewModel.dimensions[re-1].model.dimensionInd;return Z.model.dimensionInd===ne}function c(Z,re){return Z.model.rawColor>re.model.rawColor?1:Z.model.rawColor<re.model.rawColor?-1:0}function h(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){e.raiseToTop(this),w(g.select(this));var re=p(Z),ne=T(Z);if(Z.parcatsViewModel.graphDiv.emit("plotly_hover",{points:re,event:g.event,constraints:ne}),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var j=g.mouse(this)[0],ee=Z.parcatsViewModel.graphDiv,ie=Z.parcatsViewModel.trace,fe=ee._fullLayout,be=fe._paperdiv.node().getBoundingClientRect(),Ae=Z.parcatsViewModel.graphDiv.getBoundingClientRect(),Be,Ie,Ze;for(Ze=0;Ze<Z.leftXs.length-1;Ze++)if(Z.leftXs[Ze]+Z.dimWidths[Ze]-2<=j&&j<=Z.leftXs[Ze+1]+2){var at=Z.parcatsViewModel.dimensions[Ze],it=Z.parcatsViewModel.dimensions[Ze+1];Be=(at.x+at.width+it.x)/2,Ie=(Z.topYs[Ze]+Z.topYs[Ze+1]+Z.height)/2;break}var et=Z.parcatsViewModel.x+Be,lt=Z.parcatsViewModel.y+Ie,Me=o.mostReadable(Z.model.color,["black","white"]),ge=Z.model.count,ce=ge/Z.parcatsViewModel.model.count,ze={countLabel:ge,probabilityLabel:ce.toFixed(3)},tt=[];Z.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&tt.push(["Count:",ze.countLabel].join(" ")),Z.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&tt.push(["P:",ze.probabilityLabel].join(" "));var nt=tt.join("<br>"),Qe=g.mouse(ee)[0];M.loneHover({trace:ie,x:et-be.left+Ae.left,y:lt-be.top+Ae.top,text:nt,color:Z.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:Me,idealAlign:Qe<et?"right":"left",hovertemplate:(ie.line||{}).hovertemplate,hovertemplateLabels:ze,eventData:[{data:ie._input,fullData:ie,count:ge,probability:ce}]},{container:fe._hoverlayer.node(),outerContainer:fe._paper.node(),gd:ee})}}}function v(Z){if(!Z.parcatsViewModel.dragDimension&&(_(g.select(this)),M.loneUnhover(Z.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),Z.parcatsViewModel.pathSelection.sort(c),Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var re=p(Z),ne=T(Z);Z.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:re,event:g.event,constraints:ne})}}function p(Z){for(var re=[],ne=W(Z.parcatsViewModel),j=0;j<Z.model.valueInds.length;j++){var ee=Z.model.valueInds[j];re.push({curveNumber:ne,pointNumber:ee})}return re}function T(Z){for(var re={},ne=Z.parcatsViewModel.model.dimensions,j=0;j<ne.length;j++){var ee=ne[j],ie=ee.categories[Z.model.categoryInds[j]];re[ee.containerInd]=ie.categoryValue}return Z.model.rawColor!==void 0&&(re.color=Z.model.rawColor),re}function l(Z){if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=p(Z),ne=T(Z);Z.parcatsViewModel.graphDiv.emit("plotly_click",{points:re,event:g.event,constraints:ne})}}function _(Z){Z.attr("fill",function(re){return re.model.color}).attr("fill-opacity",.6).attr("stroke","lightgray").attr("stroke-width",.2).attr("stroke-opacity",1)}function w(Z){Z.attr("fill-opacity",.8).attr("stroke",function(re){return o.mostReadable(re.model.color,["black","white"])}).attr("stroke-width",.3)}function S(Z){Z.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}function E(Z){Z.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function m(Z){Z.attr("stroke","black").attr("stroke-width",1.5)}function b(Z){Z.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function d(Z){var re=Z.parcatsViewModel.pathSelection,ne=Z.categoryViewModel.model.dimensionInd,j=Z.categoryViewModel.model.categoryInd;return re.filter(function(ee){return ee.model.categoryInds[ne]===j&&ee.model.color===Z.color})}function u(Z){var re=g.select(Z.parentNode).selectAll("rect.bandrect");re.each(function(ne){var j=d(ne);w(j),j.each(function(){e.raiseToTop(this)})}),S(g.select(Z.parentNode))}function y(Z){var re=g.select(Z).datum(),ne=d(re);w(ne),ne.each(function(){e.raiseToTop(this)}),g.select(Z.parentNode).selectAll("rect.bandrect").filter(function(j){return j.color===re.color}).each(function(){e.raiseToTop(this),m(g.select(this))})}function f(Z,re,ne){var j=g.select(Z).datum(),ee=j.categoryViewModel.model,ie=j.parcatsViewModel.graphDiv,fe=g.select(Z.parentNode).selectAll("rect.bandrect"),be=[];fe.each(function(Be){var Ie=d(Be);Ie.each(function(Ze){Array.prototype.push.apply(be,p(Ze))})});var Ae={};Ae[ee.dimensionInd]=ee.categoryValue,ie.emit(re,{points:be,event:ne,constraints:Ae})}function P(Z,re,ne){var j=g.select(Z).datum(),ee=j.categoryViewModel.model,ie=j.parcatsViewModel.graphDiv,fe=d(j),be=[];fe.each(function(Be){Array.prototype.push.apply(be,p(Be))});var Ae={};Ae[ee.dimensionInd]=ee.categoryValue,j.rawColor!==void 0&&(Ae.color=j.rawColor),ie.emit(re,{points:be,event:ne,constraints:Ae})}function L(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=g.select(ne.parentNode).select("rect.catrect"),fe=ie.node().getBoundingClientRect(),be=ie.datum(),Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=fe.top+fe.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=fe.left,it="left"):(at=fe.left+fe.width,it="right");var et=be.model.count,lt=be.model.categoryLabel,Me=et/be.parcatsViewModel.model.count,ge={countLabel:et,categoryLabel:lt,probabilityLabel:Me.toFixed(3)},ce=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&ce.push(["Count:",ge.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&ce.push(["P("+ge.categoryLabel+"):",ge.probabilityLabel].join(" "));var ze=ce.join("<br>");return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:ze,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:ge,eventData:[{data:Ie._input,fullData:Ie,count:et,category:lt,probability:Me}]}}function z(Z,re,ne){var j=[];return g.select(ne.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var ee=this;j.push(L(Z,re,ee))}),j}function F(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=ne.getBoundingClientRect(),fe=g.select(ne).datum(),be=fe.categoryViewModel,Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=ie.y+ie.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=ie.left,it="left"):(at=ie.left+ie.width,it="right");var et=be.model.categoryLabel,lt=fe.parcatsViewModel.model.count,Me=0;fe.categoryViewModel.bands.forEach(function(jt){jt.color===fe.color&&(Me+=jt.count)});var ge=be.model.count,ce=0;Ae.pathSelection.each(function(jt){jt.model.color===fe.color&&(ce+=jt.model.count)});var ze=Me/lt,tt=Me/ce,nt=Me/ge,Qe={countLabel:Me,categoryLabel:et,probabilityLabel:ze.toFixed(3)},Ct=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&Ct.push(["Count:",Qe.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(Ct.push("P(color \u2229 "+et+"): "+Qe.probabilityLabel),Ct.push("P("+et+" | color): "+tt.toFixed(3)),Ct.push("P(color | "+et+"): "+nt.toFixed(3)));var St=Ct.join("<br>"),Ot=o.mostReadable(fe.color,["black","white"]);return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:St,color:fe.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:Ot,fontSize:10,idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:Qe,eventData:[{data:Ie._input,fullData:Ie,category:et,count:lt,probability:ze,categorycount:ge,colorcount:ce,bandcolorcount:Me}]}}function B(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=g.mouse(this)[1];if(re<-1)return;var ne=Z.parcatsViewModel.graphDiv,j=ne._fullLayout,ee=j._paperdiv.node().getBoundingClientRect(),ie=Z.parcatsViewModel.hoveron,fe=this;if(ie==="color"?(y(fe),P(fe,"plotly_hover",g.event)):(u(fe),f(fe,"plotly_hover",g.event)),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var be;ie==="category"?be=L(ne,ee,fe):ie==="color"?be=F(ne,ee,fe):ie==="dimension"&&(be=z(ne,ee,fe)),be&&M.loneHover(be,{container:j._hoverlayer.node(),outerContainer:j._paper.node(),gd:ne})}}}function O(Z){var re=Z.parcatsViewModel;if(!re.dragDimension&&(_(re.pathSelection),E(re.dimensionSelection.selectAll("g.category")),b(re.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),M.loneUnhover(re.graphDiv._fullLayout._hoverlayer.node()),re.pathSelection.sort(c),re.hoverinfoItems.indexOf("skip")===-1)){var ne=Z.parcatsViewModel.hoveron,j=this;ne==="color"?P(j,"plotly_unhover",g.event):f(j,"plotly_unhover",g.event)}}function I(Z){Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragDimensionDisplayInd=Z.model.displayInd,Z.initialDragDimensionDisplayInds=Z.parcatsViewModel.model.dimensions.map(function(re){return re.displayInd}),Z.dragHasMoved=!1,Z.dragCategoryDisplayInd=null,g.select(this).selectAll("g.category").select("rect.catrect").each(function(re){var ne=g.mouse(this)[0],j=g.mouse(this)[1];-2<=ne&&ne<=re.width+2&&-2<=j&&j<=re.height+2&&(Z.dragCategoryDisplayInd=re.model.displayInd,Z.initialDragCategoryDisplayInds=Z.model.categories.map(function(ee){return ee.displayInd}),re.model.dragY=re.y,e.raiseToTop(this.parentNode),g.select(this.parentNode).selectAll("rect.bandrect").each(function(ee){ee.y<j&&j<=ee.y+ee.height&&(Z.potentialClickBand=this)}))}),Z.parcatsViewModel.dragDimension=Z,M.loneUnhover(Z.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function N(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragHasMoved=!0,Z.dragDimensionDisplayInd!==null)){var re=Z.dragDimensionDisplayInd,ne=re-1,j=re+1,ee=Z.parcatsViewModel.dimensions[re];if(Z.dragCategoryDisplayInd!==null){var ie=ee.categories[Z.dragCategoryDisplayInd];ie.model.dragY+=g.event.dy;var fe=ie.model.dragY,be=ie.model.displayInd,Ae=ee.categories,Be=Ae[be-1],Ie=Ae[be+1];Be!==void 0&&fe<Be.y+Be.height/2&&(ie.model.displayInd=Be.model.displayInd,Be.model.displayInd=be),Ie!==void 0&&fe+ie.height>Ie.y+Ie.height/2&&(ie.model.displayInd=Ie.model.displayInd,Ie.model.displayInd=be),Z.dragCategoryDisplayInd=ie.model.displayInd}if(Z.dragCategoryDisplayInd===null||Z.parcatsViewModel.arrangement==="freeform"){ee.model.dragX=g.event.x;var Ze=Z.parcatsViewModel.dimensions[ne],at=Z.parcatsViewModel.dimensions[j];Ze!==void 0&&ee.model.dragX<Ze.x+Ze.width&&(ee.model.displayInd=Ze.model.displayInd,Ze.model.displayInd=re),at!==void 0&&ee.model.dragX+ee.width>at.x&&(ee.model.displayInd=at.model.displayInd,at.model.displayInd=Z.dragDimensionDisplayInd),Z.dragDimensionDisplayInd=ee.model.displayInd}$(Z.parcatsViewModel),G(Z.parcatsViewModel),ue(Z.parcatsViewModel),Q(Z.parcatsViewModel)}}function U(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&Z.dragDimensionDisplayInd!==null){g.select(this).selectAll("text").attr("font-weight","normal");var re={},ne=W(Z.parcatsViewModel),j=Z.parcatsViewModel.model.dimensions.map(function(at){return at.displayInd}),ee=Z.initialDragDimensionDisplayInds.some(function(at,it){return at!==j[it]});ee&&j.forEach(function(at,it){var et=Z.parcatsViewModel.model.dimensions[it].containerInd;re["dimensions["+et+"].displayindex"]=at});var ie=!1;if(Z.dragCategoryDisplayInd!==null){var fe=Z.model.categories.map(function(at){return at.displayInd});if(ie=Z.initialDragCategoryDisplayInds.some(function(at,it){return at!==fe[it]}),ie){var be=Z.model.categories.slice().sort(function(at,it){return at.displayInd-it.displayInd}),Ae=be.map(function(at){return at.categoryValue}),Be=be.map(function(at){return at.categoryLabel});re["dimensions["+Z.model.containerInd+"].categoryarray"]=[Ae],re["dimensions["+Z.model.containerInd+"].ticktext"]=[Be],re["dimensions["+Z.model.containerInd+"].categoryorder"]="array"}}if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!Z.dragHasMoved&&Z.potentialClickBand&&(Z.parcatsViewModel.hoveron==="color"?P(Z.potentialClickBand,"plotly_click",g.event.sourceEvent):f(Z.potentialClickBand,"plotly_click",g.event.sourceEvent)),Z.model.dragX=null,Z.dragCategoryDisplayInd!==null){var Ie=Z.parcatsViewModel.dimensions[Z.dragDimensionDisplayInd].categories[Z.dragCategoryDisplayInd];Ie.model.dragY=null,Z.dragCategoryDisplayInd=null}Z.dragDimensionDisplayInd=null,Z.parcatsViewModel.dragDimension=null,Z.dragHasMoved=null,Z.potentialClickBand=null,$(Z.parcatsViewModel),G(Z.parcatsViewModel);var Ze=g.transition().duration(300).ease("cubic-in-out");Ze.each(function(){ue(Z.parcatsViewModel,!0),Q(Z.parcatsViewModel,!0)}).each("end",function(){(ee||ie)&&A.restyle(Z.parcatsViewModel.graphDiv,re,[ne])})}}function W(Z){for(var re,ne=Z.graphDiv._fullData,j=0;j<ne.length;j++)if(Z.key===ne[j].uid){re=j;break}return re}function Q(Z,re){re===void 0&&(re=!1);function ne(j){return re?j.transition():j}Z.pathSelection.data(function(j){return j.paths},n),ne(Z.pathSelection).attr("d",function(j){return j.svgD})}function ue(Z,re){re===void 0&&(re=!1);function ne(Ae){return re?Ae.transition():Ae}Z.dimensionSelection.data(function(Ae){return Ae.dimensions},n);var j=Z.dimensionSelection.selectAll("g.category").data(function(Ae){return Ae.categories},n);ne(Z.dimensionSelection).attr("transform",function(Ae){return t(Ae.x,0)}),ne(j).attr("transform",function(Ae){return t(0,Ae.y)});var ee=j.select(".dimlabel");ee.text(function(Ae,Be){return Be===0?Ae.parcatsViewModel.model.dimensions[Ae.model.dimensionInd].dimensionLabel:null});var ie=j.select(".catlabel");ie.attr("text-anchor",function(Ae){return s(Ae)?"start":"end"}).attr("x",function(Ae){return s(Ae)?Ae.width+5:-5}).each(function(Ae){var Be,Ie;s(Ae)?(Be=Ae.width+5,Ie="start"):(Be=-5,Ie="end"),g.select(this).selectAll("tspan").attr("x",Be).attr("text-anchor",Ie)});var fe=j.selectAll("rect.bandrect").data(function(Ae){return Ae.bands},n),be=fe.enter().append("rect").attr("class","bandrect").attr("cursor","move").attr("stroke-opacity",0).attr("fill",function(Ae){return Ae.color}).attr("fill-opacity",0);fe.attr("fill",function(Ae){return Ae.color}).attr("width",function(Ae){return Ae.width}).attr("height",function(Ae){return Ae.height}).attr("y",function(Ae){return Ae.y}),b(be),fe.each(function(){e.raiseToTop(this)}),fe.exit().remove()}function se(Z,re,ne){var j=ne[0],ee=re.margin||{l:80,r:80,t:100,b:80},ie=j.trace,fe=ie.domain,be=re.width,Ae=re.height,Be=Math.floor(be*(fe.x[1]-fe.x[0])),Ie=Math.floor(Ae*(fe.y[1]-fe.y[0])),Ze=fe.x[0]*be+ee.l,at=re.height-fe.y[1]*re.height+ee.t,it=ie.line.shape,et;ie.hoverinfo==="all"?et=["count","probability"]:et=(ie.hoverinfo||"").split("+");var lt={trace:ie,key:ie.uid,model:j,x:Ze,y:at,width:Be,height:Ie,hoveron:ie.hoveron,hoverinfoItems:et,arrangement:ie.arrangement,bundlecolors:ie.bundlecolors,sortpaths:ie.sortpaths,labelfont:ie.labelfont,categorylabelfont:ie.tickfont,pathShape:it,dragDimension:null,margin:ee,paths:[],dimensions:[],graphDiv:Z,traceSelection:null,pathSelection:null,dimensionSelection:null};return j.dimensions&&($(lt),G(lt)),lt}function he(Z,re,ne,j,ee){var ie=[],fe=[],be,Ae;for(Ae=0;Ae<ne.length-1;Ae++)be=x(ne[Ae]+Z[Ae],Z[Ae+1]),ie.push(be(ee)),fe.push(be(1-ee));var Be="M "+Z[0]+","+re[0];for(Be+="l"+ne[0]+",0 ",Ae=1;Ae<ne.length;Ae++)Be+="C"+ie[Ae-1]+","+re[Ae-1]+" "+fe[Ae-1]+","+re[Ae]+" "+Z[Ae]+","+re[Ae],Be+="l"+ne[Ae]+",0 ";for(Be+="l0,"+j+" ",Be+="l -"+ne[ne.length-1]+",0 ",Ae=ne.length-2;Ae>=0;Ae--)Be+="C"+fe[Ae]+","+(re[Ae+1]+j)+" "+ie[Ae]+","+(re[Ae]+j)+" "+(Z[Ae]+ne[Ae])+","+(re[Ae]+j),Be+="l-"+ne[Ae]+",0 ";return Be+="Z",Be}function G(Z){var re=Z.dimensions,ne=Z.model,j=re.map(function(Cr){return Cr.categories.map(function(vr){return vr.y})}),ee=Z.model.dimensions.map(function(Cr){return Cr.categories.map(function(vr){return vr.displayInd})}),ie=Z.model.dimensions.map(function(Cr){return Cr.displayInd}),fe=Z.dimensions.map(function(Cr){return Cr.model.dimensionInd}),be=re.map(function(Cr){return Cr.x}),Ae=re.map(function(Cr){return Cr.width}),Be=[];for(var Ie in ne.paths)ne.paths.hasOwnProperty(Ie)&&Be.push(ne.paths[Ie]);function Ze(Cr){var vr=Cr.categoryInds.map(function(yt,Fe){return ee[Fe][yt]}),_r=fe.map(function(yt){return vr[yt]});return _r}Be.sort(function(Cr,vr){var _r=Ze(Cr),yt=Ze(vr);return Z.sortpaths==="backward"&&(_r.reverse(),yt.reverse()),_r.push(Cr.valueInds[0]),yt.push(vr.valueInds[0]),Z.bundlecolors&&(_r.unshift(Cr.rawColor),yt.unshift(vr.rawColor)),_r<yt?-1:_r>yt?1:0});for(var at=new Array(Be.length),it=re[0].model.count,et=re[0].categories.map(function(Cr){return Cr.height}).reduce(function(Cr,vr){return Cr+vr}),lt=0;lt<Be.length;lt++){var Me=Be[lt],ge;it>0?ge=et*(Me.count/it):ge=0;for(var ce=new Array(j.length),ze=0;ze<Me.categoryInds.length;ze++){var tt=Me.categoryInds[ze],nt=ee[ze][tt],Qe=ie[ze];ce[Qe]=j[Qe][nt],j[Qe][nt]+=ge;var Ct=Z.dimensions[Qe].categories[nt],St=Ct.bands.length,Ot=Ct.bands[St-1];if(Ot===void 0||Me.rawColor!==Ot.rawColor){var jt=Ot===void 0?0:Ot.y+Ot.height;Ct.bands.push({key:jt,color:Me.color,rawColor:Me.rawColor,height:ge,width:Ct.width,count:Me.count,y:jt,categoryViewModel:Ct,parcatsViewModel:Z})}else{var ur=Ct.bands[St-1];ur.height+=ge,ur.count+=Me.count}}var ar;Z.pathShape==="hspline"?ar=he(be,ce,Ae,ge,.5):ar=he(be,ce,Ae,ge,0),at[lt]={key:Me.valueInds[0],model:Me,height:ge,leftXs:be,topYs:ce,dimWidths:Ae,svgD:ar,parcatsViewModel:Z}}Z.paths=at}function $(Z){var re=Z.model.dimensions.map(function(fe){return{displayInd:fe.displayInd,dimensionInd:fe.dimensionInd}});re.sort(function(fe,be){return fe.displayInd-be.displayInd});var ne=[];for(var j in re){var ee=re[j].dimensionInd,ie=Z.model.dimensions[ee];ne.push(J(Z,ie))}Z.dimensions=ne}function J(Z,re){var ne=40,j=16,ee=Z.model.dimensions.length,ie=re.displayInd,fe,be,Ae;ee>1?fe=(Z.width-2*ne-j)/(ee-1):fe=0,be=ne,Ae=be+fe*ie;var Be=[],Ie=Z.model.maxCats,Ze=re.categories.length,at=8,it=re.count,et=Z.height-at*(Ie-1),lt,Me,ge,ce,ze,tt=(Ie-Ze)*at/2,nt=re.categories.map(function(Qe){return{displayInd:Qe.displayInd,categoryInd:Qe.categoryInd}});for(nt.sort(function(Qe,Ct){return Qe.displayInd-Ct.displayInd}),ze=0;ze<Ze;ze++)ce=nt[ze].categoryInd,Me=re.categories[ce],it>0?lt=Me.count/it*et:lt=0,ge={key:Me.valueInds[0],model:Me,width:j,height:lt,y:Me.dragY!==null?Me.dragY:tt,bands:[],parcatsViewModel:Z},tt=tt+lt+at,Be.push(ge);return{key:re.dimensionInd,x:re.dragX!==null?re.dragX:Ae,y:0,width:j,model:re,categories:Be,parcatsViewModel:Z,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}}}),_k=Ye({"src/traces/parcats/plot.js"(X,H){"use strict";var g=qV();H.exports=function(A,M,e,t){var r=A._fullLayout,o=r._paper,a=r._size;g(A,o,M,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},e,t)}}}),HV=Ye({"src/traces/parcats/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=_k(),x="parcats";X.name=x,X.plot=function(A,M,e,t){var r=H(A.calcdata,x);if(r.length){var o=r[0];g(A,o,e,t)}},X.clean=function(A,M,e,t){var r=t._has&&t._has("parcats"),o=M._has&&M._has("parcats");r&&!o&&t._paperdiv.selectAll(".parcats").remove()}}}),GV=Ye({"src/traces/parcats/index.js"(X,H){"use strict";H.exports={attributes:yk(),supplyDefaults:jV(),calc:VV(),plot:_k(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:HV(),categories:["noOpacity"],meta:{}}}}),WV=Ye({"lib/parcats.js"(X,H){"use strict";H.exports=GV()}}),am=Ye({"src/plots/mapbox/constants.js"(X,H){"use strict";var g=Km(),x="1.13.4",A='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',M=['\xA9 <a target="_blank" href="https://carto.com/">Carto</a>',A].join(" "),e=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://www.openstreetmap.org/copyright">ODbL</a>'].join(" "),t=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'].join(" "),r={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:A,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:t,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},o=g(r);H.exports={requiredVersion:x,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:r,styleValuesNonMapbox:o,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+x+"."].join(`
+`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(`
+`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",o.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(`
+`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(`
+`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}}}),Sx=Ye({"src/plots/mapbox/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=am(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("mapbox",".layers",!0)],domain:A({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:o.styleValuesMapbox.concat(o.styleValuesNonMapbox),dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),TT=Ye({"src/traces/scattermapbox/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Sx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Sx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),xk=Ye({"src/traces/scattermapbox/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),ZV=Ye({"src/traces/scattermapbox/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=TT(),o=xk().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),bk=Ye({"src/traces/scattermapbox/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),wk=Ye({"src/plots/mapbox/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),XV=Ye({"src/traces/scattermapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=xk().isSupportedFont,i=wk(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P<E.length;P++){var N=E[P],U=N.lonlat;if(!_(U)){var W={};F&&(W.mcc=N.mcc=F(N.mc)),B&&(W.mrc=N.mrc=B(N.ms)),O&&(W.mo=O(N.mo)),d&&(W.selected=N.selected||0),I.push({type:"Feature",id:P+1,geometry:{type:"Point",coordinates:U},properties:W})}}var Q;if(d)for(Q=t.makeSelectedPointStyleFns(m),P=0;P<I.length;P++){var ue=I[P].properties;Q.selectedOpacityFn&&(ue.mo=L(Q.selectedOpacityFn(ue))),Q.selectedColorFn&&(ue.mcc=Q.selectedColorFn(ue)),Q.selectedSizeFn&&(ue.mrc=Q.selectedSizeFn(ue))}return{geojson:{type:"FeatureCollection",features:I},mcc:u||Q&&Q.selectedColorFn?{type:"identity",property:"mcc"}:b.color,mrc:y||Q&&Q.selectedSizeFn?{type:"identity",property:"mrc"}:z(b.size),mo:f||Q&&Q.selectedOpacityFn?{type:"identity",property:"mo"}:L(b.opacity)}}function p(E,m){for(var b=m._fullLayout,d=E[0].trace,u=d.marker||{},y=u.symbol,f=u.angle,P=y!=="circle"?T(y):l,L=f!=="auto"?T(f,!0):l,z=o.hasText(d)?T(d.text):l,F=[],B=0;B<E.length;B++){var O=E[B];if(!_(O.lonlat)){var I=d.texttemplate,N;if(I){var U=Array.isArray(I)?I[B]||"":I,W=d._module.formatLabels(O,d,b),Q={};n(Q,d,O.i);var ue=d._meta||{};N=x.texttemplateString(U,W,b._d3locale,Q,O,ue)}else N=z(B);N&&(N=N.replace(s,"").replace(c,`
+`)),F.push({type:"Feature",geometry:{type:"Point",coordinates:O.lonlat},properties:{symbol:P(B),angle:L(B),text:N}})}}return{type:"FeatureCollection",features:F}}function T(E,m){return x.isArrayOrTypedArray(E)?m?function(b){return g(E[b])?+E[b]:0}:function(b){return E[b]}:E?function(){return E}:l}function l(){return""}function _(E){return E[0]===A}function w(E,m){var b;if(x.isArrayOrTypedArray(E)&&x.isArrayOrTypedArray(m)){b=["step",["get","point_count"],E[0]];for(var d=1;d<E.length;d++)b.push(m[d-1],E[d])}else b=E;return b}function S(E){var m=E.textfont,b=m.family,d=m.style,u=m.weight,y=b.split(" "),f=y[y.length-1]==="Italic";f&&y.pop(),f=f||d==="italic";var P=y.join(" ");u==="bold"&&y.indexOf("Bold")===-1?P+=" Bold":u<=1e3&&(y[0]==="Metropolis"?(P="Metropolis",u>850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),YV=Ye({"src/traces/scattermapbox/plot.js"(X,H){"use strict";var g=ta(),x=XV(),A=am().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermapbox",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h<c.length;h++)if(c[h].id===n){s=!0;break}s?(this.subplot.setOptions(n,"setLayoutProperty",i.layout),i.layout.visibility==="visible"&&this.subplot.setOptions(n,"setPaintProperty",i.paint)):this.subplot.addLayer(i,a)},t.update=function(o){var a=o[0].trace,i=this.subplot,n=i.map,s=x(i.gd,o),c=i.belowLookup["trace-"+this.uid],h=!!(a.cluster&&a.cluster.enabled),v=!!this.clusterEnabled,p=this;function T(u){u||p.addSource("circle",s.circle,a.cluster);for(var y=M.cluster,f=0;f<y.length;f++){var P=y[f],L=s[P];p.addLayer(P,L,c)}}function l(u){for(var y=M.cluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f<y.length;f++){var P=y[f],L=s[P];u||p.addSource(P,L),p.addLayer(P,L,c)}}function w(u){for(var y=M.nonCluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y<u.length;y++){var f=u[y],P=s[f];P&&(i.setOptions(p.layerIds[f],"setLayoutProperty",P.layout),P.layout.visibility==="visible"&&(f!=="cluster"&&p.setSourceData(f,P),i.setOptions(p.layerIds[f],"setPaintProperty",P.paint)))}}var b=this.isHidden,d=a.visible!==!0;d?b||S():b?d||E():v!==h?(S(),E()):(this.below!==c&&(S(!0),E(!0)),m()),this.clusterEnabled=h,this.isHidden=d,this.below=c,o[0].trace._glTrace=this},t.dispose=function(){for(var o=this.subplot.map,a=this.clusterEnabled?M.cluster:M.nonCluster,i=a.length-1;i>=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p<M.cluster.length;p++)T=M.cluster[p],l=h[T],c.addLayer(T,l,v);else for(p=0;p<M.nonCluster.length;p++)T=M.nonCluster[p],l=h[T],c.addSource(T,l,i.cluster),c.addLayer(T,l,v);return a[0].trace._glTrace=c,c}}}),AT=Ye({"src/traces/scattermapbox/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=s1(),M=x.fillText,e=ks().BADNUM,t=am().traceLayerPrefix;function r(a,i,n){var s=a.cd,c=s[0].trace,h=a.xa,v=a.ya,p=a.subplot,T=[],l=t+c.uid+"-circle",_=c.cluster&&c.cluster.enabled;if(_){var w=p.map.queryRenderedFeatures(null,{layers:[l]});T=w.map(function(B){return B.id})}var S=i>=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("<br>")}H.exports={hoverPoints:r,getExtraText:o}}}),KV=Ye({"src/traces/scattermapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),JV=Ye({"src/traces/scattermapbox/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s<r.length;s++)r[s].selected=0;else for(s=0;s<r.length;s++){var c=r[s],h=c.lonlat;if(h[0]!==A){var v=[g.modHalf(h[0],360),h[1]],p=[o.c2p(v),a.c2p(v)];t.contains(p,null,s,e)?(i.push({pointNumber:s,lon:h[0],lat:h[1]}),c.selected=1):c.selected=0}}return i}}}),Tk=Ye({"node_modules/@plotly/mapbox-gl/dist/mapbox-gl-unminified.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():(g=g||self,g.mapboxgl=x())})(X,function(){"use strict";var g,x,A;function M(e,t){if(!g)g=t;else if(!x)x=t;else{var r="var sharedChunk = {}; ("+g+")(sharedChunk); ("+x+")(sharedChunk);",o={};g(o),A=t(o),typeof window<"u"&&(A.workerUrl=window.URL.createObjectURL(new Blob([r],{type:"text/javascript"})))}}return M(["exports"],function(e){"use strict";function t(k,C){return C={exports:{}},k(C,C.exports),C.exports}var r="1.13.4",o=a;function a(k,C,V,oe){this.cx=3*k,this.bx=3*(V-k)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*C,this.by=3*(oe-C)-this.cy,this.ay=1-this.cy-this.by,this.p1x=k,this.p1y=oe,this.p2x=V,this.p2y=oe}a.prototype.sampleCurveX=function(k){return((this.ax*k+this.bx)*k+this.cx)*k},a.prototype.sampleCurveY=function(k){return((this.ay*k+this.by)*k+this.cy)*k},a.prototype.sampleCurveDerivativeX=function(k){return(3*this.ax*k+2*this.bx)*k+this.cx},a.prototype.solveCurveX=function(k,C){typeof C>"u"&&(C=1e-6);var V,oe,_e,Pe,je;for(_e=k,je=0;je<8;je++){if(Pe=this.sampleCurveX(_e)-k,Math.abs(Pe)<C)return _e;var ct=this.sampleCurveDerivativeX(_e);if(Math.abs(ct)<1e-6)break;_e=_e-Pe/ct}if(V=0,oe=1,_e=k,_e<V)return V;if(_e>oe)return oe;for(;V<oe;){if(Pe=this.sampleCurveX(_e),Math.abs(Pe-k)<C)return _e;k>Pe?V=_e:oe=_e,_e=(oe-V)*.5+V}return _e},a.prototype.solve=function(k,C){return this.sampleCurveY(this.solveCurveX(k,C))};var i=n;function n(k,C){this.x=k,this.y=C}n.prototype={clone:function(){return new n(this.x,this.y)},add:function(k){return this.clone()._add(k)},sub:function(k){return this.clone()._sub(k)},multByPoint:function(k){return this.clone()._multByPoint(k)},divByPoint:function(k){return this.clone()._divByPoint(k)},mult:function(k){return this.clone()._mult(k)},div:function(k){return this.clone()._div(k)},rotate:function(k){return this.clone()._rotate(k)},rotateAround:function(k,C){return this.clone()._rotateAround(k,C)},matMult:function(k){return this.clone()._matMult(k)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(k){return this.x===k.x&&this.y===k.y},dist:function(k){return Math.sqrt(this.distSqr(k))},distSqr:function(k){var C=k.x-this.x,V=k.y-this.y;return C*C+V*V},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(k){return Math.atan2(this.y-k.y,this.x-k.x)},angleWith:function(k){return this.angleWithSep(k.x,k.y)},angleWithSep:function(k,C){return Math.atan2(this.x*C-this.y*k,this.x*k+this.y*C)},_matMult:function(k){var C=k[0]*this.x+k[1]*this.y,V=k[2]*this.x+k[3]*this.y;return this.x=C,this.y=V,this},_add:function(k){return this.x+=k.x,this.y+=k.y,this},_sub:function(k){return this.x-=k.x,this.y-=k.y,this},_mult:function(k){return this.x*=k,this.y*=k,this},_div:function(k){return this.x/=k,this.y/=k,this},_multByPoint:function(k){return this.x*=k.x,this.y*=k.y,this},_divByPoint:function(k){return this.x/=k.x,this.y/=k.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var k=this.y;return this.y=this.x,this.x=-k,this},_rotate:function(k){var C=Math.cos(k),V=Math.sin(k),oe=C*this.x-V*this.y,_e=V*this.x+C*this.y;return this.x=oe,this.y=_e,this},_rotateAround:function(k,C){var V=Math.cos(k),oe=Math.sin(k),_e=C.x+V*(this.x-C.x)-oe*(this.y-C.y),Pe=C.y+oe*(this.x-C.x)+V*(this.y-C.y);return this.x=_e,this.y=Pe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},n.convert=function(k){return k instanceof n?k:Array.isArray(k)?new n(k[0],k[1]):k};var s=typeof self<"u"?self:{};function c(k,C){if(Array.isArray(k)){if(!Array.isArray(C)||k.length!==C.length)return!1;for(var V=0;V<k.length;V++)if(!c(k[V],C[V]))return!1;return!0}if(typeof k=="object"&&k!==null&&C!==null){if(typeof C!="object")return!1;var oe=Object.keys(k);if(oe.length!==Object.keys(C).length)return!1;for(var _e in k)if(!c(k[_e],C[_e]))return!1;return!0}return k===C}var h=Math.pow(2,53)-1;function v(k){if(k<=0)return 0;if(k>=1)return 1;var C=k*k,V=C*k;return 4*(k<.5?V:3*(k-C)+V-.75)}function p(k,C,V,oe){var _e=new o(k,C,V,oe);return function(Pe){return _e.solve(Pe)}}var T=p(.25,.1,.25,1);function l(k,C,V){return Math.min(V,Math.max(C,k))}function _(k,C,V){var oe=V-C,_e=((k-C)%oe+oe)%oe+C;return _e===C?V:_e}function w(k,C,V){if(!k.length)return V(null,[]);var oe=k.length,_e=new Array(k.length),Pe=null;k.forEach(function(je,ct){C(je,function(Lt,Nt){Lt&&(Pe=Lt),_e[ct]=Nt,--oe===0&&V(Pe,_e)})})}function S(k){var C=[];for(var V in k)C.push(k[V]);return C}function E(k,C){var V=[];for(var oe in k)oe in C||V.push(oe);return V}function m(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function b(k,C){for(var V={},oe=0;oe<C.length;oe++){var _e=C[oe];_e in k&&(V[_e]=k[_e])}return V}var d=1;function u(){return d++}function y(){function k(C){return C?(C^Math.random()*16>>C/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,k)}return k()}function f(k){return k<=1?1:Math.pow(2,Math.ceil(Math.log(k)/Math.LN2))}function P(k){return k?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(k):!1}function L(k,C){k.forEach(function(V){C[V]&&(C[V]=C[V].bind(C))})}function z(k,C){return k.indexOf(C,k.length-C.length)!==-1}function F(k,C,V){var oe={};for(var _e in k)oe[_e]=C.call(V||this,k[_e],_e,k);return oe}function B(k,C,V){var oe={};for(var _e in k)C.call(V||this,k[_e],_e,k)&&(oe[_e]=k[_e]);return oe}function O(k){return Array.isArray(k)?k.map(O):typeof k=="object"&&k?F(k,O):k}function I(k,C){for(var V=0;V<k.length;V++)if(C.indexOf(k[V])>=0)return!0;return!1}var N={};function U(k){N[k]||(typeof console<"u"&&console.warn(k),N[k]=!0)}function W(k,C,V){return(V.y-k.y)*(C.x-k.x)>(C.y-k.y)*(V.x-k.x)}function Q(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe=void 0,je=void 0;V<oe;_e=V++)Pe=k[V],je=k[_e],C+=(je.x-Pe.x)*(Pe.y+je.y);return C}function ue(k){var C=k[0],V=k[1],oe=k[2];return V+=90,V*=Math.PI/180,oe*=Math.PI/180,{x:C*Math.cos(V)*Math.sin(oe),y:C*Math.sin(V)*Math.sin(oe),z:C*Math.cos(oe)}}function se(){return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope}function he(k){var C=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,V={};if(k.replace(C,function(_e,Pe,je,ct){var Lt=je||ct;return V[Pe]=Lt?Lt.toLowerCase():!0,""}),V["max-age"]){var oe=parseInt(V["max-age"],10);isNaN(oe)?delete V["max-age"]:V["max-age"]=oe}return V}var G=null;function $(k){if(G==null){var C=k.navigator?k.navigator.userAgent:null;G=!!k.safari||!!(C&&(/\b(iPad|iPhone|iPod)\b/.test(C)||C.match("Safari")&&!C.match("Chrome")))}return G}function J(k){try{var C=s[k];return C.setItem("_mapbox_test_",1),C.removeItem("_mapbox_test_"),!0}catch{return!1}}function Z(k){return s.btoa(encodeURIComponent(k).replace(/%([0-9A-F]{2})/g,function(C,V){return String.fromCharCode(+("0x"+V))}))}function re(k){return decodeURIComponent(s.atob(k).split("").map(function(C){return"%"+("00"+C.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var ne=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),j=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,ee=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,ie,fe,be={now:ne,frame:function(C){var V=j(C);return{cancel:function(){return ee(V)}}},getImageData:function(C,V){V===void 0&&(V=0);var oe=s.document.createElement("canvas"),_e=oe.getContext("2d");if(!_e)throw new Error("failed to create canvas 2d context");return oe.width=C.width,oe.height=C.height,_e.drawImage(C,0,0,C.width,C.height),_e.getImageData(-V,-V,C.width+2*V,C.height+2*V)},resolveURL:function(C){return ie||(ie=s.document.createElement("a")),ie.href=C,ie.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return s.matchMedia?(fe==null&&(fe=s.matchMedia("(prefers-reduced-motion: reduce)")),fe.matches):!1}},Ae={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Be={supported:!1,testSupport:et},Ie,Ze=!1,at,it=!1;s.document&&(at=s.document.createElement("img"),at.onload=function(){Ie&&lt(Ie),Ie=null,it=!0},at.onerror=function(){Ze=!0,Ie=null},at.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function et(k){Ze||!at||(it?lt(k):Ie=k)}function lt(k){var C=k.createTexture();k.bindTexture(k.TEXTURE_2D,C);try{if(k.texImage2D(k.TEXTURE_2D,0,k.RGBA,k.RGBA,k.UNSIGNED_BYTE,at),k.isContextLost())return;Be.supported=!0}catch{}k.deleteTexture(C),Ze=!0}var Me="01";function ge(){for(var k="1",C="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",V="",oe=0;oe<10;oe++)V+=C[Math.floor(Math.random()*62)];var _e=12*60*60*1e3,Pe=[k,Me,V].join(""),je=Date.now()+_e;return{token:Pe,tokenExpiresAt:je}}var ce=function(C,V){this._transformRequestFn=C,this._customAccessToken=V,this._createSkuToken()};ce.prototype._createSkuToken=function(){var C=ge();this._skuToken=C.token,this._skuTokenExpiresAt=C.tokenExpiresAt},ce.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},ce.prototype.transformRequest=function(C,V){return this._transformRequestFn?this._transformRequestFn(C,V)||{url:C}:{url:C}},ce.prototype.normalizeStyleURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/styles/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeGlyphsURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/fonts/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSourceURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/v4/"+oe.authority+".json",oe.params.push("secure"),this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSpriteURL=function(C,V,oe,_e){var Pe=Ot(C);return ze(C)?(Pe.path="/styles/v1"+Pe.path+"/sprite"+V+oe,this._makeAPIURL(Pe,this._customAccessToken||_e)):(Pe.path+=""+V+oe,jt(Pe))},ce.prototype.normalizeTileURL=function(C,V){if(this._isSkuTokenExpired()&&this._createSkuToken(),C&&!ze(C))return C;var oe=Ot(C),_e=/(\.(png|jpg)\d*)(?=$)/,Pe=/^.+\/v4\//,je=be.devicePixelRatio>=2||V===512?"@2x":"",ct=Be.supported?".webp":"$1";oe.path=oe.path.replace(_e,""+je+ct),oe.path=oe.path.replace(Pe,"/"),oe.path="/v4"+oe.path;var Lt=this._customAccessToken||Ct(oe.params)||Ae.ACCESS_TOKEN;return Ae.REQUIRE_ACCESS_TOKEN&&Lt&&this._skuToken&&oe.params.push("sku="+this._skuToken),this._makeAPIURL(oe,Lt)},ce.prototype.canonicalizeTileURL=function(C,V){var oe="/v4/",_e=/\.[\w]+$/,Pe=Ot(C);if(!Pe.path.match(/(^\/v4\/)/)||!Pe.path.match(_e))return C;var je="mapbox://tiles/";je+=Pe.path.replace(oe,"");var ct=Pe.params;return V&&(ct=ct.filter(function(Lt){return!Lt.match(/^access_token=/)})),ct.length&&(je+="?"+ct.join("&")),je},ce.prototype.canonicalizeTileset=function(C,V){for(var oe=V?ze(V):!1,_e=[],Pe=0,je=C.tiles||[];Pe<je.length;Pe+=1){var ct=je[Pe];nt(ct)?_e.push(this.canonicalizeTileURL(ct,oe)):_e.push(ct)}return _e},ce.prototype._makeAPIURL=function(C,V){var oe="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",_e=Ot(Ae.API_URL);if(C.protocol=_e.protocol,C.authority=_e.authority,C.protocol==="http"){var Pe=C.params.indexOf("secure");Pe>=0&&C.params.splice(Pe,1)}if(_e.path!=="/"&&(C.path=""+_e.path+C.path),!Ae.REQUIRE_ACCESS_TOKEN)return jt(C);if(V=V||Ae.ACCESS_TOKEN,!V)throw new Error("An API access token is required to use Mapbox GL. "+oe);if(V[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+oe);return C.params=C.params.filter(function(je){return je.indexOf("access_token")===-1}),C.params.push("access_token="+V),jt(C)};function ze(k){return k.indexOf("mapbox:")===0}var tt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function nt(k){return tt.test(k)}function Qe(k){return k.indexOf("sku=")>0&&nt(k)}function Ct(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C],_e=oe.match(/^access_token=(.*)$/);if(_e)return _e[1]}return null}var St=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Ot(k){var C=k.match(St);if(!C)throw new Error("Unable to parse URL object");return{protocol:C[1],authority:C[2],path:C[3]||"/",params:C[4]?C[4].split("&"):[]}}function jt(k){var C=k.params.length?"?"+k.params.join("&"):"";return k.protocol+"://"+k.authority+k.path+C}var ur="mapbox.eventData";function ar(k){if(!k)return null;var C=k.split(".");if(!C||C.length!==3)return null;try{var V=JSON.parse(re(C[1]));return V}catch{return null}}var Cr=function(C){this.type=C,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};Cr.prototype.getStorageKey=function(C){var V=ar(Ae.ACCESS_TOKEN),oe="";return V&&V.u?oe=Z(V.u):oe=Ae.ACCESS_TOKEN||"",C?ur+"."+C+":"+oe:ur+":"+oe},Cr.prototype.fetchEventData=function(){var C=J("localStorage"),V=this.getStorageKey(),oe=this.getStorageKey("uuid");if(C)try{var _e=s.localStorage.getItem(V);_e&&(this.eventData=JSON.parse(_e));var Pe=s.localStorage.getItem(oe);Pe&&(this.anonId=Pe)}catch{U("Unable to read from LocalStorage")}},Cr.prototype.saveEventData=function(){var C=J("localStorage"),V=this.getStorageKey(),oe=this.getStorageKey("uuid");if(C)try{s.localStorage.setItem(oe,this.anonId),Object.keys(this.eventData).length>=1&&s.localStorage.setItem(V,JSON.stringify(this.eventData))}catch{U("Unable to write to LocalStorage")}},Cr.prototype.processRequests=function(C){},Cr.prototype.postEvent=function(C,V,oe,_e){var Pe=this;if(Ae.EVENTS_URL){var je=Ot(Ae.EVENTS_URL);je.params.push("access_token="+(_e||Ae.ACCESS_TOKEN||""));var ct={event:this.type,created:new Date(C).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:Me,userId:this.anonId},Lt=V?m(ct,V):ct,Nt={url:jt(je),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Lt])};this.pendingRequest=Xr(Nt,function(Xt){Pe.pendingRequest=null,oe(Xt),Pe.saveEventData(),Pe.processRequests(_e)})}},Cr.prototype.queueRequest=function(C,V){this.queue.push(C),this.processRequests(V)};var vr=function(k){function C(){k.call(this,"map.load"),this.success={},this.skuToken=""}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postMapLoadEvent=function(oe,_e,Pe,je){this.skuToken=Pe,(Ae.EVENTS_URL&&je||Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(ct){return ze(ct)||nt(ct)}))&&this.queueRequest({id:_e,timestamp:Date.now()},je)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){var Pe=this.queue.shift(),je=Pe.id,ct=Pe.timestamp;je&&this.success[je]||(this.anonId||this.fetchEventData(),P(this.anonId)||(this.anonId=y()),this.postEvent(ct,{skuToken:this.skuToken},function(Lt){Lt||je&&(_e.success[je]=!0)},oe))}},C}(Cr),_r=function(k){function C(V){k.call(this,"appUserTurnstile"),this._customAccessToken=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postTurnstileEvent=function(oe,_e){Ae.EVENTS_URL&&Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(Pe){return ze(Pe)||nt(Pe)})&&this.queueRequest(Date.now(),_e)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var Pe=ar(Ae.ACCESS_TOKEN),je=Pe?Pe.u:Ae.ACCESS_TOKEN,ct=je!==this.eventData.tokenU;P(this.anonId)||(this.anonId=y(),ct=!0);var Lt=this.queue.shift();if(this.eventData.lastSuccess){var Nt=new Date(this.eventData.lastSuccess),Xt=new Date(Lt),gr=(Lt-this.eventData.lastSuccess)/(24*60*60*1e3);ct=ct||gr>=1||gr<-1||Nt.getDate()!==Xt.getDate()}else ct=!0;if(!ct)return this.processRequests();this.postEvent(Lt,{"enabled.telemetry":!1},function(Br){Br||(_e.eventData.lastSuccess=Lt,_e.eventData.tokenU=je)},oe)}},C}(Cr),yt=new _r,Fe=yt.postTurnstileEvent.bind(yt),Ke=new vr,Ne=Ke.postMapLoadEvent.bind(Ke),Ee="mapbox-tiles",Ve=500,ke=50,Te=1e3*60*7,Le;function rt(){s.caches&&!Le&&(Le=s.caches.open(Ee))}var dt;function xt(k,C){if(dt===void 0)try{new Response(new ReadableStream),dt=!0}catch{dt=!1}dt?C(k.body):k.blob().then(C)}function It(k,C,V){if(rt(),!!Le){var oe={status:C.status,statusText:C.statusText,headers:new s.Headers};C.headers.forEach(function(je,ct){return oe.headers.set(ct,je)});var _e=he(C.headers.get("Cache-Control")||"");if(!_e["no-store"]){_e["max-age"]&&oe.headers.set("Expires",new Date(V+_e["max-age"]*1e3).toUTCString());var Pe=new Date(oe.headers.get("Expires")).getTime()-V;Pe<Te||xt(C,function(je){var ct=new s.Response(je,oe);rt(),Le&&Le.then(function(Lt){return Lt.put(Bt(k.url),ct)}).catch(function(Lt){return U(Lt.message)})})}}}function Bt(k){var C=k.indexOf("?");return C<0?k:k.slice(0,C)}function Gt(k,C){if(rt(),!Le)return C(null);var V=Bt(k.url);Le.then(function(oe){oe.match(V).then(function(_e){var Pe=Kt(_e);oe.delete(V),Pe&&oe.put(V,_e.clone()),C(null,_e,Pe)}).catch(C)}).catch(C)}function Kt(k){if(!k)return!1;var C=new Date(k.headers.get("Expires")||0),V=he(k.headers.get("Cache-Control")||"");return C>Date.now()&&!V["no-cache"]}var sr=1/0;function sa(k){sr++,sr>ke&&(k.getActor().send("enforceCacheSizeLimit",Ve),sr=0)}function Aa(k){rt(),Le&&Le.then(function(C){C.keys().then(function(V){for(var oe=0;oe<V.length-k;oe++)C.delete(V[oe])})})}function La(k){var C=s.caches.delete(Ee);k&&C.catch(k).then(function(){return k()})}function ka(k,C){Ve=k,ke=C}var Ga;function Ma(){return Ga==null&&(Ga=s.OffscreenCanvas&&new s.OffscreenCanvas(1,1).getContext("2d")&&typeof s.createImageBitmap=="function"),Ga}var Ua={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(Ua);var ni=function(k){function C(V,oe,_e){oe===401&&nt(_e)&&(V+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),k.call(this,V),this.status=oe,this.url=_e,this.name=this.constructor.name,this.message=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},C}(Error),Wt=se()?function(){return self.worker&&self.worker.referrer}:function(){return(s.location.protocol==="blob:"?s.parent:s).location.href},zt=function(k){return/^file:/.test(k)||/^file:/.test(Wt())&&!/^\w+:/.test(k)};function Vt(k,C){var V=new s.AbortController,oe=new s.Request(k.url,{method:k.method||"GET",body:k.body,credentials:k.credentials,headers:k.headers,referrer:Wt(),signal:V.signal}),_e=!1,Pe=!1,je=Qe(oe.url);k.type==="json"&&oe.headers.set("Accept","application/json");var ct=function(Nt,Xt,gr){if(!Pe){if(Nt&&Nt.message!=="SecurityError"&&U(Nt),Xt&&gr)return Lt(Xt);var Br=Date.now();s.fetch(oe).then(function(Rr){if(Rr.ok){var na=je?Rr.clone():null;return Lt(Rr,na,Br)}else return C(new ni(Rr.statusText,Rr.status,k.url))}).catch(function(Rr){Rr.code!==20&&C(new Error(Rr.message))})}},Lt=function(Nt,Xt,gr){(k.type==="arrayBuffer"?Nt.arrayBuffer():k.type==="json"?Nt.json():Nt.text()).then(function(Br){Pe||(Xt&&gr&&It(oe,Xt,gr),_e=!0,C(null,Br,Nt.headers.get("Cache-Control"),Nt.headers.get("Expires")))}).catch(function(Br){Pe||C(new Error(Br.message))})};return je?Gt(oe,ct):ct(null,null),{cancel:function(){Pe=!0,_e||V.abort()}}}function Ut(k,C){var V=new s.XMLHttpRequest;V.open(k.method||"GET",k.url,!0),k.type==="arrayBuffer"&&(V.responseType="arraybuffer");for(var oe in k.headers)V.setRequestHeader(oe,k.headers[oe]);return k.type==="json"&&(V.responseType="text",V.setRequestHeader("Accept","application/json")),V.withCredentials=k.credentials==="include",V.onerror=function(){C(new Error(V.statusText))},V.onload=function(){if((V.status>=200&&V.status<300||V.status===0)&&V.response!==null){var _e=V.response;if(k.type==="json")try{_e=JSON.parse(V.response)}catch(Pe){return C(Pe)}C(null,_e,V.getResponseHeader("Cache-Control"),V.getResponseHeader("Expires"))}else C(new ni(V.statusText,V.status,k.url))},V.send(k.body),{cancel:function(){return V.abort()}}}var xr=function(k,C){if(!zt(k.url)){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return Vt(k,C);if(se()&&self.worker&&self.worker.actor){var V=!0;return self.worker.actor.send("getResource",k,C,void 0,V)}}return Ut(k,C)},Zr=function(k,C){return xr(m(k,{type:"json"}),C)},pa=function(k,C){return xr(m(k,{type:"arrayBuffer"}),C)},Xr=function(k,C){return xr(m(k,{method:"POST"}),C)};function Ea(k){var C=s.document.createElement("a");return C.href=k,C.protocol===s.document.location.protocol&&C.host===s.document.location.host}var Fa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function qa(k,C,V,oe){var _e=new s.Image,Pe=s.URL;_e.onload=function(){C(null,_e),Pe.revokeObjectURL(_e.src),_e.onload=null,s.requestAnimationFrame(function(){_e.src=Fa})},_e.onerror=function(){return C(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var je=new s.Blob([new Uint8Array(k)],{type:"image/png"});_e.cacheControl=V,_e.expires=oe,_e.src=k.byteLength?Pe.createObjectURL(je):Fa}function ya(k,C){var V=new s.Blob([new Uint8Array(k)],{type:"image/png"});s.createImageBitmap(V).then(function(oe){C(null,oe)}).catch(function(oe){C(new Error("Could not load image because of "+oe.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var $a,mt,gt=function(){$a=[],mt=0};gt();var Er=function(k,C){if(Be.supported&&(k.headers||(k.headers={}),k.headers.accept="image/webp,*/*"),mt>=Ae.MAX_PARALLEL_IMAGE_REQUESTS){var V={requestParameters:k,callback:C,cancelled:!1,cancel:function(){this.cancelled=!0}};return $a.push(V),V}mt++;var oe=!1,_e=function(){if(!oe)for(oe=!0,mt--;$a.length&&mt<Ae.MAX_PARALLEL_IMAGE_REQUESTS;){var je=$a.shift(),ct=je.requestParameters,Lt=je.callback,Nt=je.cancelled;Nt||(je.cancel=Er(ct,Lt).cancel)}},Pe=pa(k,function(je,ct,Lt,Nt){_e(),je?C(je):ct&&(Ma()?ya(ct,C):qa(ct,C,Lt,Nt))});return{cancel:function(){Pe.cancel(),_e()}}},kr=function(k,C){var V=s.document.createElement("video");V.muted=!0,V.onloadstart=function(){C(null,V)};for(var oe=0;oe<k.length;oe++){var _e=s.document.createElement("source");Ea(k[oe])||(V.crossOrigin="Anonymous"),_e.src=k[oe],V.appendChild(_e)}return{cancel:function(){}}};function br(k,C,V){var oe=V[k]&&V[k].indexOf(C)!==-1;oe||(V[k]=V[k]||[],V[k].push(C))}function Tr(k,C,V){if(V&&V[k]){var oe=V[k].indexOf(C);oe!==-1&&V[k].splice(oe,1)}}var Mr=function(C,V){V===void 0&&(V={}),m(this,V),this.type=C},Fr=function(k){function C(V,oe){oe===void 0&&(oe={}),k.call(this,"error",m({error:V},oe))}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Mr),Lr=function(){};Lr.prototype.on=function(C,V){return this._listeners=this._listeners||{},br(C,V,this._listeners),this},Lr.prototype.off=function(C,V){return Tr(C,V,this._listeners),Tr(C,V,this._oneTimeListeners),this},Lr.prototype.once=function(C,V){return this._oneTimeListeners=this._oneTimeListeners||{},br(C,V,this._oneTimeListeners),this},Lr.prototype.fire=function(C,V){typeof C=="string"&&(C=new Mr(C,V||{}));var oe=C.type;if(this.listens(oe)){C.target=this;for(var _e=this._listeners&&this._listeners[oe]?this._listeners[oe].slice():[],Pe=0,je=_e;Pe<je.length;Pe+=1){var ct=je[Pe];ct.call(this,C)}for(var Lt=this._oneTimeListeners&&this._oneTimeListeners[oe]?this._oneTimeListeners[oe].slice():[],Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];Tr(oe,gr,this._oneTimeListeners),gr.call(this,C)}var Br=this._eventedParent;Br&&(m(C,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Br.fire(C))}else C instanceof Fr&&console.error(C.error);return this},Lr.prototype.listens=function(C){return this._listeners&&this._listeners[C]&&this._listeners[C].length>0||this._oneTimeListeners&&this._oneTimeListeners[C]&&this._oneTimeListeners[C].length>0||this._eventedParent&&this._eventedParent.listens(C)},Lr.prototype.setEventedParent=function(C,V){return this._eventedParent=C,this._eventedParentData=V,this};var Jr=8,oa={version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},ca={"*":{type:"source"}},kt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],ir={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},mr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},$r={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},ma={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Ba={type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},Ca={type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},da={id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},Sa=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],Ti={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ai={"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},an={"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},sn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Mn={"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},On={"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},$n={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Cn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={type:"array",value:"*"},Xi={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Jo={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},zo={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},as={type:"array",value:"*",minimum:1},Pn={anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},go=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],In={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},Do={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ho={"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},Qo={"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Xn={"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},po={"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},ys={"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Is={"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},Fs={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},$o={"*":{type:"string"}},fi={$version:Jr,$root:oa,sources:ca,source:kt,source_vector:ir,source_raster:mr,source_raster_dem:$r,source_geojson:ma,source_video:Ba,source_image:Ca,layer:da,layout:Sa,layout_background:Ti,layout_fill:ai,layout_circle:an,layout_heatmap:sn,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:Mn,layout_symbol:On,layout_raster:$n,layout_hillshade:Cn,filter:Lo,filter_operator:Xi,geometry_type:Jo,function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:zo,expression:as,light:Pn,paint:go,paint_fill:In,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:Do,paint_circle:Ho,paint_heatmap:Qo,paint_symbol:Xn,paint_raster:po,paint_hillshade:ys,paint_background:Is,transition:Fs,"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:$o},mn=function(C,V,oe,_e){this.message=(C?C+": ":"")+oe,_e&&(this.identifier=_e),V!=null&&V.__line__&&(this.line=V.__line__)};function ol(k){var C=k.key,V=k.value;return V?[new mn(C,V,"constants have been deprecated as of v8")]:[]}function Os(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function so(k){return k instanceof Number||k instanceof String||k instanceof Boolean?k.valueOf():k}function Ns(k){if(Array.isArray(k))return k.map(Ns);if(k instanceof Object&&!(k instanceof Number||k instanceof String||k instanceof Boolean)){var C={};for(var V in k)C[V]=Ns(k[V]);return C}return so(k)}var fs=function(k){function C(V,oe){k.call(this,oe),this.message=oe,this.key=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Error),al=function(C,V){V===void 0&&(V=[]),this.parent=C,this.bindings={};for(var oe=0,_e=V;oe<_e.length;oe+=1){var Pe=_e[oe],je=Pe[0],ct=Pe[1];this.bindings[je]=ct}};al.prototype.concat=function(C){return new al(this,C)},al.prototype.get=function(C){if(this.bindings[C])return this.bindings[C];if(this.parent)return this.parent.get(C);throw new Error(C+" not found in scope.")},al.prototype.has=function(C){return this.bindings[C]?!0:this.parent?this.parent.has(C):!1};var vl={kind:"null"},ji={kind:"number"},To={kind:"string"},Yn={kind:"boolean"},_s={kind:"color"},Yo={kind:"object"},Nn={kind:"value"},Wl={kind:"error"},Zu={kind:"collator"},ml={kind:"formatted"},Bu={kind:"resolvedImage"};function El(k,C){return{kind:"array",itemType:k,N:C}}function qs(k){if(k.kind==="array"){var C=qs(k.itemType);return typeof k.N=="number"?"array<"+C+", "+k.N+">":k.itemType.kind==="value"?"array":"array<"+C+">"}else return k.kind}var Jl=[vl,ji,To,Yn,_s,ml,Yo,El(Nn),Bu];function Nu(k,C){if(C.kind==="error")return null;if(k.kind==="array"){if(C.kind==="array"&&(C.N===0&&C.itemType.kind==="value"||!Nu(k.itemType,C.itemType))&&(typeof k.N!="number"||k.N===C.N))return null}else{if(k.kind===C.kind)return null;if(k.kind==="value")for(var V=0,oe=Jl;V<oe.length;V+=1){var _e=oe[V];if(!Nu(_e,C))return null}}return"Expected "+qs(k)+" but found "+qs(C)+" instead."}function Ic(k,C){return C.some(function(V){return V.kind===k.kind})}function Xu(k,C){return C.some(function(V){return V==="null"?k===null:V==="array"?Array.isArray(k):V==="object"?k&&!Array.isArray(k)&&typeof k=="object":V===typeof k})}var Th=t(function(k,C){var V={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function oe(Nt){return Nt=Math.round(Nt),Nt<0?0:Nt>255?255:Nt}function _e(Nt){return Nt<0?0:Nt>1?1:Nt}function Pe(Nt){return Nt[Nt.length-1]==="%"?oe(parseFloat(Nt)/100*255):oe(parseInt(Nt))}function je(Nt){return Nt[Nt.length-1]==="%"?_e(parseFloat(Nt)/100):_e(parseFloat(Nt))}function ct(Nt,Xt,gr){return gr<0?gr+=1:gr>1&&(gr-=1),gr*6<1?Nt+(Xt-Nt)*gr*6:gr*2<1?Xt:gr*3<2?Nt+(Xt-Nt)*(2/3-gr)*6:Nt}function Lt(Nt){var Xt=Nt.replace(/ /g,"").toLowerCase();if(Xt in V)return V[Xt].slice();if(Xt[0]==="#"){if(Xt.length===4){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=4095?[(gr&3840)>>4|(gr&3840)>>8,gr&240|(gr&240)>>4,gr&15|(gr&15)<<4,1]:null}else if(Xt.length===7){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=16777215?[(gr&16711680)>>16,(gr&65280)>>8,gr&255,1]:null}return null}var Br=Xt.indexOf("("),Rr=Xt.indexOf(")");if(Br!==-1&&Rr+1===Xt.length){var na=Xt.substr(0,Br),Ia=Xt.substr(Br+1,Rr-(Br+1)).split(","),ii=1;switch(na){case"rgba":if(Ia.length!==4)return null;ii=je(Ia.pop());case"rgb":return Ia.length!==3?null:[Pe(Ia[0]),Pe(Ia[1]),Pe(Ia[2]),ii];case"hsla":if(Ia.length!==4)return null;ii=je(Ia.pop());case"hsl":if(Ia.length!==3)return null;var Wa=(parseFloat(Ia[0])%360+360)%360/360,Si=je(Ia[1]),ci=je(Ia[2]),Ai=ci<=.5?ci*(Si+1):ci+Si-ci*Si,Li=ci*2-Ai;return[oe(ct(Li,Ai,Wa+1/3)*255),oe(ct(Li,Ai,Wa)*255),oe(ct(Li,Ai,Wa-1/3)*255),ii];default:return null}}return null}try{C.parseCSSColor=Lt}catch{}}),bf=Th.parseCSSColor,Rs=function(C,V,oe,_e){_e===void 0&&(_e=1),this.r=C,this.g=V,this.b=oe,this.a=_e};Rs.parse=function(C){if(C){if(C instanceof Rs)return C;if(typeof C=="string"){var V=bf(C);if(V)return new Rs(V[0]/255*V[3],V[1]/255*V[3],V[2]/255*V[3],V[3])}}},Rs.prototype.toString=function(){var C=this.toArray(),V=C[0],oe=C[1],_e=C[2],Pe=C[3];return"rgba("+Math.round(V)+","+Math.round(oe)+","+Math.round(_e)+","+Pe+")"},Rs.prototype.toArray=function(){var C=this,V=C.r,oe=C.g,_e=C.b,Pe=C.a;return Pe===0?[0,0,0,0]:[V*255/Pe,oe*255/Pe,_e*255/Pe,Pe]},Rs.black=new Rs(0,0,0,1),Rs.white=new Rs(1,1,1,1),Rs.transparent=new Rs(0,0,0,0),Rs.red=new Rs(1,0,0,1);var Yc=function(C,V,oe){C?this.sensitivity=V?"variant":"case":this.sensitivity=V?"accent":"base",this.locale=oe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Yc.prototype.compare=function(C,V){return this.collator.compare(C,V)},Yc.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var If=function(C,V,oe,_e,Pe){this.text=C,this.image=V,this.scale=oe,this.fontStack=_e,this.textColor=Pe},Zl=function(C){this.sections=C};Zl.fromString=function(C){return new Zl([new If(C,null,null,null,null)])},Zl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(C){return C.text.length!==0||C.image&&C.image.name.length!==0})},Zl.factory=function(C){return C instanceof Zl?C:Zl.fromString(C)},Zl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(C){return C.text}).join("")},Zl.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];if(_e.image){C.push(["image",_e.image.name]);continue}C.push(_e.text);var Pe={};_e.fontStack&&(Pe["text-font"]=["literal",_e.fontStack.split(",")]),_e.scale&&(Pe["font-scale"]=_e.scale),_e.textColor&&(Pe["text-color"]=["rgba"].concat(_e.textColor.toArray())),C.push(Pe)}return C};var yl=function(C){this.name=C.name,this.available=C.available};yl.prototype.toString=function(){return this.name},yl.fromString=function(C){return C?new yl({name:C,available:!1}):null},yl.prototype.serialize=function(){return["image",this.name]};function oc(k,C,V,oe){if(!(typeof k=="number"&&k>=0&&k<=255&&typeof C=="number"&&C>=0&&C<=255&&typeof V=="number"&&V>=0&&V<=255)){var _e=typeof oe=="number"?[k,C,V,oe]:[k,C,V];return"Invalid rgba value ["+_e.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof oe>"u"||typeof oe=="number"&&oe>=0&&oe<=1?null:"Invalid rgba value ["+[k,C,V,oe].join(", ")+"]: 'a' must be between 0 and 1."}function _c(k){if(k===null)return!0;if(typeof k=="string")return!0;if(typeof k=="boolean")return!0;if(typeof k=="number")return!0;if(k instanceof Rs)return!0;if(k instanceof Yc)return!0;if(k instanceof Zl)return!0;if(k instanceof yl)return!0;if(Array.isArray(k)){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(!_c(oe))return!1}return!0}else if(typeof k=="object"){for(var _e in k)if(!_c(k[_e]))return!1;return!0}else return!1}function Zs(k){if(k===null)return vl;if(typeof k=="string")return To;if(typeof k=="boolean")return Yn;if(typeof k=="number")return ji;if(k instanceof Rs)return _s;if(k instanceof Yc)return Zu;if(k instanceof Zl)return ml;if(k instanceof yl)return Bu;if(Array.isArray(k)){for(var C=k.length,V,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe],je=Zs(Pe);if(!V)V=je;else{if(V===je)continue;V=Nn;break}}return El(V||Nn,C)}else return Yo}function _l(k){var C=typeof k;return k===null?"":C==="string"||C==="number"||C==="boolean"?String(k):k instanceof Rs||k instanceof Zl||k instanceof yl?k.toString():JSON.stringify(k)}var Bs=function(C,V){this.type=C,this.value=V};Bs.parse=function(C,V){if(C.length!==2)return V.error("'literal' expression requires exactly one argument, but found "+(C.length-1)+" instead.");if(!_c(C[1]))return V.error("invalid value");var oe=C[1],_e=Zs(oe),Pe=V.expectedType;return _e.kind==="array"&&_e.N===0&&Pe&&Pe.kind==="array"&&(typeof Pe.N!="number"||Pe.N===0)&&(_e=Pe),new Bs(_e,oe)},Bs.prototype.evaluate=function(){return this.value},Bs.prototype.eachChild=function(){},Bs.prototype.outputDefined=function(){return!0},Bs.prototype.serialize=function(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof Rs?["rgba"].concat(this.value.toArray()):this.value instanceof Zl?this.value.serialize():this.value};var $s=function(C){this.name="ExpressionEvaluationError",this.message=C};$s.prototype.toJSON=function(){return this.message};var sc={string:To,number:ji,boolean:Yn,object:Yo},zl=function(C,V){this.type=C,this.args=V};zl.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=1,_e,Pe=C[0];if(Pe==="array"){var je;if(C.length>2){var ct=C[1];if(typeof ct!="string"||!(ct in sc)||ct==="object")return V.error('The item type argument of "array" must be one of string, number, boolean',1);je=sc[ct],oe++}else je=Nn;var Lt;if(C.length>3){if(C[2]!==null&&(typeof C[2]!="number"||C[2]<0||C[2]!==Math.floor(C[2])))return V.error('The length argument to "array" must be a positive integer literal',2);Lt=C[2],oe++}_e=El(je,Lt)}else _e=sc[Pe];for(var Nt=[];oe<C.length;oe++){var Xt=V.parse(C[oe],oe,Nn);if(!Xt)return null;Nt.push(Xt)}return new zl(_e,Nt)},zl.prototype.evaluate=function(C){for(var V=0;V<this.args.length;V++){var oe=this.args[V].evaluate(C),_e=Nu(this.type,Zs(oe));if(_e){if(V===this.args.length-1)throw new $s("Expected value to be of type "+qs(this.type)+", but found "+qs(Zs(oe))+" instead.")}else return oe}return null},zl.prototype.eachChild=function(C){this.args.forEach(C)},zl.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},zl.prototype.serialize=function(){var C=this.type,V=[C.kind];if(C.kind==="array"){var oe=C.itemType;if(oe.kind==="string"||oe.kind==="number"||oe.kind==="boolean"){V.push(oe.kind);var _e=C.N;(typeof _e=="number"||this.args.length>1)&&V.push(_e)}}return V.concat(this.args.map(function(Pe){return Pe.serialize()}))};var Yu=function(C){this.type=ml,this.sections=C};Yu.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[1];if(!Array.isArray(oe)&&typeof oe=="object")return V.error("First argument must be an image or text section.");for(var _e=[],Pe=!1,je=1;je<=C.length-1;++je){var ct=C[je];if(Pe&&typeof ct=="object"&&!Array.isArray(ct)){Pe=!1;var Lt=null;if(ct["font-scale"]&&(Lt=V.parse(ct["font-scale"],1,ji),!Lt))return null;var Nt=null;if(ct["text-font"]&&(Nt=V.parse(ct["text-font"],1,El(To)),!Nt))return null;var Xt=null;if(ct["text-color"]&&(Xt=V.parse(ct["text-color"],1,_s),!Xt))return null;var gr=_e[_e.length-1];gr.scale=Lt,gr.font=Nt,gr.textColor=Xt}else{var Br=V.parse(C[je],1,Nn);if(!Br)return null;var Rr=Br.type.kind;if(Rr!=="string"&&Rr!=="value"&&Rr!=="null"&&Rr!=="resolvedImage")return V.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Pe=!0,_e.push({content:Br,scale:null,font:null,textColor:null})}}return new Yu(_e)},Yu.prototype.evaluate=function(C){var V=function(oe){var _e=oe.content.evaluate(C);return Zs(_e)===Bu?new If("",_e,null,null,null):new If(_l(_e),null,oe.scale?oe.scale.evaluate(C):null,oe.font?oe.font.evaluate(C).join(","):null,oe.textColor?oe.textColor.evaluate(C):null)};return new Zl(this.sections.map(V))},Yu.prototype.eachChild=function(C){for(var V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];C(_e.content),_e.scale&&C(_e.scale),_e.font&&C(_e.font),_e.textColor&&C(_e.textColor)}},Yu.prototype.outputDefined=function(){return!1},Yu.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];C.push(_e.content.serialize());var Pe={};_e.scale&&(Pe["font-scale"]=_e.scale.serialize()),_e.font&&(Pe["text-font"]=_e.font.serialize()),_e.textColor&&(Pe["text-color"]=_e.textColor.serialize()),C.push(Pe)}return C};var Qs=function(C){this.type=Bu,this.input=C};Qs.parse=function(C,V){if(C.length!==2)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,To);return oe?new Qs(oe):V.error("No image name provided.")},Qs.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=yl.fromString(V);return oe&&C.availableImages&&(oe.available=C.availableImages.indexOf(V)>-1),oe},Qs.prototype.eachChild=function(C){C(this.input)},Qs.prototype.outputDefined=function(){return!1},Qs.prototype.serialize=function(){return["image",this.input.serialize()]};var fp={"to-boolean":Yn,"to-color":_s,"to-number":ji,"to-string":To},es=function(C,V){this.type=C,this.args=V};es.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[0];if((oe==="to-boolean"||oe==="to-string")&&C.length!==2)return V.error("Expected one argument.");for(var _e=fp[oe],Pe=[],je=1;je<C.length;je++){var ct=V.parse(C[je],je,Nn);if(!ct)return null;Pe.push(ct)}return new es(_e,Pe)},es.prototype.evaluate=function(C){if(this.type.kind==="boolean")return!!this.args[0].evaluate(C);if(this.type.kind==="color"){for(var V,oe,_e=0,Pe=this.args;_e<Pe.length;_e+=1){var je=Pe[_e];if(V=je.evaluate(C),oe=null,V instanceof Rs)return V;if(typeof V=="string"){var ct=C.parseColor(V);if(ct)return ct}else if(Array.isArray(V)&&(V.length<3||V.length>4?oe="Invalid rbga value "+JSON.stringify(V)+": expected an array containing either three or four numeric values.":oe=oc(V[0],V[1],V[2],V[3]),!oe))return new Rs(V[0]/255,V[1]/255,V[2]/255,V[3])}throw new $s(oe||"Could not parse color from value '"+(typeof V=="string"?V:String(JSON.stringify(V)))+"'")}else if(this.type.kind==="number"){for(var Lt=null,Nt=0,Xt=this.args;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];if(Lt=gr.evaluate(C),Lt===null)return 0;var Br=Number(Lt);if(!isNaN(Br))return Br}throw new $s("Could not convert "+JSON.stringify(Lt)+" to number.")}else return this.type.kind==="formatted"?Zl.fromString(_l(this.args[0].evaluate(C))):this.type.kind==="resolvedImage"?yl.fromString(_l(this.args[0].evaluate(C))):_l(this.args[0].evaluate(C))},es.prototype.eachChild=function(C){this.args.forEach(C)},es.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},es.prototype.serialize=function(){if(this.type.kind==="formatted")return new Yu([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new Qs(this.args[0]).serialize();var C=["to-"+this.type.kind];return this.eachChild(function(V){C.push(V.serialize())}),C};var Wh=["Unknown","Point","LineString","Polygon"],Ss=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};Ss.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null},Ss.prototype.geometryType=function(){return this.feature?typeof this.feature.type=="number"?Wh[this.feature.type]:this.feature.type:null},Ss.prototype.geometry=function(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null},Ss.prototype.canonicalID=function(){return this.canonical},Ss.prototype.properties=function(){return this.feature&&this.feature.properties||{}},Ss.prototype.parseColor=function(C){var V=this._parseColorCache[C];return V||(V=this._parseColorCache[C]=Rs.parse(C)),V};var So=function(C,V,oe,_e){this.name=C,this.type=V,this._evaluate=oe,this.args=_e};So.prototype.evaluate=function(C){return this._evaluate(C,this.args)},So.prototype.eachChild=function(C){this.args.forEach(C)},So.prototype.outputDefined=function(){return!1},So.prototype.serialize=function(){return[this.name].concat(this.args.map(function(C){return C.serialize()}))},So.parse=function(C,V){var oe,_e=C[0],Pe=So.definitions[_e];if(!Pe)return V.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0);for(var je=Array.isArray(Pe)?Pe[0]:Pe.type,ct=Array.isArray(Pe)?[[Pe[1],Pe[2]]]:Pe.overloads,Lt=ct.filter(function(uo){var vo=uo[0];return!Array.isArray(vo)||vo.length===C.length-1}),Nt=null,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt],Rr=Br[0],na=Br[1];Nt=new kl(V.registry,V.path,null,V.scope);for(var Ia=[],ii=!1,Wa=1;Wa<C.length;Wa++){var Si=C[Wa],ci=Array.isArray(Rr)?Rr[Wa-1]:Rr.type,Ai=Nt.parse(Si,1+Ia.length,ci);if(!Ai){ii=!0;break}Ia.push(Ai)}if(!ii){if(Array.isArray(Rr)&&Rr.length!==Ia.length){Nt.error("Expected "+Rr.length+" arguments, but found "+Ia.length+" instead.");continue}for(var Li=0;Li<Ia.length;Li++){var Ki=Array.isArray(Rr)?Rr[Li]:Rr.type,kn=Ia[Li];Nt.concat(Li+1).checkSubtype(Ki,kn.type)}if(Nt.errors.length===0)return new So(_e,je,na,Ia)}}if(Lt.length===1)(oe=V.errors).push.apply(oe,Nt.errors);else{for(var Tn=Lt.length?Lt:ct,lo=Tn.map(function(uo){var vo=uo[0];return hf(vo)}).join(" | "),qn=[],to=1;to<C.length;to++){var ds=V.parse(C[to],1+qn.length);if(!ds)return null;qn.push(qs(ds.type))}V.error("Expected arguments of type "+lo+", but found ("+qn.join(", ")+") instead.")}return null},So.register=function(C,V){So.definitions=V;for(var oe in V)C[oe]=So};function hf(k){return Array.isArray(k)?"("+k.map(qs).join(", ")+")":"("+qs(k.type)+"...)"}var Ku=function(C,V,oe){this.type=Zu,this.locale=oe,this.caseSensitive=C,this.diacriticSensitive=V};Ku.parse=function(C,V){if(C.length!==2)return V.error("Expected one argument.");var oe=C[1];if(typeof oe!="object"||Array.isArray(oe))return V.error("Collator options argument must be an object.");var _e=V.parse(oe["case-sensitive"]===void 0?!1:oe["case-sensitive"],1,Yn);if(!_e)return null;var Pe=V.parse(oe["diacritic-sensitive"]===void 0?!1:oe["diacritic-sensitive"],1,Yn);if(!Pe)return null;var je=null;return oe.locale&&(je=V.parse(oe.locale,1,To),!je)?null:new Ku(_e,Pe,je)},Ku.prototype.evaluate=function(C){return new Yc(this.caseSensitive.evaluate(C),this.diacriticSensitive.evaluate(C),this.locale?this.locale.evaluate(C):null)},Ku.prototype.eachChild=function(C){C(this.caseSensitive),C(this.diacriticSensitive),this.locale&&C(this.locale)},Ku.prototype.outputDefined=function(){return!1},Ku.prototype.serialize=function(){var C={};return C["case-sensitive"]=this.caseSensitive.serialize(),C["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(C.locale=this.locale.serialize()),["collator",C]};var cu=8192;function Zf(k,C){k[0]=Math.min(k[0],C[0]),k[1]=Math.min(k[1],C[1]),k[2]=Math.max(k[2],C[0]),k[3]=Math.max(k[3],C[1])}function Rc(k){return(180+k)/360}function pf(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function Fl(k,C){return!(k[0]<=C[0]||k[2]>=C[2]||k[1]<=C[1]||k[3]>=C[3])}function lh(k,C){var V=Rc(k[0]),oe=pf(k[1]),_e=Math.pow(2,C.z);return[Math.round(V*_e*cu),Math.round(oe*_e*cu)]}function Xf(k,C,V){var oe=k[0]-C[0],_e=k[1]-C[1],Pe=k[0]-V[0],je=k[1]-V[1];return oe*je-Pe*_e===0&&oe*Pe<=0&&_e*je<=0}function Rf(k,C,V){return C[1]>k[1]!=V[1]>k[1]&&k[0]<(V[0]-C[0])*(k[1]-C[1])/(V[1]-C[1])+C[0]}function Kc(k,C){for(var V=!1,oe=0,_e=C.length;oe<_e;oe++)for(var Pe=C[oe],je=0,ct=Pe.length;je<ct-1;je++){if(Xf(k,Pe[je],Pe[je+1]))return!1;Rf(k,Pe[je],Pe[je+1])&&(V=!V)}return V}function Yf(k,C){for(var V=0;V<C.length;V++)if(Kc(k,C[V]))return!0;return!1}function uh(k,C){return k[0]*C[1]-k[1]*C[0]}function Ju(k,C,V,oe){var _e=k[0]-V[0],Pe=k[1]-V[1],je=C[0]-V[0],ct=C[1]-V[1],Lt=oe[0]-V[0],Nt=oe[1]-V[1],Xt=_e*Nt-Lt*Pe,gr=je*Nt-Lt*ct;return Xt>0&&gr<0||Xt<0&&gr>0}function Df(k,C,V,oe){var _e=[C[0]-k[0],C[1]-k[1]],Pe=[oe[0]-V[0],oe[1]-V[1]];return uh(Pe,_e)===0?!1:!!(Ju(k,C,V,oe)&&Ju(V,oe,k,C))}function Dc(k,C,V){for(var oe=0,_e=V;oe<_e.length;oe+=1)for(var Pe=_e[oe],je=0;je<Pe.length-1;++je)if(Df(k,C,Pe[je],Pe[je+1]))return!0;return!1}function Jc(k,C){for(var V=0;V<k.length;++V)if(!Kc(k[V],C))return!1;for(var oe=0;oe<k.length-1;++oe)if(Dc(k[oe],k[oe+1],C))return!1;return!0}function Eu(k,C){for(var V=0;V<C.length;V++)if(Jc(k,C[V]))return!0;return!1}function wf(k,C,V){for(var oe=[],_e=0;_e<k.length;_e++){for(var Pe=[],je=0;je<k[_e].length;je++){var ct=lh(k[_e][je],V);Zf(C,ct),Pe.push(ct)}oe.push(Pe)}return oe}function zc(k,C,V){for(var oe=[],_e=0;_e<k.length;_e++){var Pe=wf(k[_e],C,V);oe.push(Pe)}return oe}function Us(k,C,V,oe){if(k[0]<V[0]||k[0]>V[2]){var _e=oe*.5,Pe=k[0]-V[0]>_e?-oe:V[0]-k[0]>_e?oe:0;Pe===0&&(Pe=k[0]-V[2]>_e?-oe:V[2]-k[0]>_e?oe:0),k[0]+=Pe}Zf(C,k)}function Kf(k){k[0]=k[1]=1/0,k[2]=k[3]=-1/0}function Zh(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct<Lt.length;ct+=1)for(var Nt=Lt[ct],Xt=0,gr=Nt;Xt<gr.length;Xt+=1){var Br=gr[Xt],Rr=[Br.x+Pe[0],Br.y+Pe[1]];Us(Rr,C,V,_e),je.push(Rr)}return je}function ch(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct<Lt.length;ct+=1){for(var Nt=Lt[ct],Xt=[],gr=0,Br=Nt;gr<Br.length;gr+=1){var Rr=Br[gr],na=[Rr.x+Pe[0],Rr.y+Pe[1]];Zf(C,na),Xt.push(na)}je.push(Xt)}if(C[2]-C[0]<=_e/2){Kf(C);for(var Ia=0,ii=je;Ia<ii.length;Ia+=1)for(var Wa=ii[Ia],Si=0,ci=Wa;Si<ci.length;Si+=1){var Ai=ci[Si];Us(Ai,C,V,_e)}}return je}function df(k,C){var V=[1/0,1/0,-1/0,-1/0],oe=[1/0,1/0,-1/0,-1/0],_e=k.canonicalID();if(C.type==="Polygon"){var Pe=wf(C.coordinates,oe,_e),je=Zh(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var ct=0,Lt=je;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(!Kc(Nt,Pe))return!1}}if(C.type==="MultiPolygon"){var Xt=zc(C.coordinates,oe,_e),gr=Zh(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(!Yf(na,Xt))return!1}}return!0}function Ah(k,C){var V=[1/0,1/0,-1/0,-1/0],oe=[1/0,1/0,-1/0,-1/0],_e=k.canonicalID();if(C.type==="Polygon"){var Pe=wf(C.coordinates,oe,_e),je=ch(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var ct=0,Lt=je;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(!Jc(Nt,Pe))return!1}}if(C.type==="MultiPolygon"){var Xt=zc(C.coordinates,oe,_e),gr=ch(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(!Eu(na,Xt))return!1}}return!0}var ku=function(C,V){this.type=Yn,this.geojson=C,this.geometries=V};ku.parse=function(C,V){if(C.length!==2)return V.error("'within' expression requires exactly one argument, but found "+(C.length-1)+" instead.");if(_c(C[1])){var oe=C[1];if(oe.type==="FeatureCollection")for(var _e=0;_e<oe.features.length;++_e){var Pe=oe.features[_e].geometry.type;if(Pe==="Polygon"||Pe==="MultiPolygon")return new ku(oe,oe.features[_e].geometry)}else if(oe.type==="Feature"){var je=oe.geometry.type;if(je==="Polygon"||je==="MultiPolygon")return new ku(oe,oe.geometry)}else if(oe.type==="Polygon"||oe.type==="MultiPolygon")return new ku(oe,oe)}return V.error("'within' expression requires valid geojson object that contains polygon geometry type.")},ku.prototype.evaluate=function(C){if(C.geometry()!=null&&C.canonicalID()!=null){if(C.geometryType()==="Point")return df(C,this.geometries);if(C.geometryType()==="LineString")return Ah(C,this.geometries)}return!1},ku.prototype.eachChild=function(){},ku.prototype.outputDefined=function(){return!0},ku.prototype.serialize=function(){return["within",this.geojson]};function fh(k){if(k instanceof So){if(k.name==="get"&&k.args.length===1)return!1;if(k.name==="feature-state")return!1;if(k.name==="has"&&k.args.length===1)return!1;if(k.name==="properties"||k.name==="geometry-type"||k.name==="id")return!1;if(/^filter-/.test(k.name))return!1}if(k instanceof ku)return!1;var C=!0;return k.eachChild(function(V){C&&!fh(V)&&(C=!1)}),C}function ru(k){if(k instanceof So&&k.name==="feature-state")return!1;var C=!0;return k.eachChild(function(V){C&&!ru(V)&&(C=!1)}),C}function Cu(k,C){if(k instanceof So&&C.indexOf(k.name)>=0)return!1;var V=!0;return k.eachChild(function(oe){V&&!Cu(oe,C)&&(V=!1)}),V}var xc=function(C,V){this.type=V.type,this.name=C,this.boundExpression=V};xc.parse=function(C,V){if(C.length!==2||typeof C[1]!="string")return V.error("'var' expression requires exactly one string literal argument.");var oe=C[1];return V.scope.has(oe)?new xc(oe,V.scope.get(oe)):V.error('Unknown variable "'+oe+'". Make sure "'+oe+'" has been bound in an enclosing "let" expression before using it.',1)},xc.prototype.evaluate=function(C){return this.boundExpression.evaluate(C)},xc.prototype.eachChild=function(){},xc.prototype.outputDefined=function(){return!1},xc.prototype.serialize=function(){return["var",this.name]};var kl=function(C,V,oe,_e,Pe){V===void 0&&(V=[]),_e===void 0&&(_e=new al),Pe===void 0&&(Pe=[]),this.registry=C,this.path=V,this.key=V.map(function(je){return"["+je+"]"}).join(""),this.scope=_e,this.errors=Pe,this.expectedType=oe};kl.prototype.parse=function(C,V,oe,_e,Pe){return Pe===void 0&&(Pe={}),V?this.concat(V,oe,_e)._parse(C,Pe):this._parse(C,Pe)},kl.prototype._parse=function(C,V){(C===null||typeof C=="string"||typeof C=="boolean"||typeof C=="number")&&(C=["literal",C]);function oe(Xt,gr,Br){return Br==="assert"?new zl(gr,[Xt]):Br==="coerce"?new es(gr,[Xt]):Xt}if(Array.isArray(C)){if(C.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var _e=C[0];if(typeof _e!="string")return this.error("Expression name must be a string, but found "+typeof _e+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var Pe=this.registry[_e];if(Pe){var je=Pe.parse(C,this);if(!je)return null;if(this.expectedType){var ct=this.expectedType,Lt=je.type;if((ct.kind==="string"||ct.kind==="number"||ct.kind==="boolean"||ct.kind==="object"||ct.kind==="array")&&Lt.kind==="value")je=oe(je,ct,V.typeAnnotation||"assert");else if((ct.kind==="color"||ct.kind==="formatted"||ct.kind==="resolvedImage")&&(Lt.kind==="value"||Lt.kind==="string"))je=oe(je,ct,V.typeAnnotation||"coerce");else if(this.checkSubtype(ct,Lt))return null}if(!(je instanceof Bs)&&je.type.kind!=="resolvedImage"&&Fc(je)){var Nt=new Ss;try{je=new Bs(je.type,je.evaluate(Nt))}catch(Xt){return this.error(Xt.message),null}}return je}return this.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof C>"u"?this.error("'undefined' value invalid. Use null instead."):typeof C=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof C+" instead.")},kl.prototype.concat=function(C,V,oe){var _e=typeof C=="number"?this.path.concat(C):this.path,Pe=oe?this.scope.concat(oe):this.scope;return new kl(this.registry,_e,V||null,Pe,this.errors)},kl.prototype.error=function(C){for(var V=[],oe=arguments.length-1;oe-- >0;)V[oe]=arguments[oe+1];var _e=""+this.key+V.map(function(Pe){return"["+Pe+"]"}).join("");this.errors.push(new fs(_e,C))},kl.prototype.checkSubtype=function(C,V){var oe=Nu(C,V);return oe&&this.error(oe),oe};function Fc(k){if(k instanceof xc)return Fc(k.boundExpression);if(k instanceof So&&k.name==="error")return!1;if(k instanceof Ku)return!1;if(k instanceof ku)return!1;var C=k instanceof es||k instanceof zl,V=!0;return k.eachChild(function(oe){C?V=V&&Fc(oe):V=V&&oe instanceof Bs}),V?fh(k)&&Cu(k,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function $u(k,C){for(var V=k.length-1,oe=0,_e=V,Pe=0,je,ct;oe<=_e;)if(Pe=Math.floor((oe+_e)/2),je=k[Pe],ct=k[Pe+1],je<=C){if(Pe===V||C<ct)return Pe;oe=Pe+1}else if(je>C)_e=Pe-1;else throw new $s("Input is not a number.");return 0}var vu=function(C,V,oe){this.type=C,this.input=V,this.labels=[],this.outputs=[];for(var _e=0,Pe=oe;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je[0],Lt=je[1];this.labels.push(ct),this.outputs.push(Lt)}};vu.parse=function(C,V){if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=[],Pe=null;V.expectedType&&V.expectedType.kind!=="value"&&(Pe=V.expectedType);for(var je=1;je<C.length;je+=2){var ct=je===1?-1/0:C[je],Lt=C[je+1],Nt=je,Xt=je+1;if(typeof ct!="number")return V.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Nt);if(_e.length&&_e[_e.length-1][0]>=ct)return V.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Nt);var gr=V.parse(Lt,Xt,Pe);if(!gr)return null;Pe=Pe||gr.type,_e.push([ct,gr])}return new vu(Pe,oe,_e)},vu.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e);return oe[je].evaluate(C)},vu.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V<oe.length;V+=1){var _e=oe[V];C(_e)}},vu.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})},vu.prototype.serialize=function(){for(var C=["step",this.input.serialize()],V=0;V<this.labels.length;V++)V>0&&C.push(this.labels[V]),C.push(this.outputs[V].serialize());return C};function xl(k,C,V){return k*(1-V)+C*V}function hh(k,C,V){return new Rs(xl(k.r,C.r,V),xl(k.g,C.g,V),xl(k.b,C.b,V),xl(k.a,C.a,V))}function Sh(k,C,V){return k.map(function(oe,_e){return xl(oe,C[_e],V)})}var Uu=Object.freeze({__proto__:null,number:xl,color:hh,array:Sh}),bc=.95047,lc=1,hp=1.08883,vf=4/29,Tf=6/29,Lu=3*Tf*Tf,zf=Tf*Tf*Tf,au=Math.PI/180,$c=180/Math.PI;function Mh(k){return k>zf?Math.pow(k,1/3):k/Lu+vf}function Ff(k){return k>Tf?k*k*k:Lu*(k-vf)}function il(k){return 255*(k<=.0031308?12.92*k:1.055*Math.pow(k,1/2.4)-.055)}function mu(k){return k/=255,k<=.04045?k/12.92:Math.pow((k+.055)/1.055,2.4)}function gu(k){var C=mu(k.r),V=mu(k.g),oe=mu(k.b),_e=Mh((.4124564*C+.3575761*V+.1804375*oe)/bc),Pe=Mh((.2126729*C+.7151522*V+.072175*oe)/lc),je=Mh((.0193339*C+.119192*V+.9503041*oe)/hp);return{l:116*Pe-16,a:500*(_e-Pe),b:200*(Pe-je),alpha:k.a}}function Jf(k){var C=(k.l+16)/116,V=isNaN(k.a)?C:C+k.a/500,oe=isNaN(k.b)?C:C-k.b/200;return C=lc*Ff(C),V=bc*Ff(V),oe=hp*Ff(oe),new Rs(il(3.2404542*V-1.5371385*C-.4985314*oe),il(-.969266*V+1.8760108*C+.041556*oe),il(.0556434*V-.2040259*C+1.0572252*oe),k.alpha)}function el(k,C,V){return{l:xl(k.l,C.l,V),a:xl(k.a,C.a,V),b:xl(k.b,C.b,V),alpha:xl(k.alpha,C.alpha,V)}}function mf(k){var C=gu(k),V=C.l,oe=C.a,_e=C.b,Pe=Math.atan2(_e,oe)*$c;return{h:Pe<0?Pe+360:Pe,c:Math.sqrt(oe*oe+_e*_e),l:V,alpha:k.a}}function wc(k){var C=k.h*au,V=k.c,oe=k.l;return Jf({l:oe,a:Math.cos(C)*V,b:Math.sin(C)*V,alpha:k.alpha})}function ju(k,C,V){var oe=C-k;return k+V*(oe>180||oe<-180?oe-360*Math.round(oe/360):oe)}function Af(k,C,V){return{h:ju(k.h,C.h,V),c:xl(k.c,C.c,V),l:xl(k.l,C.l,V),alpha:xl(k.alpha,C.alpha,V)}}var uc={forward:gu,reverse:Jf,interpolate:el},Qc={forward:mf,reverse:wc,interpolate:Af},$f=Object.freeze({__proto__:null,lab:uc,hcl:Qc}),Vl=function(C,V,oe,_e,Pe){this.type=C,this.operator=V,this.interpolation=oe,this.input=_e,this.labels=[],this.outputs=[];for(var je=0,ct=Pe;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt[0],Xt=Lt[1];this.labels.push(Nt),this.outputs.push(Xt)}};Vl.interpolationFactor=function(C,V,oe,_e){var Pe=0;if(C.name==="exponential")Pe=Qf(V,C.base,oe,_e);else if(C.name==="linear")Pe=Qf(V,1,oe,_e);else if(C.name==="cubic-bezier"){var je=C.controlPoints,ct=new o(je[0],je[1],je[2],je[3]);Pe=ct.solve(Qf(V,1,oe,_e))}return Pe},Vl.parse=function(C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C.slice(3);if(!Array.isArray(_e)||_e.length===0)return V.error("Expected an interpolation type expression.",1);if(_e[0]==="linear")_e={name:"linear"};else if(_e[0]==="exponential"){var ct=_e[1];if(typeof ct!="number")return V.error("Exponential interpolation requires a numeric base.",1,1);_e={name:"exponential",base:ct}}else if(_e[0]==="cubic-bezier"){var Lt=_e.slice(1);if(Lt.length!==4||Lt.some(function(Wa){return typeof Wa!="number"||Wa<0||Wa>1}))return V.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);_e={name:"cubic-bezier",controlPoints:Lt}}else return V.error("Unknown interpolation type "+String(_e[0]),1,0);if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");if(Pe=V.parse(Pe,2,ji),!Pe)return null;var Nt=[],Xt=null;oe==="interpolate-hcl"||oe==="interpolate-lab"?Xt=_s:V.expectedType&&V.expectedType.kind!=="value"&&(Xt=V.expectedType);for(var gr=0;gr<je.length;gr+=2){var Br=je[gr],Rr=je[gr+1],na=gr+3,Ia=gr+4;if(typeof Br!="number")return V.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',na);if(Nt.length&&Nt[Nt.length-1][0]>=Br)return V.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',na);var ii=V.parse(Rr,Ia,Xt);if(!ii)return null;Xt=Xt||ii.type,Nt.push([Br,ii])}return Xt.kind!=="number"&&Xt.kind!=="color"&&!(Xt.kind==="array"&&Xt.itemType.kind==="number"&&typeof Xt.N=="number")?V.error("Type "+qs(Xt)+" is not interpolatable."):new Vl(Xt,oe,_e,Pe,Nt)},Vl.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e),ct=V[je],Lt=V[je+1],Nt=Vl.interpolationFactor(this.interpolation,_e,ct,Lt),Xt=oe[je].evaluate(C),gr=oe[je+1].evaluate(C);return this.operator==="interpolate"?Uu[this.type.kind.toLowerCase()](Xt,gr,Nt):this.operator==="interpolate-hcl"?Qc.reverse(Qc.interpolate(Qc.forward(Xt),Qc.forward(gr),Nt)):uc.reverse(uc.interpolate(uc.forward(Xt),uc.forward(gr),Nt))},Vl.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V<oe.length;V+=1){var _e=oe[V];C(_e)}},Vl.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})},Vl.prototype.serialize=function(){var C;this.interpolation.name==="linear"?C=["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?C=["linear"]:C=["exponential",this.interpolation.base]:C=["cubic-bezier"].concat(this.interpolation.controlPoints);for(var V=[this.operator,C,this.input.serialize()],oe=0;oe<this.labels.length;oe++)V.push(this.labels[oe],this.outputs[oe].serialize());return V};function Qf(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Vu=function(C,V){this.type=C,this.args=V};Vu.parse=function(C,V){if(C.length<2)return V.error("Expectected at least one argument.");var oe=null,_e=V.expectedType;_e&&_e.kind!=="value"&&(oe=_e);for(var Pe=[],je=0,ct=C.slice(1);je<ct.length;je+=1){var Lt=ct[je],Nt=V.parse(Lt,1+Pe.length,oe,void 0,{typeAnnotation:"omit"});if(!Nt)return null;oe=oe||Nt.type,Pe.push(Nt)}var Xt=_e&&Pe.some(function(gr){return Nu(_e,gr.type)});return Xt?new Vu(Nn,Pe):new Vu(oe,Pe)},Vu.prototype.evaluate=function(C){for(var V=null,oe=0,_e,Pe=0,je=this.args;Pe<je.length;Pe+=1){var ct=je[Pe];if(oe++,V=ct.evaluate(C),V&&V instanceof yl&&!V.available&&(_e||(_e=V.name),V=null,oe===this.args.length&&(V=_e)),V!==null)break}return V},Vu.prototype.eachChild=function(C){this.args.forEach(C)},Vu.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},Vu.prototype.serialize=function(){var C=["coalesce"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Tc=function(C,V){this.type=V.type,this.bindings=[].concat(C),this.result=V};Tc.prototype.evaluate=function(C){return this.result.evaluate(C)},Tc.prototype.eachChild=function(C){for(var V=0,oe=this.bindings;V<oe.length;V+=1){var _e=oe[V];C(_e[1])}C(this.result)},Tc.parse=function(C,V){if(C.length<4)return V.error("Expected at least 3 arguments, but found "+(C.length-1)+" instead.");for(var oe=[],_e=1;_e<C.length-1;_e+=2){var Pe=C[_e];if(typeof Pe!="string")return V.error("Expected string, but found "+typeof Pe+" instead.",_e);if(/[^a-zA-Z0-9_]/.test(Pe))return V.error("Variable names must contain only alphanumeric characters or '_'.",_e);var je=V.parse(C[_e+1],_e+1);if(!je)return null;oe.push([Pe,je])}var ct=V.parse(C[C.length-1],C.length-1,V.expectedType,oe);return ct?new Tc(oe,ct):null},Tc.prototype.outputDefined=function(){return this.result.outputDefined()},Tc.prototype.serialize=function(){for(var C=["let"],V=0,oe=this.bindings;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];C.push(Pe,je.serialize())}return C.push(this.result.serialize()),C};var cc=function(C,V,oe){this.type=C,this.index=V,this.input=oe};cc.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,ji),_e=V.parse(C[2],2,El(V.expectedType||Nn));if(!oe||!_e)return null;var Pe=_e.type;return new cc(Pe.itemType,oe,_e)},cc.prototype.evaluate=function(C){var V=this.index.evaluate(C),oe=this.input.evaluate(C);if(V<0)throw new $s("Array index out of bounds: "+V+" < 0.");if(V>=oe.length)throw new $s("Array index out of bounds: "+V+" > "+(oe.length-1)+".");if(V!==Math.floor(V))throw new $s("Array index must be an integer, but found "+V+" instead.");return oe[V]},cc.prototype.eachChild=function(C){C(this.index),C(this.input)},cc.prototype.outputDefined=function(){return!1},cc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Cl=function(C,V){this.type=Yn,this.needle=C,this.haystack=V};Cl.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);return!oe||!_e?null:Ic(oe.type,[Yn,To,ji,vl,Nn])?new Cl(oe,_e):V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead")},Cl.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!oe)return!1;if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");return oe.indexOf(V)>=0},Cl.prototype.eachChild=function(C){C(this.needle),C(this.haystack)},Cl.prototype.outputDefined=function(){return!0},Cl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var iu=function(C,V,oe){this.type=ji,this.needle=C,this.haystack=V,this.fromIndex=oe};iu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);if(!oe||!_e)return null;if(!Ic(oe.type,[Yn,To,ji,vl,Nn]))return V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new iu(oe,_e,Pe):null}else return new iu(oe,_e)},iu.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");if(this.fromIndex){var _e=this.fromIndex.evaluate(C);return oe.indexOf(V,_e)}return oe.indexOf(V)},iu.prototype.eachChild=function(C){C(this.needle),C(this.haystack),this.fromIndex&&C(this.fromIndex)},iu.prototype.outputDefined=function(){return!1},iu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var C=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),C]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var fc=function(C,V,oe,_e,Pe,je){this.inputType=C,this.type=V,this.input=oe,this.cases=_e,this.outputs=Pe,this.otherwise=je};fc.parse=function(C,V){if(C.length<5)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if(C.length%2!==1)return V.error("Expected an even number of arguments.");var oe,_e;V.expectedType&&V.expectedType.kind!=="value"&&(_e=V.expectedType);for(var Pe={},je=[],ct=2;ct<C.length-1;ct+=2){var Lt=C[ct],Nt=C[ct+1];Array.isArray(Lt)||(Lt=[Lt]);var Xt=V.concat(ct);if(Lt.length===0)return Xt.error("Expected at least one branch label.");for(var gr=0,Br=Lt;gr<Br.length;gr+=1){var Rr=Br[gr];if(typeof Rr!="number"&&typeof Rr!="string")return Xt.error("Branch labels must be numbers or strings.");if(typeof Rr=="number"&&Math.abs(Rr)>Number.MAX_SAFE_INTEGER)return Xt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Rr=="number"&&Math.floor(Rr)!==Rr)return Xt.error("Numeric branch labels must be integer values.");if(!oe)oe=Zs(Rr);else if(Xt.checkSubtype(oe,Zs(Rr)))return null;if(typeof Pe[String(Rr)]<"u")return Xt.error("Branch labels must be unique.");Pe[String(Rr)]=je.length}var na=V.parse(Nt,ct,_e);if(!na)return null;_e=_e||na.type,je.push(na)}var Ia=V.parse(C[1],1,Nn);if(!Ia)return null;var ii=V.parse(C[C.length-1],C.length-1,_e);return!ii||Ia.type.kind!=="value"&&V.concat(1).checkSubtype(oe,Ia.type)?null:new fc(oe,_e,Ia,Pe,je,ii)},fc.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=Zs(V)===this.inputType&&this.outputs[this.cases[V]]||this.otherwise;return oe.evaluate(C)},fc.prototype.eachChild=function(C){C(this.input),this.outputs.forEach(C),C(this.otherwise)},fc.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})&&this.otherwise.outputDefined()},fc.prototype.serialize=function(){for(var C=this,V=["match",this.input.serialize()],oe=Object.keys(this.cases).sort(),_e=[],Pe={},je=0,ct=oe;je<ct.length;je+=1){var Lt=ct[je],Nt=Pe[this.cases[Lt]];Nt===void 0?(Pe[this.cases[Lt]]=_e.length,_e.push([this.cases[Lt],[Lt]])):_e[Nt][1].push(Lt)}for(var Xt=function(Ia){return C.inputType.kind==="number"?Number(Ia):Ia},gr=0,Br=_e;gr<Br.length;gr+=1){var Rr=Br[gr],Nt=Rr[0],na=Rr[1];na.length===1?V.push(Xt(na[0])):V.push(na.map(Xt)),V.push(this.outputs[outputIndex$1].serialize())}return V.push(this.otherwise.serialize()),V};var Oc=function(C,V,oe){this.type=C,this.branches=V,this.otherwise=oe};Oc.parse=function(C,V){if(C.length<4)return V.error("Expected at least 3 arguments, but found only "+(C.length-1)+".");if(C.length%2!==0)return V.error("Expected an odd number of arguments.");var oe;V.expectedType&&V.expectedType.kind!=="value"&&(oe=V.expectedType);for(var _e=[],Pe=1;Pe<C.length-1;Pe+=2){var je=V.parse(C[Pe],Pe,Yn);if(!je)return null;var ct=V.parse(C[Pe+1],Pe+1,oe);if(!ct)return null;_e.push([je,ct]),oe=oe||ct.type}var Lt=V.parse(C[C.length-1],C.length-1,oe);return Lt?new Oc(oe,_e,Lt):null},Oc.prototype.evaluate=function(C){for(var V=0,oe=this.branches;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];if(Pe.evaluate(C))return je.evaluate(C)}return this.otherwise.evaluate(C)},Oc.prototype.eachChild=function(C){for(var V=0,oe=this.branches;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];C(Pe),C(je)}C(this.otherwise)},Oc.prototype.outputDefined=function(){return this.branches.every(function(C){var V=C[0],oe=C[1];return oe.outputDefined()})&&this.otherwise.outputDefined()},Oc.prototype.serialize=function(){var C=["case"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Qu=function(C,V,oe,_e){this.type=C,this.input=V,this.beginIndex=oe,this.endIndex=_e};Qu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,ji);if(!oe||!_e)return null;if(!Ic(oe.type,[El(Nn),To,Nn]))return V.error("Expected first argument to be of type array or string, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new Qu(oe.type,oe,_e,Pe):null}else return new Qu(oe.type,oe,_e)},Qu.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=this.beginIndex.evaluate(C);if(!Xu(V,["string","array"]))throw new $s("Expected first argument to be of type array or string, but found "+qs(Zs(V))+" instead.");if(this.endIndex){var _e=this.endIndex.evaluate(C);return V.slice(oe,_e)}return V.slice(oe)},Qu.prototype.eachChild=function(C){C(this.input),C(this.beginIndex),this.endIndex&&C(this.endIndex)},Qu.prototype.outputDefined=function(){return!1},Qu.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var C=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),C]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function ef(k,C){return k==="=="||k==="!="?C.kind==="boolean"||C.kind==="string"||C.kind==="number"||C.kind==="null"||C.kind==="value":C.kind==="string"||C.kind==="number"||C.kind==="value"}function Zt(k,C,V){return C===V}function fr(k,C,V){return C!==V}function Yr(k,C,V){return C<V}function qr(k,C,V){return C>V}function ba(k,C,V){return C<=V}function Ka(k,C,V){return C>=V}function oi(k,C,V,oe){return oe.compare(C,V)===0}function yi(k,C,V,oe){return!oi(k,C,V,oe)}function ki(k,C,V,oe){return oe.compare(C,V)<0}function Bi(k,C,V,oe){return oe.compare(C,V)>0}function li(k,C,V,oe){return oe.compare(C,V)<=0}function _i(k,C,V,oe){return oe.compare(C,V)>=0}function vi(k,C,V){var oe=k!=="=="&&k!=="!=";return function(){function _e(Pe,je,ct){this.type=Yn,this.lhs=Pe,this.rhs=je,this.collator=ct,this.hasUntypedArgument=Pe.type.kind==="value"||je.type.kind==="value"}return _e.parse=function(je,ct){if(je.length!==3&&je.length!==4)return ct.error("Expected two or three arguments.");var Lt=je[0],Nt=ct.parse(je[1],1,Nn);if(!Nt)return null;if(!ef(Lt,Nt.type))return ct.concat(1).error('"'+Lt+`" comparisons are not supported for type '`+qs(Nt.type)+"'.");var Xt=ct.parse(je[2],2,Nn);if(!Xt)return null;if(!ef(Lt,Xt.type))return ct.concat(2).error('"'+Lt+`" comparisons are not supported for type '`+qs(Xt.type)+"'.");if(Nt.type.kind!==Xt.type.kind&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot compare types '"+qs(Nt.type)+"' and '"+qs(Xt.type)+"'.");oe&&(Nt.type.kind==="value"&&Xt.type.kind!=="value"?Nt=new zl(Xt.type,[Nt]):Nt.type.kind!=="value"&&Xt.type.kind==="value"&&(Xt=new zl(Nt.type,[Xt])));var gr=null;if(je.length===4){if(Nt.type.kind!=="string"&&Xt.type.kind!=="string"&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot use collator to compare non-string types.");if(gr=ct.parse(je[3],3,Zu),!gr)return null}return new _e(Nt,Xt,gr)},_e.prototype.evaluate=function(je){var ct=this.lhs.evaluate(je),Lt=this.rhs.evaluate(je);if(oe&&this.hasUntypedArgument){var Nt=Zs(ct),Xt=Zs(Lt);if(Nt.kind!==Xt.kind||!(Nt.kind==="string"||Nt.kind==="number"))throw new $s('Expected arguments for "'+k+'" to be (string, string) or (number, number), but found ('+Nt.kind+", "+Xt.kind+") instead.")}if(this.collator&&!oe&&this.hasUntypedArgument){var gr=Zs(ct),Br=Zs(Lt);if(gr.kind!=="string"||Br.kind!=="string")return C(je,ct,Lt)}return this.collator?V(je,ct,Lt,this.collator.evaluate(je)):C(je,ct,Lt)},_e.prototype.eachChild=function(je){je(this.lhs),je(this.rhs),this.collator&&je(this.collator)},_e.prototype.outputDefined=function(){return!0},_e.prototype.serialize=function(){var je=[k];return this.eachChild(function(ct){je.push(ct.serialize())}),je},_e}()}var ti=vi("==",Zt,oi),rn=vi("!=",fr,yi),Kn=vi("<",Yr,ki),Wn=vi(">",qr,Bi),Jn=vi("<=",ba,li),no=vi(">=",Ka,_i),en=function(C,V,oe,_e,Pe){this.type=To,this.number=C,this.locale=V,this.currency=oe,this.minFractionDigits=_e,this.maxFractionDigits=Pe};en.parse=function(C,V){if(C.length!==3)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=C[2];if(typeof _e!="object"||Array.isArray(_e))return V.error("NumberFormat options argument must be an object.");var Pe=null;if(_e.locale&&(Pe=V.parse(_e.locale,1,To),!Pe))return null;var je=null;if(_e.currency&&(je=V.parse(_e.currency,1,To),!je))return null;var ct=null;if(_e["min-fraction-digits"]&&(ct=V.parse(_e["min-fraction-digits"],1,ji),!ct))return null;var Lt=null;return _e["max-fraction-digits"]&&(Lt=V.parse(_e["max-fraction-digits"],1,ji),!Lt)?null:new en(oe,Pe,je,ct,Lt)},en.prototype.evaluate=function(C){return new Intl.NumberFormat(this.locale?this.locale.evaluate(C):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(C):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(C):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(C):void 0}).format(this.number.evaluate(C))},en.prototype.eachChild=function(C){C(this.number),this.locale&&C(this.locale),this.currency&&C(this.currency),this.minFractionDigits&&C(this.minFractionDigits),this.maxFractionDigits&&C(this.maxFractionDigits)},en.prototype.outputDefined=function(){return!1},en.prototype.serialize=function(){var C={};return this.locale&&(C.locale=this.locale.serialize()),this.currency&&(C.currency=this.currency.serialize()),this.minFractionDigits&&(C["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(C["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),C]};var Ri=function(C){this.type=ji,this.input=C};Ri.parse=function(C,V){if(C.length!==2)return V.error("Expected 1 argument, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1);return oe?oe.type.kind!=="array"&&oe.type.kind!=="string"&&oe.type.kind!=="value"?V.error("Expected argument of type string or array, but found "+qs(oe.type)+" instead."):new Ri(oe):null},Ri.prototype.evaluate=function(C){var V=this.input.evaluate(C);if(typeof V=="string")return V.length;if(Array.isArray(V))return V.length;throw new $s("Expected value to be of type string or array, but found "+qs(Zs(V))+" instead.")},Ri.prototype.eachChild=function(C){C(this.input)},Ri.prototype.outputDefined=function(){return!1},Ri.prototype.serialize=function(){var C=["length"];return this.eachChild(function(V){C.push(V.serialize())}),C};var co={"==":ti,"!=":rn,">":Wn,"<":Kn,">=":no,"<=":Jn,array:zl,at:cc,boolean:zl,case:Oc,coalesce:Vu,collator:Ku,format:Yu,image:Qs,in:Cl,"index-of":iu,interpolate:Vl,"interpolate-hcl":Vl,"interpolate-lab":Vl,length:Ri,let:Tc,literal:Bs,match:fc,number:zl,"number-format":en,object:zl,slice:Qu,step:vu,string:zl,"to-boolean":es,"to-color":es,"to-number":es,"to-string":es,var:xc,within:ku};function Wo(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3];V=V.evaluate(k),oe=oe.evaluate(k),_e=_e.evaluate(k);var je=Pe?Pe.evaluate(k):1,ct=oc(V,oe,_e,je);if(ct)throw new $s(ct);return new Rs(V/255*je,oe/255*je,_e/255*je,je)}function bs(k,C){return k in C}function Xs(k,C){var V=C[k];return typeof V>"u"?null:V}function Ms(k,C,V,oe){for(;V<=oe;){var _e=V+oe>>1;if(C[_e]===k)return!0;C[_e]>k?oe=_e-1:V=_e+1}return!1}function Hs(k){return{type:k}}So.register(co,{error:[Wl,[To],function(k,C){var V=C[0];throw new $s(V.evaluate(k))}],typeof:[To,[Nn],function(k,C){var V=C[0];return qs(Zs(V.evaluate(k)))}],"to-rgba":[El(ji,4),[_s],function(k,C){var V=C[0];return V.evaluate(k).toArray()}],rgb:[_s,[ji,ji,ji],Wo],rgba:[_s,[ji,ji,ji,ji],Wo],has:{type:Yn,overloads:[[[To],function(k,C){var V=C[0];return bs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return bs(V.evaluate(k),oe.evaluate(k))}]]},get:{type:Nn,overloads:[[[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return Xs(V.evaluate(k),oe.evaluate(k))}]]},"feature-state":[Nn,[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.featureState||{})}],properties:[Yo,[],function(k){return k.properties()}],"geometry-type":[To,[],function(k){return k.geometryType()}],id:[Nn,[],function(k){return k.id()}],zoom:[ji,[],function(k){return k.globals.zoom}],"heatmap-density":[ji,[],function(k){return k.globals.heatmapDensity||0}],"line-progress":[ji,[],function(k){return k.globals.lineProgress||0}],accumulated:[Nn,[],function(k){return k.globals.accumulated===void 0?null:k.globals.accumulated}],"+":[ji,Hs(ji),function(k,C){for(var V=0,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V+=Pe.evaluate(k)}return V}],"*":[ji,Hs(ji),function(k,C){for(var V=1,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V*=Pe.evaluate(k)}return V}],"-":{type:ji,overloads:[[[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)-oe.evaluate(k)}],[[ji],function(k,C){var V=C[0];return-V.evaluate(k)}]]},"/":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)/oe.evaluate(k)}],"%":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)%oe.evaluate(k)}],ln2:[ji,[],function(){return Math.LN2}],pi:[ji,[],function(){return Math.PI}],e:[ji,[],function(){return Math.E}],"^":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return Math.pow(V.evaluate(k),oe.evaluate(k))}],sqrt:[ji,[ji],function(k,C){var V=C[0];return Math.sqrt(V.evaluate(k))}],log10:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN10}],ln:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))}],log2:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN2}],sin:[ji,[ji],function(k,C){var V=C[0];return Math.sin(V.evaluate(k))}],cos:[ji,[ji],function(k,C){var V=C[0];return Math.cos(V.evaluate(k))}],tan:[ji,[ji],function(k,C){var V=C[0];return Math.tan(V.evaluate(k))}],asin:[ji,[ji],function(k,C){var V=C[0];return Math.asin(V.evaluate(k))}],acos:[ji,[ji],function(k,C){var V=C[0];return Math.acos(V.evaluate(k))}],atan:[ji,[ji],function(k,C){var V=C[0];return Math.atan(V.evaluate(k))}],min:[ji,Hs(ji),function(k,C){return Math.min.apply(Math,C.map(function(V){return V.evaluate(k)}))}],max:[ji,Hs(ji),function(k,C){return Math.max.apply(Math,C.map(function(V){return V.evaluate(k)}))}],abs:[ji,[ji],function(k,C){var V=C[0];return Math.abs(V.evaluate(k))}],round:[ji,[ji],function(k,C){var V=C[0],oe=V.evaluate(k);return oe<0?-Math.round(-oe):Math.round(oe)}],floor:[ji,[ji],function(k,C){var V=C[0];return Math.floor(V.evaluate(k))}],ceil:[ji,[ji],function(k,C){var V=C[0];return Math.ceil(V.evaluate(k))}],"filter-==":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1];return k.properties()[V.value]===oe.value}],"filter-id-==":[Yn,[Nn],function(k,C){var V=C[0];return k.id()===V.value}],"filter-type-==":[Yn,[To],function(k,C){var V=C[0];return k.geometryType()===V.value}],"filter-<":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<Pe}],"filter-id-<":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<_e}],"filter->":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>Pe}],"filter-id->":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>_e}],"filter-<=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<=Pe}],"filter-id-<=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<=_e}],"filter->=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>=Pe}],"filter-id->=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>=_e}],"filter-has":[Yn,[Nn],function(k,C){var V=C[0];return V.value in k.properties()}],"filter-has-id":[Yn,[],function(k){return k.id()!==null&&k.id()!==void 0}],"filter-type-in":[Yn,[El(To)],function(k,C){var V=C[0];return V.value.indexOf(k.geometryType())>=0}],"filter-id-in":[Yn,[El(Nn)],function(k,C){var V=C[0];return V.value.indexOf(k.id())>=0}],"filter-in-small":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return oe.value.indexOf(k.properties()[V.value])>=0}],"filter-in-large":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return Ms(k.properties()[V.value],oe.value,0,oe.value.length-1)}],all:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)&&oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V<oe.length;V+=1){var _e=oe[V];if(!_e.evaluate(k))return!1}return!0}]]},any:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)||oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V<oe.length;V+=1){var _e=oe[V];if(_e.evaluate(k))return!0}return!1}]]},"!":[Yn,[Yn],function(k,C){var V=C[0];return!V.evaluate(k)}],"is-supported-script":[Yn,[To],function(k,C){var V=C[0],oe=k.globals&&k.globals.isSupportedScript;return oe?oe(V.evaluate(k)):!0}],upcase:[To,[To],function(k,C){var V=C[0];return V.evaluate(k).toUpperCase()}],downcase:[To,[To],function(k,C){var V=C[0];return V.evaluate(k).toLowerCase()}],concat:[To,Hs(Nn),function(k,C){return C.map(function(V){return _l(V.evaluate(k))}).join("")}],"resolved-locale":[To,[Zu],function(k,C){var V=C[0];return V.evaluate(k).resolvedLocale()}]});function vs(k){return{result:"success",value:k}}function Il(k){return{result:"error",value:k}}function fl(k){return k["property-type"]==="data-driven"||k["property-type"]==="cross-faded-data-driven"}function tl(k){return!!k.expression&&k.expression.parameters.indexOf("zoom")>-1}function Ln(k){return!!k.expression&&k.expression.interpolated}function Ao(k){return k instanceof Number?"number":k instanceof String?"string":k instanceof Boolean?"boolean":Array.isArray(k)?"array":k===null?"null":typeof k}function js(k){return typeof k=="object"&&k!==null&&!Array.isArray(k)}function Ts(k){return k}function nu(k,C){var V=C.type==="color",oe=k.stops&&typeof k.stops[0][0]=="object",_e=oe||k.property!==void 0,Pe=oe||!_e,je=k.type||(Ln(C)?"exponential":"interval");if(V&&(k=Os({},k),k.stops&&(k.stops=k.stops.map(function(Tn){return[Tn[0],Rs.parse(Tn[1])]})),k.default?k.default=Rs.parse(k.default):k.default=Rs.parse(C.default)),k.colorSpace&&k.colorSpace!=="rgb"&&!$f[k.colorSpace])throw new Error("Unknown color space: "+k.colorSpace);var ct,Lt,Nt;if(je==="exponential")ct=yu;else if(je==="interval")ct=tf;else if(je==="categorical"){ct=ec,Lt=Object.create(null);for(var Xt=0,gr=k.stops;Xt<gr.length;Xt+=1){var Br=gr[Xt];Lt[Br[0]]=Br[1]}Nt=typeof k.stops[0][0]}else if(je==="identity")ct=Bc;else throw new Error('Unknown function type "'+je+'"');if(oe){for(var Rr={},na=[],Ia=0;Ia<k.stops.length;Ia++){var ii=k.stops[Ia],Wa=ii[0].zoom;Rr[Wa]===void 0&&(Rr[Wa]={zoom:Wa,type:k.type,property:k.property,default:k.default,stops:[]},na.push(Wa)),Rr[Wa].stops.push([ii[0].value,ii[1]])}for(var Si=[],ci=0,Ai=na;ci<Ai.length;ci+=1){var Li=Ai[ci];Si.push([Rr[Li].zoom,nu(Rr[Li],C)])}var Ki={name:"linear"};return{kind:"composite",interpolationType:Ki,interpolationFactor:Vl.interpolationFactor.bind(void 0,Ki),zoomStops:Si.map(function(Tn){return Tn[0]}),evaluate:function(lo,qn){var to=lo.zoom;return yu({stops:Si,base:k.base},C,to).evaluate(to,qn)}}}else if(Pe){var kn=je==="exponential"?{name:"exponential",base:k.base!==void 0?k.base:1}:null;return{kind:"camera",interpolationType:kn,interpolationFactor:Vl.interpolationFactor.bind(void 0,kn),zoomStops:k.stops.map(function(Tn){return Tn[0]}),evaluate:function(Tn){var lo=Tn.zoom;return ct(k,C,lo,Lt,Nt)}}}else return{kind:"source",evaluate:function(lo,qn){var to=qn&&qn.properties?qn.properties[k.property]:void 0;return to===void 0?Pu(k.default,C.default):ct(k,C,to,Lt,Nt)}}}function Pu(k,C,V){if(k!==void 0)return k;if(C!==void 0)return C;if(V!==void 0)return V}function ec(k,C,V,oe,_e){var Pe=typeof V===_e?oe[V]:void 0;return Pu(Pe,k.default,C.default)}function tf(k,C,V){if(Ao(V)!=="number")return Pu(k.default,C.default);var oe=k.stops.length;if(oe===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[oe-1][0])return k.stops[oe-1][1];var _e=$u(k.stops.map(function(Pe){return Pe[0]}),V);return k.stops[_e][1]}function yu(k,C,V){var oe=k.base!==void 0?k.base:1;if(Ao(V)!=="number")return Pu(k.default,C.default);var _e=k.stops.length;if(_e===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[_e-1][0])return k.stops[_e-1][1];var Pe=$u(k.stops.map(function(gr){return gr[0]}),V),je=Iu(V,oe,k.stops[Pe][0],k.stops[Pe+1][0]),ct=k.stops[Pe][1],Lt=k.stops[Pe+1][1],Nt=Uu[C.type]||Ts;if(k.colorSpace&&k.colorSpace!=="rgb"){var Xt=$f[k.colorSpace];Nt=function(gr,Br){return Xt.reverse(Xt.interpolate(Xt.forward(gr),Xt.forward(Br),je))}}return typeof ct.evaluate=="function"?{evaluate:function(){for(var Br=[],Rr=arguments.length;Rr--;)Br[Rr]=arguments[Rr];var na=ct.evaluate.apply(void 0,Br),Ia=Lt.evaluate.apply(void 0,Br);if(!(na===void 0||Ia===void 0))return Nt(na,Ia,je)}}:Nt(ct,Lt,je)}function Bc(k,C,V){return C.type==="color"?V=Rs.parse(V):C.type==="formatted"?V=Zl.fromString(V.toString()):C.type==="resolvedImage"?V=yl.fromString(V.toString()):Ao(V)!==C.type&&(C.type!=="enum"||!C.values[V])&&(V=void 0),Pu(V,k.default,C.default)}function Iu(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Ac=function(C,V){this.expression=C,this._warningHistory={},this._evaluator=new Ss,this._defaultValue=V?Se(V):null,this._enumValues=V&&V.type==="enum"?V.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._evaluator.globals=C,this._evaluator.feature=V,this._evaluator.featureState=oe,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(C,V,oe,_e,Pe,je){this._evaluator.globals=C,this._evaluator.feature=V||null,this._evaluator.featureState=oe||null,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je||null;try{var ct=this.expression.evaluate(this._evaluator);if(ct==null||typeof ct=="number"&&ct!==ct)return this._defaultValue;if(this._enumValues&&!(ct in this._enumValues))throw new $s("Expected value to be one of "+Object.keys(this._enumValues).map(function(Lt){return JSON.stringify(Lt)}).join(", ")+", but found "+JSON.stringify(ct)+" instead.");return ct}catch(Lt){return this._warningHistory[Lt.message]||(this._warningHistory[Lt.message]=!0,typeof console<"u"&&console.warn(Lt.message)),this._defaultValue}};function ro(k){return Array.isArray(k)&&k.length>0&&typeof k[0]=="string"&&k[0]in co}function Po(k,C){var V=new kl(co,[],C?we(C):void 0),oe=V.parse(k,void 0,void 0,void 0,C&&C.type==="string"?{typeAnnotation:"coerce"}:void 0);return oe?vs(new Ac(oe,C)):Il(V.errors)}var Nc=function(C,V){this.kind=C,this._styleExpression=V,this.isStateDependent=C!=="constant"&&!ru(V.expression)};Nc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},Nc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)};var hc=function(C,V,oe,_e){this.kind=C,this.zoomStops=oe,this._styleExpression=V,this.isStateDependent=C!=="camera"&&!ru(V.expression),this.interpolationType=_e};hc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},hc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)},hc.prototype.interpolationFactor=function(C,V,oe){return this.interpolationType?Vl.interpolationFactor(this.interpolationType,C,V,oe):0};function pc(k,C){if(k=Po(k,C),k.result==="error")return k;var V=k.value.expression,oe=fh(V);if(!oe&&!fl(C))return Il([new fs("","data expressions not supported")]);var _e=Cu(V,["zoom"]);if(!_e&&!tl(C))return Il([new fs("","zoom expressions not supported")]);var Pe=ae(V);if(!Pe&&!_e)return Il([new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(Pe instanceof fs)return Il([Pe]);if(Pe instanceof Vl&&!Ln(C))return Il([new fs("",'"interpolate" expressions cannot be used with this property')]);if(!Pe)return vs(oe?new Nc("constant",k.value):new Nc("source",k.value));var je=Pe instanceof Vl?Pe.interpolation:void 0;return vs(oe?new hc("camera",k.value,Pe.labels,je):new hc("composite",k.value,Pe.labels,je))}var Oe=function(C,V){this._parameters=C,this._specification=V,Os(this,nu(this._parameters,this._specification))};Oe.deserialize=function(C){return new Oe(C._parameters,C._specification)},Oe.serialize=function(C){return{_parameters:C._parameters,_specification:C._specification}};function R(k,C){if(js(k))return new Oe(k,C);if(ro(k)){var V=pc(k,C);if(V.result==="error")throw new Error(V.value.map(function(_e){return _e.key+": "+_e.message}).join(", "));return V.value}else{var oe=k;return typeof k=="string"&&C.type==="color"&&(oe=Rs.parse(k)),{kind:"constant",evaluate:function(){return oe}}}}function ae(k){var C=null;if(k instanceof Tc)C=ae(k.result);else if(k instanceof Vu)for(var V=0,oe=k.args;V<oe.length;V+=1){var _e=oe[V];if(C=ae(_e),C)break}else(k instanceof vu||k instanceof Vl)&&k.input instanceof So&&k.input.name==="zoom"&&(C=k);return C instanceof fs||k.eachChild(function(Pe){var je=ae(Pe);je instanceof fs?C=je:!C&&je?C=new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):C&&je&&C!==je&&(C=new fs("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),C}function we(k){var C={color:_s,string:To,number:ji,enum:To,boolean:Yn,formatted:ml,resolvedImage:Bu};return k.type==="array"?El(C[k.value]||Nn,k.length):C[k.type]}function Se(k){return k.type==="color"&&js(k.default)?new Rs(0,0,0,0):k.type==="color"?Rs.parse(k.default)||null:k.default===void 0?null:k.default}function De(k){var C=k.key,V=k.value,oe=k.valueSpec||{},_e=k.objectElementValidators||{},Pe=k.style,je=k.styleSpec,ct=[],Lt=Ao(V);if(Lt!=="object")return[new mn(C,V,"object expected, "+Lt+" found")];for(var Nt in V){var Xt=Nt.split(".")[0],gr=oe[Xt]||oe["*"],Br=void 0;if(_e[Xt])Br=_e[Xt];else if(oe[Xt])Br=yo;else if(_e["*"])Br=_e["*"];else if(oe["*"])Br=yo;else{ct.push(new mn(C,V[Nt],'unknown property "'+Nt+'"'));continue}ct=ct.concat(Br({key:(C&&C+".")+Nt,value:V[Nt],valueSpec:gr,style:Pe,styleSpec:je,object:V,objectKey:Nt},V))}for(var Rr in oe)_e[Rr]||oe[Rr].required&&oe[Rr].default===void 0&&V[Rr]===void 0&&ct.push(new mn(C,V,'missing required property "'+Rr+'"'));return ct}function ft(k){var C=k.value,V=k.valueSpec,oe=k.style,_e=k.styleSpec,Pe=k.key,je=k.arrayElementValidator||yo;if(Ao(C)!=="array")return[new mn(Pe,C,"array expected, "+Ao(C)+" found")];if(V.length&&C.length!==V.length)return[new mn(Pe,C,"array length "+V.length+" expected, length "+C.length+" found")];if(V["min-length"]&&C.length<V["min-length"])return[new mn(Pe,C,"array length at least "+V["min-length"]+" expected, length "+C.length+" found")];var ct={type:V.value,values:V.values};_e.$version<7&&(ct.function=V.function),Ao(V.value)==="object"&&(ct=V.value);for(var Lt=[],Nt=0;Nt<C.length;Nt++)Lt=Lt.concat(je({array:C,arrayIndex:Nt,value:C[Nt],valueSpec:ct,style:oe,styleSpec:_e,key:Pe+"["+Nt+"]"}));return Lt}function bt(k){var C=k.key,V=k.value,oe=k.valueSpec,_e=Ao(V);return _e==="number"&&V!==V&&(_e="NaN"),_e!=="number"?[new mn(C,V,"number expected, "+_e+" found")]:"minimum"in oe&&V<oe.minimum?[new mn(C,V,V+" is less than the minimum value "+oe.minimum)]:"maximum"in oe&&V>oe.maximum?[new mn(C,V,V+" is greater than the maximum value "+oe.maximum)]:[]}function Dt(k){var C=k.valueSpec,V=so(k.value.type),oe,_e={},Pe,je,ct=V!=="categorical"&&k.value.property===void 0,Lt=!ct,Nt=Ao(k.value.stops)==="array"&&Ao(k.value.stops[0])==="array"&&Ao(k.value.stops[0][0])==="object",Xt=De({key:k.key,value:k.value,valueSpec:k.styleSpec.function,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{stops:gr,default:na}});return V==="identity"&&ct&&Xt.push(new mn(k.key,k.value,'missing required property "property"')),V!=="identity"&&!k.value.stops&&Xt.push(new mn(k.key,k.value,'missing required property "stops"')),V==="exponential"&&k.valueSpec.expression&&!Ln(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"exponential functions not supported")),k.styleSpec.$version>=8&&(Lt&&!fl(k.valueSpec)?Xt.push(new mn(k.key,k.value,"property functions not supported")):ct&&!tl(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"zoom functions not supported"))),(V==="categorical"||Nt)&&k.value.property===void 0&&Xt.push(new mn(k.key,k.value,'"property" property is required')),Xt;function gr(Ia){if(V==="identity")return[new mn(Ia.key,Ia.value,'identity function may not have a "stops" property')];var ii=[],Wa=Ia.value;return ii=ii.concat(ft({key:Ia.key,value:Wa,valueSpec:Ia.valueSpec,style:Ia.style,styleSpec:Ia.styleSpec,arrayElementValidator:Br})),Ao(Wa)==="array"&&Wa.length===0&&ii.push(new mn(Ia.key,Wa,"array must have at least one stop")),ii}function Br(Ia){var ii=[],Wa=Ia.value,Si=Ia.key;if(Ao(Wa)!=="array")return[new mn(Si,Wa,"array expected, "+Ao(Wa)+" found")];if(Wa.length!==2)return[new mn(Si,Wa,"array length 2 expected, length "+Wa.length+" found")];if(Nt){if(Ao(Wa[0])!=="object")return[new mn(Si,Wa,"object expected, "+Ao(Wa[0])+" found")];if(Wa[0].zoom===void 0)return[new mn(Si,Wa,"object stop key must have zoom")];if(Wa[0].value===void 0)return[new mn(Si,Wa,"object stop key must have value")];if(je&&je>so(Wa[0].zoom))return[new mn(Si,Wa[0].zoom,"stop zoom values must appear in ascending order")];so(Wa[0].zoom)!==je&&(je=so(Wa[0].zoom),Pe=void 0,_e={}),ii=ii.concat(De({key:Si+"[0]",value:Wa[0],valueSpec:{zoom:{}},style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{zoom:bt,value:Rr}}))}else ii=ii.concat(Rr({key:Si+"[0]",value:Wa[0],valueSpec:{},style:Ia.style,styleSpec:Ia.styleSpec},Wa));return ro(Ns(Wa[1]))?ii.concat([new mn(Si+"[1]",Wa[1],"expressions are not allowed in function stops.")]):ii.concat(yo({key:Si+"[1]",value:Wa[1],valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec}))}function Rr(Ia,ii){var Wa=Ao(Ia.value),Si=so(Ia.value),ci=Ia.value!==null?Ia.value:ii;if(!oe)oe=Wa;else if(Wa!==oe)return[new mn(Ia.key,ci,Wa+" stop domain type must match previous stop domain type "+oe)];if(Wa!=="number"&&Wa!=="string"&&Wa!=="boolean")return[new mn(Ia.key,ci,"stop domain value must be a number, string, or boolean")];if(Wa!=="number"&&V!=="categorical"){var Ai="number expected, "+Wa+" found";return fl(C)&&V===void 0&&(Ai+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new mn(Ia.key,ci,Ai)]}return V==="categorical"&&Wa==="number"&&(!isFinite(Si)||Math.floor(Si)!==Si)?[new mn(Ia.key,ci,"integer expected, found "+Si)]:V!=="categorical"&&Wa==="number"&&Pe!==void 0&&Si<Pe?[new mn(Ia.key,ci,"stop domain values must appear in ascending order")]:(Pe=Si,V==="categorical"&&Si in _e?[new mn(Ia.key,ci,"stop domain values must be unique")]:(_e[Si]=!0,[]))}function na(Ia){return yo({key:Ia.key,value:Ia.value,valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec})}}function Yt(k){var C=(k.expressionContext==="property"?pc:Po)(Ns(k.value),k.valueSpec);if(C.result==="error")return C.value.map(function(oe){return new mn(""+k.key+oe.key,k.value,oe.message)});var V=C.value.expression||C.value._styleExpression.expression;if(k.expressionContext==="property"&&k.propertyKey==="text-font"&&!V.outputDefined())return[new mn(k.key,k.value,'Invalid data expression for "'+k.propertyKey+'". Output values must be contained as literals within the expression.')];if(k.expressionContext==="property"&&k.propertyType==="layout"&&!ru(V))return[new mn(k.key,k.value,'"feature-state" data expressions are not supported with layout properties.')];if(k.expressionContext==="filter"&&!ru(V))return[new mn(k.key,k.value,'"feature-state" data expressions are not supported with filters.')];if(k.expressionContext&&k.expressionContext.indexOf("cluster")===0){if(!Cu(V,["zoom","feature-state"]))return[new mn(k.key,k.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(k.expressionContext==="cluster-initial"&&!fh(V))return[new mn(k.key,k.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function cr(k){var C=k.value,V=k.key,oe=Ao(C);return oe!=="boolean"?[new mn(V,C,"boolean expected, "+oe+" found")]:[]}function hr(k){var C=k.key,V=k.value,oe=Ao(V);return oe!=="string"?[new mn(C,V,"color expected, "+oe+" found")]:bf(V)===null?[new mn(C,V,'color expected, "'+V+'" found')]:[]}function jr(k){var C=k.key,V=k.value,oe=k.valueSpec,_e=[];return Array.isArray(oe.values)?oe.values.indexOf(so(V))===-1&&_e.push(new mn(C,V,"expected one of ["+oe.values.join(", ")+"], "+JSON.stringify(V)+" found")):Object.keys(oe.values).indexOf(so(V))===-1&&_e.push(new mn(C,V,"expected one of ["+Object.keys(oe.values).join(", ")+"], "+JSON.stringify(V)+" found")),_e}function ea(k){if(k===!0||k===!1)return!0;if(!Array.isArray(k)||k.length===0)return!1;switch(k[0]){case"has":return k.length>=2&&k[1]!=="$id"&&k[1]!=="$type";case"in":return k.length>=3&&(typeof k[1]!="string"||Array.isArray(k[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return k.length!==3||Array.isArray(k[1])||Array.isArray(k[2]);case"any":case"all":for(var C=0,V=k.slice(1);C<V.length;C+=1){var oe=V[C];if(!ea(oe)&&typeof oe!="boolean")return!1}return!0;default:return!0}}var qe={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Je(k){if(k==null)return{filter:function(){return!0},needGeometry:!1};ea(k)||(k=At(k));var C=Po(k,qe);if(C.result==="error")throw new Error(C.value.map(function(oe){return oe.key+": "+oe.message}).join(", "));var V=ht(k);return{filter:function(oe,_e,Pe){return C.value.evaluate(oe,_e,{},Pe)},needGeometry:V}}function ot(k,C){return k<C?-1:k>C?1:0}function ht(k){if(!Array.isArray(k))return!1;if(k[0]==="within")return!0;for(var C=1;C<k.length;C++)if(ht(k[C]))return!0;return!1}function At(k){if(!k)return!0;var C=k[0];if(k.length<=1)return C!=="any";var V=C==="=="?_t(k[1],k[2],"=="):C==="!="?pr(_t(k[1],k[2],"==")):C==="<"||C===">"||C==="<="||C===">="?_t(k[1],k[2],C):C==="any"?Pt(k.slice(1)):C==="all"?["all"].concat(k.slice(1).map(At)):C==="none"?["all"].concat(k.slice(1).map(At).map(pr)):C==="in"?er(k[1],k.slice(2)):C==="!in"?pr(er(k[1],k.slice(2))):C==="has"?nr(k[1]):C==="!has"?pr(nr(k[1])):C==="within"?k:!0;return V}function _t(k,C,V){switch(k){case"$type":return["filter-type-"+V,C];case"$id":return["filter-id-"+V,C];default:return["filter-"+V,k,C]}}function Pt(k){return["any"].concat(k.map(At))}function er(k,C){if(C.length===0)return!1;switch(k){case"$type":return["filter-type-in",["literal",C]];case"$id":return["filter-id-in",["literal",C]];default:return C.length>200&&!C.some(function(V){return typeof V!=typeof C[0]})?["filter-in-large",k,["literal",C.sort(ot)]]:["filter-in-small",k,["literal",C]]}}function nr(k){switch(k){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",k]}}function pr(k){return["!",k]}function Sr(k){return ea(Ns(k.value))?Yt(Os({},k,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Wr(k)}function Wr(k){var C=k.value,V=k.key;if(Ao(C)!=="array")return[new mn(V,C,"array expected, "+Ao(C)+" found")];var oe=k.styleSpec,_e,Pe=[];if(C.length<1)return[new mn(V,C,"filter array must have at least 1 element")];switch(Pe=Pe.concat(jr({key:V+"[0]",value:C[0],valueSpec:oe.filter_operator,style:k.style,styleSpec:k.styleSpec})),so(C[0])){case"<":case"<=":case">":case">=":C.length>=2&&so(C[1])==="$type"&&Pe.push(new mn(V,C,'"$type" cannot be use with operator "'+C[0]+'"'));case"==":case"!=":C.length!==3&&Pe.push(new mn(V,C,'filter array for operator "'+C[0]+'" must have 3 elements'));case"in":case"!in":C.length>=2&&(_e=Ao(C[1]),_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found")));for(var je=2;je<C.length;je++)_e=Ao(C[je]),so(C[1])==="$type"?Pe=Pe.concat(jr({key:V+"["+je+"]",value:C[je],valueSpec:oe.geometry_type,style:k.style,styleSpec:k.styleSpec})):_e!=="string"&&_e!=="number"&&_e!=="boolean"&&Pe.push(new mn(V+"["+je+"]",C[je],"string, number, or boolean expected, "+_e+" found"));break;case"any":case"all":case"none":for(var ct=1;ct<C.length;ct++)Pe=Pe.concat(Wr({key:V+"["+ct+"]",value:C[ct],style:k.style,styleSpec:k.styleSpec}));break;case"has":case"!has":_e=Ao(C[1]),C.length!==2?Pe.push(new mn(V,C,'filter array for "'+C[0]+'" operator must have 2 elements')):_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found"));break;case"within":_e=Ao(C[1]),C.length!==2?Pe.push(new mn(V,C,'filter array for "'+C[0]+'" operator must have 2 elements')):_e!=="object"&&Pe.push(new mn(V+"[1]",C[1],"object expected, "+_e+" found"));break}return Pe}function ha(k,C){var V=k.key,oe=k.style,_e=k.styleSpec,Pe=k.value,je=k.objectKey,ct=_e[C+"_"+k.layerType];if(!ct)return[];var Lt=je.match(/^(.*)-transition$/);if(C==="paint"&&Lt&&ct[Lt[1]]&&ct[Lt[1]].transition)return yo({key:V,value:Pe,valueSpec:_e.transition,style:oe,styleSpec:_e});var Nt=k.valueSpec||ct[je];if(!Nt)return[new mn(V,Pe,'unknown property "'+je+'"')];var Xt;if(Ao(Pe)==="string"&&fl(Nt)&&!Nt.tokens&&(Xt=/^{([^}]+)}$/.exec(Pe)))return[new mn(V,Pe,'"'+je+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(Xt[1])+" }`.")];var gr=[];return k.layerType==="symbol"&&(je==="text-field"&&oe&&!oe.glyphs&&gr.push(new mn(V,Pe,'use of "text-field" requires a style "glyphs" property')),je==="text-font"&&js(Ns(Pe))&&so(Pe.type)==="identity"&&gr.push(new mn(V,Pe,'"text-font" does not support identity functions'))),gr.concat(yo({key:k.key,value:Pe,valueSpec:Nt,style:oe,styleSpec:_e,expressionContext:"property",propertyType:C,propertyKey:je}))}function ga(k){return ha(k,"paint")}function Pa(k){return ha(k,"layout")}function Ja(k){var C=[],V=k.value,oe=k.key,_e=k.style,Pe=k.styleSpec;!V.type&&!V.ref&&C.push(new mn(oe,V,'either "type" or "ref" is required'));var je=so(V.type),ct=so(V.ref);if(V.id)for(var Lt=so(V.id),Nt=0;Nt<k.arrayIndex;Nt++){var Xt=_e.layers[Nt];so(Xt.id)===Lt&&C.push(new mn(oe,V.id,'duplicate layer id "'+V.id+'", previously used at line '+Xt.id.__line__))}if("ref"in V){["type","source","source-layer","filter","layout"].forEach(function(na){na in V&&C.push(new mn(oe,V[na],'"'+na+'" is prohibited for ref layers'))});var gr;_e.layers.forEach(function(na){so(na.id)===ct&&(gr=na)}),gr?gr.ref?C.push(new mn(oe,V.ref,"ref cannot reference another ref layer")):je=so(gr.type):C.push(new mn(oe,V.ref,'ref layer "'+ct+'" not found'))}else if(je!=="background")if(!V.source)C.push(new mn(oe,V,'missing required property "source"'));else{var Br=_e.sources&&_e.sources[V.source],Rr=Br&&so(Br.type);Br?Rr==="vector"&&je==="raster"?C.push(new mn(oe,V.source,'layer "'+V.id+'" requires a raster source')):Rr==="raster"&&je!=="raster"?C.push(new mn(oe,V.source,'layer "'+V.id+'" requires a vector source')):Rr==="vector"&&!V["source-layer"]?C.push(new mn(oe,V,'layer "'+V.id+'" must specify a "source-layer"')):Rr==="raster-dem"&&je!=="hillshade"?C.push(new mn(oe,V.source,"raster-dem source can only be used with layer type 'hillshade'.")):je==="line"&&V.paint&&V.paint["line-gradient"]&&(Rr!=="geojson"||!Br.lineMetrics)&&C.push(new mn(oe,V,'layer "'+V.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):C.push(new mn(oe,V.source,'source "'+V.source+'" not found'))}return C=C.concat(De({key:oe,value:V,valueSpec:Pe.layer,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return yo({key:oe+".type",value:V.type,valueSpec:Pe.layer.type,style:k.style,styleSpec:k.styleSpec,object:V,objectKey:"type"})},filter:Sr,layout:function(Ia){return De({layer:V,key:Ia.key,value:Ia.value,style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{"*":function(Wa){return Pa(Os({layerType:je},Wa))}}})},paint:function(Ia){return De({layer:V,key:Ia.key,value:Ia.value,style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{"*":function(Wa){return ga(Os({layerType:je},Wa))}}})}}})),C}function di(k){var C=k.value,V=k.key,oe=Ao(C);return oe!=="string"?[new mn(V,C,"string expected, "+oe+" found")]:[]}var pi={promoteId:$i};function Ci(k){var C=k.value,V=k.key,oe=k.styleSpec,_e=k.style;if(!C.type)return[new mn(V,C,'"type" is required')];var Pe=so(C.type),je;switch(Pe){case"vector":case"raster":case"raster-dem":return je=De({key:V,value:C,valueSpec:oe["source_"+Pe.replace("-","_")],style:k.style,styleSpec:oe,objectElementValidators:pi}),je;case"geojson":if(je=De({key:V,value:C,valueSpec:oe.source_geojson,style:_e,styleSpec:oe,objectElementValidators:pi}),C.cluster)for(var ct in C.clusterProperties){var Lt=C.clusterProperties[ct],Nt=Lt[0],Xt=Lt[1],gr=typeof Nt=="string"?[Nt,["accumulated"],["get",ct]]:Nt;je.push.apply(je,Yt({key:V+"."+ct+".map",value:Xt,expressionContext:"cluster-map"})),je.push.apply(je,Yt({key:V+"."+ct+".reduce",value:gr,expressionContext:"cluster-reduce"}))}return je;case"video":return De({key:V,value:C,valueSpec:oe.source_video,style:_e,styleSpec:oe});case"image":return De({key:V,value:C,valueSpec:oe.source_image,style:_e,styleSpec:oe});case"canvas":return[new mn(V,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return jr({key:V+".type",value:C.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:_e,styleSpec:oe})}}function $i(k){var C=k.key,V=k.value;if(Ao(V)==="string")return di({key:C,value:V});var oe=[];for(var _e in V)oe.push.apply(oe,di({key:C+"."+_e,value:V[_e]}));return oe}function Bn(k){var C=k.value,V=k.styleSpec,oe=V.light,_e=k.style,Pe=[],je=Ao(C);if(C===void 0)return Pe;if(je!=="object")return Pe=Pe.concat([new mn("light",C,"object expected, "+je+" found")]),Pe;for(var ct in C){var Lt=ct.match(/^(.*)-transition$/);Lt&&oe[Lt[1]]&&oe[Lt[1]].transition?Pe=Pe.concat(yo({key:ct,value:C[ct],valueSpec:V.transition,style:_e,styleSpec:V})):oe[ct]?Pe=Pe.concat(yo({key:ct,value:C[ct],valueSpec:oe[ct],style:_e,styleSpec:V})):Pe=Pe.concat([new mn(ct,C[ct],'unknown property "'+ct+'"')])}return Pe}function Sn(k){return di(k).length===0?[]:Yt(k)}function ho(k){return di(k).length===0?[]:Yt(k)}var ts={"*":function(){return[]},array:ft,boolean:cr,number:bt,color:hr,constants:ol,enum:jr,filter:Sr,function:Dt,layer:Ja,object:De,source:Ci,light:Bn,string:di,formatted:Sn,resolvedImage:ho};function yo(k){var C=k.value,V=k.valueSpec,oe=k.styleSpec;if(V.expression&&js(so(C)))return Dt(k);if(V.expression&&ro(Ns(C)))return Yt(k);if(V.type&&ts[V.type])return ts[V.type](k);var _e=De(Os({},k,{valueSpec:V.type?oe[V.type]:V}));return _e}function Vo(k){var C=k.value,V=k.key,oe=di(k);return oe.length||(C.indexOf("{fontstack}")===-1&&oe.push(new mn(V,C,'"glyphs" url must include a "{fontstack}" token')),C.indexOf("{range}")===-1&&oe.push(new mn(V,C,'"glyphs" url must include a "{range}" token'))),oe}function ls(k,C){C===void 0&&(C=fi);var V=[];return V=V.concat(yo({key:"",value:k,valueSpec:C.$root,styleSpec:C,style:k,objectElementValidators:{glyphs:Vo,"*":function(){return[]}}})),k.constants&&(V=V.concat(ol({key:"constants",value:k.constants,style:k,styleSpec:C}))),rl(V)}ls.source=Ys(Ci),ls.light=Ys(Bn),ls.layer=Ys(Ja),ls.filter=Ys(Sr),ls.paintProperty=Ys(ga),ls.layoutProperty=Ys(Pa);function rl(k){return[].concat(k).sort(function(C,V){return C.line-V.line})}function Ys(k){return function(){for(var C=[],V=arguments.length;V--;)C[V]=arguments[V];return rl(k.apply(this,C))}}var Zo=ls,Go=Zo.light,Rl=Zo.paintProperty,Xl=Zo.layoutProperty;function qu(k,C){var V=!1;if(C&&C.length)for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];k.fire(new Fr(new Error(Pe.message))),V=!0}return V}var fu=ou,bl=3;function ou(k,C,V){var oe=this.cells=[];if(k instanceof ArrayBuffer){this.arrayBuffer=k;var _e=new Int32Array(this.arrayBuffer);k=_e[0],C=_e[1],V=_e[2],this.d=C+2*V;for(var Pe=0;Pe<this.d*this.d;Pe++){var je=_e[bl+Pe],ct=_e[bl+Pe+1];oe.push(je===ct?null:_e.subarray(je,ct))}var Lt=_e[bl+oe.length],Nt=_e[bl+oe.length+1];this.keys=_e.subarray(Lt,Nt),this.bboxes=_e.subarray(Nt),this.insert=this._insertReadonly}else{this.d=C+2*V;for(var Xt=0;Xt<this.d*this.d;Xt++)oe.push([]);this.keys=[],this.bboxes=[]}this.n=C,this.extent=k,this.padding=V,this.scale=C/k,this.uid=0;var gr=V/C*k;this.min=-gr,this.max=k+gr}ou.prototype.insert=function(k,C,V,oe,_e){this._forEachCell(C,V,oe,_e,this._insertCell,this.uid++),this.keys.push(k),this.bboxes.push(C),this.bboxes.push(V),this.bboxes.push(oe),this.bboxes.push(_e)},ou.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},ou.prototype._insertCell=function(k,C,V,oe,_e,Pe){this.cells[_e].push(Pe)},ou.prototype.query=function(k,C,V,oe,_e){var Pe=this.min,je=this.max;if(k<=Pe&&C<=Pe&&je<=V&&je<=oe&&!_e)return Array.prototype.slice.call(this.keys);var ct=[],Lt={};return this._forEachCell(k,C,V,oe,this._queryCell,ct,Lt,_e),ct},ou.prototype._queryCell=function(k,C,V,oe,_e,Pe,je,ct){var Lt=this.cells[_e];if(Lt!==null)for(var Nt=this.keys,Xt=this.bboxes,gr=0;gr<Lt.length;gr++){var Br=Lt[gr];if(je[Br]===void 0){var Rr=Br*4;(ct?ct(Xt[Rr+0],Xt[Rr+1],Xt[Rr+2],Xt[Rr+3]):k<=Xt[Rr+2]&&C<=Xt[Rr+3]&&V>=Xt[Rr+0]&&oe>=Xt[Rr+1])?(je[Br]=!0,Pe.push(Nt[Br])):je[Br]=!1}}},ou.prototype._forEachCell=function(k,C,V,oe,_e,Pe,je,ct){for(var Lt=this._convertToCellCoord(k),Nt=this._convertToCellCoord(C),Xt=this._convertToCellCoord(V),gr=this._convertToCellCoord(oe),Br=Lt;Br<=Xt;Br++)for(var Rr=Nt;Rr<=gr;Rr++){var na=this.d*Rr+Br;if(!(ct&&!ct(this._convertFromCellCoord(Br),this._convertFromCellCoord(Rr),this._convertFromCellCoord(Br+1),this._convertFromCellCoord(Rr+1)))&&_e.call(this,k,C,V,oe,na,Pe,je,ct))return}},ou.prototype._convertFromCellCoord=function(k){return(k-this.padding)/this.scale},ou.prototype._convertToCellCoord=function(k){return Math.max(0,Math.min(this.d-1,Math.floor(k*this.scale)+this.padding))},ou.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var k=this.cells,C=bl+this.cells.length+1+1,V=0,oe=0;oe<this.cells.length;oe++)V+=this.cells[oe].length;var _e=new Int32Array(C+V+this.keys.length+this.bboxes.length);_e[0]=this.extent,_e[1]=this.n,_e[2]=this.padding;for(var Pe=C,je=0;je<k.length;je++){var ct=k[je];_e[bl+je]=Pe,_e.set(ct,Pe),Pe+=ct.length}return _e[bl+k.length]=Pe,_e.set(this.keys,Pe),Pe+=this.keys.length,_e[bl+k.length+1]=Pe,_e.set(this.bboxes,Pe),Pe+=this.bboxes.length,_e.buffer};var Sc=s.ImageData,ql=s.ImageBitmap,Hl={};function de(k,C,V){V===void 0&&(V={}),Object.defineProperty(C,"_classRegistryKey",{value:k,writeable:!1}),Hl[k]={klass:C,omit:V.omit||[],shallow:V.shallow||[]}}de("Object",Object),fu.serialize=function(C,V){var oe=C.toArrayBuffer();return V&&V.push(oe),{buffer:oe}},fu.deserialize=function(C){return new fu(C.buffer)},de("Grid",fu),de("Color",Rs),de("Error",Error),de("ResolvedImage",yl),de("StylePropertyFunction",Oe),de("StyleExpression",Ac,{omit:["_evaluator"]}),de("ZoomDependentExpression",hc),de("ZoomConstantExpression",Nc),de("CompoundExpression",So,{omit:["_evaluate"]});for(var Re in co)co[Re]._classRegistryKey||de("Expression_"+Re,co[Re]);function $e(k){return k&&typeof ArrayBuffer<"u"&&(k instanceof ArrayBuffer||k.constructor&&k.constructor.name==="ArrayBuffer")}function pt(k){return ql&&k instanceof ql}function vt(k,C){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp)return k;if($e(k)||pt(k))return C&&C.push(k),k;if(ArrayBuffer.isView(k)){var V=k;return C&&C.push(V.buffer),V}if(k instanceof Sc)return C&&C.push(k.data.buffer),k;if(Array.isArray(k)){for(var oe=[],_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e];oe.push(vt(je,C))}return oe}if(typeof k=="object"){var ct=k.constructor,Lt=ct._classRegistryKey;if(!Lt)throw new Error("can't serialize object of unregistered class");var Nt=ct.serialize?ct.serialize(k,C):{};if(!ct.serialize){for(var Xt in k)if(k.hasOwnProperty(Xt)&&!(Hl[Lt].omit.indexOf(Xt)>=0)){var gr=k[Xt];Nt[Xt]=Hl[Lt].shallow.indexOf(Xt)>=0?gr:vt(gr,C)}k instanceof Error&&(Nt.message=k.message)}if(Nt.$name)throw new Error("$name property is reserved for worker serialization logic.");return Lt!=="Object"&&(Nt.$name=Lt),Nt}throw new Error("can't serialize object of type "+typeof k)}function wt(k){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp||$e(k)||pt(k)||ArrayBuffer.isView(k)||k instanceof Sc)return k;if(Array.isArray(k))return k.map(wt);if(typeof k=="object"){var C=k.$name||"Object",V=Hl[C],oe=V.klass;if(!oe)throw new Error("can't deserialize unregistered class "+C);if(oe.deserialize)return oe.deserialize(k);for(var _e=Object.create(oe.prototype),Pe=0,je=Object.keys(k);Pe<je.length;Pe+=1){var ct=je[Pe];if(ct!=="$name"){var Lt=k[ct];_e[ct]=Hl[C].shallow.indexOf(ct)>=0?Lt:wt(Lt)}}return _e}throw new Error("can't deserialize object of type "+typeof k)}var Jt=function(){this.first=!0};Jt.prototype.update=function(C,V){var oe=Math.floor(C);return this.first?(this.first=!1,this.lastIntegerZoom=oe,this.lastIntegerZoomTime=0,this.lastZoom=C,this.lastFloorZoom=oe,!0):(this.lastFloorZoom>oe?(this.lastIntegerZoom=oe+1,this.lastIntegerZoomTime=V):this.lastFloorZoom<oe&&(this.lastIntegerZoom=oe,this.lastIntegerZoomTime=V),C!==this.lastZoom?(this.lastZoom=C,this.lastFloorZoom=oe,!0):!1)};var Rt={"Latin-1 Supplement":function(k){return k>=128&&k<=255},Arabic:function(k){return k>=1536&&k<=1791},"Arabic Supplement":function(k){return k>=1872&&k<=1919},"Arabic Extended-A":function(k){return k>=2208&&k<=2303},"Hangul Jamo":function(k){return k>=4352&&k<=4607},"Unified Canadian Aboriginal Syllabics":function(k){return k>=5120&&k<=5759},Khmer:function(k){return k>=6016&&k<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(k){return k>=6320&&k<=6399},"General Punctuation":function(k){return k>=8192&&k<=8303},"Letterlike Symbols":function(k){return k>=8448&&k<=8527},"Number Forms":function(k){return k>=8528&&k<=8591},"Miscellaneous Technical":function(k){return k>=8960&&k<=9215},"Control Pictures":function(k){return k>=9216&&k<=9279},"Optical Character Recognition":function(k){return k>=9280&&k<=9311},"Enclosed Alphanumerics":function(k){return k>=9312&&k<=9471},"Geometric Shapes":function(k){return k>=9632&&k<=9727},"Miscellaneous Symbols":function(k){return k>=9728&&k<=9983},"Miscellaneous Symbols and Arrows":function(k){return k>=11008&&k<=11263},"CJK Radicals Supplement":function(k){return k>=11904&&k<=12031},"Kangxi Radicals":function(k){return k>=12032&&k<=12255},"Ideographic Description Characters":function(k){return k>=12272&&k<=12287},"CJK Symbols and Punctuation":function(k){return k>=12288&&k<=12351},Hiragana:function(k){return k>=12352&&k<=12447},Katakana:function(k){return k>=12448&&k<=12543},Bopomofo:function(k){return k>=12544&&k<=12591},"Hangul Compatibility Jamo":function(k){return k>=12592&&k<=12687},Kanbun:function(k){return k>=12688&&k<=12703},"Bopomofo Extended":function(k){return k>=12704&&k<=12735},"CJK Strokes":function(k){return k>=12736&&k<=12783},"Katakana Phonetic Extensions":function(k){return k>=12784&&k<=12799},"Enclosed CJK Letters and Months":function(k){return k>=12800&&k<=13055},"CJK Compatibility":function(k){return k>=13056&&k<=13311},"CJK Unified Ideographs Extension A":function(k){return k>=13312&&k<=19903},"Yijing Hexagram Symbols":function(k){return k>=19904&&k<=19967},"CJK Unified Ideographs":function(k){return k>=19968&&k<=40959},"Yi Syllables":function(k){return k>=40960&&k<=42127},"Yi Radicals":function(k){return k>=42128&&k<=42191},"Hangul Jamo Extended-A":function(k){return k>=43360&&k<=43391},"Hangul Syllables":function(k){return k>=44032&&k<=55215},"Hangul Jamo Extended-B":function(k){return k>=55216&&k<=55295},"Private Use Area":function(k){return k>=57344&&k<=63743},"CJK Compatibility Ideographs":function(k){return k>=63744&&k<=64255},"Arabic Presentation Forms-A":function(k){return k>=64336&&k<=65023},"Vertical Forms":function(k){return k>=65040&&k<=65055},"CJK Compatibility Forms":function(k){return k>=65072&&k<=65103},"Small Form Variants":function(k){return k>=65104&&k<=65135},"Arabic Presentation Forms-B":function(k){return k>=65136&&k<=65279},"Halfwidth and Fullwidth Forms":function(k){return k>=65280&&k<=65519}};function or(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(fa(oe.charCodeAt(0)))return!0}return!1}function Dr(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(!Or(oe.charCodeAt(0)))return!1}return!0}function Or(k){return!(Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k))}function va(k){return k<11904?!1:!!(Rt["Bopomofo Extended"](k)||Rt.Bopomofo(k)||Rt["CJK Compatibility Forms"](k)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)||Rt["Vertical Forms"](k)||Rt["Yi Radicals"](k)||Rt["Yi Syllables"](k))}function fa(k){return k===746||k===747?!0:k<4352?!1:!!(Rt["Bopomofo Extended"](k)||Rt.Bopomofo(k)||Rt["CJK Compatibility Forms"](k)&&!(k>=65097&&k<=65103)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)&&!(k>=12296&&k<=12305)&&!(k>=12308&&k<=12319)&&k!==12336||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Hangul Compatibility Jamo"](k)||Rt["Hangul Jamo Extended-A"](k)||Rt["Hangul Jamo Extended-B"](k)||Rt["Hangul Jamo"](k)||Rt["Hangul Syllables"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt.Kanbun(k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)&&k!==12540||Rt["Halfwidth and Fullwidth Forms"](k)&&k!==65288&&k!==65289&&k!==65293&&!(k>=65306&&k<=65310)&&k!==65339&&k!==65341&&k!==65343&&!(k>=65371&&k<=65503)&&k!==65507&&!(k>=65512&&k<=65519)||Rt["Small Form Variants"](k)&&!(k>=65112&&k<=65118)&&!(k>=65123&&k<=65126)||Rt["Unified Canadian Aboriginal Syllabics"](k)||Rt["Unified Canadian Aboriginal Syllabics Extended"](k)||Rt["Vertical Forms"](k)||Rt["Yijing Hexagram Symbols"](k)||Rt["Yi Syllables"](k)||Rt["Yi Radicals"](k))}function Va(k){return!!(Rt["Latin-1 Supplement"](k)&&(k===167||k===169||k===174||k===177||k===188||k===189||k===190||k===215||k===247)||Rt["General Punctuation"](k)&&(k===8214||k===8224||k===8225||k===8240||k===8241||k===8251||k===8252||k===8258||k===8263||k===8264||k===8265||k===8273)||Rt["Letterlike Symbols"](k)||Rt["Number Forms"](k)||Rt["Miscellaneous Technical"](k)&&(k>=8960&&k<=8967||k>=8972&&k<=8991||k>=8996&&k<=9e3||k===9003||k>=9085&&k<=9114||k>=9150&&k<=9165||k===9167||k>=9169&&k<=9179||k>=9186&&k<=9215)||Rt["Control Pictures"](k)&&k!==9251||Rt["Optical Character Recognition"](k)||Rt["Enclosed Alphanumerics"](k)||Rt["Geometric Shapes"](k)||Rt["Miscellaneous Symbols"](k)&&!(k>=9754&&k<=9759)||Rt["Miscellaneous Symbols and Arrows"](k)&&(k>=11026&&k<=11055||k>=11088&&k<=11097||k>=11192&&k<=11243)||Rt["CJK Symbols and Punctuation"](k)||Rt.Katakana(k)||Rt["Private Use Area"](k)||Rt["CJK Compatibility Forms"](k)||Rt["Small Form Variants"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||k===8734||k===8756||k===8757||k>=9984&&k<=10087||k>=10102&&k<=10131||k===65532||k===65533)}function Xa(k){return!(fa(k)||Va(k))}function _a(k){return Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Ra(k){return k>=1424&&k<=2303||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Na(k,C){return!(!C&&Ra(k)||k>=2304&&k<=3583||k>=3840&&k<=4255||Rt.Khmer(k))}function Qa(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(Ra(oe.charCodeAt(0)))return!0}return!1}function Ya(k,C){for(var V=0,oe=k;V<oe.length;V+=1){var _e=oe[V];if(!Na(_e.charCodeAt(0),C))return!1}return!0}var Da={unavailable:"unavailable",deferred:"deferred",loading:"loading",loaded:"loaded",error:"error"},zi=null,Ni=Da.unavailable,Qi=null,hn=function(k){k&&typeof k=="string"&&k.indexOf("NetworkError")>-1&&(Ni=Da.error),zi&&zi(k)};function Un(){Vn.fire(new Mr("pluginStateChange",{pluginStatus:Ni,pluginURL:Qi}))}var Vn=new Lr,No=function(){return Ni},Gn=function(k){return k({pluginStatus:Ni,pluginURL:Qi}),Vn.on("pluginStateChange",k),k},Fo=function(k,C,V){if(V===void 0&&(V=!1),Ni===Da.deferred||Ni===Da.loading||Ni===Da.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Qi=be.resolveURL(k),Ni=Da.deferred,zi=C,Un(),V||Ks()},Ks=function(){if(Ni!==Da.deferred||!Qi)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Ni=Da.loading,Un(),Qi&&pa({url:Qi},function(k){k?hn(k):(Ni=Da.loaded,Un())})},Gs={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Ni===Da.loaded||Gs.applyArabicShaping!=null},isLoading:function(){return Ni===Da.loading},setState:function(C){Ni=C.pluginStatus,Qi=C.pluginURL},isParsed:function(){return Gs.applyArabicShaping!=null&&Gs.processBidirectionalText!=null&&Gs.processStyledBidirectionalText!=null},getPluginURL:function(){return Qi}},sl=function(){!Gs.isLoading()&&!Gs.isLoaded()&&No()==="deferred"&&Ks()},Vi=function(C,V){this.zoom=C,V?(this.now=V.now,this.fadeDuration=V.fadeDuration,this.zoomHistory=V.zoomHistory,this.transition=V.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Jt,this.transition={})};Vi.prototype.isSupportedScript=function(C){return Ya(C,Gs.isLoaded())},Vi.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Vi.prototype.getCrossfadeParameters=function(){var C=this.zoom,V=C-Math.floor(C),oe=this.crossFadingFactor();return C>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:V+(1-V)*oe}:{fromScale:.5,toScale:1,t:1-(1-oe)*V}};var ao=function(C,V){this.property=C,this.value=V,this.expression=R(V===void 0?C.specification.default:V,C.specification)};ao.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},ao.prototype.possiblyEvaluate=function(C,V,oe){return this.property.possiblyEvaluate(this,C,V,oe)};var ns=function(C){this.property=C,this.value=new ao(C,void 0)};ns.prototype.transitioned=function(C,V){return new hl(this.property,this.value,V,m({},C.transition,this.transition),C.now)},ns.prototype.untransitioned=function(){return new hl(this.property,this.value,null,{},0)};var hs=function(C){this._properties=C,this._values=Object.create(C.defaultTransitionablePropertyValues)};hs.prototype.getValue=function(C){return O(this._values[C].value.value)},hs.prototype.setValue=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].value=new ao(this._values[C].property,V===null?void 0:O(V))},hs.prototype.getTransition=function(C){return O(this._values[C].transition)},hs.prototype.setTransition=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].transition=O(V)||void 0},hs.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V],Pe=this.getValue(_e);Pe!==void 0&&(C[_e]=Pe);var je=this.getTransition(_e);je!==void 0&&(C[_e+"-transition"]=je)}return C},hs.prototype.transitioned=function(C,V){for(var oe=new Dl(this._properties),_e=0,Pe=Object.keys(this._values);_e<Pe.length;_e+=1){var je=Pe[_e];oe._values[je]=this._values[je].transitioned(C,V._values[je])}return oe},hs.prototype.untransitioned=function(){for(var C=new Dl(this._properties),V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V];C._values[_e]=this._values[_e].untransitioned()}return C};var hl=function(C,V,oe,_e,Pe){this.property=C,this.value=V,this.begin=Pe+_e.delay||0,this.end=this.begin+_e.duration||0,C.specification.transition&&(_e.delay||_e.duration)&&(this.prior=oe)};hl.prototype.possiblyEvaluate=function(C,V,oe){var _e=C.now||0,Pe=this.value.possiblyEvaluate(C,V,oe),je=this.prior;if(je){if(_e>this.end)return this.prior=null,Pe;if(this.value.isDataDriven())return this.prior=null,Pe;if(_e<this.begin)return je.possiblyEvaluate(C,V,oe);var ct=(_e-this.begin)/(this.end-this.begin);return this.property.interpolate(je.possiblyEvaluate(C,V,oe),Pe,v(ct))}else return Pe};var Dl=function(C){this._properties=C,this._values=Object.create(C.defaultTransitioningPropertyValues)};Dl.prototype.possiblyEvaluate=function(C,V,oe){for(var _e=new dc(this._properties),Pe=0,je=Object.keys(this._values);Pe<je.length;Pe+=1){var ct=je[Pe];_e._values[ct]=this._values[ct].possiblyEvaluate(C,V,oe)}return _e},Dl.prototype.hasTransition=function(){for(var C=0,V=Object.keys(this._values);C<V.length;C+=1){var oe=V[C];if(this._values[oe].prior)return!0}return!1};var hu=function(C){this._properties=C,this._values=Object.create(C.defaultPropertyValues)};hu.prototype.getValue=function(C){return O(this._values[C].value)},hu.prototype.setValue=function(C,V){this._values[C]=new ao(this._values[C].property,V===null?void 0:O(V))},hu.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V],Pe=this.getValue(_e);Pe!==void 0&&(C[_e]=Pe)}return C},hu.prototype.possiblyEvaluate=function(C,V,oe){for(var _e=new dc(this._properties),Pe=0,je=Object.keys(this._values);Pe<je.length;Pe+=1){var ct=je[Pe];_e._values[ct]=this._values[ct].possiblyEvaluate(C,V,oe)}return _e};var Ll=function(C,V,oe){this.property=C,this.value=V,this.parameters=oe};Ll.prototype.isConstant=function(){return this.value.kind==="constant"},Ll.prototype.constantOr=function(C){return this.value.kind==="constant"?this.value.value:C},Ll.prototype.evaluate=function(C,V,oe,_e){return this.property.evaluate(this.value,this.parameters,C,V,oe,_e)};var dc=function(C){this._properties=C,this._values=Object.create(C.defaultPossiblyEvaluatedValues)};dc.prototype.get=function(C){return this._values[C]};var Qt=function(C){this.specification=C};Qt.prototype.possiblyEvaluate=function(C,V){return C.expression.evaluate(V)},Qt.prototype.interpolate=function(C,V,oe){var _e=Uu[this.specification.type];return _e?_e(C,V,oe):C};var ra=function(C,V){this.specification=C,this.overrides=V};ra.prototype.possiblyEvaluate=function(C,V,oe,_e){return C.expression.kind==="constant"||C.expression.kind==="camera"?new Ll(this,{kind:"constant",value:C.expression.evaluate(V,null,{},oe,_e)},V):new Ll(this,C.expression,V)},ra.prototype.interpolate=function(C,V,oe){if(C.value.kind!=="constant"||V.value.kind!=="constant")return C;if(C.value.value===void 0||V.value.value===void 0)return new Ll(this,{kind:"constant",value:void 0},C.parameters);var _e=Uu[this.specification.type];return _e?new Ll(this,{kind:"constant",value:_e(C.value.value,V.value.value,oe)},C.parameters):C},ra.prototype.evaluate=function(C,V,oe,_e,Pe,je){return C.kind==="constant"?C.value:C.evaluate(V,oe,_e,Pe,je)};var Ta=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e,Pe,je){if(oe.value===void 0)return new Ll(this,{kind:"constant",value:void 0},_e);if(oe.expression.kind==="constant"){var ct=oe.expression.evaluate(_e,null,{},Pe,je),Lt=oe.property.specification.type==="resolvedImage",Nt=Lt&&typeof ct!="string"?ct.name:ct,Xt=this._calculate(Nt,Nt,Nt,_e);return new Ll(this,{kind:"constant",value:Xt},_e)}else if(oe.expression.kind==="camera"){var gr=this._calculate(oe.expression.evaluate({zoom:_e.zoom-1}),oe.expression.evaluate({zoom:_e.zoom}),oe.expression.evaluate({zoom:_e.zoom+1}),_e);return new Ll(this,{kind:"constant",value:gr},_e)}else return new Ll(this,oe.expression,_e)},C.prototype.evaluate=function(oe,_e,Pe,je,ct,Lt){if(oe.kind==="source"){var Nt=oe.evaluate(_e,Pe,je,ct,Lt);return this._calculate(Nt,Nt,Nt,_e)}else return oe.kind==="composite"?this._calculate(oe.evaluate({zoom:Math.floor(_e.zoom)-1},Pe,je),oe.evaluate({zoom:Math.floor(_e.zoom)},Pe,je),oe.evaluate({zoom:Math.floor(_e.zoom)+1},Pe,je),_e):oe.value},C.prototype._calculate=function(oe,_e,Pe,je){var ct=je.zoom;return ct>je.zoomHistory.lastIntegerZoom?{from:oe,to:_e}:{from:Pe,to:_e}},C.prototype.interpolate=function(oe){return oe},C}(ra),si=function(C){this.specification=C};si.prototype.possiblyEvaluate=function(C,V,oe,_e){if(C.value!==void 0)if(C.expression.kind==="constant"){var Pe=C.expression.evaluate(V,null,{},oe,_e);return this._calculate(Pe,Pe,Pe,V)}else return this._calculate(C.expression.evaluate(new Vi(Math.floor(V.zoom-1),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom+1),V)),V)},si.prototype._calculate=function(C,V,oe,_e){var Pe=_e.zoom;return Pe>_e.zoomHistory.lastIntegerZoom?{from:C,to:V}:{from:oe,to:V}},si.prototype.interpolate=function(C){return C};var wi=function(C){this.specification=C};wi.prototype.possiblyEvaluate=function(C,V,oe,_e){return!!C.expression.evaluate(V,null,{},oe,_e)},wi.prototype.interpolate=function(){return!1};var xi=function(C){this.properties=C,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var V in C){var oe=C[V];oe.specification.overridable&&this.overridableProperties.push(V);var _e=this.defaultPropertyValues[V]=new ao(oe,void 0),Pe=this.defaultTransitionablePropertyValues[V]=new ns(oe);this.defaultTransitioningPropertyValues[V]=Pe.untransitioned(),this.defaultPossiblyEvaluatedValues[V]=_e.possiblyEvaluate({})}};de("DataDrivenProperty",ra),de("DataConstantProperty",Qt),de("CrossFadedDataDrivenProperty",Ta),de("CrossFadedProperty",si),de("ColorRampProperty",wi);var bi="-transition",Fi=function(k){function C(V,oe){if(k.call(this),this.id=V.id,this.type=V.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},V.type!=="custom"&&(V=V,this.metadata=V.metadata,this.minzoom=V.minzoom,this.maxzoom=V.maxzoom,V.type!=="background"&&(this.source=V.source,this.sourceLayer=V["source-layer"],this.filter=V.filter),oe.layout&&(this._unevaluatedLayout=new hu(oe.layout)),oe.paint)){this._transitionablePaint=new hs(oe.paint);for(var _e in V.paint)this.setPaintProperty(_e,V.paint[_e],{validate:!1});for(var Pe in V.layout)this.setLayoutProperty(Pe,V.layout[Pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new dc(oe.paint)}}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},C.prototype.getLayoutProperty=function(oe){return oe==="visibility"?this.visibility:this._unevaluatedLayout.getValue(oe)},C.prototype.setLayoutProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".layout."+oe;if(this._validate(Xl,je,oe,_e,Pe))return}if(oe==="visibility"){this.visibility=_e;return}this._unevaluatedLayout.setValue(oe,_e)},C.prototype.getPaintProperty=function(oe){return z(oe,bi)?this._transitionablePaint.getTransition(oe.slice(0,-bi.length)):this._transitionablePaint.getValue(oe)},C.prototype.setPaintProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".paint."+oe;if(this._validate(Rl,je,oe,_e,Pe))return!1}if(z(oe,bi))return this._transitionablePaint.setTransition(oe.slice(0,-bi.length),_e||void 0),!1;var ct=this._transitionablePaint._values[oe],Lt=ct.property.specification["property-type"]==="cross-faded-data-driven",Nt=ct.value.isDataDriven(),Xt=ct.value;this._transitionablePaint.setValue(oe,_e),this._handleSpecialPaintPropertyUpdate(oe);var gr=this._transitionablePaint._values[oe].value,Br=gr.isDataDriven();return Br||Nt||Lt||this._handleOverridablePaintPropertyUpdate(oe,Xt,gr)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!1},C.prototype.isHidden=function(oe){return this.minzoom&&oe<this.minzoom||this.maxzoom&&oe>=this.maxzoom?!0:this.visibility==="none"},C.prototype.updateTransitions=function(oe){this._transitioningPaint=this._transitionablePaint.transitioned(oe,this._transitioningPaint)},C.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},C.prototype.recalculate=function(oe,_e){oe.getCrossfadeParameters&&(this._crossfadeParameters=oe.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(oe,void 0,_e)),this.paint=this._transitioningPaint.possiblyEvaluate(oe,void 0,_e)},C.prototype.serialize=function(){var oe={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(oe.layout=oe.layout||{},oe.layout.visibility=this.visibility),B(oe,function(_e,Pe){return _e!==void 0&&!(Pe==="layout"&&!Object.keys(_e).length)&&!(Pe==="paint"&&!Object.keys(_e).length)})},C.prototype._validate=function(oe,_e,Pe,je,ct){return ct===void 0&&(ct={}),ct&&ct.validate===!1?!1:qu(this,oe.call(Zo,{key:_e,layerType:this.type,objectKey:Pe,value:je,styleSpec:fi,style:{glyphs:!0,sprite:!0}}))},C.prototype.is3D=function(){return!1},C.prototype.isTileClipped=function(){return!1},C.prototype.hasOffscreenPass=function(){return!1},C.prototype.resize=function(){},C.prototype.isStateDependent=function(){for(var oe in this.paint._values){var _e=this.paint.get(oe);if(!(!(_e instanceof Ll)||!fl(_e.property.specification))&&(_e.value.kind==="source"||_e.value.kind==="composite")&&_e.value.isStateDependent)return!0}return!1},C}(Lr),cn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},fn=function(C,V){this._structArray=C,this._pos1=V*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Gi=128,Io=5,nn=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};nn.serialize=function(C,V){return C._trim(),V&&(C.isTransferred=!0,V.push(C.arrayBuffer)),{length:C.length,arrayBuffer:C.arrayBuffer}},nn.deserialize=function(C){var V=Object.create(this.prototype);return V.arrayBuffer=C.arrayBuffer,V.length=C.length,V.capacity=C.arrayBuffer.byteLength/V.bytesPerElement,V._refreshViews(),V},nn.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},nn.prototype.clear=function(){this.length=0},nn.prototype.resize=function(C){this.reserve(C),this.length=C},nn.prototype.reserve=function(C){if(C>this.capacity){this.capacity=Math.max(C,Math.floor(this.capacity*Io),Gi),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var V=this.uint8;this._refreshViews(),V&&this.uint8.set(V)}},nn.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function on(k,C){C===void 0&&(C=1);var V=0,oe=0,_e=k.map(function(je){var ct=Oi(je.type),Lt=V=ui(V,Math.max(C,ct)),Nt=je.components||1;return oe=Math.max(oe,ct),V+=ct*Nt,{name:je.name,type:je.type,components:Nt,offset:Lt}}),Pe=ui(V,Math.max(oe,C));return{members:_e,size:Pe,alignment:C}}function Oi(k){return cn[k].BYTES_PER_ELEMENT}function ui(k,C){return Math.ceil(k/C)*C}var Mi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.int16[je+0]=_e,this.int16[je+1]=Pe,oe},C}(nn);Mi.prototype.bytesPerElement=4,de("StructArrayLayout2i4",Mi);var tn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.int16[Lt+0]=_e,this.int16[Lt+1]=Pe,this.int16[Lt+2]=je,this.int16[Lt+3]=ct,oe},C}(nn);tn.prototype.bytesPerElement=8,de("StructArrayLayout4i8",tn);var pn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);pn.prototype.bytesPerElement=12,de("StructArrayLayout2i4i12",pn);var qi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*4,gr=oe*8;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.uint8[gr+4]=je,this.uint8[gr+5]=ct,this.uint8[gr+6]=Lt,this.uint8[gr+7]=Nt,oe},C}(nn);qi.prototype.bytesPerElement=8,de("StructArrayLayout2i4ub8",qi);var Dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.float32[je+0]=_e,this.float32[je+1]=Pe,oe},C}(nn);Dn.prototype.bytesPerElement=8,de("StructArrayLayout2f8",Dn);var bn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=this.length;return this.resize(Rr+1),this.emplace(Rr,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr){var na=oe*10;return this.uint16[na+0]=_e,this.uint16[na+1]=Pe,this.uint16[na+2]=je,this.uint16[na+3]=ct,this.uint16[na+4]=Lt,this.uint16[na+5]=Nt,this.uint16[na+6]=Xt,this.uint16[na+7]=gr,this.uint16[na+8]=Br,this.uint16[na+9]=Rr,oe},C}(nn);bn.prototype.bytesPerElement=20,de("StructArrayLayout10ui20",bn);var _o=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=this.length;return this.resize(Ia+1),this.emplace(Ia,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=oe*12;return this.int16[ii+0]=_e,this.int16[ii+1]=Pe,this.int16[ii+2]=je,this.int16[ii+3]=ct,this.uint16[ii+4]=Lt,this.uint16[ii+5]=Nt,this.uint16[ii+6]=Xt,this.uint16[ii+7]=gr,this.int16[ii+8]=Br,this.int16[ii+9]=Rr,this.int16[ii+10]=na,this.int16[ii+11]=Ia,oe},C}(nn);_o.prototype.bytesPerElement=24,de("StructArrayLayout4i4ui4i24",_o);var Zi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.float32[ct+0]=_e,this.float32[ct+1]=Pe,this.float32[ct+2]=je,oe},C}(nn);Zi.prototype.bytesPerElement=12,de("StructArrayLayout3f12",Zi);var Ui=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint32[Pe+0]=_e,oe},C}(nn);Ui.prototype.bytesPerElement=4,de("StructArrayLayout1ul4",Ui);var Zn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.length;return this.resize(Br+1),this.emplace(Br,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=oe*10,na=oe*5;return this.int16[Rr+0]=_e,this.int16[Rr+1]=Pe,this.int16[Rr+2]=je,this.int16[Rr+3]=ct,this.int16[Rr+4]=Lt,this.int16[Rr+5]=Nt,this.uint32[na+3]=Xt,this.uint16[Rr+8]=gr,this.uint16[Rr+9]=Br,oe},C}(nn);Zn.prototype.bytesPerElement=20,de("StructArrayLayout6i1ul2ui20",Zn);var Rn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);Rn.prototype.bytesPerElement=12,de("StructArrayLayout2i2i2i12",Rn);var xn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct){var Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,oe,_e,Pe,je,ct)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt){var Nt=oe*4,Xt=oe*8;return this.float32[Nt+0]=_e,this.float32[Nt+1]=Pe,this.float32[Nt+2]=je,this.int16[Xt+6]=ct,this.int16[Xt+7]=Lt,oe},C}(nn);xn.prototype.bytesPerElement=16,de("StructArrayLayout2f1f2i16",xn);var dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*12,Nt=oe*3;return this.uint8[Lt+0]=_e,this.uint8[Lt+1]=Pe,this.float32[Nt+1]=je,this.float32[Nt+2]=ct,oe},C}(nn);dn.prototype.bytesPerElement=12,de("StructArrayLayout2ub2f12",dn);var jn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.uint16[ct+0]=_e,this.uint16[ct+1]=Pe,this.uint16[ct+2]=je,oe},C}(nn);jn.prototype.bytesPerElement=6,de("StructArrayLayout3ui6",jn);var Ro=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci){var Ai=this.length;return this.resize(Ai+1),this.emplace(Ai,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai){var Li=oe*24,Ki=oe*12,kn=oe*48;return this.int16[Li+0]=_e,this.int16[Li+1]=Pe,this.uint16[Li+2]=je,this.uint16[Li+3]=ct,this.uint32[Ki+2]=Lt,this.uint32[Ki+3]=Nt,this.uint32[Ki+4]=Xt,this.uint16[Li+10]=gr,this.uint16[Li+11]=Br,this.uint16[Li+12]=Rr,this.float32[Ki+7]=na,this.float32[Ki+8]=Ia,this.uint8[kn+36]=ii,this.uint8[kn+37]=Wa,this.uint8[kn+38]=Si,this.uint32[Ki+10]=ci,this.int16[Li+22]=Ai,oe},C}(nn);Ro.prototype.bytesPerElement=48,de("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Ro);var rs=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo){var zs=this.length;return this.resize(zs+1),this.emplace(zs,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo,zs){var cs=oe*34,Tl=oe*17;return this.int16[cs+0]=_e,this.int16[cs+1]=Pe,this.int16[cs+2]=je,this.int16[cs+3]=ct,this.int16[cs+4]=Lt,this.int16[cs+5]=Nt,this.int16[cs+6]=Xt,this.int16[cs+7]=gr,this.uint16[cs+8]=Br,this.uint16[cs+9]=Rr,this.uint16[cs+10]=na,this.uint16[cs+11]=Ia,this.uint16[cs+12]=ii,this.uint16[cs+13]=Wa,this.uint16[cs+14]=Si,this.uint16[cs+15]=ci,this.uint16[cs+16]=Ai,this.uint16[cs+17]=Li,this.uint16[cs+18]=Ki,this.uint16[cs+19]=kn,this.uint16[cs+20]=Tn,this.uint16[cs+21]=lo,this.uint16[cs+22]=qn,this.uint32[Tl+12]=to,this.float32[Tl+13]=ds,this.float32[Tl+14]=uo,this.float32[Tl+15]=vo,this.float32[Tl+16]=zs,oe},C}(nn);rs.prototype.bytesPerElement=68,de("StructArrayLayout8i15ui1ul4f68",rs);var wn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.float32[Pe+0]=_e,oe},C}(nn);wn.prototype.bytesPerElement=4,de("StructArrayLayout1f4",wn);var oo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.int16[ct+0]=_e,this.int16[ct+1]=Pe,this.int16[ct+2]=je,oe},C}(nn);oo.prototype.bytesPerElement=6,de("StructArrayLayout3i6",oo);var Xo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*2,Lt=oe*4;return this.uint32[ct+0]=_e,this.uint16[Lt+2]=Pe,this.uint16[Lt+3]=je,oe},C}(nn);Xo.prototype.bytesPerElement=8,de("StructArrayLayout1ul2ui8",Xo);var os=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.uint16[je+0]=_e,this.uint16[je+1]=Pe,oe},C}(nn);os.prototype.bytesPerElement=4,de("StructArrayLayout2ui4",os);var As=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint16[Pe+0]=_e,oe},C}(nn);As.prototype.bytesPerElement=2,de("StructArrayLayout1ui2",As);var $l=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.float32[Lt+0]=_e,this.float32[Lt+1]=Pe,this.float32[Lt+2]=je,this.float32[Lt+3]=ct,oe},C}(nn);$l.prototype.bytesPerElement=16,de("StructArrayLayout4f16",$l);var Uc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return V.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},V.x1.get=function(){return this._structArray.int16[this._pos2+2]},V.y1.get=function(){return this._structArray.int16[this._pos2+3]},V.x2.get=function(){return this._structArray.int16[this._pos2+4]},V.y2.get=function(){return this._structArray.int16[this._pos2+5]},V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.anchorPoint.get=function(){return new i(this.anchorPointX,this.anchorPointY)},Object.defineProperties(C.prototype,V),C}(fn);Uc.prototype.size=20;var Ws=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Uc(this,oe)},C}(Zn);de("CollisionBoxArray",Ws);var jc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},V.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},V.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},V.segment.get=function(){return this._structArray.uint16[this._pos2+10]},V.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},V.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},V.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},V.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},V.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},V.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},V.placedOrientation.set=function(oe){this._structArray.uint8[this._pos1+37]=oe},V.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},V.hidden.set=function(oe){this._structArray.uint8[this._pos1+38]=oe},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+10]=oe},V.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(C.prototype,V),C}(fn);jc.prototype.size=48;var Ol=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new jc(this,oe)},C}(Ro);de("PlacedSymbolArray",Ol);var vc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},V.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},V.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},V.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},V.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},V.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},V.key.get=function(){return this._structArray.uint16[this._pos2+8]},V.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},V.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},V.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},V.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},V.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},V.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},V.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},V.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},V.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},V.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},V.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},V.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},V.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+12]=oe},V.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},V.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},V.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},V.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(C.prototype,V),C}(fn);vc.prototype.size=68;var mc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new vc(this,oe)},C}(rs);de("SymbolInstanceArray",mc);var rf=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getoffsetX=function(oe){return this.float32[oe*1+0]},C}(wn);de("GlyphOffsetArray",rf);var Yl=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getx=function(oe){return this.int16[oe*3+0]},C.prototype.gety=function(oe){return this.int16[oe*3+1]},C.prototype.gettileUnitDistanceFromAnchor=function(oe){return this.int16[oe*3+2]},C}(oo);de("SymbolLineVertexArray",Yl);var Mc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(C.prototype,V),C}(fn);Mc.prototype.size=8;var Vc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Mc(this,oe)},C}(Xo);de("FeatureIndexArray",Vc);var Ds=on([{name:"a_pos",components:2,type:"Int16"}],4),af=Ds.members,Cs=function(C){C===void 0&&(C=[]),this.segments=C};Cs.prototype.prepareSegment=function(C,V,oe,_e){var Pe=this.segments[this.segments.length-1];return C>Cs.MAX_VERTEX_ARRAY_LENGTH&&U("Max vertices per segment is "+Cs.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+C),(!Pe||Pe.vertexLength+C>Cs.MAX_VERTEX_ARRAY_LENGTH||Pe.sortKey!==_e)&&(Pe={vertexOffset:V.length,primitiveOffset:oe.length,vertexLength:0,primitiveLength:0},_e!==void 0&&(Pe.sortKey=_e),this.segments.push(Pe)),Pe},Cs.prototype.get=function(){return this.segments},Cs.prototype.destroy=function(){for(var C=0,V=this.segments;C<V.length;C+=1){var oe=V[C];for(var _e in oe.vaos)oe.vaos[_e].destroy()}},Cs.simpleSegment=function(C,V,oe,_e){return new Cs([{vertexOffset:C,primitiveOffset:V,vertexLength:oe,primitiveLength:_e,vaos:{},sortKey:0}])},Cs.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,de("SegmentVector",Cs);function ve(k,C){return k=l(Math.floor(k),0,255),C=l(Math.floor(C),0,255),256*k+C}var K=on([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]),ye=t(function(k){function C(V,oe){var _e,Pe,je,ct,Lt,Nt,Xt,gr;for(_e=V.length&3,Pe=V.length-_e,je=oe,Lt=3432918353,Nt=461845907,gr=0;gr<Pe;)Xt=V.charCodeAt(gr)&255|(V.charCodeAt(++gr)&255)<<8|(V.charCodeAt(++gr)&255)<<16|(V.charCodeAt(++gr)&255)<<24,++gr,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt,je=je<<13|je>>>19,ct=(je&65535)*5+(((je>>>16)*5&65535)<<16)&4294967295,je=(ct&65535)+27492+(((ct>>>16)+58964&65535)<<16);switch(Xt=0,_e){case 3:Xt^=(V.charCodeAt(gr+2)&255)<<16;case 2:Xt^=(V.charCodeAt(gr+1)&255)<<8;case 1:Xt^=V.charCodeAt(gr)&255,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt}return je^=V.length,je^=je>>>16,je=(je&65535)*2246822507+(((je>>>16)*2246822507&65535)<<16)&4294967295,je^=je>>>13,je=(je&65535)*3266489909+(((je>>>16)*3266489909&65535)<<16)&4294967295,je^=je>>>16,je>>>0}k.exports=C}),te=t(function(k){function C(V,oe){for(var _e=V.length,Pe=oe^_e,je=0,ct;_e>=4;)ct=V.charCodeAt(je)&255|(V.charCodeAt(++je)&255)<<8|(V.charCodeAt(++je)&255)<<16|(V.charCodeAt(++je)&255)<<24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),ct^=ct>>>24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)^ct,_e-=4,++je;switch(_e){case 3:Pe^=(V.charCodeAt(je+2)&255)<<16;case 2:Pe^=(V.charCodeAt(je+1)&255)<<8;case 1:Pe^=V.charCodeAt(je)&255,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)}return Pe^=Pe>>>13,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16),Pe^=Pe>>>15,Pe>>>0}k.exports=C}),xe=ye,We=ye,He=te;xe.murmur3=We,xe.murmur2=He;var st=function(){this.ids=[],this.positions=[],this.indexed=!1};st.prototype.add=function(C,V,oe,_e){this.ids.push(Ht(C)),this.positions.push(V,oe,_e)},st.prototype.getPositions=function(C){for(var V=Ht(C),oe=0,_e=this.ids.length-1;oe<_e;){var Pe=oe+_e>>1;this.ids[Pe]>=V?_e=Pe:oe=Pe+1}for(var je=[];this.ids[oe]===V;){var ct=this.positions[3*oe],Lt=this.positions[3*oe+1],Nt=this.positions[3*oe+2];je.push({index:ct,start:Lt,end:Nt}),oe++}return je},st.serialize=function(C,V){var oe=new Float64Array(C.ids),_e=new Uint32Array(C.positions);return yr(oe,_e,0,oe.length-1),V&&V.push(oe.buffer,_e.buffer),{ids:oe,positions:_e}},st.deserialize=function(C){var V=new st;return V.ids=C.ids,V.positions=C.positions,V.indexed=!0,V};var Et=Math.pow(2,53)-1;function Ht(k){var C=+k;return!isNaN(C)&&C<=Et?C:xe(String(k))}function yr(k,C,V,oe){for(;V<oe;){for(var _e=k[V+oe>>1],Pe=V-1,je=oe+1;;){do Pe++;while(k[Pe]<_e);do je--;while(k[je]>_e);if(Pe>=je)break;Ir(k,Pe,je),Ir(C,3*Pe,3*je),Ir(C,3*Pe+1,3*je+1),Ir(C,3*Pe+2,3*je+2)}je-V<oe-je?(yr(k,C,V,je),V=je+1):(yr(k,C,je+1,oe),oe=je)}}function Ir(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}de("FeaturePositionMap",st);var wr=function(C,V){this.gl=C.gl,this.location=V},qt=function(k){function C(V,oe){k.call(this,V,oe),this.current=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){this.current!==oe&&(this.current=oe,this.gl.uniform1i(this.location,oe))},C}(wr),tr=function(k){function C(V,oe){k.call(this,V,oe),this.current=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){this.current!==oe&&(this.current=oe,this.gl.uniform1f(this.location,oe))},C}(wr),dr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1])&&(this.current=oe,this.gl.uniform2f(this.location,oe[0],oe[1]))},C}(wr),Pr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1]||oe[2]!==this.current[2])&&(this.current=oe,this.gl.uniform3f(this.location,oe[0],oe[1],oe[2]))},C}(wr),Vr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0,0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1]||oe[2]!==this.current[2]||oe[3]!==this.current[3])&&(this.current=oe,this.gl.uniform4f(this.location,oe[0],oe[1],oe[2],oe[3]))},C}(wr),Hr=function(k){function C(V,oe){k.call(this,V,oe),this.current=Rs.transparent}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe.r!==this.current.r||oe.g!==this.current.g||oe.b!==this.current.b||oe.a!==this.current.a)&&(this.current=oe,this.gl.uniform4f(this.location,oe.r,oe.g,oe.b,oe.a))},C}(wr),aa=new Float32Array(16),Qr=function(k){function C(V,oe){k.call(this,V,oe),this.current=aa}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){if(oe[12]!==this.current[12]||oe[0]!==this.current[0]){this.current=oe,this.gl.uniformMatrix4fv(this.location,!1,oe);return}for(var _e=1;_e<16;_e++)if(oe[_e]!==this.current[_e]){this.current=oe,this.gl.uniformMatrix4fv(this.location,!1,oe);break}},C}(wr);function Gr(k){return[ve(255*k.r,255*k.g),ve(255*k.b,255*k.a)]}var ia=function(C,V,oe){this.value=C,this.uniformNames=V.map(function(_e){return"u_"+_e}),this.type=oe};ia.prototype.setUniform=function(C,V,oe){C.set(oe.constantOr(this.value))},ia.prototype.getBinding=function(C,V,oe){return this.type==="color"?new Hr(C,V):new tr(C,V)};var Ur=function(C,V){this.uniformNames=V.map(function(oe){return"u_"+oe}),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};Ur.prototype.setConstantPatternPositions=function(C,V){this.pixelRatioFrom=V.pixelRatio,this.pixelRatioTo=C.pixelRatio,this.patternFrom=V.tlbr,this.patternTo=C.tlbr},Ur.prototype.setUniform=function(C,V,oe,_e){var Pe=_e==="u_pattern_to"?this.patternTo:_e==="u_pattern_from"?this.patternFrom:_e==="u_pixel_ratio_to"?this.pixelRatioTo:_e==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Pe&&C.set(Pe)},Ur.prototype.getBinding=function(C,V,oe){return oe.substr(0,9)==="u_pattern"?new Vr(C,V):new tr(C,V)};var wa=function(C,V,oe,_e){this.expression=C,this.type=oe,this.maxValue=0,this.paintVertexAttributes=V.map(function(Pe){return{name:"a_"+Pe,type:"Float32",components:oe==="color"?2:1,offset:0}}),this.paintVertexArray=new _e};wa.prototype.populatePaintArray=function(C,V,oe,_e,Pe){var je=this.paintVertexArray.length,ct=this.expression.evaluate(new Vi(0),V,{},_e,[],Pe);this.paintVertexArray.resize(C),this._setPaintValue(je,C,ct)},wa.prototype.updatePaintArray=function(C,V,oe,_e){var Pe=this.expression.evaluate({zoom:0},oe,_e);this._setPaintValue(C,V,Pe)},wa.prototype._setPaintValue=function(C,V,oe){if(this.type==="color")for(var _e=Gr(oe),Pe=C;Pe<V;Pe++)this.paintVertexArray.emplace(Pe,_e[0],_e[1]);else{for(var je=C;je<V;je++)this.paintVertexArray.emplace(je,oe);this.maxValue=Math.max(this.maxValue,Math.abs(oe))}},wa.prototype.upload=function(C){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=C.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},wa.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var Oa=function(C,V,oe,_e,Pe,je){this.expression=C,this.uniformNames=V.map(function(ct){return"u_"+ct+"_t"}),this.type=oe,this.useIntegerZoom=_e,this.zoom=Pe,this.maxValue=0,this.paintVertexAttributes=V.map(function(ct){return{name:"a_"+ct,type:"Float32",components:oe==="color"?4:2,offset:0}}),this.paintVertexArray=new je};Oa.prototype.populatePaintArray=function(C,V,oe,_e,Pe){var je=this.expression.evaluate(new Vi(this.zoom),V,{},_e,[],Pe),ct=this.expression.evaluate(new Vi(this.zoom+1),V,{},_e,[],Pe),Lt=this.paintVertexArray.length;this.paintVertexArray.resize(C),this._setPaintValue(Lt,C,je,ct)},Oa.prototype.updatePaintArray=function(C,V,oe,_e){var Pe=this.expression.evaluate({zoom:this.zoom},oe,_e),je=this.expression.evaluate({zoom:this.zoom+1},oe,_e);this._setPaintValue(C,V,Pe,je)},Oa.prototype._setPaintValue=function(C,V,oe,_e){if(this.type==="color")for(var Pe=Gr(oe),je=Gr(_e),ct=C;ct<V;ct++)this.paintVertexArray.emplace(ct,Pe[0],Pe[1],je[0],je[1]);else{for(var Lt=C;Lt<V;Lt++)this.paintVertexArray.emplace(Lt,oe,_e);this.maxValue=Math.max(this.maxValue,Math.abs(oe),Math.abs(_e))}},Oa.prototype.upload=function(C){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=C.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Oa.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},Oa.prototype.setUniform=function(C,V){var oe=this.useIntegerZoom?Math.floor(V.zoom):V.zoom,_e=l(this.expression.interpolationFactor(oe,this.zoom,this.zoom+1),0,1);C.set(_e)},Oa.prototype.getBinding=function(C,V,oe){return new tr(C,V)};var ri=function(C,V,oe,_e,Pe,je){this.expression=C,this.type=V,this.useIntegerZoom=oe,this.zoom=_e,this.layerId=je,this.zoomInPaintVertexArray=new Pe,this.zoomOutPaintVertexArray=new Pe};ri.prototype.populatePaintArray=function(C,V,oe){var _e=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(C),this.zoomOutPaintVertexArray.resize(C),this._setPaintValues(_e,C,V.patterns&&V.patterns[this.layerId],oe)},ri.prototype.updatePaintArray=function(C,V,oe,_e,Pe){this._setPaintValues(C,V,oe.patterns&&oe.patterns[this.layerId],Pe)},ri.prototype._setPaintValues=function(C,V,oe,_e){if(!(!_e||!oe)){var Pe=oe.min,je=oe.mid,ct=oe.max,Lt=_e[Pe],Nt=_e[je],Xt=_e[ct];if(!(!Lt||!Nt||!Xt))for(var gr=C;gr<V;gr++)this.zoomInPaintVertexArray.emplace(gr,Nt.tl[0],Nt.tl[1],Nt.br[0],Nt.br[1],Lt.tl[0],Lt.tl[1],Lt.br[0],Lt.br[1],Nt.pixelRatio,Lt.pixelRatio),this.zoomOutPaintVertexArray.emplace(gr,Nt.tl[0],Nt.tl[1],Nt.br[0],Nt.br[1],Xt.tl[0],Xt.tl[1],Xt.br[0],Xt.br[1],Nt.pixelRatio,Xt.pixelRatio)}},ri.prototype.upload=function(C){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=C.createVertexBuffer(this.zoomInPaintVertexArray,K.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=C.createVertexBuffer(this.zoomOutPaintVertexArray,K.members,this.expression.isStateDependent))},ri.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var Pi=function(C,V,oe){this.binders={},this._buffers=[];var _e=[];for(var Pe in C.paint._values)if(oe(Pe)){var je=C.paint.get(Pe);if(!(!(je instanceof Ll)||!fl(je.property.specification))){var ct=Di(Pe,C.type),Lt=je.value,Nt=je.property.specification.type,Xt=je.property.useIntegerZoom,gr=je.property.specification["property-type"],Br=gr==="cross-faded"||gr==="cross-faded-data-driven";if(Lt.kind==="constant")this.binders[Pe]=Br?new Ur(Lt.value,ct):new ia(Lt.value,ct,Nt),_e.push("/u_"+Pe);else if(Lt.kind==="source"||Br){var Rr=ln(Pe,Nt,"source");this.binders[Pe]=Br?new ri(Lt,Nt,Xt,V,Rr,C.id):new wa(Lt,ct,Nt,Rr),_e.push("/a_"+Pe)}else{var na=ln(Pe,Nt,"composite");this.binders[Pe]=new Oa(Lt,ct,Nt,Xt,V,na),_e.push("/z_"+Pe)}}}this.cacheKey=_e.sort().join("")};Pi.prototype.getMaxValue=function(C){var V=this.binders[C];return V instanceof wa||V instanceof Oa?V.maxValue:0},Pi.prototype.populatePaintArrays=function(C,V,oe,_e,Pe){for(var je in this.binders){var ct=this.binders[je];(ct instanceof wa||ct instanceof Oa||ct instanceof ri)&&ct.populatePaintArray(C,V,oe,_e,Pe)}},Pi.prototype.setConstantPatternPositions=function(C,V){for(var oe in this.binders){var _e=this.binders[oe];_e instanceof Ur&&_e.setConstantPatternPositions(C,V)}},Pi.prototype.updatePaintArrays=function(C,V,oe,_e,Pe){var je=!1;for(var ct in C)for(var Lt=V.getPositions(ct),Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt],Br=oe.feature(gr.index);for(var Rr in this.binders){var na=this.binders[Rr];if((na instanceof wa||na instanceof Oa||na instanceof ri)&&na.expression.isStateDependent===!0){var Ia=_e.paint.get(Rr);na.expression=Ia.value,na.updatePaintArray(gr.start,gr.end,Br,C[ct],Pe),je=!0}}}return je},Pi.prototype.defines=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];(oe instanceof ia||oe instanceof Ur)&&C.push.apply(C,oe.uniformNames.map(function(_e){return"#define HAS_UNIFORM_"+_e}))}return C},Pi.prototype.getBinderAttributes=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];if(oe instanceof wa||oe instanceof Oa)for(var _e=0;_e<oe.paintVertexAttributes.length;_e++)C.push(oe.paintVertexAttributes[_e].name);else if(oe instanceof ri)for(var Pe=0;Pe<K.members.length;Pe++)C.push(K.members[Pe].name)}return C},Pi.prototype.getBinderUniforms=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];if(oe instanceof ia||oe instanceof Ur||oe instanceof Oa)for(var _e=0,Pe=oe.uniformNames;_e<Pe.length;_e+=1){var je=Pe[_e];C.push(je)}}return C},Pi.prototype.getPaintVertexBuffers=function(){return this._buffers},Pi.prototype.getUniforms=function(C,V){var oe=[];for(var _e in this.binders){var Pe=this.binders[_e];if(Pe instanceof ia||Pe instanceof Ur||Pe instanceof Oa)for(var je=0,ct=Pe.uniformNames;je<ct.length;je+=1){var Lt=ct[je];if(V[Lt]){var Nt=Pe.getBinding(C,V[Lt],Lt);oe.push({name:Lt,property:_e,binding:Nt})}}}return oe},Pi.prototype.setUniforms=function(C,V,oe,_e){for(var Pe=0,je=V;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=ct.name,Nt=ct.property,Xt=ct.binding;this.binders[Nt].setUniform(Xt,_e,oe.get(Nt),Lt)}},Pi.prototype.updatePaintBuffers=function(C){this._buffers=[];for(var V in this.binders){var oe=this.binders[V];if(C&&oe instanceof ri){var _e=C.fromScale===2?oe.zoomInPaintVertexBuffer:oe.zoomOutPaintVertexBuffer;_e&&this._buffers.push(_e)}else(oe instanceof wa||oe instanceof Oa)&&oe.paintVertexBuffer&&this._buffers.push(oe.paintVertexBuffer)}},Pi.prototype.upload=function(C){for(var V in this.binders){var oe=this.binders[V];(oe instanceof wa||oe instanceof Oa||oe instanceof ri)&&oe.upload(C)}this.updatePaintBuffers()},Pi.prototype.destroy=function(){for(var C in this.binders){var V=this.binders[C];(V instanceof wa||V instanceof Oa||V instanceof ri)&&V.destroy()}};var mi=function(C,V,oe){oe===void 0&&(oe=function(){return!0}),this.programConfigurations={};for(var _e=0,Pe=C;_e<Pe.length;_e+=1){var je=Pe[_e];this.programConfigurations[je.id]=new Pi(je,V,oe)}this.needsUpload=!1,this._featureMap=new st,this._bufferOffset=0};mi.prototype.populatePaintArrays=function(C,V,oe,_e,Pe,je){for(var ct in this.programConfigurations)this.programConfigurations[ct].populatePaintArrays(C,V,_e,Pe,je);V.id!==void 0&&this._featureMap.add(V.id,oe,this._bufferOffset,C),this._bufferOffset=C,this.needsUpload=!0},mi.prototype.updatePaintArrays=function(C,V,oe,_e){for(var Pe=0,je=oe;Pe<je.length;Pe+=1){var ct=je[Pe];this.needsUpload=this.programConfigurations[ct.id].updatePaintArrays(C,this._featureMap,V,ct,_e)||this.needsUpload}},mi.prototype.get=function(C){return this.programConfigurations[C]},mi.prototype.upload=function(C){if(this.needsUpload){for(var V in this.programConfigurations)this.programConfigurations[V].upload(C);this.needsUpload=!1}},mi.prototype.destroy=function(){for(var C in this.programConfigurations)this.programConfigurations[C].destroy()};function Di(k,C){var V={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]};return V[k]||[k.replace(C+"-","").replace(/-/g,"_")]}function An(k){var C={"line-pattern":{source:bn,composite:bn},"fill-pattern":{source:bn,composite:bn},"fill-extrusion-pattern":{source:bn,composite:bn}};return C[k]}function ln(k,C,V){var oe={color:{source:Dn,composite:$l},number:{source:wn,composite:Dn}},_e=An(k);return _e&&_e[V]||oe[C][V]}de("ConstantBinder",ia),de("CrossFadedConstantBinder",Ur),de("SourceExpressionBinder",wa),de("CrossFadedCompositeBinder",ri),de("CompositeExpressionBinder",Oa),de("ProgramConfiguration",Pi,{omit:["_buffers"]}),de("ProgramConfigurationSet",mi);var Ii=8192,Wi=15,Hi=Math.pow(2,Wi-1)-1,yn=-Hi-1;function zn(k){for(var C=Ii/k.extent,V=k.loadGeometry(),oe=0;oe<V.length;oe++)for(var _e=V[oe],Pe=0;Pe<_e.length;Pe++){var je=_e[Pe],ct=Math.round(je.x*C),Lt=Math.round(je.y*C);je.x=l(ct,yn,Hi),je.y=l(Lt,yn,Hi),(ct<je.x||ct>je.x+1||Lt<je.y||Lt>je.y+1)&&U("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return V}function ms(k,C){return{type:k.type,id:k.id,properties:k.properties,geometry:C?zn(k):[]}}function us(k,C,V,oe,_e){k.emplaceBack(C*2+(oe+1)/2,V*2+(_e+1)/2)}var Vs=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new Mi,this.indexArray=new jn,this.segments=new Cs,this.programConfigurations=new mi(C.layers,C.zoom),this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};Vs.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=[],je=null;_e.type==="circle"&&(je=_e.layout.get("circle-sort-key"));for(var ct=0,Lt=C;ct<Lt.length;ct+=1){var Nt=Lt[ct],Xt=Nt.feature,gr=Nt.id,Br=Nt.index,Rr=Nt.sourceLayerIndex,na=this.layers[0]._featureFilter.needGeometry,Ia=ms(Xt,na);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),Ia,oe)){var ii=je?je.evaluate(Ia,{},oe):void 0,Wa={id:gr,properties:Xt.properties,type:Xt.type,sourceLayerIndex:Rr,index:Br,geometry:na?Ia.geometry:zn(Xt),patterns:{},sortKey:ii};Pe.push(Wa)}}je&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Si=0,ci=Pe;Si<ci.length;Si+=1){var Ai=ci[Si],Li=Ai,Ki=Li.geometry,kn=Li.index,Tn=Li.sourceLayerIndex,lo=C[kn].feature;this.addFeature(Ai,Ki,kn,oe),V.featureIndex.insert(lo,Ki,kn,Tn,this.index)}},Vs.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},Vs.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Vs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Vs.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,af),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},Vs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Vs.prototype.addFeature=function(C,V,oe,_e){for(var Pe=0,je=V;Pe<je.length;Pe+=1)for(var ct=je[Pe],Lt=0,Nt=ct;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt],gr=Xt.x,Br=Xt.y;if(!(gr<0||gr>=Ii||Br<0||Br>=Ii)){var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,C.sortKey),na=Rr.vertexLength;us(this.layoutVertexArray,gr,Br,-1,-1),us(this.layoutVertexArray,gr,Br,1,-1),us(this.layoutVertexArray,gr,Br,1,1),us(this.layoutVertexArray,gr,Br,-1,1),this.indexArray.emplaceBack(na,na+1,na+2),this.indexArray.emplaceBack(na,na+3,na+2),Rr.vertexLength+=4,Rr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,{},_e)},de("CircleBucket",Vs,{omit:["layers"]});function qo(k,C){for(var V=0;V<k.length;V++)if(kh(C,k[V]))return!0;for(var oe=0;oe<C.length;oe++)if(kh(k,C[oe]))return!0;return!!Sp(k,C)}function Ls(k,C,V){return!!(kh(k,C)||Vp(C,k,V))}function wl(k,C){if(k.length===1)return td(C,k[0]);for(var V=0;V<C.length;V++)for(var oe=C[V],_e=0;_e<oe.length;_e++)if(kh(k,oe[_e]))return!0;for(var Pe=0;Pe<k.length;Pe++)if(td(C,k[Pe]))return!0;for(var je=0;je<C.length;je++)if(Sp(k,C[je]))return!0;return!1}function Ru(k,C,V){for(var oe=0;oe<C.length;oe++){var _e=C[oe];if(k.length>=3){for(var Pe=0;Pe<_e.length;Pe++)if(kh(k,_e[Pe]))return!0}if(Ap(k,_e,V))return!0}return!1}function Ap(k,C,V){if(k.length>1){if(Sp(k,C))return!0;for(var oe=0;oe<C.length;oe++)if(Vp(C[oe],k,V))return!0}for(var _e=0;_e<k.length;_e++)if(Vp(k[_e],C,V))return!0;return!1}function Sp(k,C){if(k.length===0||C.length===0)return!1;for(var V=0;V<k.length-1;V++)for(var oe=k[V],_e=k[V+1],Pe=0;Pe<C.length-1;Pe++){var je=C[Pe],ct=C[Pe+1];if(Eh(oe,_e,je,ct))return!0}return!1}function Eh(k,C,V,oe){return W(k,V,oe)!==W(C,V,oe)&&W(k,C,V)!==W(k,C,oe)}function Vp(k,C,V){var oe=V*V;if(C.length===1)return k.distSqr(C[0])<oe;for(var _e=1;_e<C.length;_e++){var Pe=C[_e-1],je=C[_e];if(Vd(k,Pe,je)<oe)return!0}return!1}function Vd(k,C,V){var oe=C.distSqr(V);if(oe===0)return k.distSqr(C);var _e=((k.x-C.x)*(V.x-C.x)+(k.y-C.y)*(V.y-C.y))/oe;return _e<0?k.distSqr(C):_e>1?k.distSqr(V):k.distSqr(V.sub(C)._mult(_e)._add(C))}function td(k,C){for(var V=!1,oe,_e,Pe,je=0;je<k.length;je++){oe=k[je];for(var ct=0,Lt=oe.length-1;ct<oe.length;Lt=ct++)_e=oe[ct],Pe=oe[Lt],_e.y>C.y!=Pe.y>C.y&&C.x<(Pe.x-_e.x)*(C.y-_e.y)/(Pe.y-_e.y)+_e.x&&(V=!V)}return V}function kh(k,C){for(var V=!1,oe=0,_e=k.length-1;oe<k.length;_e=oe++){var Pe=k[oe],je=k[_e];Pe.y>C.y!=je.y>C.y&&C.x<(je.x-Pe.x)*(C.y-Pe.y)/(je.y-Pe.y)+Pe.x&&(V=!V)}return V}function rd(k,C,V,oe,_e){for(var Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe];if(C<=ct.x&&V<=ct.y&&oe>=ct.x&&_e>=ct.y)return!0}var Lt=[new i(C,V),new i(C,_e),new i(oe,_e),new i(oe,V)];if(k.length>2)for(var Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];if(kh(k,gr))return!0}for(var Br=0;Br<k.length-1;Br++){var Rr=k[Br],na=k[Br+1];if(Xh(Rr,na,Lt))return!0}return!1}function Xh(k,C,V){var oe=V[0],_e=V[2];if(k.x<oe.x&&C.x<oe.x||k.x>_e.x&&C.x>_e.x||k.y<oe.y&&C.y<oe.y||k.y>_e.y&&C.y>_e.y)return!1;var Pe=W(k,C,V[0]);return Pe!==W(k,C,V[1])||Pe!==W(k,C,V[2])||Pe!==W(k,C,V[3])}function Ch(k,C,V){var oe=C.paint.get(k).value;return oe.kind==="constant"?oe.value:V.programConfigurations.get(C.id).getMaxValue(k)}function Mp(k){return Math.sqrt(k[0]*k[0]+k[1]*k[1])}function qp(k,C,V,oe,_e){if(!C[0]&&!C[1])return k;var Pe=i.convert(C)._mult(_e);V==="viewport"&&Pe._rotate(-oe);for(var je=[],ct=0;ct<k.length;ct++){var Lt=k[ct];je.push(Lt.sub(Pe))}return je}var Ep=new xi({"circle-sort-key":new ra(fi.layout_circle["circle-sort-key"])}),Cv=new xi({"circle-radius":new ra(fi.paint_circle["circle-radius"]),"circle-color":new ra(fi.paint_circle["circle-color"]),"circle-blur":new ra(fi.paint_circle["circle-blur"]),"circle-opacity":new ra(fi.paint_circle["circle-opacity"]),"circle-translate":new Qt(fi.paint_circle["circle-translate"]),"circle-translate-anchor":new Qt(fi.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Qt(fi.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Qt(fi.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new ra(fi.paint_circle["circle-stroke-width"]),"circle-stroke-color":new ra(fi.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new ra(fi.paint_circle["circle-stroke-opacity"])}),qd={paint:Cv,layout:Ep},Sf=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var k=arguments,C=0,V=arguments.length;V--;)C+=k[V]*k[V];return Math.sqrt(C)});function Hd(){var k=new Sf(4);return Sf!=Float32Array&&(k[1]=0,k[2]=0),k[0]=1,k[3]=1,k}function Lv(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3],ct=Math.sin(V),Lt=Math.cos(V);return k[0]=oe*Lt+Pe*ct,k[1]=_e*Lt+je*ct,k[2]=oe*-ct+Pe*Lt,k[3]=_e*-ct+je*Lt,k}function eh(){var k=new Sf(9);return Sf!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[5]=0,k[6]=0,k[7]=0),k[0]=1,k[4]=1,k[8]=1,k}function iv(k,C){var V=Math.sin(C),oe=Math.cos(C);return k[0]=oe,k[1]=V,k[2]=0,k[3]=-V,k[4]=oe,k[5]=0,k[6]=0,k[7]=0,k[8]=1,k}function im(){var k=new Sf(16);return Sf!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[11]=0,k[12]=0,k[13]=0,k[14]=0),k[0]=1,k[5]=1,k[10]=1,k[15]=1,k}function nm(k){var C=new Sf(16);return C[0]=k[0],C[1]=k[1],C[2]=k[2],C[3]=k[3],C[4]=k[4],C[5]=k[5],C[6]=k[6],C[7]=k[7],C[8]=k[8],C[9]=k[9],C[10]=k[10],C[11]=k[11],C[12]=k[12],C[13]=k[13],C[14]=k[14],C[15]=k[15],C}function Pv(k){return k[0]=1,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=1,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[10]=1,k[11]=0,k[12]=0,k[13]=0,k[14]=0,k[15]=1,k}function nv(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3],je=C[4],ct=C[5],Lt=C[6],Nt=C[7],Xt=C[8],gr=C[9],Br=C[10],Rr=C[11],na=C[12],Ia=C[13],ii=C[14],Wa=C[15],Si=V*ct-oe*je,ci=V*Lt-_e*je,Ai=V*Nt-Pe*je,Li=oe*Lt-_e*ct,Ki=oe*Nt-Pe*ct,kn=_e*Nt-Pe*Lt,Tn=Xt*Ia-gr*na,lo=Xt*ii-Br*na,qn=Xt*Wa-Rr*na,to=gr*ii-Br*Ia,ds=gr*Wa-Rr*Ia,uo=Br*Wa-Rr*ii,vo=Si*uo-ci*ds+Ai*to+Li*qn-Ki*lo+kn*Tn;return vo?(vo=1/vo,k[0]=(ct*uo-Lt*ds+Nt*to)*vo,k[1]=(_e*ds-oe*uo-Pe*to)*vo,k[2]=(Ia*kn-ii*Ki+Wa*Li)*vo,k[3]=(Br*Ki-gr*kn-Rr*Li)*vo,k[4]=(Lt*qn-je*uo-Nt*lo)*vo,k[5]=(V*uo-_e*qn+Pe*lo)*vo,k[6]=(ii*Ai-na*kn-Wa*ci)*vo,k[7]=(Xt*kn-Br*Ai+Rr*ci)*vo,k[8]=(je*ds-ct*qn+Nt*Tn)*vo,k[9]=(oe*qn-V*ds-Pe*Tn)*vo,k[10]=(na*Ki-Ia*Ai+Wa*Si)*vo,k[11]=(gr*Ai-Xt*Ki-Rr*Si)*vo,k[12]=(ct*lo-je*to-Lt*Tn)*vo,k[13]=(V*to-oe*lo+_e*Tn)*vo,k[14]=(Ia*ci-na*Li-ii*Si)*vo,k[15]=(Xt*Li-gr*ci+Br*Si)*vo,k):null}function ov(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3],ct=C[4],Lt=C[5],Nt=C[6],Xt=C[7],gr=C[8],Br=C[9],Rr=C[10],na=C[11],Ia=C[12],ii=C[13],Wa=C[14],Si=C[15],ci=V[0],Ai=V[1],Li=V[2],Ki=V[3];return k[0]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[1]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[2]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[3]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[4],Ai=V[5],Li=V[6],Ki=V[7],k[4]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[5]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[6]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[7]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[8],Ai=V[9],Li=V[10],Ki=V[11],k[8]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[9]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[10]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[11]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[12],Ai=V[13],Li=V[14],Ki=V[15],k[12]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[13]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[14]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[15]=ci*je+Ai*Xt+Li*na+Ki*Si,k}function Du(k,C,V){var oe=V[0],_e=V[1],Pe=V[2],je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa;return C===k?(k[12]=C[0]*oe+C[4]*_e+C[8]*Pe+C[12],k[13]=C[1]*oe+C[5]*_e+C[9]*Pe+C[13],k[14]=C[2]*oe+C[6]*_e+C[10]*Pe+C[14],k[15]=C[3]*oe+C[7]*_e+C[11]*Pe+C[15]):(je=C[0],ct=C[1],Lt=C[2],Nt=C[3],Xt=C[4],gr=C[5],Br=C[6],Rr=C[7],na=C[8],Ia=C[9],ii=C[10],Wa=C[11],k[0]=je,k[1]=ct,k[2]=Lt,k[3]=Nt,k[4]=Xt,k[5]=gr,k[6]=Br,k[7]=Rr,k[8]=na,k[9]=Ia,k[10]=ii,k[11]=Wa,k[12]=je*oe+Xt*_e+na*Pe+C[12],k[13]=ct*oe+gr*_e+Ia*Pe+C[13],k[14]=Lt*oe+Br*_e+ii*Pe+C[14],k[15]=Nt*oe+Rr*_e+Wa*Pe+C[15]),k}function Bl(k,C,V){var oe=V[0],_e=V[1],Pe=V[2];return k[0]=C[0]*oe,k[1]=C[1]*oe,k[2]=C[2]*oe,k[3]=C[3]*oe,k[4]=C[4]*_e,k[5]=C[5]*_e,k[6]=C[6]*_e,k[7]=C[7]*_e,k[8]=C[8]*Pe,k[9]=C[9]*Pe,k[10]=C[10]*Pe,k[11]=C[11]*Pe,k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15],k}function Lh(k,C,V){var oe=Math.sin(V),_e=Math.cos(V),Pe=C[4],je=C[5],ct=C[6],Lt=C[7],Nt=C[8],Xt=C[9],gr=C[10],Br=C[11];return C!==k&&(k[0]=C[0],k[1]=C[1],k[2]=C[2],k[3]=C[3],k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15]),k[4]=Pe*_e+Nt*oe,k[5]=je*_e+Xt*oe,k[6]=ct*_e+gr*oe,k[7]=Lt*_e+Br*oe,k[8]=Nt*_e-Pe*oe,k[9]=Xt*_e-je*oe,k[10]=gr*_e-ct*oe,k[11]=Br*_e-Lt*oe,k}function Iv(k,C,V){var oe=Math.sin(V),_e=Math.cos(V),Pe=C[0],je=C[1],ct=C[2],Lt=C[3],Nt=C[4],Xt=C[5],gr=C[6],Br=C[7];return C!==k&&(k[8]=C[8],k[9]=C[9],k[10]=C[10],k[11]=C[11],k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15]),k[0]=Pe*_e+Nt*oe,k[1]=je*_e+Xt*oe,k[2]=ct*_e+gr*oe,k[3]=Lt*_e+Br*oe,k[4]=Nt*_e-Pe*oe,k[5]=Xt*_e-je*oe,k[6]=gr*_e-ct*oe,k[7]=Br*_e-Lt*oe,k}function om(k,C,V,oe,_e){var Pe=1/Math.tan(C/2),je;return k[0]=Pe/V,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=Pe,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[11]=-1,k[12]=0,k[13]=0,k[15]=0,_e!=null&&_e!==1/0?(je=1/(oe-_e),k[10]=(_e+oe)*je,k[14]=2*_e*oe*je):(k[10]=-1,k[14]=-2*oe),k}function Ql(k,C,V,oe,_e,Pe,je){var ct=1/(C-V),Lt=1/(oe-_e),Nt=1/(Pe-je);return k[0]=-2*ct,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=-2*Lt,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[10]=2*Nt,k[11]=0,k[12]=(C+V)*ct,k[13]=(_e+oe)*Lt,k[14]=(je+Pe)*Nt,k[15]=1,k}var xg=ov;function sv(){var k=new Sf(3);return Sf!=Float32Array&&(k[0]=0,k[1]=0,k[2]=0),k}function y0(k){var C=new Sf(3);return C[0]=k[0],C[1]=k[1],C[2]=k[2],C}function kp(k,C,V){return k[0]=C[0]+V[0],k[1]=C[1]+V[1],k[2]=C[2]+V[2],k}function lv(k,C,V){return k[0]=C[0]-V[0],k[1]=C[1]-V[1],k[2]=C[2]-V[2],k}function _0(k,C,V){return k[0]=C[0]*V,k[1]=C[1]*V,k[2]=C[2]*V,k}function bg(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=V*V+oe*oe+_e*_e;return Pe>0&&(Pe=1/Math.sqrt(Pe)),k[0]=C[0]*Pe,k[1]=C[1]*Pe,k[2]=C[2]*Pe,k}function NT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]}function UT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=V[0],ct=V[1],Lt=V[2];return k[0]=_e*Lt-Pe*ct,k[1]=Pe*je-oe*Lt,k[2]=oe*ct-_e*je,k}function jT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2];return k[0]=oe*V[0]+_e*V[3]+Pe*V[6],k[1]=oe*V[1]+_e*V[4]+Pe*V[7],k[2]=oe*V[2]+_e*V[5]+Pe*V[8],k}var VT=lv,cC=function(){var k=sv();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=3),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],k[2]=C[ct+2],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1],C[ct+2]=k[2];return C}}();function qT(){var k=new Sf(4);return Sf!=Float32Array&&(k[0]=0,k[1]=0,k[2]=0,k[3]=0),k}function HT(k,C,V){return k[0]=C[0]*V,k[1]=C[1]*V,k[2]=C[2]*V,k[3]=C[3]*V,k}function GT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]+k[3]*C[3]}function Rv(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3];return k[0]=V[0]*oe+V[4]*_e+V[8]*Pe+V[12]*je,k[1]=V[1]*oe+V[5]*_e+V[9]*Pe+V[13]*je,k[2]=V[2]*oe+V[6]*_e+V[10]*Pe+V[14]*je,k[3]=V[3]*oe+V[7]*_e+V[11]*Pe+V[15]*je,k}var wg=function(){var k=qT();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=4),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],k[2]=C[ct+2],k[3]=C[ct+3],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1],C[ct+2]=k[2],C[ct+3]=k[3];return C}}();function kx(){var k=new Sf(2);return Sf!=Float32Array&&(k[0]=0,k[1]=0),k}function C1(k){var C=k[0],V=k[1];return C*C+V*V}var L1=C1,fC=function(){var k=kx();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=2),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1];return C}}(),WT=function(k){function C(V){k.call(this,V,qd)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new Vs(oe)},C.prototype.queryRadius=function(oe){var _e=oe;return Ch("circle-radius",this,_e)+Ch("circle-stroke-width",this,_e)+Mp(this.paint.get("circle-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){for(var gr=qp(oe,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("circle-radius").evaluate(_e,Pe),Rr=this.paint.get("circle-stroke-width").evaluate(_e,Pe),na=Br+Rr,Ia=this.paint.get("circle-pitch-alignment")==="map",ii=Ia?gr:Lx(gr,Xt),Wa=Ia?na*Nt:na,Si=0,ci=je;Si<ci.length;Si+=1)for(var Ai=ci[Si],Li=0,Ki=Ai;Li<Ki.length;Li+=1){var kn=Ki[Li],Tn=Ia?kn:Cx(kn,Xt),lo=Wa,qn=Rv([],[kn.x,kn.y,0,1],Xt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?lo*=qn[3]/Lt.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(lo*=Lt.cameraToCenterDistance/qn[3]),Ls(ii,Tn,lo))return!0}return!1},C}(Fi);function Cx(k,C){var V=Rv([],[k.x,k.y,0,1],C);return new i(V[0]/V[3],V[1]/V[3])}function Lx(k,C){return k.map(function(V){return Cx(V,C)})}var P1=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Vs);de("HeatmapBucket",P1,{omit:["layers"]});function Ph(k,C,V,oe){var _e=C.width,Pe=C.height;if(!oe)oe=new Uint8Array(_e*Pe*V);else if(oe instanceof Uint8ClampedArray)oe=new Uint8Array(oe.buffer);else if(oe.length!==_e*Pe*V)throw new RangeError("mismatched image size");return k.width=_e,k.height=Pe,k.data=oe,k}function x0(k,C,V){var oe=C.width,_e=C.height;if(!(oe===k.width&&_e===k.height)){var Pe=Ph({},{width:oe,height:_e},V);b0(k,Pe,{x:0,y:0},{x:0,y:0},{width:Math.min(k.width,oe),height:Math.min(k.height,_e)},V),k.width=oe,k.height=_e,k.data=Pe.data}}function b0(k,C,V,oe,_e,Pe){if(_e.width===0||_e.height===0)return C;if(_e.width>k.width||_e.height>k.height||V.x>k.width-_e.width||V.y>k.height-_e.height)throw new RangeError("out of range source coordinates for image copy");if(_e.width>C.width||_e.height>C.height||oe.x>C.width-_e.width||oe.y>C.height-_e.height)throw new RangeError("out of range destination coordinates for image copy");for(var je=k.data,ct=C.data,Lt=0;Lt<_e.height;Lt++)for(var Nt=((V.y+Lt)*k.width+V.x)*Pe,Xt=((oe.y+Lt)*C.width+oe.x)*Pe,gr=0;gr<_e.width*Pe;gr++)ct[Xt+gr]=je[Nt+gr];return C}var Cp=function(C,V){Ph(this,C,1,V)};Cp.prototype.resize=function(C){x0(this,C,1)},Cp.prototype.clone=function(){return new Cp({width:this.width,height:this.height},new Uint8Array(this.data))},Cp.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,1)};var Of=function(C,V){Ph(this,C,4,V)};Of.prototype.resize=function(C){x0(this,C,4)},Of.prototype.replace=function(C,V){V?this.data.set(C):C instanceof Uint8ClampedArray?this.data=new Uint8Array(C.buffer):this.data=C},Of.prototype.clone=function(){return new Of({width:this.width,height:this.height},new Uint8Array(this.data))},Of.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,4)},de("AlphaImage",Cp),de("RGBAImage",Of);var Tg=new xi({"heatmap-radius":new ra(fi.paint_heatmap["heatmap-radius"]),"heatmap-weight":new ra(fi.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Qt(fi.paint_heatmap["heatmap-intensity"]),"heatmap-color":new wi(fi.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Qt(fi.paint_heatmap["heatmap-opacity"])}),sm={paint:Tg};function Ag(k){var C={},V=k.resolution||256,oe=k.clips?k.clips.length:1,_e=k.image||new Of({width:V,height:oe}),Pe=function(Si,ci,Ai){C[k.evaluationKey]=Ai;var Li=k.expression.evaluate(C);_e.data[Si+ci+0]=Math.floor(Li.r*255/Li.a),_e.data[Si+ci+1]=Math.floor(Li.g*255/Li.a),_e.data[Si+ci+2]=Math.floor(Li.b*255/Li.a),_e.data[Si+ci+3]=Math.floor(Li.a*255)};if(k.clips)for(var Nt=0,Xt=0;Nt<oe;++Nt,Xt+=V*4)for(var gr=0,Br=0;gr<V;gr++,Br+=4){var Rr=gr/(V-1),na=k.clips[Nt],Ia=na.start,ii=na.end,Wa=Ia*(1-Rr)+ii*Rr;Pe(Xt,Br,Wa)}else for(var je=0,ct=0;je<V;je++,ct+=4){var Lt=je/(V-1);Pe(0,ct,Lt)}return _e}var w0=function(k){function C(V){k.call(this,V,sm),this._updateColorRamp()}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new P1(oe)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){oe==="heatmap-color"&&this._updateColorRamp()},C.prototype._updateColorRamp=function(){var oe=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=Ag({expression:oe,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null},C.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},C.prototype.queryRadius=function(){return 0},C.prototype.queryIntersectsFeature=function(){return!1},C.prototype.hasOffscreenPass=function(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"},C}(Fi),ZT=new xi({"hillshade-illumination-direction":new Qt(fi.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Qt(fi.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Qt(fi.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Qt(fi.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Qt(fi.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Qt(fi.paint_hillshade["hillshade-accent-color"])}),XT={paint:ZT},Px=function(k){function C(V){k.call(this,V,XT)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.hasOffscreenPass=function(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"},C}(Fi),Ix=on([{name:"a_pos",components:2,type:"Int16"}],4),YT=Ix.members,T0=lm,Rx=lm;function lm(k,C,V){V=V||2;var oe=C&&C.length,_e=oe?C[0]*V:k.length,Pe=A0(k,0,_e,V,!0),je=[];if(!Pe||Pe.next===Pe.prev)return je;var ct,Lt,Nt,Xt,gr,Br,Rr;if(oe&&(Pe=cv(k,C,Pe,V)),k.length>80*V){ct=Nt=k[0],Lt=Xt=k[1];for(var na=V;na<_e;na+=V)gr=k[na],Br=k[na+1],gr<ct&&(ct=gr),Br<Lt&&(Lt=Br),gr>Nt&&(Nt=gr),Br>Xt&&(Xt=Br);Rr=Math.max(Nt-ct,Xt-Lt),Rr=Rr!==0?1/Rr:0}return Sg(Pe,je,V,ct,Lt,Rr),je}function A0(k,C,V,oe,_e){var Pe,je;if(_e===B1(k,C,V,oe)>0)for(Pe=C;Pe<V;Pe+=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);else for(Pe=V-oe;Pe>=C;Pe-=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);return je&&Eg(je,je.next)&&(Lg(je),je=je.next),je}function uv(k,C){if(!k)return k;C||(C=k);var V=k,oe;do if(oe=!1,!V.steiner&&(Eg(V,V.next)||qc(V.prev,V,V.next)===0)){if(Lg(V),V=C=V.prev,V===V.next)break;oe=!0}else V=V.next;while(oe||V!==C);return C}function Sg(k,C,V,oe,_e,Pe,je){if(k){!je&&Pe&&S0(k,oe,_e,Pe);for(var ct=k,Lt,Nt;k.prev!==k.next;){if(Lt=k.prev,Nt=k.next,Pe?zx(k,oe,_e,Pe):Dx(k)){C.push(Lt.i/V),C.push(k.i/V),C.push(Nt.i/V),Lg(k),k=Nt.next,ct=Nt.next;continue}if(k=Nt,k===ct){je?je===1?(k=Mg(uv(k),C,V),Sg(k,C,V,oe,_e,Pe,2)):je===2&&yd(k,C,V,oe,_e,Pe):Sg(uv(k),C,V,oe,_e,Pe,1);break}}}}function Dx(k){var C=k.prev,V=k,oe=k.next;if(qc(C,V,oe)>=0)return!1;for(var _e=k.next.next;_e!==k.prev;){if(fv(C.x,C.y,V.x,V.y,oe.x,oe.y,_e.x,_e.y)&&qc(_e.prev,_e,_e.next)>=0)return!1;_e=_e.next}return!0}function zx(k,C,V,oe){var _e=k.prev,Pe=k,je=k.next;if(qc(_e,Pe,je)>=0)return!1;for(var ct=_e.x<Pe.x?_e.x<je.x?_e.x:je.x:Pe.x<je.x?Pe.x:je.x,Lt=_e.y<Pe.y?_e.y<je.y?_e.y:je.y:Pe.y<je.y?Pe.y:je.y,Nt=_e.x>Pe.x?_e.x>je.x?_e.x:je.x:Pe.x>je.x?Pe.x:je.x,Xt=_e.y>Pe.y?_e.y>je.y?_e.y:je.y:Pe.y>je.y?Pe.y:je.y,gr=D1(ct,Lt,C,V,oe),Br=D1(Nt,Xt,C,V,oe),Rr=k.prevZ,na=k.nextZ;Rr&&Rr.z>=gr&&na&&na.z<=Br;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0||(Rr=Rr.prevZ,na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0))return!1;na=na.nextZ}for(;Rr&&Rr.z>=gr;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0)return!1;Rr=Rr.prevZ}for(;na&&na.z<=Br;){if(na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0)return!1;na=na.nextZ}return!0}function Mg(k,C,V){var oe=k;do{var _e=oe.prev,Pe=oe.next.next;!Eg(_e,Pe)&&M0(_e,oe,oe.next,Pe)&&Cg(_e,Pe)&&Cg(Pe,_e)&&(C.push(_e.i/V),C.push(oe.i/V),C.push(Pe.i/V),Lg(oe),Lg(oe.next),oe=k=Pe),oe=oe.next}while(oe!==k);return uv(oe)}function yd(k,C,V,oe,_e,Pe){var je=k;do{for(var ct=je.next.next;ct!==je.prev;){if(je.i!==ct.i&&um(je,ct)){var Lt=F1(je,ct);je=uv(je,je.next),Lt=uv(Lt,Lt.next),Sg(je,C,V,oe,_e,Pe),Sg(Lt,C,V,oe,_e,Pe);return}ct=ct.next}je=je.next}while(je!==k)}function cv(k,C,V,oe){var _e=[],Pe,je,ct,Lt,Nt;for(Pe=0,je=C.length;Pe<je;Pe++)ct=C[Pe]*oe,Lt=Pe<je-1?C[Pe+1]*oe:k.length,Nt=A0(k,ct,Lt,oe,!1),Nt===Nt.next&&(Nt.steiner=!0),_e.push(z1(Nt));for(_e.sort(Fx),Pe=0;Pe<_e.length;Pe++)I1(_e[Pe],V),V=uv(V,V.next);return V}function Fx(k,C){return k.x-C.x}function I1(k,C){if(C=KT(k,C),C){var V=F1(C,k);uv(C,C.next),uv(V,V.next)}}function KT(k,C){var V=C,oe=k.x,_e=k.y,Pe=-1/0,je;do{if(_e<=V.y&&_e>=V.next.y&&V.next.y!==V.y){var ct=V.x+(_e-V.y)*(V.next.x-V.x)/(V.next.y-V.y);if(ct<=oe&&ct>Pe){if(Pe=ct,ct===oe){if(_e===V.y)return V;if(_e===V.next.y)return V.next}je=V.x<V.next.x?V:V.next}}V=V.next}while(V!==C);if(!je)return null;if(oe===Pe)return je;var Lt=je,Nt=je.x,Xt=je.y,gr=1/0,Br;V=je;do oe>=V.x&&V.x>=Nt&&oe!==V.x&&fv(_e<Xt?oe:Pe,_e,Nt,Xt,_e<Xt?Pe:oe,_e,V.x,V.y)&&(Br=Math.abs(_e-V.y)/(oe-V.x),Cg(V,k)&&(Br<gr||Br===gr&&(V.x>je.x||V.x===je.x&&JT(je,V)))&&(je=V,gr=Br)),V=V.next;while(V!==Lt);return je}function JT(k,C){return qc(k.prev,k,C.prev)<0&&qc(C.next,k,k.next)<0}function S0(k,C,V,oe){var _e=k;do _e.z===null&&(_e.z=D1(_e.x,_e.y,C,V,oe)),_e.prevZ=_e.prev,_e.nextZ=_e.next,_e=_e.next;while(_e!==k);_e.prevZ.nextZ=null,_e.prevZ=null,R1(_e)}function R1(k){var C,V,oe,_e,Pe,je,ct,Lt,Nt=1;do{for(V=k,k=null,Pe=null,je=0;V;){for(je++,oe=V,ct=0,C=0;C<Nt&&(ct++,oe=oe.nextZ,!!oe);C++);for(Lt=Nt;ct>0||Lt>0&&oe;)ct!==0&&(Lt===0||!oe||V.z<=oe.z)?(_e=V,V=V.nextZ,ct--):(_e=oe,oe=oe.nextZ,Lt--),Pe?Pe.nextZ=_e:k=_e,_e.prevZ=Pe,Pe=_e;V=oe}Pe.nextZ=null,Nt*=2}while(je>1);return k}function D1(k,C,V,oe,_e){return k=32767*(k-V)*_e,C=32767*(C-oe)*_e,k=(k|k<<8)&16711935,k=(k|k<<4)&252645135,k=(k|k<<2)&858993459,k=(k|k<<1)&1431655765,C=(C|C<<8)&16711935,C=(C|C<<4)&252645135,C=(C|C<<2)&858993459,C=(C|C<<1)&1431655765,k|C<<1}function z1(k){var C=k,V=k;do(C.x<V.x||C.x===V.x&&C.y<V.y)&&(V=C),C=C.next;while(C!==k);return V}function fv(k,C,V,oe,_e,Pe,je,ct){return(_e-je)*(C-ct)-(k-je)*(Pe-ct)>=0&&(k-je)*(oe-ct)-(V-je)*(C-ct)>=0&&(V-je)*(Pe-ct)-(_e-je)*(oe-ct)>=0}function um(k,C){return k.next.i!==C.i&&k.prev.i!==C.i&&!Ox(k,C)&&(Cg(k,C)&&Cg(C,k)&&$T(k,C)&&(qc(k.prev,k,C.prev)||qc(k,C.prev,C))||Eg(k,C)&&qc(k.prev,k,k.next)>0&&qc(C.prev,C,C.next)>0)}function qc(k,C,V){return(C.y-k.y)*(V.x-C.x)-(C.x-k.x)*(V.y-C.y)}function Eg(k,C){return k.x===C.x&&k.y===C.y}function M0(k,C,V,oe){var _e=Dv(qc(k,C,V)),Pe=Dv(qc(k,C,oe)),je=Dv(qc(V,oe,k)),ct=Dv(qc(V,oe,C));return!!(_e!==Pe&&je!==ct||_e===0&&kg(k,V,C)||Pe===0&&kg(k,oe,C)||je===0&&kg(V,k,oe)||ct===0&&kg(V,C,oe))}function kg(k,C,V){return C.x<=Math.max(k.x,V.x)&&C.x>=Math.min(k.x,V.x)&&C.y<=Math.max(k.y,V.y)&&C.y>=Math.min(k.y,V.y)}function Dv(k){return k>0?1:k<0?-1:0}function Ox(k,C){var V=k;do{if(V.i!==k.i&&V.next.i!==k.i&&V.i!==C.i&&V.next.i!==C.i&&M0(V,V.next,k,C))return!0;V=V.next}while(V!==k);return!1}function Cg(k,C){return qc(k.prev,k,k.next)<0?qc(k,C,k.next)>=0&&qc(k,k.prev,C)>=0:qc(k,C,k.prev)<0||qc(k,k.next,C)<0}function $T(k,C){var V=k,oe=!1,_e=(k.x+C.x)/2,Pe=(k.y+C.y)/2;do V.y>Pe!=V.next.y>Pe&&V.next.y!==V.y&&_e<(V.next.x-V.x)*(Pe-V.y)/(V.next.y-V.y)+V.x&&(oe=!oe),V=V.next;while(V!==k);return oe}function F1(k,C){var V=new O1(k.i,k.x,k.y),oe=new O1(C.i,C.x,C.y),_e=k.next,Pe=C.prev;return k.next=C,C.prev=k,V.next=_e,_e.prev=V,oe.next=V,V.prev=oe,Pe.next=oe,oe.prev=Pe,oe}function Bx(k,C,V,oe){var _e=new O1(k,C,V);return oe?(_e.next=oe.next,_e.prev=oe,oe.next.prev=_e,oe.next=_e):(_e.prev=_e,_e.next=_e),_e}function Lg(k){k.next.prev=k.prev,k.prev.next=k.next,k.prevZ&&(k.prevZ.nextZ=k.nextZ),k.nextZ&&(k.nextZ.prevZ=k.prevZ)}function O1(k,C,V){this.i=k,this.x=C,this.y=V,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}lm.deviation=function(k,C,V,oe){var _e=C&&C.length,Pe=_e?C[0]*V:k.length,je=Math.abs(B1(k,0,Pe,V));if(_e)for(var ct=0,Lt=C.length;ct<Lt;ct++){var Nt=C[ct]*V,Xt=ct<Lt-1?C[ct+1]*V:k.length;je-=Math.abs(B1(k,Nt,Xt,V))}var gr=0;for(ct=0;ct<oe.length;ct+=3){var Br=oe[ct]*V,Rr=oe[ct+1]*V,na=oe[ct+2]*V;gr+=Math.abs((k[Br]-k[na])*(k[Rr+1]-k[Br+1])-(k[Br]-k[Rr])*(k[na+1]-k[Br+1]))}return je===0&&gr===0?0:Math.abs((gr-je)/je)};function B1(k,C,V,oe){for(var _e=0,Pe=C,je=V-oe;Pe<V;Pe+=oe)_e+=(k[je]-k[Pe])*(k[Pe+1]+k[je+1]),je=Pe;return _e}lm.flatten=function(k){for(var C=k[0][0].length,V={vertices:[],holes:[],dimensions:C},oe=0,_e=0;_e<k.length;_e++){for(var Pe=0;Pe<k[_e].length;Pe++)for(var je=0;je<C;je++)V.vertices.push(k[_e][Pe][je]);_e>0&&(oe+=k[_e-1].length,V.holes.push(oe))}return V},T0.default=Rx;function N1(k,C,V,oe,_e){Gd(k,C,V||0,oe||k.length-1,_e||Nx)}function Gd(k,C,V,oe,_e){for(;oe>V;){if(oe-V>600){var Pe=oe-V+1,je=C-V+1,ct=Math.log(Pe),Lt=.5*Math.exp(2*ct/3),Nt=.5*Math.sqrt(ct*Lt*(Pe-Lt)/Pe)*(je-Pe/2<0?-1:1),Xt=Math.max(V,Math.floor(C-je*Lt/Pe+Nt)),gr=Math.min(oe,Math.floor(C+(Pe-je)*Lt/Pe+Nt));Gd(k,C,Xt,gr,_e)}var Br=k[C],Rr=V,na=oe;for(cm(k,V,C),_e(k[oe],Br)>0&&cm(k,V,oe);Rr<na;){for(cm(k,Rr,na),Rr++,na--;_e(k[Rr],Br)<0;)Rr++;for(;_e(k[na],Br)>0;)na--}_e(k[V],Br)===0?cm(k,V,na):(na++,cm(k,na,oe)),na<=C&&(V=na+1),C<=na&&(oe=na-1)}}function cm(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}function Nx(k,C){return k<C?-1:k>C?1:0}function E0(k,C){var V=k.length;if(V<=1)return[k];for(var oe=[],_e,Pe,je=0;je<V;je++){var ct=Q(k[je]);ct!==0&&(k[je].area=Math.abs(ct),Pe===void 0&&(Pe=ct<0),Pe===ct<0?(_e&&oe.push(_e),_e=[k[je]]):_e.push(k[je]))}if(_e&&oe.push(_e),C>1)for(var Lt=0;Lt<oe.length;Lt++)oe[Lt].length<=C||(N1(oe[Lt],C,1,oe[Lt].length-1,Ux),oe[Lt]=oe[Lt].slice(0,C));return oe}function Ux(k,C){return C.area-k.area}function k0(k,C,V){for(var oe=V.patternDependencies,_e=!1,Pe=0,je=C;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=ct.paint.get(k+"-pattern");Lt.isConstant()||(_e=!0);var Nt=Lt.constantOr(null);Nt&&(_e=!0,oe[Nt.to]=!0,oe[Nt.from]=!0)}return _e}function Pg(k,C,V,oe,_e){for(var Pe=_e.patternDependencies,je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.paint.get(k+"-pattern"),Xt=Nt.value;if(Xt.kind!=="constant"){var gr=Xt.evaluate({zoom:oe-1},V,{},_e.availableImages),Br=Xt.evaluate({zoom:oe},V,{},_e.availableImages),Rr=Xt.evaluate({zoom:oe+1},V,{},_e.availableImages);gr=gr&&gr.name?gr.name:gr,Br=Br&&Br.name?Br.name:Br,Rr=Rr&&Rr.name?Rr.name:Rr,Pe[gr]=!0,Pe[Br]=!0,Pe[Rr]=!0,V.patterns[Lt.id]={min:gr,mid:Br,max:Rr}}}return V}var Ig=500,ad=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Mi,this.indexArray=new jn,this.indexArray2=new os,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.segments2=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};ad.prototype.populate=function(C,V,oe){this.hasPattern=k0("fill",this.layers,V);for(var _e=this.layers[0].layout.get("fill-sort-key"),Pe=[],je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.feature,Xt=Lt.id,gr=Lt.index,Br=Lt.sourceLayerIndex,Rr=this.layers[0]._featureFilter.needGeometry,na=ms(Nt,Rr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),na,oe)){var Ia=_e?_e.evaluate(na,{},oe,V.availableImages):void 0,ii={id:Xt,properties:Nt.properties,type:Nt.type,sourceLayerIndex:Br,index:gr,geometry:Rr?na.geometry:zn(Nt),patterns:{},sortKey:Ia};Pe.push(ii)}}_e&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Wa=0,Si=Pe;Wa<Si.length;Wa+=1){var ci=Si[Wa],Ai=ci,Li=Ai.geometry,Ki=Ai.index,kn=Ai.sourceLayerIndex;if(this.hasPattern){var Tn=Pg("fill",this.layers,ci,this.zoom,V);this.patternFeatures.push(Tn)}else this.addFeature(ci,Li,Ki,oe,{});var lo=C[Ki].feature;V.featureIndex.insert(lo,Li,Ki,kn,this.index)}},ad.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},ad.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.patternFeatures;_e<Pe.length;_e+=1){var je=Pe[_e];this.addFeature(je,je.geometry,je.index,V,oe)}},ad.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},ad.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ad.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,YT),this.indexBuffer=C.createIndexBuffer(this.indexArray),this.indexBuffer2=C.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(C),this.uploaded=!0},ad.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},ad.prototype.addFeature=function(C,V,oe,_e,Pe){for(var je=0,ct=E0(V,Ig);je<ct.length;je+=1){for(var Lt=ct[je],Nt=0,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt];Nt+=Br.length}for(var Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray),na=Rr.vertexLength,Ia=[],ii=[],Wa=0,Si=Lt;Wa<Si.length;Wa+=1){var ci=Si[Wa];if(ci.length!==0){ci!==Lt[0]&&ii.push(Ia.length/2);var Ai=this.segments2.prepareSegment(ci.length,this.layoutVertexArray,this.indexArray2),Li=Ai.vertexLength;this.layoutVertexArray.emplaceBack(ci[0].x,ci[0].y),this.indexArray2.emplaceBack(Li+ci.length-1,Li),Ia.push(ci[0].x),Ia.push(ci[0].y);for(var Ki=1;Ki<ci.length;Ki++)this.layoutVertexArray.emplaceBack(ci[Ki].x,ci[Ki].y),this.indexArray2.emplaceBack(Li+Ki-1,Li+Ki),Ia.push(ci[Ki].x),Ia.push(ci[Ki].y);Ai.vertexLength+=ci.length,Ai.primitiveLength+=ci.length}}for(var kn=T0(Ia,ii),Tn=0;Tn<kn.length;Tn+=3)this.indexArray.emplaceBack(na+kn[Tn],na+kn[Tn+1],na+kn[Tn+2]);Rr.vertexLength+=Nt,Rr.primitiveLength+=kn.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},de("FillBucket",ad,{omit:["layers","patternFeatures"]});var U1=new xi({"fill-sort-key":new ra(fi.layout_fill["fill-sort-key"])}),jx=new xi({"fill-antialias":new Qt(fi.paint_fill["fill-antialias"]),"fill-opacity":new ra(fi.paint_fill["fill-opacity"]),"fill-color":new ra(fi.paint_fill["fill-color"]),"fill-outline-color":new ra(fi.paint_fill["fill-outline-color"]),"fill-translate":new Qt(fi.paint_fill["fill-translate"]),"fill-translate-anchor":new Qt(fi.paint_fill["fill-translate-anchor"]),"fill-pattern":new Ta(fi.paint_fill["fill-pattern"])}),Hp={paint:jx,layout:U1},Rg=function(k){function C(V){k.call(this,V,Hp)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e);var Pe=this.paint._values["fill-outline-color"];Pe.value.kind==="constant"&&Pe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},C.prototype.createBucket=function(oe){return new ad(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Lt.angle,Nt);return wl(Xt,je)},C.prototype.isTileClipped=function(){return!0},C}(Fi),Vx=on([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),qx=Vx.members,j1=zv;function zv(k,C,V,oe,_e){this.properties={},this.extent=V,this.type=0,this._pbf=k,this._geometry=-1,this._keys=oe,this._values=_e,k.readFields(Hx,this,C)}function Hx(k,C,V){k==1?C.id=V.readVarint():k==2?Gx(V,C):k==3?C.type=V.readVarint():k==4&&(C._geometry=V.pos)}function Gx(k,C){for(var V=k.readVarint()+k.pos;k.pos<V;){var oe=C._keys[k.readVarint()],_e=C._values[k.readVarint()];C.properties[oe]=_e}}zv.types=["Unknown","Point","LineString","Polygon"],zv.prototype.loadGeometry=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=[],ct;k.pos<C;){if(oe<=0){var Lt=k.readVarint();V=Lt&7,oe=Lt>>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),V===1&&(ct&&je.push(ct),ct=[]),ct.push(new i(_e,Pe));else if(V===7)ct&&ct.push(ct[0].clone());else throw new Error("unknown command "+V)}return ct&&je.push(ct),je},zv.prototype.bbox=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=1/0,ct=-1/0,Lt=1/0,Nt=-1/0;k.pos<C;){if(oe<=0){var Xt=k.readVarint();V=Xt&7,oe=Xt>>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),_e<je&&(je=_e),_e>ct&&(ct=_e),Pe<Lt&&(Lt=Pe),Pe>Nt&&(Nt=Pe);else if(V!==7)throw new Error("unknown command "+V)}return[je,Lt,ct,Nt]},zv.prototype.toGeoJSON=function(k,C,V){var oe=this.extent*Math.pow(2,V),_e=this.extent*k,Pe=this.extent*C,je=this.loadGeometry(),ct=zv.types[this.type],Lt,Nt;function Xt(Rr){for(var na=0;na<Rr.length;na++){var Ia=Rr[na],ii=180-(Ia.y+Pe)*360/oe;Rr[na]=[(Ia.x+_e)*360/oe-180,360/Math.PI*Math.atan(Math.exp(ii*Math.PI/180))-90]}}switch(this.type){case 1:var gr=[];for(Lt=0;Lt<je.length;Lt++)gr[Lt]=je[Lt][0];je=gr,Xt(je);break;case 2:for(Lt=0;Lt<je.length;Lt++)Xt(je[Lt]);break;case 3:for(je=QT(je),Lt=0;Lt<je.length;Lt++)for(Nt=0;Nt<je[Lt].length;Nt++)Xt(je[Lt][Nt]);break}je.length===1?je=je[0]:ct="Multi"+ct;var Br={type:"Feature",geometry:{type:ct,coordinates:je},properties:this.properties};return"id"in this&&(Br.id=this.id),Br};function QT(k){var C=k.length;if(C<=1)return[k];for(var V=[],oe,_e,Pe=0;Pe<C;Pe++){var je=Wx(k[Pe]);je!==0&&(_e===void 0&&(_e=je<0),_e===je<0?(oe&&V.push(oe),oe=[k[Pe]]):oe.push(k[Pe]))}return oe&&V.push(oe),V}function Wx(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe,je;V<oe;_e=V++)Pe=k[V],je=k[_e],C+=(je.x-Pe.x)*(Pe.y+je.y);return C}var Wd=V1;function V1(k,C){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=k,this._keys=[],this._values=[],this._features=[],k.readFields(Zx,this,C),this.length=this._features.length}function Zx(k,C,V){k===15?C.version=V.readVarint():k===1?C.name=V.readString():k===5?C.extent=V.readVarint():k===2?C._features.push(V.pos):k===3?C._keys.push(V.readString()):k===4&&C._values.push(Xx(V))}function Xx(k){for(var C=null,V=k.readVarint()+k.pos;k.pos<V;){var oe=k.readVarint()>>3;C=oe===1?k.readString():oe===2?k.readFloat():oe===3?k.readDouble():oe===4?k.readVarint64():oe===5?k.readVarint():oe===6?k.readSVarint():oe===7?k.readBoolean():null}return C}V1.prototype.feature=function(k){if(k<0||k>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[k];var C=this._pbf.readVarint()+this._pbf.pos;return new j1(this._pbf,C,this.extent,this._keys,this._values)};var Yx=eA;function eA(k,C){this.layers=k.readFields(tA,{},C)}function tA(k,C,V){if(k===3){var oe=new Wd(V,V.readVarint()+V.pos);oe.length&&(C[oe.name]=oe)}}var Kx=Yx,fm=j1,Jx=Wd,Zd={VectorTile:Kx,VectorTileFeature:fm,VectorTileLayer:Jx},$x=Zd.VectorTileFeature.types,C0=500,hm=Math.pow(2,13);function hv(k,C,V,oe,_e,Pe,je,ct){k.emplaceBack(C,V,Math.floor(oe*hm)*2+je,_e*hm*2,Pe*hm*2,Math.round(ct))}var fd=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new pn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};fd.prototype.populate=function(C,V,oe){this.features=[],this.hasPattern=k0("fill-extrusion",this.layers,V);for(var _e=0,Pe=C;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je.feature,Lt=je.id,Nt=je.index,Xt=je.sourceLayerIndex,gr=this.layers[0]._featureFilter.needGeometry,Br=ms(ct,gr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),Br,oe)){var Rr={id:Lt,sourceLayerIndex:Xt,index:Nt,geometry:gr?Br.geometry:zn(ct),properties:ct.properties,type:ct.type,patterns:{}};this.hasPattern?this.features.push(Pg("fill-extrusion",this.layers,Rr,this.zoom,V)):this.addFeature(Rr,Rr.geometry,Nt,oe,{}),V.featureIndex.insert(ct,Rr.geometry,Nt,Xt,this.index,!0)}}},fd.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.features;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je.geometry;this.addFeature(je,ct,je.index,V,oe)}},fd.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},fd.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},fd.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},fd.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,qx),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},fd.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},fd.prototype.addFeature=function(C,V,oe,_e,Pe){for(var je=0,ct=E0(V,C0);je<ct.length;je+=1){for(var Lt=ct[je],Nt=0,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt];Nt+=Br.length}for(var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),na=0,Ia=Lt;na<Ia.length;na+=1){var ii=Ia[na];if(ii.length!==0&&!aA(ii))for(var Wa=0,Si=0;Si<ii.length;Si++){var ci=ii[Si];if(Si>=1){var Ai=ii[Si-1];if(!rA(ci,Ai)){Rr.vertexLength+4>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Li=ci.sub(Ai)._perp()._unit(),Ki=Ai.dist(ci);Wa+Ki>32768&&(Wa=0),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,1,Wa),Wa+=Ki,hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,1,Wa);var kn=Rr.vertexLength;this.indexArray.emplaceBack(kn,kn+2,kn+1),this.indexArray.emplaceBack(kn+1,kn+2,kn+3),Rr.vertexLength+=4,Rr.primitiveLength+=2}}}}if(Rr.vertexLength+Nt>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray)),$x[C.type]==="Polygon"){for(var Tn=[],lo=[],qn=Rr.vertexLength,to=0,ds=Lt;to<ds.length;to+=1){var uo=ds[to];if(uo.length!==0){uo!==Lt[0]&&lo.push(Tn.length/2);for(var vo=0;vo<uo.length;vo++){var zs=uo[vo];hv(this.layoutVertexArray,zs.x,zs.y,0,0,1,1,0),Tn.push(zs.x),Tn.push(zs.y)}}}for(var cs=T0(Tn,lo),Tl=0;Tl<cs.length;Tl+=3)this.indexArray.emplaceBack(qn+cs[Tl],qn+cs[Tl+2],qn+cs[Tl+1]);Rr.primitiveLength+=cs.length/3,Rr.vertexLength+=Nt}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},de("FillExtrusionBucket",fd,{omit:["layers","features"]});function rA(k,C){return k.x===C.x&&(k.x<0||k.x>Ii)||k.y===C.y&&(k.y<0||k.y>Ii)}function aA(k){return k.every(function(C){return C.x<0})||k.every(function(C){return C.x>Ii})||k.every(function(C){return C.y<0})||k.every(function(C){return C.y>Ii})}var pm=new xi({"fill-extrusion-opacity":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new ra(fi["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Ta(fi["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new ra(fi["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new ra(fi["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ph={paint:pm},pv=function(k){function C(V){k.call(this,V,ph)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new fd(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-extrusion-translate"))},C.prototype.is3D=function(){return!0},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=qp(oe,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("fill-extrusion-height").evaluate(_e,Pe),Rr=this.paint.get("fill-extrusion-base").evaluate(_e,Pe),na=iA(gr,Xt,Lt,0),Ia=H1(je,Rr,Br,Xt),ii=Ia[0],Wa=Ia[1];return Qx(ii,Wa,na)},C}(Fi);function Fv(k,C){return k.x*C.x+k.y*C.y}function q1(k,C){if(k.length===1){for(var V=0,oe=C[V++],_e;!_e||oe.equals(_e);)if(_e=C[V++],!_e)return 1/0;for(;V<C.length;V++){var Pe=C[V],je=k[0],ct=_e.sub(oe),Lt=Pe.sub(oe),Nt=je.sub(oe),Xt=Fv(ct,ct),gr=Fv(ct,Lt),Br=Fv(Lt,Lt),Rr=Fv(Nt,ct),na=Fv(Nt,Lt),Ia=Xt*Br-gr*gr,ii=(Br*Rr-gr*na)/Ia,Wa=(Xt*na-gr*Rr)/Ia,Si=1-ii-Wa,ci=oe.z*Si+_e.z*ii+Pe.z*Wa;if(isFinite(ci))return ci}return 1/0}else{for(var Ai=1/0,Li=0,Ki=C;Li<Ki.length;Li+=1){var kn=Ki[Li];Ai=Math.min(Ai,kn.z)}return Ai}}function Qx(k,C,V){var oe=1/0;wl(V,C)&&(oe=q1(V,C[0]));for(var _e=0;_e<C.length;_e++)for(var Pe=C[_e],je=k[_e],ct=0;ct<Pe.length-1;ct++){var Lt=Pe[ct],Nt=Pe[ct+1],Xt=je[ct],gr=je[ct+1],Br=[Lt,Nt,gr,Xt,Lt];qo(V,Br)&&(oe=Math.min(oe,q1(V,Br)))}return oe===1/0?!1:oe}function H1(k,C,V,oe){for(var _e=[],Pe=[],je=oe[8]*C,ct=oe[9]*C,Lt=oe[10]*C,Nt=oe[11]*C,Xt=oe[8]*V,gr=oe[9]*V,Br=oe[10]*V,Rr=oe[11]*V,na=0,Ia=k;na<Ia.length;na+=1){for(var ii=Ia[na],Wa=[],Si=[],ci=0,Ai=ii;ci<Ai.length;ci+=1){var Li=Ai[ci],Ki=Li.x,kn=Li.y,Tn=oe[0]*Ki+oe[4]*kn+oe[12],lo=oe[1]*Ki+oe[5]*kn+oe[13],qn=oe[2]*Ki+oe[6]*kn+oe[14],to=oe[3]*Ki+oe[7]*kn+oe[15],ds=Tn+je,uo=lo+ct,vo=qn+Lt,zs=to+Nt,cs=Tn+Xt,Tl=lo+gr,lu=qn+Br,Al=to+Rr,Sl=new i(ds/zs,uo/zs);Sl.z=vo/zs,Wa.push(Sl);var pl=new i(cs/Al,Tl/Al);pl.z=lu/Al,Si.push(pl)}_e.push(Wa),Pe.push(Si)}return[_e,Pe]}function iA(k,C,V,oe){for(var _e=[],Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=[ct.x,ct.y,oe,1];Rv(Lt,Lt,C),_e.push(new i(Lt[0]/Lt[3],Lt[1]/Lt[3]))}return _e}var eb=on([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),tb=eb.members,nA=on([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),rb=nA.members,G1=Zd.VectorTileFeature.types,L0=63,ab=Math.cos(75/2*(Math.PI/180)),Dg=15,W1=20,ib=15,P0=1/2,zg=Math.pow(2,ib-1)/P0,Mf=function(C){var V=this;this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(oe){return oe.id}),this.index=C.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(function(oe){V.gradients[oe.id]={}}),this.layoutVertexArray=new qi,this.layoutVertexArray2=new Dn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(function(oe){return oe.isStateDependent()}).map(function(oe){return oe.id})};Mf.prototype.populate=function(C,V,oe){this.hasPattern=k0("line",this.layers,V);for(var _e=this.layers[0].layout.get("line-sort-key"),Pe=[],je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.feature,Xt=Lt.id,gr=Lt.index,Br=Lt.sourceLayerIndex,Rr=this.layers[0]._featureFilter.needGeometry,na=ms(Nt,Rr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),na,oe)){var Ia=_e?_e.evaluate(na,{},oe):void 0,ii={id:Xt,properties:Nt.properties,type:Nt.type,sourceLayerIndex:Br,index:gr,geometry:Rr?na.geometry:zn(Nt),patterns:{},sortKey:Ia};Pe.push(ii)}}_e&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Wa=0,Si=Pe;Wa<Si.length;Wa+=1){var ci=Si[Wa],Ai=ci,Li=Ai.geometry,Ki=Ai.index,kn=Ai.sourceLayerIndex;if(this.hasPattern){var Tn=Pg("line",this.layers,ci,this.zoom,V);this.patternFeatures.push(Tn)}else this.addFeature(ci,Li,Ki,oe,{});var lo=C[Ki].feature;V.featureIndex.insert(lo,Li,Ki,kn,this.index)}},Mf.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},Mf.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.patternFeatures;_e<Pe.length;_e+=1){var je=Pe[_e];this.addFeature(je,je.geometry,je.index,V,oe)}},Mf.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Mf.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Mf.prototype.upload=function(C){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=C.createVertexBuffer(this.layoutVertexArray2,rb)),this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,tb),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},Mf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Mf.prototype.lineFeatureClips=function(C){if(C.properties&&C.properties.hasOwnProperty("mapbox_clip_start")&&C.properties.hasOwnProperty("mapbox_clip_end")){var V=+C.properties.mapbox_clip_start,oe=+C.properties.mapbox_clip_end;return{start:V,end:oe}}},Mf.prototype.addFeature=function(C,V,oe,_e,Pe){var je=this.layers[0].layout,ct=je.get("line-join").evaluate(C,{}),Lt=je.get("line-cap"),Nt=je.get("line-miter-limit"),Xt=je.get("line-round-limit");this.lineClips=this.lineFeatureClips(C);for(var gr=0,Br=V;gr<Br.length;gr+=1){var Rr=Br[gr];this.addLine(Rr,C,ct,Lt,Nt,Xt)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},Mf.prototype.addLine=function(C,V,oe,_e,Pe,je){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(var ct=0;ct<C.length-1;ct++)this.totalDistance+=C[ct].dist(C[ct+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}for(var Lt=G1[V.type]==="Polygon",Nt=C.length;Nt>=2&&C[Nt-1].equals(C[Nt-2]);)Nt--;for(var Xt=0;Xt<Nt-1&&C[Xt].equals(C[Xt+1]);)Xt++;if(!(Nt<(Lt?3:2))){oe==="bevel"&&(Pe=1.05);var gr=this.overscaling<=16?Dg*Ii/(512*this.overscaling):0,Br=this.segments.prepareSegment(Nt*10,this.layoutVertexArray,this.indexArray),Rr,na=void 0,Ia=void 0,ii=void 0,Wa=void 0;this.e1=this.e2=-1,Lt&&(Rr=C[Nt-2],Wa=C[Xt].sub(Rr)._unit()._perp());for(var Si=Xt;Si<Nt;Si++)if(Ia=Si===Nt-1?Lt?C[Xt+1]:void 0:C[Si+1],!(Ia&&C[Si].equals(Ia))){Wa&&(ii=Wa),Rr&&(na=Rr),Rr=C[Si],Wa=Ia?Ia.sub(Rr)._unit()._perp():ii,ii=ii||Wa;var ci=ii.add(Wa);(ci.x!==0||ci.y!==0)&&ci._unit();var Ai=ii.x*Wa.x+ii.y*Wa.y,Li=ci.x*Wa.x+ci.y*Wa.y,Ki=Li!==0?1/Li:1/0,kn=2*Math.sqrt(2-2*Li),Tn=Li<ab&&na&&Ia,lo=ii.x*Wa.y-ii.y*Wa.x>0;if(Tn&&Si>Xt){var qn=Rr.dist(na);if(qn>2*gr){var to=Rr.sub(Rr.sub(na)._mult(gr/qn)._round());this.updateDistance(na,to),this.addCurrentVertex(to,ii,0,0,Br),na=to}}var ds=na&&Ia,uo=ds?oe:Lt?"butt":_e;if(ds&&uo==="round"&&(Ki<je?uo="miter":Ki<=2&&(uo="fakeround")),uo==="miter"&&Ki>Pe&&(uo="bevel"),uo==="bevel"&&(Ki>2&&(uo="flipbevel"),Ki<Pe&&(uo="miter")),na&&this.updateDistance(na,Rr),uo==="miter")ci._mult(Ki),this.addCurrentVertex(Rr,ci,0,0,Br);else if(uo==="flipbevel"){if(Ki>100)ci=Wa.mult(-1);else{var vo=Ki*ii.add(Wa).mag()/ii.sub(Wa).mag();ci._perp()._mult(vo*(lo?-1:1))}this.addCurrentVertex(Rr,ci,0,0,Br),this.addCurrentVertex(Rr,ci.mult(-1),0,0,Br)}else if(uo==="bevel"||uo==="fakeround"){var zs=-Math.sqrt(Ki*Ki-1),cs=lo?zs:0,Tl=lo?0:zs;if(na&&this.addCurrentVertex(Rr,ii,cs,Tl,Br),uo==="fakeround")for(var lu=Math.round(kn*180/Math.PI/W1),Al=1;Al<lu;Al++){var Sl=Al/lu;if(Sl!==.5){var pl=Sl-.5,bu=1.0904+Ai*(-3.2452+Ai*(3.55645-Ai*1.43519)),Fu=.848013+Ai*(-1.06021+Ai*.215638);Sl=Sl+Sl*pl*(Sl-1)*(bu*pl*pl+Fu)}var Gc=Wa.sub(ii)._mult(Sl)._add(ii)._unit()._mult(lo?-1:1);this.addHalfVertex(Rr,Gc.x,Gc.y,!1,lo,0,Br)}Ia&&this.addCurrentVertex(Rr,Wa,-cs,-Tl,Br)}else if(uo==="butt")this.addCurrentVertex(Rr,ci,0,0,Br);else if(uo==="square"){var of=na?1:-1;this.addCurrentVertex(Rr,ci,of,of,Br)}else uo==="round"&&(na&&(this.addCurrentVertex(Rr,ii,0,0,Br),this.addCurrentVertex(Rr,ii,1,1,Br,!0)),Ia&&(this.addCurrentVertex(Rr,Wa,-1,-1,Br,!0),this.addCurrentVertex(Rr,Wa,0,0,Br)));if(Tn&&Si<Nt-1){var ih=Rr.dist(Ia);if(ih>2*gr){var Cf=Rr.add(Ia.sub(Rr)._mult(gr/ih)._round());this.updateDistance(Rr,Cf),this.addCurrentVertex(Cf,Wa,0,0,Br),Rr=Cf}}}}},Mf.prototype.addCurrentVertex=function(C,V,oe,_e,Pe,je){je===void 0&&(je=!1);var ct=V.x+V.y*oe,Lt=V.y-V.x*oe,Nt=-V.x+V.y*_e,Xt=-V.y-V.x*_e;this.addHalfVertex(C,ct,Lt,je,!1,oe,Pe),this.addHalfVertex(C,Nt,Xt,je,!0,-_e,Pe),this.distance>zg/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(C,V,oe,_e,Pe,je))},Mf.prototype.addHalfVertex=function(C,V,oe,_e,Pe,je,ct){var Lt=C.x,Nt=C.y,Xt=this.lineClips?this.scaledDistance*(zg-1):this.scaledDistance,gr=Xt*P0;if(this.layoutVertexArray.emplaceBack((Lt<<1)+(_e?1:0),(Nt<<1)+(Pe?1:0),Math.round(L0*V)+128,Math.round(L0*oe)+128,(je===0?0:je<0?-1:1)+1|(gr&63)<<2,gr>>6),this.lineClips){var Br=this.scaledDistance-this.lineClips.start,Rr=this.lineClips.end-this.lineClips.start,na=Br/Rr;this.layoutVertexArray2.emplaceBack(na,this.lineClipsArray.length)}var Ia=ct.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Ia),ct.primitiveLength++),Pe?this.e2=Ia:this.e1=Ia},Mf.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},Mf.prototype.updateDistance=function(C,V){this.distance+=C.dist(V),this.updateScaledDistance()},de("LineBucket",Mf,{omit:["layers","patternFeatures"]});var Z1=new xi({"line-cap":new Qt(fi.layout_line["line-cap"]),"line-join":new ra(fi.layout_line["line-join"]),"line-miter-limit":new Qt(fi.layout_line["line-miter-limit"]),"line-round-limit":new Qt(fi.layout_line["line-round-limit"]),"line-sort-key":new ra(fi.layout_line["line-sort-key"])}),X1=new xi({"line-opacity":new ra(fi.paint_line["line-opacity"]),"line-color":new ra(fi.paint_line["line-color"]),"line-translate":new Qt(fi.paint_line["line-translate"]),"line-translate-anchor":new Qt(fi.paint_line["line-translate-anchor"]),"line-width":new ra(fi.paint_line["line-width"]),"line-gap-width":new ra(fi.paint_line["line-gap-width"]),"line-offset":new ra(fi.paint_line["line-offset"]),"line-blur":new ra(fi.paint_line["line-blur"]),"line-dasharray":new si(fi.paint_line["line-dasharray"]),"line-pattern":new Ta(fi.paint_line["line-pattern"]),"line-gradient":new wi(fi.paint_line["line-gradient"])}),I0={paint:X1,layout:Z1},oA=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e){return _e=new Vi(Math.floor(_e.zoom),{now:_e.now,fadeDuration:_e.fadeDuration,zoomHistory:_e.zoomHistory,transition:_e.transition}),k.prototype.possiblyEvaluate.call(this,oe,_e)},C.prototype.evaluate=function(oe,_e,Pe,je){return _e=m({},_e,{zoom:Math.floor(_e.zoom)}),k.prototype.evaluate.call(this,oe,_e,Pe,je)},C}(ra),q=new oA(I0.paint.properties["line-width"].specification);q.useIntegerZoom=!0;var D=function(k){function C(V){k.call(this,V,I0),this.gradientVersion=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._handleSpecialPaintPropertyUpdate=function(oe){if(oe==="line-gradient"){var _e=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=_e._styleExpression.expression instanceof vu,this.gradientVersion=(this.gradientVersion+1)%h}},C.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e),this.paint._values["line-floorwidth"]=q.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,oe)},C.prototype.createBucket=function(oe){return new Mf(oe)},C.prototype.queryRadius=function(oe){var _e=oe,Pe=Y(Ch("line-width",this,_e),Ch("line-gap-width",this,_e)),je=Ch("line-offset",this,_e);return Pe/2+Math.abs(je)+Mp(this.paint.get("line-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Lt.angle,Nt),gr=Nt/2*Y(this.paint.get("line-width").evaluate(_e,Pe),this.paint.get("line-gap-width").evaluate(_e,Pe)),Br=this.paint.get("line-offset").evaluate(_e,Pe);return Br&&(je=pe(je,Br*Nt)),Ru(Xt,je,gr)},C.prototype.isTileClipped=function(){return!0},C}(Fi);function Y(k,C){return C>0?C+2*k:k}function pe(k,C){for(var V=[],oe=new i(0,0),_e=0;_e<k.length;_e++){for(var Pe=k[_e],je=[],ct=0;ct<Pe.length;ct++){var Lt=Pe[ct-1],Nt=Pe[ct],Xt=Pe[ct+1],gr=ct===0?oe:Nt.sub(Lt)._unit()._perp(),Br=ct===Pe.length-1?oe:Xt.sub(Nt)._unit()._perp(),Rr=gr._add(Br)._unit(),na=Rr.x*Br.x+Rr.y*Br.y;Rr._mult(1/na),je.push(Rr._mult(C)._add(Nt))}V.push(je)}return V}var Ce=on([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),Ue=on([{name:"a_projected_pos",components:3,type:"Float32"}],4),Ge=on([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),ut=on([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Tt=on([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]),Ft=on([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),$t=on([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4),lr=on([{name:"triangle",components:3,type:"Uint16"}]),Ar=on([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),zr=on([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),Kr=on([{type:"Float32",name:"offsetX"}]),la=on([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);function za(k,C,V){var oe=C.layout.get("text-transform").evaluate(V,{});return oe==="uppercase"?k=k.toLocaleUpperCase():oe==="lowercase"&&(k=k.toLocaleLowerCase()),Gs.applyArabicShaping&&(k=Gs.applyArabicShaping(k)),k}function ja(k,C,V){return k.sections.forEach(function(oe){oe.text=za(oe.text,C,V)}),k}function gi(k){var C={},V={},oe=[],_e=0;function Pe(Wa){oe.push(k[Wa]),_e++}function je(Wa,Si,ci){var Ai=V[Wa];return delete V[Wa],V[Si]=Ai,oe[Ai].geometry[0].pop(),oe[Ai].geometry[0]=oe[Ai].geometry[0].concat(ci[0]),Ai}function ct(Wa,Si,ci){var Ai=C[Si];return delete C[Si],C[Wa]=Ai,oe[Ai].geometry[0].shift(),oe[Ai].geometry[0]=ci[0].concat(oe[Ai].geometry[0]),Ai}function Lt(Wa,Si,ci){var Ai=ci?Si[0][Si[0].length-1]:Si[0][0];return Wa+":"+Ai.x+":"+Ai.y}for(var Nt=0;Nt<k.length;Nt++){var Xt=k[Nt],gr=Xt.geometry,Br=Xt.text?Xt.text.toString():null;if(!Br){Pe(Nt);continue}var Rr=Lt(Br,gr),na=Lt(Br,gr,!0);if(Rr in V&&na in C&&V[Rr]!==C[na]){var Ia=ct(Rr,na,gr),ii=je(Rr,na,oe[Ia].geometry);delete C[Rr],delete V[na],V[Lt(Br,oe[ii].geometry,!0)]=ii,oe[Ia].geometry=null}else Rr in V?je(Rr,na,gr):na in C?ct(Rr,na,gr):(Pe(Nt),C[Rr]=_e-1,V[na]=_e-1)}return oe.filter(function(Wa){return Wa.geometry})}var ei={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};function hi(k){for(var C="",V=0;V<k.length;V++){var oe=k.charCodeAt(V+1)||null,_e=k.charCodeAt(V-1)||null,Pe=(!oe||!Xa(oe)||ei[k[V+1]])&&(!_e||!Xa(_e)||ei[k[V-1]]);Pe&&ei[k[V]]?C+=ei[k[V]]:C+=k[V]}return C}var Ei=24,En=function(k,C,V,oe,_e){var Pe,je,ct=_e*8-oe-1,Lt=(1<<ct)-1,Nt=Lt>>1,Xt=-7,gr=V?_e-1:0,Br=V?-1:1,Rr=k[C+gr];for(gr+=Br,Pe=Rr&(1<<-Xt)-1,Rr>>=-Xt,Xt+=ct;Xt>0;Pe=Pe*256+k[C+gr],gr+=Br,Xt-=8);for(je=Pe&(1<<-Xt)-1,Pe>>=-Xt,Xt+=oe;Xt>0;je=je*256+k[C+gr],gr+=Br,Xt-=8);if(Pe===0)Pe=1-Nt;else{if(Pe===Lt)return je?NaN:(Rr?-1:1)*(1/0);je=je+Math.pow(2,oe),Pe=Pe-Nt}return(Rr?-1:1)*je*Math.pow(2,Pe-oe)},fo=function(k,C,V,oe,_e,Pe){var je,ct,Lt,Nt=Pe*8-_e-1,Xt=(1<<Nt)-1,gr=Xt>>1,Br=_e===23?Math.pow(2,-24)-Math.pow(2,-77):0,Rr=oe?0:Pe-1,na=oe?1:-1,Ia=C<0||C===0&&1/C<0?1:0;for(C=Math.abs(C),isNaN(C)||C===1/0?(ct=isNaN(C)?1:0,je=Xt):(je=Math.floor(Math.log(C)/Math.LN2),C*(Lt=Math.pow(2,-je))<1&&(je--,Lt*=2),je+gr>=1?C+=Br/Lt:C+=Br*Math.pow(2,1-gr),C*Lt>=2&&(je++,Lt/=2),je+gr>=Xt?(ct=0,je=Xt):je+gr>=1?(ct=(C*Lt-1)*Math.pow(2,_e),je=je+gr):(ct=C*Math.pow(2,gr-1)*Math.pow(2,_e),je=0));_e>=8;k[V+Rr]=ct&255,Rr+=na,ct/=256,_e-=8);for(je=je<<_e|ct,Nt+=_e;Nt>0;k[V+Rr]=je&255,Rr+=na,je/=256,Nt-=8);k[V+Rr-na]|=Ia*128},ss={read:En,write:fo},eo=vn;function vn(k){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(k)?k:new Uint8Array(k||0),this.pos=0,this.type=0,this.length=this.buf.length}vn.Varint=0,vn.Fixed64=1,vn.Bytes=2,vn.Fixed32=5;var Uo=65536*65536,Mo=1/Uo,xo=12,Yi=typeof TextDecoder>"u"?null:new TextDecoder("utf8");vn.prototype={destroy:function(){this.buf=null},readFields:function(k,C,V){for(V=V||this.length;this.pos<V;){var oe=this.readVarint(),_e=oe>>3,Pe=this.pos;this.type=oe&7,k(_e,C,this),this.pos===Pe&&this.skip(oe)}return C},readMessage:function(k,C){return this.readFields(k,C,this.readVarint()+this.pos)},readFixed32:function(){var k=th(this.buf,this.pos);return this.pos+=4,k},readSFixed32:function(){var k=Lp(this.buf,this.pos);return this.pos+=4,k},readFixed64:function(){var k=th(this.buf,this.pos)+th(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readSFixed64:function(){var k=th(this.buf,this.pos)+Lp(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readFloat:function(){var k=ss.read(this.buf,this.pos,!0,23,4);return this.pos+=4,k},readDouble:function(){var k=ss.read(this.buf,this.pos,!0,52,8);return this.pos+=8,k},readVarint:function(k){var C=this.buf,V,oe;return oe=C[this.pos++],V=oe&127,oe<128||(oe=C[this.pos++],V|=(oe&127)<<7,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<14,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<21,oe<128)?V:(oe=C[this.pos],V|=(oe&15)<<28,Ko(V,k,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var k=this.readVarint();return k%2===1?(k+1)/-2:k/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var k=this.readVarint()+this.pos,C=this.pos;return this.pos=k,k-C>=xo&&Yi?Nl(this.buf,C,k):pp(this.buf,C,k)},readBytes:function(){var k=this.readVarint()+this.pos,C=this.buf.subarray(this.pos,k);return this.pos=k,C},readPackedVarint:function(k,C){if(this.type!==vn.Bytes)return k.push(this.readVarint(C));var V=bo(this);for(k=k||[];this.pos<V;)k.push(this.readVarint(C));return k},readPackedSVarint:function(k){if(this.type!==vn.Bytes)return k.push(this.readSVarint());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSVarint());return k},readPackedBoolean:function(k){if(this.type!==vn.Bytes)return k.push(this.readBoolean());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readBoolean());return k},readPackedFloat:function(k){if(this.type!==vn.Bytes)return k.push(this.readFloat());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFloat());return k},readPackedDouble:function(k){if(this.type!==vn.Bytes)return k.push(this.readDouble());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readDouble());return k},readPackedFixed32:function(k){if(this.type!==vn.Bytes)return k.push(this.readFixed32());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFixed32());return k},readPackedSFixed32:function(k){if(this.type!==vn.Bytes)return k.push(this.readSFixed32());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSFixed32());return k},readPackedFixed64:function(k){if(this.type!==vn.Bytes)return k.push(this.readFixed64());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFixed64());return k},readPackedSFixed64:function(k){if(this.type!==vn.Bytes)return k.push(this.readSFixed64());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSFixed64());return k},skip:function(k){var C=k&7;if(C===vn.Varint)for(;this.buf[this.pos++]>127;);else if(C===vn.Bytes)this.pos=this.readVarint()+this.pos;else if(C===vn.Fixed32)this.pos+=4;else if(C===vn.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+C)},writeTag:function(k,C){this.writeVarint(k<<3|C)},realloc:function(k){for(var C=this.length||16;C<this.pos+k;)C*=2;if(C!==this.length){var V=new Uint8Array(C);V.set(this.buf),this.buf=V,this.length=C}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(k){this.realloc(4),nf(this.buf,k,this.pos),this.pos+=4},writeSFixed32:function(k){this.realloc(4),nf(this.buf,k,this.pos),this.pos+=4},writeFixed64:function(k){this.realloc(8),nf(this.buf,k&-1,this.pos),nf(this.buf,Math.floor(k*Mo),this.pos+4),this.pos+=8},writeSFixed64:function(k){this.realloc(8),nf(this.buf,k&-1,this.pos),nf(this.buf,Math.floor(k*Mo),this.pos+4),this.pos+=8},writeVarint:function(k){if(k=+k||0,k>268435455||k<0){_u(k,this);return}this.realloc(4),this.buf[this.pos++]=k&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=k>>>7&127)))},writeSVarint:function(k){this.writeVarint(k<0?-k*2-1:k*2)},writeBoolean:function(k){this.writeVarint(!!k)},writeString:function(k){k=String(k),this.realloc(k.length*4),this.pos++;var C=this.pos;this.pos=zu(this.buf,k,this.pos);var V=this.pos-C;V>=128&&Gp(C,V,this),this.pos=C-1,this.writeVarint(V),this.pos+=V},writeFloat:function(k){this.realloc(4),ss.write(this.buf,k,this.pos,!0,23,4),this.pos+=4},writeDouble:function(k){this.realloc(8),ss.write(this.buf,k,this.pos,!0,52,8),this.pos+=8},writeBytes:function(k){var C=k.length;this.writeVarint(C),this.realloc(C);for(var V=0;V<C;V++)this.buf[this.pos++]=k[V]},writeRawMessage:function(k,C){this.pos++;var V=this.pos;k(C,this);var oe=this.pos-V;oe>=128&&Gp(V,oe,this),this.pos=V-1,this.writeVarint(oe),this.pos+=oe},writeMessage:function(k,C,V){this.writeTag(k,vn.Bytes),this.writeRawMessage(C,V)},writePackedVarint:function(k,C){C.length&&this.writeMessage(k,dh,C)},writePackedSVarint:function(k,C){C.length&&this.writeMessage(k,Nf,C)},writePackedBoolean:function(k,C){C.length&&this.writeMessage(k,Jh,C)},writePackedFloat:function(k,C){C.length&&this.writeMessage(k,Yh,C)},writePackedDouble:function(k,C){C.length&&this.writeMessage(k,Kh,C)},writePackedFixed32:function(k,C){C.length&&this.writeMessage(k,Hc,C)},writePackedSFixed32:function(k,C){C.length&&this.writeMessage(k,Uf,C)},writePackedFixed64:function(k,C){C.length&&this.writeMessage(k,Ih,C)},writePackedSFixed64:function(k,C){C.length&&this.writeMessage(k,vh,C)},writeBytesField:function(k,C){this.writeTag(k,vn.Bytes),this.writeBytes(C)},writeFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFixed32(C)},writeSFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeSFixed32(C)},writeFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeFixed64(C)},writeSFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeSFixed64(C)},writeVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeVarint(C)},writeSVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeSVarint(C)},writeStringField:function(k,C){this.writeTag(k,vn.Bytes),this.writeString(C)},writeFloatField:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFloat(C)},writeDoubleField:function(k,C){this.writeTag(k,vn.Fixed64),this.writeDouble(C)},writeBooleanField:function(k,C){this.writeVarintField(k,!!C)}};function Ko(k,C,V){var oe=V.buf,_e,Pe;if(Pe=oe[V.pos++],_e=(Pe&112)>>4,Pe<128||(Pe=oe[V.pos++],_e|=(Pe&127)<<3,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<10,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<17,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<24,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&1)<<31,Pe<128))return gs(k,_e,C);throw new Error("Expected varint not more than 10 bytes")}function bo(k){return k.type===vn.Bytes?k.readVarint()+k.pos:k.pos+1}function gs(k,C,V){return V?C*4294967296+(k>>>0):(C>>>0)*4294967296+(k>>>0)}function _u(k,C){var V,oe;if(k>=0?(V=k%4294967296|0,oe=k/4294967296|0):(V=~(-k%4294967296),oe=~(-k/4294967296),V^4294967295?V=V+1|0:(V=0,oe=oe+1|0)),k>=18446744073709552e3||k<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");C.realloc(10),pu(V,oe,C),Bf(oe,C)}function pu(k,C,V){V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos]=k&127}function Bf(k,C){var V=(k&7)<<4;C.buf[C.pos++]|=V|((k>>>=3)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127)))))}function Gp(k,C,V){var oe=C<=16383?1:C<=2097151?2:C<=268435455?3:Math.floor(Math.log(C)/(Math.LN2*7));V.realloc(oe);for(var _e=V.pos-1;_e>=k;_e--)V.buf[_e+oe]=V.buf[_e]}function dh(k,C){for(var V=0;V<k.length;V++)C.writeVarint(k[V])}function Nf(k,C){for(var V=0;V<k.length;V++)C.writeSVarint(k[V])}function Yh(k,C){for(var V=0;V<k.length;V++)C.writeFloat(k[V])}function Kh(k,C){for(var V=0;V<k.length;V++)C.writeDouble(k[V])}function Jh(k,C){for(var V=0;V<k.length;V++)C.writeBoolean(k[V])}function Hc(k,C){for(var V=0;V<k.length;V++)C.writeFixed32(k[V])}function Uf(k,C){for(var V=0;V<k.length;V++)C.writeSFixed32(k[V])}function Ih(k,C){for(var V=0;V<k.length;V++)C.writeFixed64(k[V])}function vh(k,C){for(var V=0;V<k.length;V++)C.writeSFixed64(k[V])}function th(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+k[C+3]*16777216}function nf(k,C,V){k[V]=C,k[V+1]=C>>>8,k[V+2]=C>>>16,k[V+3]=C>>>24}function Lp(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+(k[C+3]<<24)}function pp(k,C,V){for(var oe="",_e=C;_e<V;){var Pe=k[_e],je=null,ct=Pe>239?4:Pe>223?3:Pe>191?2:1;if(_e+ct>V)break;var Lt,Nt,Xt;ct===1?Pe<128&&(je=Pe):ct===2?(Lt=k[_e+1],(Lt&192)===128&&(je=(Pe&31)<<6|Lt&63,je<=127&&(je=null))):ct===3?(Lt=k[_e+1],Nt=k[_e+2],(Lt&192)===128&&(Nt&192)===128&&(je=(Pe&15)<<12|(Lt&63)<<6|Nt&63,(je<=2047||je>=55296&&je<=57343)&&(je=null))):ct===4&&(Lt=k[_e+1],Nt=k[_e+2],Xt=k[_e+3],(Lt&192)===128&&(Nt&192)===128&&(Xt&192)===128&&(je=(Pe&15)<<18|(Lt&63)<<12|(Nt&63)<<6|Xt&63,(je<=65535||je>=1114112)&&(je=null))),je===null?(je=65533,ct=1):je>65535&&(je-=65536,oe+=String.fromCharCode(je>>>10&1023|55296),je=56320|je&1023),oe+=String.fromCharCode(je),_e+=ct}return oe}function Nl(k,C,V){return Yi.decode(k.subarray(C,V))}function zu(k,C,V){for(var oe=0,_e,Pe;oe<C.length;oe++){if(_e=C.charCodeAt(oe),_e>55295&&_e<57344)if(Pe)if(_e<56320){k[V++]=239,k[V++]=191,k[V++]=189,Pe=_e;continue}else _e=Pe-55296<<10|_e-56320|65536,Pe=null;else{_e>56319||oe+1===C.length?(k[V++]=239,k[V++]=191,k[V++]=189):Pe=_e;continue}else Pe&&(k[V++]=239,k[V++]=191,k[V++]=189,Pe=null);_e<128?k[V++]=_e:(_e<2048?k[V++]=_e>>6|192:(_e<65536?k[V++]=_e>>12|224:(k[V++]=_e>>18|240,k[V++]=_e>>12&63|128),k[V++]=_e>>6&63|128),k[V++]=_e&63|128)}return V}var xu=3;function Pp(k,C,V){k===1&&V.readMessage(Ec,C)}function Ec(k,C,V){if(k===3){var oe=V.readMessage(dm,{}),_e=oe.id,Pe=oe.bitmap,je=oe.width,ct=oe.height,Lt=oe.left,Nt=oe.top,Xt=oe.advance;C.push({id:_e,bitmap:new Cp({width:je+2*xu,height:ct+2*xu},Pe),metrics:{width:je,height:ct,left:Lt,top:Nt,advance:Xt}})}}function dm(k,C,V){k===1?C.id=V.readVarint():k===2?C.bitmap=V.readBytes():k===3?C.width=V.readVarint():k===4?C.height=V.readVarint():k===5?C.left=V.readSVarint():k===6?C.top=V.readSVarint():k===7&&(C.advance=V.readVarint())}function _d(k){return new eo(k).readFields(Pp,[])}var hd=xu;function Wp(k){for(var C=0,V=0,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe];C+=Pe.w*Pe.h,V=Math.max(V,Pe.w)}k.sort(function(ii,Wa){return Wa.h-ii.h});for(var je=Math.max(Math.ceil(Math.sqrt(C/.95)),V),ct=[{x:0,y:0,w:je,h:1/0}],Lt=0,Nt=0,Xt=0,gr=k;Xt<gr.length;Xt+=1)for(var Br=gr[Xt],Rr=ct.length-1;Rr>=0;Rr--){var na=ct[Rr];if(!(Br.w>na.w||Br.h>na.h)){if(Br.x=na.x,Br.y=na.y,Nt=Math.max(Nt,Br.y+Br.h),Lt=Math.max(Lt,Br.x+Br.w),Br.w===na.w&&Br.h===na.h){var Ia=ct.pop();Rr<ct.length&&(ct[Rr]=Ia)}else Br.h===na.h?(na.x+=Br.w,na.w-=Br.w):Br.w===na.w?(na.y+=Br.h,na.h-=Br.h):(ct.push({x:na.x+Br.w,y:na.y,w:na.w-Br.w,h:Br.h}),na.y+=Br.h,na.h-=Br.h);break}}return{w:Lt,h:Nt,fill:C/(Lt*Nt)||0}}var tc=1,gf=function(C,V){var oe=V.pixelRatio,_e=V.version,Pe=V.stretchX,je=V.stretchY,ct=V.content;this.paddedRect=C,this.pixelRatio=oe,this.stretchX=Pe,this.stretchY=je,this.content=ct,this.version=_e},Zp={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};Zp.tl.get=function(){return[this.paddedRect.x+tc,this.paddedRect.y+tc]},Zp.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-tc,this.paddedRect.y+this.paddedRect.h-tc]},Zp.tlbr.get=function(){return this.tl.concat(this.br)},Zp.displaySize.get=function(){return[(this.paddedRect.w-tc*2)/this.pixelRatio,(this.paddedRect.h-tc*2)/this.pixelRatio]},Object.defineProperties(gf.prototype,Zp);var Xd=function(C,V){var oe={},_e={};this.haveRenderCallbacks=[];var Pe=[];this.addImages(C,oe,Pe),this.addImages(V,_e,Pe);var je=Wp(Pe),ct=je.w,Lt=je.h,Nt=new Of({width:ct||1,height:Lt||1});for(var Xt in C){var gr=C[Xt],Br=oe[Xt].paddedRect;Of.copy(gr.data,Nt,{x:0,y:0},{x:Br.x+tc,y:Br.y+tc},gr.data)}for(var Rr in V){var na=V[Rr],Ia=_e[Rr].paddedRect,ii=Ia.x+tc,Wa=Ia.y+tc,Si=na.data.width,ci=na.data.height;Of.copy(na.data,Nt,{x:0,y:0},{x:ii,y:Wa},na.data),Of.copy(na.data,Nt,{x:0,y:ci-1},{x:ii,y:Wa-1},{width:Si,height:1}),Of.copy(na.data,Nt,{x:0,y:0},{x:ii,y:Wa+ci},{width:Si,height:1}),Of.copy(na.data,Nt,{x:Si-1,y:0},{x:ii-1,y:Wa},{width:1,height:ci}),Of.copy(na.data,Nt,{x:0,y:0},{x:ii+Si,y:Wa},{width:1,height:ci})}this.image=Nt,this.iconPositions=oe,this.patternPositions=_e};Xd.prototype.addImages=function(C,V,oe){for(var _e in C){var Pe=C[_e],je={x:0,y:0,w:Pe.data.width+2*tc,h:Pe.data.height+2*tc};oe.push(je),V[_e]=new gf(je,Pe),Pe.hasRenderCallback&&this.haveRenderCallbacks.push(_e)}},Xd.prototype.patchUpdatedImages=function(C,V){C.dispatchRenderCallbacks(this.haveRenderCallbacks);for(var oe in C.updatedImages)this.patchUpdatedImage(this.iconPositions[oe],C.getImage(oe),V),this.patchUpdatedImage(this.patternPositions[oe],C.getImage(oe),V)},Xd.prototype.patchUpdatedImage=function(C,V,oe){if(!(!C||!V)&&C.version!==V.version){C.version=V.version;var _e=C.tl,Pe=_e[0],je=_e[1];oe.update(V.data,void 0,{x:Pe,y:je})}},de("ImagePosition",gf),de("ImageAtlas",Xd);var dp={horizontal:1,vertical:2,horizontalOnly:3},vm=-17;function Y1(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(oe.positionedGlyphs.length!==0)return!1}return!0}var R0=57344,xd=63743,Ov=function(){this.scale=1,this.fontStack="",this.imageName=null};Ov.forText=function(C,V){var oe=new Ov;return oe.scale=C||1,oe.fontStack=V,oe},Ov.forImage=function(C){var V=new Ov;return V.imageName=C,V};var rh=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};rh.fromFeature=function(C,V){for(var oe=new rh,_e=0;_e<C.sections.length;_e++){var Pe=C.sections[_e];Pe.image?oe.addImageSection(Pe):oe.addTextSection(Pe,V)}return oe},rh.prototype.length=function(){return this.text.length},rh.prototype.getSection=function(C){return this.sections[this.sectionIndex[C]]},rh.prototype.getSectionIndex=function(C){return this.sectionIndex[C]},rh.prototype.getCharCode=function(C){return this.text.charCodeAt(C)},rh.prototype.verticalizePunctuation=function(){this.text=hi(this.text)},rh.prototype.trim=function(){for(var C=0,V=0;V<this.text.length&&bd[this.text.charCodeAt(V)];V++)C++;for(var oe=this.text.length,_e=this.text.length-1;_e>=0&&_e>=C&&bd[this.text.charCodeAt(_e)];_e--)oe--;this.text=this.text.substring(C,oe),this.sectionIndex=this.sectionIndex.slice(C,oe)},rh.prototype.substring=function(C,V){var oe=new rh;return oe.text=this.text.substring(C,V),oe.sectionIndex=this.sectionIndex.slice(C,V),oe.sections=this.sections,oe},rh.prototype.toString=function(){return this.text},rh.prototype.getMaxScale=function(){var C=this;return this.sectionIndex.reduce(function(V,oe){return Math.max(V,C.sections[oe].scale)},0)},rh.prototype.addTextSection=function(C,V){this.text+=C.text,this.sections.push(Ov.forText(C.scale,C.fontStack||V));for(var oe=this.sections.length-1,_e=0;_e<C.text.length;++_e)this.sectionIndex.push(oe)},rh.prototype.addImageSection=function(C){var V=C.image?C.image.name:"";if(V.length===0){U("Can't add FormattedSection with an empty image.");return}var oe=this.getNextImageSectionCharCode();if(!oe){U("Reached maximum number of images "+(xd-R0+2));return}this.text+=String.fromCharCode(oe),this.sections.push(Ov.forImage(V)),this.sectionIndex.push(this.sections.length-1)},rh.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=xd?null:++this.imageSectionID:(this.imageSectionID=R0,this.imageSectionID)};function sA(k,C){for(var V=[],oe=k.text,_e=0,Pe=0,je=C;Pe<je.length;Pe+=1){var ct=je[Pe];V.push(k.substring(_e,ct)),_e=ct}return _e<oe.length&&V.push(k.substring(_e,oe.length)),V}function D0(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=rh.fromFeature(k,_e);gr===dp.vertical&&ii.verticalizePunctuation();var Wa,Si=Gs.processBidirectionalText,ci=Gs.processStyledBidirectionalText;if(Si&&ii.sections.length===1){Wa=[];for(var Ai=Si(ii.toString(),z0(ii,Nt,Pe,C,oe,Rr,na)),Li=0,Ki=Ai;Li<Ki.length;Li+=1){var kn=Ki[Li],Tn=new rh;Tn.text=kn,Tn.sections=ii.sections;for(var lo=0;lo<kn.length;lo++)Tn.sectionIndex.push(0);Wa.push(Tn)}}else if(ci){Wa=[];for(var qn=ci(ii.text,ii.sectionIndex,z0(ii,Nt,Pe,C,oe,Rr,na)),to=0,ds=qn;to<ds.length;to+=1){var uo=ds[to],vo=new rh;vo.text=uo[0],vo.sectionIndex=uo[1],vo.sections=ii.sections,Wa.push(vo)}}else Wa=sA(ii,z0(ii,Nt,Pe,C,oe,Rr,na));var zs=[],cs={positionedLines:zs,text:ii.toString(),top:Xt[1],bottom:Xt[1],left:Xt[0],right:Xt[0],writingMode:gr,iconsInText:!1,verticalizable:!1};return cA(cs,C,V,oe,Wa,je,ct,Lt,gr,Nt,Br,Ia),Y1(zs)?!1:cs}var bd={};bd[9]=!0,bd[10]=!0,bd[11]=!0,bd[12]=!0,bd[13]=!0,bd[32]=!0;var vp={};vp[10]=!0,vp[32]=!0,vp[38]=!0,vp[40]=!0,vp[41]=!0,vp[43]=!0,vp[45]=!0,vp[47]=!0,vp[173]=!0,vp[183]=!0,vp[8203]=!0,vp[8208]=!0,vp[8211]=!0,vp[8231]=!0;function nb(k,C,V,oe,_e,Pe){if(C.imageName){var Lt=oe[C.imageName];return Lt?Lt.displaySize[0]*C.scale*Ei/Pe+_e:0}else{var je=V[C.fontStack],ct=je&&je[k];return ct?ct.metrics.advance*C.scale+_e:0}}function lA(k,C,V,oe,_e,Pe){for(var je=0,ct=0;ct<k.length();ct++){var Lt=k.getSection(ct);je+=nb(k.getCharCode(ct),Lt,oe,_e,C,Pe)}var Nt=Math.max(1,Math.ceil(je/V));return je/Nt}function ob(k,C,V,oe){var _e=Math.pow(k-C,2);return oe?k<C?_e/2:_e*2:_e+Math.abs(V)*V}function uA(k,C,V){var oe=0;return k===10&&(oe-=1e4),V&&(oe+=150),(k===40||k===65288)&&(oe+=50),(C===41||C===65289)&&(oe+=50),oe}function id(k,C,V,oe,_e,Pe){for(var je=null,ct=ob(C,V,_e,Pe),Lt=0,Nt=oe;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt],gr=C-Xt.x,Br=ob(gr,V,_e,Pe)+Xt.badness;Br<=ct&&(je=Xt,ct=Br)}return{index:k,x:C,priorBreak:je,badness:ct}}function Fg(k){return k?Fg(k.priorBreak).concat(k.index):[]}function z0(k,C,V,oe,_e,Pe,je){if(Pe!=="point")return[];if(!k)return[];for(var ct=[],Lt=lA(k,C,V,oe,_e,je),Nt=k.text.indexOf("\u200B")>=0,Xt=0,gr=0;gr<k.length();gr++){var Br=k.getSection(gr),Rr=k.getCharCode(gr);if(bd[Rr]||(Xt+=nb(Rr,Br,oe,_e,C,je)),gr<k.length()-1){var na=va(Rr);(vp[Rr]||na||Br.imageName)&&ct.push(id(gr+1,Xt,Lt,ct,uA(Rr,k.getCharCode(gr+1),na&&Nt),!1))}}return Fg(id(k.length(),Xt,Lt,ct,0,!0))}function K1(k){var C=.5,V=.5;switch(k){case"right":case"top-right":case"bottom-right":C=1;break;case"left":case"top-left":case"bottom-left":C=0;break}switch(k){case"bottom":case"bottom-right":case"bottom-left":V=1;break;case"top":case"top-right":case"top-left":V=0;break}return{horizontalAlign:C,verticalAlign:V}}function cA(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){for(var Br=0,Rr=vm,na=0,Ia=0,ii=ct==="right"?1:ct==="left"?0:.5,Wa=0,Si=0,ci=_e;Si<ci.length;Si+=1){var Ai=ci[Si];Ai.trim();var Li=Ai.getMaxScale(),Ki=(Li-1)*Ei,kn={positionedGlyphs:[],lineOffset:0};k.positionedLines[Wa]=kn;var Tn=kn.positionedGlyphs,lo=0;if(!Ai.length()){Rr+=Pe,++Wa;continue}for(var qn=0;qn<Ai.length();qn++){var to=Ai.getSection(qn),ds=Ai.getSectionIndex(qn),uo=Ai.getCharCode(qn),vo=0,zs=null,cs=null,Tl=null,lu=Ei,Al=!(Lt===dp.horizontal||!Xt&&!fa(uo)||Xt&&(bd[uo]||_a(uo)));if(to.imageName){var Gc=oe[to.imageName];if(!Gc)continue;Tl=to.imageName,k.iconsInText=k.iconsInText||!0,cs=Gc.paddedRect;var of=Gc.displaySize;to.scale=to.scale*Ei/gr,zs={width:of[0],height:of[1],left:tc,top:-hd,advance:Al?of[1]:of[0]};var ih=Ei-of[1]*to.scale;vo=Ki+ih,lu=zs.advance;var Cf=Al?of[0]*to.scale-Ei*Li:of[1]*to.scale-Ei*Li;Cf>0&&Cf>lo&&(lo=Cf)}else{var Sl=V[to.fontStack],pl=Sl&&Sl[uo];if(pl&&pl.rect)cs=pl.rect,zs=pl.metrics;else{var bu=C[to.fontStack],Fu=bu&&bu[uo];if(!Fu)continue;zs=Fu.metrics}vo=(Li-to.scale)*Ei}Al?(k.verticalizable=!0,Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=lu*to.scale+Nt):(Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=zs.advance*to.scale+Nt)}if(Tn.length!==0){var Qh=Br-Nt;na=Math.max(Qh,na),fA(Tn,0,Tn.length-1,ii,lo)}Br=0;var ep=Pe*Li+lo;kn.lineOffset=Math.max(lo,Ki),Rr+=ep,Ia=Math.max(ep,Ia),++Wa}var nh=Rr-vm,mp=K1(je),gp=mp.horizontalAlign,jf=mp.verticalAlign;Rh(k.positionedLines,ii,gp,jf,na,Ia,Pe,nh,_e.length),k.top+=-jf*nh,k.bottom=k.top+nh,k.left+=-gp*na,k.right=k.left+na}function fA(k,C,V,oe,_e){if(!(!oe&&!_e))for(var Pe=k[V],je=Pe.metrics.advance*Pe.scale,ct=(k[V].x+je)*oe,Lt=C;Lt<=V;Lt++)k[Lt].x-=ct,k[Lt].y+=_e}function Rh(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=(C-V)*_e,Xt=0;Pe!==je?Xt=-ct*oe-vm:Xt=(-oe*Lt+.5)*je;for(var gr=0,Br=k;gr<Br.length;gr+=1)for(var Rr=Br[gr],na=0,Ia=Rr.positionedGlyphs;na<Ia.length;na+=1){var ii=Ia[na];ii.x+=Nt,ii.y+=Xt}}function Xp(k,C,V){var oe=K1(V),_e=oe.horizontalAlign,Pe=oe.verticalAlign,je=C[0],ct=C[1],Lt=je-k.displaySize[0]*_e,Nt=Lt+k.displaySize[0],Xt=ct-k.displaySize[1]*Pe,gr=Xt+k.displaySize[1];return{image:k,top:Xt,bottom:gr,left:Lt,right:Nt}}function dv(k,C,V,oe,_e,Pe){var je=k.image,ct;if(je.content){var Lt=je.content,Nt=je.pixelRatio||1;ct=[Lt[0]/Nt,Lt[1]/Nt,je.displaySize[0]-Lt[2]/Nt,je.displaySize[1]-Lt[3]/Nt]}var Xt=C.left*Pe,gr=C.right*Pe,Br,Rr,na,Ia;V==="width"||V==="both"?(Ia=_e[0]+Xt-oe[3],Rr=_e[0]+gr+oe[1]):(Ia=_e[0]+(Xt+gr-je.displaySize[0])/2,Rr=Ia+je.displaySize[0]);var ii=C.top*Pe,Wa=C.bottom*Pe;return V==="height"||V==="both"?(Br=_e[1]+ii-oe[0],na=_e[1]+Wa+oe[2]):(Br=_e[1]+(ii+Wa-je.displaySize[1])/2,na=Br+je.displaySize[1]),{image:je,top:Br,right:Rr,bottom:na,left:Ia,collisionPadding:ct}}var $h=function(k){function C(V,oe,_e,Pe){k.call(this,V,oe),this.angle=_e,Pe!==void 0&&(this.segment=Pe)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.clone=function(){return new C(this.x,this.y,this.angle,this.segment)},C}(i);de("Anchor",$h);var Dh=128;function nd(k,C){var V=C.expression;if(V.kind==="constant"){var oe=V.evaluate(new Vi(k+1));return{kind:"constant",layoutSize:oe}}else{if(V.kind==="source")return{kind:"source"};for(var _e=V.zoomStops,Pe=V.interpolationType,je=0;je<_e.length&&_e[je]<=k;)je++;je=Math.max(0,je-1);for(var ct=je;ct<_e.length&&_e[ct]<k+1;)ct++;ct=Math.min(_e.length-1,ct);var Lt=_e[je],Nt=_e[ct];if(V.kind==="composite")return{kind:"composite",minZoom:Lt,maxZoom:Nt,interpolationType:Pe};var Xt=V.evaluate(new Vi(Lt)),gr=V.evaluate(new Vi(Nt));return{kind:"camera",minZoom:Lt,maxZoom:Nt,minSize:Xt,maxSize:gr,interpolationType:Pe}}}function hC(k,C,V){var oe=C.uSize,_e=C.uSizeT,Pe=V.lowerSize,je=V.upperSize;return k.kind==="source"?Pe/Dh:k.kind==="composite"?xl(Pe/Dh,je/Dh,_e):oe}function pC(k,C){var V=0,oe=0;if(k.kind==="constant")oe=k.layoutSize;else if(k.kind!=="source"){var _e=k.interpolationType,Pe=k.minZoom,je=k.maxZoom,ct=_e?l(Vl.interpolationFactor(_e,C,Pe,je),0,1):0;k.kind==="camera"?oe=xl(k.minSize,k.maxSize,ct):V=ct}return{uSizeT:V,uSize:oe}}var $G=Object.freeze({__proto__:null,getSizeData:nd,evaluateSizeForFeature:hC,evaluateSizeForZoom:pC,SIZE_PACK_FACTOR:Dh});function dC(k,C,V,oe,_e){if(C.segment===void 0)return!0;for(var Pe=C,je=C.segment+1,ct=0;ct>-V/2;){if(je--,je<0)return!1;ct-=k[je].dist(Pe),Pe=k[je]}ct+=k[je].dist(k[je+1]),je++;for(var Lt=[],Nt=0;ct<V/2;){var Xt=k[je-1],gr=k[je],Br=k[je+1];if(!Br)return!1;var Rr=Xt.angleTo(gr)-gr.angleTo(Br);for(Rr=Math.abs((Rr+3*Math.PI)%(Math.PI*2)-Math.PI),Lt.push({distance:ct,angleDelta:Rr}),Nt+=Rr;ct-Lt[0].distance>oe;)Nt-=Lt.shift().angleDelta;if(Nt>_e)return!1;je++,ct+=gr.dist(Br)}return!0}function vC(k){for(var C=0,V=0;V<k.length-1;V++)C+=k[V].dist(k[V+1]);return C}function mC(k,C,V){return k?3/5*C*V:0}function gC(k,C){return Math.max(k?k.right-k.left:0,C?C.right-C.left:0)}function QG(k,C,V,oe,_e,Pe){for(var je=mC(V,_e,Pe),ct=gC(V,oe)*Pe,Lt=0,Nt=vC(k)/2,Xt=0;Xt<k.length-1;Xt++){var gr=k[Xt],Br=k[Xt+1],Rr=gr.dist(Br);if(Lt+Rr>Nt){var na=(Nt-Lt)/Rr,Ia=xl(gr.x,Br.x,na),ii=xl(gr.y,Br.y,na),Wa=new $h(Ia,ii,Br.angleTo(gr),Xt);return Wa._round(),!je||dC(k,Wa,ct,je,C)?Wa:void 0}Lt+=Rr}}function eW(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=mC(oe,Pe,je),Xt=gC(oe,_e),gr=Xt*je,Br=k[0].x===0||k[0].x===Lt||k[0].y===0||k[0].y===Lt;C-gr<C/4&&(C=gr+C/4);var Rr=Pe*2,na=Br?C/2*ct%C:(Xt/2+Rr)*je*ct%C;return yC(k,na,C,Nt,V,gr,Br,!1,Lt)}function yC(k,C,V,oe,_e,Pe,je,ct,Lt){for(var Nt=Pe/2,Xt=vC(k),gr=0,Br=C-V,Rr=[],na=0;na<k.length-1;na++){for(var Ia=k[na],ii=k[na+1],Wa=Ia.dist(ii),Si=ii.angleTo(Ia);Br+V<gr+Wa;){Br+=V;var ci=(Br-gr)/Wa,Ai=xl(Ia.x,ii.x,ci),Li=xl(Ia.y,ii.y,ci);if(Ai>=0&&Ai<Lt&&Li>=0&&Li<Lt&&Br-Nt>=0&&Br+Nt<=Xt){var Ki=new $h(Ai,Li,Si,na);Ki._round(),(!oe||dC(k,Ki,Pe,oe,_e))&&Rr.push(Ki)}}gr+=Wa}return!ct&&!Rr.length&&!je&&(Rr=yC(k,gr/2,V,oe,_e,Pe,je,!0,Lt)),Rr}function _C(k,C,V,oe,_e){for(var Pe=[],je=0;je<k.length;je++)for(var ct=k[je],Lt=void 0,Nt=0;Nt<ct.length-1;Nt++){var Xt=ct[Nt],gr=ct[Nt+1];Xt.x<C&&gr.x<C||(Xt.x<C?Xt=new i(C,Xt.y+(gr.y-Xt.y)*((C-Xt.x)/(gr.x-Xt.x)))._round():gr.x<C&&(gr=new i(C,Xt.y+(gr.y-Xt.y)*((C-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y<V&&gr.y<V)&&(Xt.y<V?Xt=new i(Xt.x+(gr.x-Xt.x)*((V-Xt.y)/(gr.y-Xt.y)),V)._round():gr.y<V&&(gr=new i(Xt.x+(gr.x-Xt.x)*((V-Xt.y)/(gr.y-Xt.y)),V)._round()),!(Xt.x>=oe&&gr.x>=oe)&&(Xt.x>=oe?Xt=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round():gr.x>=oe&&(gr=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y>=_e&&gr.y>=_e)&&(Xt.y>=_e?Xt=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round():gr.y>=_e&&(gr=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round()),(!Lt||!Xt.equals(Lt[Lt.length-1]))&&(Lt=[Xt],Pe.push(Lt)),Lt.push(gr)))))}return Pe}var F0=tc;function xC(k,C,V,oe){var _e=[],Pe=k.image,je=Pe.pixelRatio,ct=Pe.paddedRect.w-2*F0,Lt=Pe.paddedRect.h-2*F0,Nt=k.right-k.left,Xt=k.bottom-k.top,gr=Pe.stretchX||[[0,ct]],Br=Pe.stretchY||[[0,Lt]],Rr=function(Sl,pl){return Sl+pl[1]-pl[0]},na=gr.reduce(Rr,0),Ia=Br.reduce(Rr,0),ii=ct-na,Wa=Lt-Ia,Si=0,ci=na,Ai=0,Li=Ia,Ki=0,kn=ii,Tn=0,lo=Wa;if(Pe.content&&oe){var qn=Pe.content;Si=sb(gr,0,qn[0]),Ai=sb(Br,0,qn[1]),ci=sb(gr,qn[0],qn[2]),Li=sb(Br,qn[1],qn[3]),Ki=qn[0]-Si,Tn=qn[1]-Ai,kn=qn[2]-qn[0]-ci,lo=qn[3]-qn[1]-Li}var to=function(Sl,pl,bu,Fu){var Gc=lb(Sl.stretch-Si,ci,Nt,k.left),of=ub(Sl.fixed-Ki,kn,Sl.stretch,na),ih=lb(pl.stretch-Ai,Li,Xt,k.top),Cf=ub(pl.fixed-Tn,lo,pl.stretch,Ia),Qh=lb(bu.stretch-Si,ci,Nt,k.left),ep=ub(bu.fixed-Ki,kn,bu.stretch,na),nh=lb(Fu.stretch-Ai,Li,Xt,k.top),mp=ub(Fu.fixed-Tn,lo,Fu.stretch,Ia),gp=new i(Gc,ih),jf=new i(Qh,ih),yp=new i(Qh,nh),od=new i(Gc,nh),Uv=new i(of/je,Cf/je),ym=new i(ep/je,mp/je),_m=C*Math.PI/180;if(_m){var xm=Math.sin(_m),H0=Math.cos(_m),wd=[H0,-xm,xm,H0];gp._matMult(wd),jf._matMult(wd),od._matMult(wd),yp._matMult(wd)}var vb=Sl.stretch+Sl.fixed,_A=bu.stretch+bu.fixed,mb=pl.stretch+pl.fixed,xA=Fu.stretch+Fu.fixed,pd={x:Pe.paddedRect.x+F0+vb,y:Pe.paddedRect.y+F0+mb,w:_A-vb,h:xA-mb},G0=kn/je/Nt,gb=lo/je/Xt;return{tl:gp,tr:jf,bl:od,br:yp,tex:pd,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:Uv,pixelOffsetBR:ym,minFontScaleX:G0,minFontScaleY:gb,isSDF:V}};if(!oe||!Pe.stretchX&&!Pe.stretchY)_e.push(to({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ct+1},{fixed:0,stretch:Lt+1}));else for(var ds=bC(gr,ii,na),uo=bC(Br,Wa,Ia),vo=0;vo<ds.length-1;vo++)for(var zs=ds[vo],cs=ds[vo+1],Tl=0;Tl<uo.length-1;Tl++){var lu=uo[Tl],Al=uo[Tl+1];_e.push(to(zs,lu,cs,Al))}return _e}function sb(k,C,V){for(var oe=0,_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e];oe+=Math.max(C,Math.min(V,je[1]))-Math.max(C,Math.min(V,je[0]))}return oe}function bC(k,C,V){for(var oe=[{fixed:-F0,stretch:0}],_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je[0],Lt=je[1],Nt=oe[oe.length-1];oe.push({fixed:ct-Nt.stretch,stretch:Nt.stretch}),oe.push({fixed:ct-Nt.stretch,stretch:Nt.stretch+(Lt-ct)})}return oe.push({fixed:C+F0,stretch:V}),oe}function lb(k,C,V,oe){return k/C*V+oe}function ub(k,C,V,oe){return k-C*V/oe}function tW(k,C,V,oe,_e,Pe,je,ct){for(var Lt=oe.layout.get("text-rotate").evaluate(Pe,{})*Math.PI/180,Nt=[],Xt=0,gr=C.positionedLines;Xt<gr.length;Xt+=1)for(var Br=gr[Xt],Rr=0,na=Br.positionedGlyphs;Rr<na.length;Rr+=1){var Ia=na[Rr];if(Ia.rect){var ii=Ia.rect||{},Wa=1,Si=hd+Wa,ci=!0,Ai=1,Li=0,Ki=(_e||ct)&&Ia.vertical,kn=Ia.metrics.advance*Ia.scale/2;if(ct&&C.verticalizable){var Tn=(Ia.scale-1)*Ei,lo=(Ei-Ia.metrics.width*Ia.scale)/2;Li=Br.lineOffset/2-(Ia.imageName?-lo:Tn)}if(Ia.imageName){var qn=je[Ia.imageName];ci=qn.sdf,Ai=qn.pixelRatio,Si=tc/Ai}var to=_e?[Ia.x+kn,Ia.y]:[0,0],ds=_e?[0,0]:[Ia.x+kn+V[0],Ia.y+V[1]-Li],uo=[0,0];Ki&&(uo=ds,ds=[0,0]);var vo=(Ia.metrics.left-Si)*Ia.scale-kn+ds[0],zs=(-Ia.metrics.top-Si)*Ia.scale+ds[1],cs=vo+ii.w*Ia.scale/Ai,Tl=zs+ii.h*Ia.scale/Ai,lu=new i(vo,zs),Al=new i(cs,zs),Sl=new i(vo,Tl),pl=new i(cs,Tl);if(Ki){var bu=new i(-kn,kn-vm),Fu=-Math.PI/2,Gc=Ei/2-kn,of=Ia.imageName?Gc:0,ih=new i(5-vm-Gc,-of),Cf=new(Function.prototype.bind.apply(i,[null].concat(uo)));lu._rotateAround(Fu,bu)._add(ih)._add(Cf),Al._rotateAround(Fu,bu)._add(ih)._add(Cf),Sl._rotateAround(Fu,bu)._add(ih)._add(Cf),pl._rotateAround(Fu,bu)._add(ih)._add(Cf)}if(Lt){var Qh=Math.sin(Lt),ep=Math.cos(Lt),nh=[ep,-Qh,Qh,ep];lu._matMult(nh),Al._matMult(nh),Sl._matMult(nh),pl._matMult(nh)}var mp=new i(0,0),gp=new i(0,0),jf=0,yp=0;Nt.push({tl:lu,tr:Al,bl:Sl,br:pl,tex:ii,writingMode:C.writingMode,glyphOffset:to,sectionIndex:Ia.sectionIndex,isSDF:ci,pixelOffsetTL:mp,pixelOffsetBR:gp,minFontScaleX:jf,minFontScaleY:yp})}}return Nt}var cb=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){if(this.boxStartIndex=C.length,Nt){var gr=je.top,Br=je.bottom,Rr=je.collisionPadding;Rr&&(gr-=Rr[1],Br+=Rr[3]);var na=Br-gr;na>0&&(na=Math.max(10,na),this.circleDiameter=na)}else{var Ia=je.top*ct-Lt,ii=je.bottom*ct+Lt,Wa=je.left*ct-Lt,Si=je.right*ct+Lt,ci=je.collisionPadding;if(ci&&(Wa-=ci[0]*ct,Ia-=ci[1]*ct,Si+=ci[2]*ct,ii+=ci[3]*ct),Xt){var Ai=new i(Wa,Ia),Li=new i(Si,Ia),Ki=new i(Wa,ii),kn=new i(Si,ii),Tn=Xt*Math.PI/180;Ai._rotate(Tn),Li._rotate(Tn),Ki._rotate(Tn),kn._rotate(Tn),Wa=Math.min(Ai.x,Li.x,Ki.x,kn.x),Si=Math.max(Ai.x,Li.x,Ki.x,kn.x),Ia=Math.min(Ai.y,Li.y,Ki.y,kn.y),ii=Math.max(Ai.y,Li.y,Ki.y,kn.y)}C.emplaceBack(V.x,V.y,Wa,Ia,Si,ii,oe,_e,Pe)}this.boxEndIndex=C.length},O0=function(C,V){if(C===void 0&&(C=[]),V===void 0&&(V=rW),this.data=C,this.length=this.data.length,this.compare=V,this.length>0)for(var oe=(this.length>>1)-1;oe>=0;oe--)this._down(oe)};O0.prototype.push=function(C){this.data.push(C),this.length++,this._up(this.length-1)},O0.prototype.pop=function(){if(this.length!==0){var C=this.data[0],V=this.data.pop();return this.length--,this.length>0&&(this.data[0]=V,this._down(0)),C}},O0.prototype.peek=function(){return this.data[0]},O0.prototype._up=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=oe[C];C>0;){var je=C-1>>1,ct=oe[je];if(_e(Pe,ct)>=0)break;oe[C]=ct,C=je}oe[C]=Pe},O0.prototype._down=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=this.length>>1,je=oe[C];C<Pe;){var ct=(C<<1)+1,Lt=oe[ct],Nt=ct+1;if(Nt<this.length&&_e(oe[Nt],Lt)<0&&(ct=Nt,Lt=oe[Nt]),_e(Lt,je)>=0)break;oe[C]=Lt,C=ct}oe[C]=je};function rW(k,C){return k<C?-1:k>C?1:0}function aW(k,C,V){C===void 0&&(C=1),V===void 0&&(V=!1);for(var oe=1/0,_e=1/0,Pe=-1/0,je=-1/0,ct=k[0],Lt=0;Lt<ct.length;Lt++){var Nt=ct[Lt];(!Lt||Nt.x<oe)&&(oe=Nt.x),(!Lt||Nt.y<_e)&&(_e=Nt.y),(!Lt||Nt.x>Pe)&&(Pe=Nt.x),(!Lt||Nt.y>je)&&(je=Nt.y)}var Xt=Pe-oe,gr=je-_e,Br=Math.min(Xt,gr),Rr=Br/2,na=new O0([],iW);if(Br===0)return new i(oe,_e);for(var Ia=oe;Ia<Pe;Ia+=Br)for(var ii=_e;ii<je;ii+=Br)na.push(new B0(Ia+Rr,ii+Rr,Rr,k));for(var Wa=oW(k),Si=na.length;na.length;){var ci=na.pop();(ci.d>Wa.d||!Wa.d)&&(Wa=ci,V&&console.log("found best %d after %d probes",Math.round(1e4*ci.d)/1e4,Si)),!(ci.max-Wa.d<=C)&&(Rr=ci.h/2,na.push(new B0(ci.p.x-Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x-Rr,ci.p.y+Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y+Rr,Rr,k)),Si+=4)}return V&&(console.log("num probes: "+Si),console.log("best distance: "+Wa.d)),Wa.p}function iW(k,C){return C.max-k.max}function B0(k,C,V,oe){this.p=new i(k,C),this.h=V,this.d=nW(this.p,oe),this.max=this.d+this.h*Math.SQRT2}function nW(k,C){for(var V=!1,oe=1/0,_e=0;_e<C.length;_e++)for(var Pe=C[_e],je=0,ct=Pe.length,Lt=ct-1;je<ct;Lt=je++){var Nt=Pe[je],Xt=Pe[Lt];Nt.y>k.y!=Xt.y>k.y&&k.x<(Xt.x-Nt.x)*(k.y-Nt.y)/(Xt.y-Nt.y)+Nt.x&&(V=!V),oe=Math.min(oe,Vd(k,Nt,Xt))}return(V?1:-1)*Math.sqrt(oe)}function oW(k){for(var C=0,V=0,oe=0,_e=k[0],Pe=0,je=_e.length,ct=je-1;Pe<je;ct=Pe++){var Lt=_e[Pe],Nt=_e[ct],Xt=Lt.x*Nt.y-Nt.x*Lt.y;V+=(Lt.x+Nt.x)*Xt,oe+=(Lt.y+Nt.y)*Xt,C+=Xt*3}return new B0(V/C,oe/C,0,k)}var N0=7,hA=Number.POSITIVE_INFINITY;function wC(k,C){function V(_e,Pe){var je=0,ct=0;Pe<0&&(Pe=0);var Lt=Pe/Math.sqrt(2);switch(_e){case"top-right":case"top-left":ct=Lt-N0;break;case"bottom-right":case"bottom-left":ct=-Lt+N0;break;case"bottom":ct=-Pe+N0;break;case"top":ct=Pe-N0;break}switch(_e){case"top-right":case"bottom-right":je=-Lt;break;case"top-left":case"bottom-left":je=Lt;break;case"left":je=Pe;break;case"right":je=-Pe;break}return[je,ct]}function oe(_e,Pe,je){var ct=0,Lt=0;switch(Pe=Math.abs(Pe),je=Math.abs(je),_e){case"top-right":case"top-left":case"top":Lt=je-N0;break;case"bottom-right":case"bottom-left":case"bottom":Lt=-je+N0;break}switch(_e){case"top-right":case"bottom-right":case"right":ct=-Pe;break;case"top-left":case"bottom-left":case"left":ct=Pe;break}return[ct,Lt]}return C[1]!==hA?oe(k,C[0],C[1]):V(k,C[0])}function sW(k,C,V,oe,_e,Pe,je){k.createArrays();var ct=512*k.overscaling;k.tilePixelRatio=Ii/ct,k.compareText={},k.iconsNeedLinear=!1;var Lt=k.layers[0].layout,Nt=k.layers[0]._unevaluatedLayout._values,Xt={};if(k.textSizeData.kind==="composite"){var gr=k.textSizeData,Br=gr.minZoom,Rr=gr.maxZoom;Xt.compositeTextSizes=[Nt["text-size"].possiblyEvaluate(new Vi(Br),je),Nt["text-size"].possiblyEvaluate(new Vi(Rr),je)]}if(k.iconSizeData.kind==="composite"){var na=k.iconSizeData,Ia=na.minZoom,ii=na.maxZoom;Xt.compositeIconSizes=[Nt["icon-size"].possiblyEvaluate(new Vi(Ia),je),Nt["icon-size"].possiblyEvaluate(new Vi(ii),je)]}Xt.layoutTextSize=Nt["text-size"].possiblyEvaluate(new Vi(k.zoom+1),je),Xt.layoutIconSize=Nt["icon-size"].possiblyEvaluate(new Vi(k.zoom+1),je),Xt.textMaxSize=Nt["text-size"].possiblyEvaluate(new Vi(18));for(var Wa=Lt.get("text-line-height")*Ei,Si=Lt.get("text-rotation-alignment")==="map"&&Lt.get("symbol-placement")!=="point",ci=Lt.get("text-keep-upright"),Ai=Lt.get("text-size"),Li=function(){var Tn=kn[Ki],lo=Lt.get("text-font").evaluate(Tn,{},je).join(","),qn=Ai.evaluate(Tn,{},je),to=Xt.layoutTextSize.evaluate(Tn,{},je),ds=Xt.layoutIconSize.evaluate(Tn,{},je),uo={horizontal:{},vertical:void 0},vo=Tn.text,zs=[0,0];if(vo){var cs=vo.toString(),Tl=Lt.get("text-letter-spacing").evaluate(Tn,{},je)*Ei,lu=Dr(cs)?Tl:0,Al=Lt.get("text-anchor").evaluate(Tn,{},je),Sl=Lt.get("text-variable-anchor");if(!Sl){var pl=Lt.get("text-radial-offset").evaluate(Tn,{},je);pl?zs=wC(Al,[pl*Ei,hA]):zs=Lt.get("text-offset").evaluate(Tn,{},je).map(function(Uv){return Uv*Ei})}var bu=Si?"center":Lt.get("text-justify").evaluate(Tn,{},je),Fu=Lt.get("symbol-placement"),Gc=Fu==="point"?Lt.get("text-max-width").evaluate(Tn,{},je)*Ei:0,of=function(){k.allowVerticalPlacement&&or(cs)&&(uo.vertical=D0(vo,C,V,_e,lo,Gc,Wa,Al,"left",lu,zs,dp.vertical,!0,Fu,to,qn))};if(!Si&&Sl){for(var ih=bu==="auto"?Sl.map(function(Uv){return pA(Uv)}):[bu],Cf=!1,Qh=0;Qh<ih.length;Qh++){var ep=ih[Qh];if(!uo.horizontal[ep])if(Cf)uo.horizontal[ep]=uo.horizontal[0];else{var nh=D0(vo,C,V,_e,lo,Gc,Wa,"center",ep,lu,zs,dp.horizontal,!1,Fu,to,qn);nh&&(uo.horizontal[ep]=nh,Cf=nh.positionedLines.length===1)}}of()}else{bu==="auto"&&(bu=pA(Al));var mp=D0(vo,C,V,_e,lo,Gc,Wa,Al,bu,lu,zs,dp.horizontal,!1,Fu,to,qn);mp&&(uo.horizontal[bu]=mp),of(),or(cs)&&Si&&ci&&(uo.vertical=D0(vo,C,V,_e,lo,Gc,Wa,Al,bu,lu,zs,dp.vertical,!1,Fu,to,qn))}}var gp=void 0,jf=!1;if(Tn.icon&&Tn.icon.name){var yp=oe[Tn.icon.name];yp&&(gp=Xp(_e[Tn.icon.name],Lt.get("icon-offset").evaluate(Tn,{},je),Lt.get("icon-anchor").evaluate(Tn,{},je)),jf=yp.sdf,k.sdfIcons===void 0?k.sdfIcons=yp.sdf:k.sdfIcons!==yp.sdf&&U("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(yp.pixelRatio!==k.pixelRatio||Lt.get("icon-rotate").constantOr(1)!==0)&&(k.iconsNeedLinear=!0))}var od=AC(uo.horizontal)||uo.vertical;k.iconsInText=od?od.iconsInText:!1,(od||gp)&&lW(k,Tn,uo,gp,oe,Xt,to,ds,zs,jf,je)},Ki=0,kn=k.features;Ki<kn.length;Ki+=1)Li();Pe&&k.generateCollisionDebugBuffers()}function pA(k){switch(k){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function lW(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=Pe.textMaxSize.evaluate(C,{});gr===void 0&&(gr=je);var Br=k.layers[0].layout,Rr=Br.get("icon-offset").evaluate(C,{},Xt),na=AC(V.horizontal),Ia=24,ii=je/Ia,Wa=k.tilePixelRatio*ii,Si=k.tilePixelRatio*gr/Ia,ci=k.tilePixelRatio*ct,Ai=k.tilePixelRatio*Br.get("symbol-spacing"),Li=Br.get("text-padding")*k.tilePixelRatio,Ki=Br.get("icon-padding")*k.tilePixelRatio,kn=Br.get("text-max-angle")/180*Math.PI,Tn=Br.get("text-rotation-alignment")==="map"&&Br.get("symbol-placement")!=="point",lo=Br.get("icon-rotation-alignment")==="map"&&Br.get("symbol-placement")!=="point",qn=Br.get("symbol-placement"),to=Ai/2,ds=Br.get("icon-text-fit"),uo;oe&&ds!=="none"&&(k.allowVerticalPlacement&&V.vertical&&(uo=dv(oe,V.vertical,ds,Br.get("icon-text-fit-padding"),Rr,ii)),na&&(oe=dv(oe,na,ds,Br.get("icon-text-fit-padding"),Rr,ii)));var vo=function(H0,wd){wd.x<0||wd.x>=Ii||wd.y<0||wd.y>=Ii||uW(k,wd,H0,V,oe,_e,uo,k.layers[0],k.collisionBoxArray,C.index,C.sourceLayerIndex,k.index,Wa,Li,Tn,Lt,ci,Ki,lo,Rr,C,Pe,Nt,Xt,je)};if(qn==="line")for(var zs=0,cs=_C(C.geometry,0,0,Ii,Ii);zs<cs.length;zs+=1)for(var Tl=cs[zs],lu=eW(Tl,Ai,kn,V.vertical||na,oe,Ia,Si,k.overscaling,Ii),Al=0,Sl=lu;Al<Sl.length;Al+=1){var pl=Sl[Al],bu=na;(!bu||!cW(k,bu.text,to,pl))&&vo(Tl,pl)}else if(qn==="line-center")for(var Fu=0,Gc=C.geometry;Fu<Gc.length;Fu+=1){var of=Gc[Fu];if(of.length>1){var ih=QG(of,kn,V.vertical||na,oe,Ia,Si);ih&&vo(of,ih)}}else if(C.type==="Polygon")for(var Cf=0,Qh=E0(C.geometry,0);Cf<Qh.length;Cf+=1){var ep=Qh[Cf],nh=aW(ep,16);vo(ep[0],new $h(nh.x,nh.y,0))}else if(C.type==="LineString")for(var mp=0,gp=C.geometry;mp<gp.length;mp+=1){var jf=gp[mp];vo(jf,new $h(jf[0].x,jf[0].y,0))}else if(C.type==="Point")for(var yp=0,od=C.geometry;yp<od.length;yp+=1)for(var Uv=od[yp],ym=0,_m=Uv;ym<_m.length;ym+=1){var xm=_m[ym];vo([xm],new $h(xm.x,xm.y,0))}}var J1=255,mm=J1*Dh;function TC(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=tW(C,V,ct,_e,Pe,je,oe,k.allowVerticalPlacement),ii=k.textSizeData,Wa=null;ii.kind==="source"?(Wa=[Dh*_e.layout.get("text-size").evaluate(je,{})],Wa[0]>mm&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')):ii.kind==="composite"&&(Wa=[Dh*Rr.compositeTextSizes[0].evaluate(je,{},na),Dh*Rr.compositeTextSizes[1].evaluate(je,{},na)],(Wa[0]>mm||Wa[1]>mm)&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')),k.addSymbols(k.text,Ia,Wa,ct,Pe,je,Nt,C,Lt.lineStartIndex,Lt.lineLength,Br,na);for(var Si=0,ci=Xt;Si<ci.length;Si+=1){var Ai=ci[Si];gr[Ai]=k.text.placedSymbolArray.length-1}return Ia.length*4}function AC(k){for(var C in k)return k[C];return null}function uW(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn){var lo,qn=k.addToLineVertexArray(C,V),to,ds,uo,vo,zs=0,cs=0,Tl=0,lu=0,Al=-1,Sl=-1,pl={},bu=xe(""),Fu=0,Gc=0;if(ct._unevaluatedLayout.getValue("text-radial-offset")===void 0?(lo=ct.layout.get("text-offset").evaluate(Ai,{},kn).map(function(e_){return e_*Ei}),Fu=lo[0],Gc=lo[1]):(Fu=ct.layout.get("text-radial-offset").evaluate(Ai,{},kn)*Ei,Gc=hA),k.allowVerticalPlacement&&oe.vertical){var of=ct.layout.get("text-rotate").evaluate(Ai,{},kn),ih=of+90,Cf=oe.vertical;uo=new cb(Lt,C,Nt,Xt,gr,Cf,Br,Rr,na,ih),je&&(vo=new cb(Lt,C,Nt,Xt,gr,je,ii,Wa,na,ih))}if(_e){var Qh=ct.layout.get("icon-rotate").evaluate(Ai,{}),ep=ct.layout.get("icon-text-fit")!=="none",nh=xC(_e,Qh,Ki,ep),mp=je?xC(je,Qh,Ki,ep):void 0;ds=new cb(Lt,C,Nt,Xt,gr,_e,ii,Wa,!1,Qh),zs=nh.length*4;var gp=k.iconSizeData,jf=null;gp.kind==="source"?(jf=[Dh*ct.layout.get("icon-size").evaluate(Ai,{})],jf[0]>mm&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')):gp.kind==="composite"&&(jf=[Dh*Li.compositeIconSizes[0].evaluate(Ai,{},kn),Dh*Li.compositeIconSizes[1].evaluate(Ai,{},kn)],(jf[0]>mm||jf[1]>mm)&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')),k.addSymbols(k.icon,nh,jf,ci,Si,Ai,!1,C,qn.lineStartIndex,qn.lineLength,-1,kn),Al=k.icon.placedSymbolArray.length-1,mp&&(cs=mp.length*4,k.addSymbols(k.icon,mp,jf,ci,Si,Ai,dp.vertical,C,qn.lineStartIndex,qn.lineLength,-1,kn),Sl=k.icon.placedSymbolArray.length-1)}for(var yp in oe.horizontal){var od=oe.horizontal[yp];if(!to){bu=xe(od.text);var Uv=ct.layout.get("text-rotate").evaluate(Ai,{},kn);to=new cb(Lt,C,Nt,Xt,gr,od,Br,Rr,na,Uv)}var ym=od.positionedLines.length===1;if(Tl+=TC(k,C,od,Pe,ct,na,Ai,Ia,qn,oe.vertical?dp.horizontal:dp.horizontalOnly,ym?Object.keys(oe.horizontal):[yp],pl,Al,Li,kn),ym)break}oe.vertical&&(lu+=TC(k,C,oe.vertical,Pe,ct,na,Ai,Ia,qn,dp.vertical,["vertical"],pl,Sl,Li,kn));var _m=to?to.boxStartIndex:k.collisionBoxArray.length,xm=to?to.boxEndIndex:k.collisionBoxArray.length,H0=uo?uo.boxStartIndex:k.collisionBoxArray.length,wd=uo?uo.boxEndIndex:k.collisionBoxArray.length,vb=ds?ds.boxStartIndex:k.collisionBoxArray.length,_A=ds?ds.boxEndIndex:k.collisionBoxArray.length,mb=vo?vo.boxStartIndex:k.collisionBoxArray.length,xA=vo?vo.boxEndIndex:k.collisionBoxArray.length,pd=-1,G0=function(e_,UC){return e_&&e_.circleDiameter?Math.max(e_.circleDiameter,UC):UC};pd=G0(to,pd),pd=G0(uo,pd),pd=G0(ds,pd),pd=G0(vo,pd);var gb=pd>-1?1:0;gb&&(pd*=Tn/Ei),k.glyphOffsetArray.length>=su.MAX_GLYPHS&&U("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Ai.sortKey!==void 0&&k.addToSortKeyRanges(k.symbolInstances.length,Ai.sortKey),k.symbolInstances.emplaceBack(C.x,C.y,pl.right>=0?pl.right:-1,pl.center>=0?pl.center:-1,pl.left>=0?pl.left:-1,pl.vertical||-1,Al,Sl,bu,_m,xm,H0,wd,vb,_A,mb,xA,Nt,Tl,lu,zs,cs,gb,0,Br,Fu,Gc,pd)}function cW(k,C,V,oe){var _e=k.compareText;if(!(C in _e))_e[C]=[];else for(var Pe=_e[C],je=Pe.length-1;je>=0;je--)if(oe.dist(Pe[je])<V)return!0;return _e[C].push(oe),!1}var fW=Zd.VectorTileFeature.types,hW=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function fb(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=ct?Math.min(mm,Math.round(ct[0])):0,na=ct?Math.min(mm,Math.round(ct[1])):0;k.emplaceBack(C,V,Math.round(oe*32),Math.round(_e*32),Pe,je,(Rr<<1)+(Lt?1:0),na,Nt*16,Xt*16,gr*256,Br*256)}function dA(k,C,V){k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V)}function pW(k){for(var C=0,V=k.sections;C<V.length;C+=1){var oe=V[C];if(Qa(oe.text))return!0}return!1}var U0=function(C){this.layoutVertexArray=new _o,this.indexArray=new jn,this.programConfigurations=C,this.segments=new Cs,this.dynamicLayoutVertexArray=new Zi,this.opacityVertexArray=new Ui,this.placedSymbolArray=new Ol};U0.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},U0.prototype.upload=function(C,V,oe,_e){this.isEmpty()||(oe&&(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,Ce.members),this.indexBuffer=C.createIndexBuffer(this.indexArray,V),this.dynamicLayoutVertexBuffer=C.createVertexBuffer(this.dynamicLayoutVertexArray,Ue.members,!0),this.opacityVertexBuffer=C.createVertexBuffer(this.opacityVertexArray,hW,!0),this.opacityVertexBuffer.itemSize=1),(oe||_e)&&this.programConfigurations.upload(C))},U0.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},de("SymbolBuffers",U0);var $1=function(C,V,oe){this.layoutVertexArray=new C,this.layoutAttributes=V,this.indexArray=new oe,this.segments=new Cs,this.collisionVertexArray=new dn};$1.prototype.upload=function(C){this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=C.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=C.createVertexBuffer(this.collisionVertexArray,ut.members,!0)},$1.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},de("CollisionBuffers",$1);var su=function(C){this.collisionBoxArray=C.collisionBoxArray,this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(Lt){return Lt.id}),this.index=C.index,this.pixelRatio=C.pixelRatio,this.sourceLayerIndex=C.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Pv([]),this.placementViewportMatrix=Pv([]);var V=this.layers[0],oe=V._unevaluatedLayout._values;this.textSizeData=nd(this.zoom,oe["text-size"]),this.iconSizeData=nd(this.zoom,oe["icon-size"]);var _e=this.layers[0].layout,Pe=_e.get("symbol-sort-key"),je=_e.get("symbol-z-order");this.canOverlap=_e.get("text-allow-overlap")||_e.get("icon-allow-overlap")||_e.get("text-ignore-placement")||_e.get("icon-ignore-placement"),this.sortFeaturesByKey=je!=="viewport-y"&&Pe.constantOr(1)!==void 0;var ct=je==="viewport-y"||je==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=ct&&this.canOverlap,_e.get("symbol-placement")==="point"&&(this.writingModes=_e.get("text-writing-mode").map(function(Lt){return dp[Lt]})),this.stateDependentLayerIds=this.layers.filter(function(Lt){return Lt.isStateDependent()}).map(function(Lt){return Lt.id}),this.sourceID=C.sourceID};su.prototype.createArrays=function(){this.text=new U0(new mi(this.layers,this.zoom,function(C){return/^text/.test(C)})),this.icon=new U0(new mi(this.layers,this.zoom,function(C){return/^icon/.test(C)})),this.glyphOffsetArray=new rf,this.lineVertexArray=new Yl,this.symbolInstances=new mc},su.prototype.calculateGlyphDependencies=function(C,V,oe,_e,Pe){for(var je=0;je<C.length;je++)if(V[C.charCodeAt(je)]=!0,(oe||_e)&&Pe){var ct=ei[C.charAt(je)];ct&&(V[ct.charCodeAt(0)]=!0)}},su.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=_e.layout,je=Pe.get("text-font"),ct=Pe.get("text-field"),Lt=Pe.get("icon-image"),Nt=(ct.value.kind!=="constant"||ct.value.value instanceof Zl&&!ct.value.value.isEmpty()||ct.value.value.toString().length>0)&&(je.value.kind!=="constant"||je.value.value.length>0),Xt=Lt.value.kind!=="constant"||!!Lt.value.value||Object.keys(Lt.parameters).length>0,gr=Pe.get("symbol-sort-key");if(this.features=[],!(!Nt&&!Xt)){for(var Br=V.iconDependencies,Rr=V.glyphDependencies,na=V.availableImages,Ia=new Vi(this.zoom),ii=0,Wa=C;ii<Wa.length;ii+=1){var Si=Wa[ii],ci=Si.feature,Ai=Si.id,Li=Si.index,Ki=Si.sourceLayerIndex,kn=_e._featureFilter.needGeometry,Tn=ms(ci,kn);if(_e._featureFilter.filter(Ia,Tn,oe)){kn||(Tn.geometry=zn(ci));var lo=void 0;if(Nt){var qn=_e.getValueAndResolveTokens("text-field",Tn,oe,na),to=Zl.factory(qn);pW(to)&&(this.hasRTLText=!0),(!this.hasRTLText||No()==="unavailable"||this.hasRTLText&&Gs.isParsed())&&(lo=ja(to,_e,Tn))}var ds=void 0;if(Xt){var uo=_e.getValueAndResolveTokens("icon-image",Tn,oe,na);uo instanceof yl?ds=uo:ds=yl.fromString(uo)}if(!(!lo&&!ds)){var vo=this.sortFeaturesByKey?gr.evaluate(Tn,{},oe):void 0,zs={id:Ai,text:lo,icon:ds,index:Li,sourceLayerIndex:Ki,geometry:Tn.geometry,properties:ci.properties,type:fW[ci.type],sortKey:vo};if(this.features.push(zs),ds&&(Br[ds.name]=!0),lo){var cs=je.evaluate(Tn,{},oe).join(","),Tl=Pe.get("text-rotation-alignment")==="map"&&Pe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(dp.vertical)>=0;for(var lu=0,Al=lo.sections;lu<Al.length;lu+=1){var Sl=Al[lu];if(Sl.image)Br[Sl.image.name]=!0;else{var pl=or(lo.toString()),bu=Sl.fontStack||cs,Fu=Rr[bu]=Rr[bu]||{};this.calculateGlyphDependencies(Sl.text,Fu,Tl,this.allowVerticalPlacement,pl)}}}}}}Pe.get("symbol-placement")==="line"&&(this.features=gi(this.features)),this.sortFeaturesByKey&&this.features.sort(function(Gc,of){return Gc.sortKey-of.sortKey})}},su.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(C,V,this.layers,oe),this.icon.programConfigurations.updatePaintArrays(C,V,this.layers,oe))},su.prototype.isEmpty=function(){return this.symbolInstances.length===0&&!this.hasRTLText},su.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},su.prototype.upload=function(C){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(C),this.iconCollisionBox.upload(C)),this.text.upload(C,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(C,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},su.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},su.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},su.prototype.addToLineVertexArray=function(C,V){var oe=this.lineVertexArray.length;if(C.segment!==void 0){for(var _e=C.dist(V[C.segment+1]),Pe=C.dist(V[C.segment]),je={},ct=C.segment+1;ct<V.length;ct++)je[ct]={x:V[ct].x,y:V[ct].y,tileUnitDistanceFromAnchor:_e},ct<V.length-1&&(_e+=V[ct+1].dist(V[ct]));for(var Lt=C.segment||0;Lt>=0;Lt--)je[Lt]={x:V[Lt].x,y:V[Lt].y,tileUnitDistanceFromAnchor:Pe},Lt>0&&(Pe+=V[Lt-1].dist(V[Lt]));for(var Nt=0;Nt<V.length;Nt++){var Xt=je[Nt];this.lineVertexArray.emplaceBack(Xt.x,Xt.y,Xt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:oe,lineLength:this.lineVertexArray.length-oe}},su.prototype.addSymbols=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){for(var Rr=C.indexArray,na=C.layoutVertexArray,Ia=C.segments.prepareSegment(4*V.length,na,Rr,this.canOverlap?je.sortKey:void 0),ii=this.glyphOffsetArray.length,Wa=Ia.vertexLength,Si=this.allowVerticalPlacement&&ct===dp.vertical?Math.PI/2:0,ci=je.text&&je.text.sections,Ai=0;Ai<V.length;Ai++){var Li=V[Ai],Ki=Li.tl,kn=Li.tr,Tn=Li.bl,lo=Li.br,qn=Li.tex,to=Li.pixelOffsetTL,ds=Li.pixelOffsetBR,uo=Li.minFontScaleX,vo=Li.minFontScaleY,zs=Li.glyphOffset,cs=Li.isSDF,Tl=Li.sectionIndex,lu=Ia.vertexLength,Al=zs[1];fb(na,Lt.x,Lt.y,Ki.x,Al+Ki.y,qn.x,qn.y,oe,cs,to.x,to.y,uo,vo),fb(na,Lt.x,Lt.y,kn.x,Al+kn.y,qn.x+qn.w,qn.y,oe,cs,ds.x,to.y,uo,vo),fb(na,Lt.x,Lt.y,Tn.x,Al+Tn.y,qn.x,qn.y+qn.h,oe,cs,to.x,ds.y,uo,vo),fb(na,Lt.x,Lt.y,lo.x,Al+lo.y,qn.x+qn.w,qn.y+qn.h,oe,cs,ds.x,ds.y,uo,vo),dA(C.dynamicLayoutVertexArray,Lt,Si),Rr.emplaceBack(lu,lu+1,lu+2),Rr.emplaceBack(lu+1,lu+2,lu+3),Ia.vertexLength+=4,Ia.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(zs[0]),(Ai===V.length-1||Tl!==V[Ai+1].sectionIndex)&&C.programConfigurations.populatePaintArrays(na.length,je,je.index,{},Br,ci&&ci[Tl])}C.placedSymbolArray.emplaceBack(Lt.x,Lt.y,ii,this.glyphOffsetArray.length-ii,Wa,Nt,Xt,Lt.segment,oe?oe[0]:0,oe?oe[1]:0,_e[0],_e[1],ct,0,!1,0,gr)},su.prototype._addCollisionDebugVertex=function(C,V,oe,_e,Pe,je){return V.emplaceBack(0,0),C.emplaceBack(oe.x,oe.y,_e,Pe,Math.round(je.x),Math.round(je.y))},su.prototype.addCollisionDebugVertices=function(C,V,oe,_e,Pe,je,ct){var Lt=Pe.segments.prepareSegment(4,Pe.layoutVertexArray,Pe.indexArray),Nt=Lt.vertexLength,Xt=Pe.layoutVertexArray,gr=Pe.collisionVertexArray,Br=ct.anchorX,Rr=ct.anchorY;this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(C,V)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(oe,V)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(oe,_e)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(C,_e)),Lt.vertexLength+=4;var na=Pe.indexArray;na.emplaceBack(Nt,Nt+1),na.emplaceBack(Nt+1,Nt+2),na.emplaceBack(Nt+2,Nt+3),na.emplaceBack(Nt+3,Nt),Lt.primitiveLength+=4},su.prototype.addDebugCollisionBoxes=function(C,V,oe,_e){for(var Pe=C;Pe<V;Pe++){var je=this.collisionBoxArray.get(Pe),ct=je.x1,Lt=je.y1,Nt=je.x2,Xt=je.y2;this.addCollisionDebugVertices(ct,Lt,Nt,Xt,_e?this.textCollisionBox:this.iconCollisionBox,je.anchorPoint,oe)}},su.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new $1(Rn,Ft.members,os),this.iconCollisionBox=new $1(Rn,Ft.members,os);for(var C=0;C<this.symbolInstances.length;C++){var V=this.symbolInstances.get(C);this.addDebugCollisionBoxes(V.textBoxStartIndex,V.textBoxEndIndex,V,!0),this.addDebugCollisionBoxes(V.verticalTextBoxStartIndex,V.verticalTextBoxEndIndex,V,!0),this.addDebugCollisionBoxes(V.iconBoxStartIndex,V.iconBoxEndIndex,V,!1),this.addDebugCollisionBoxes(V.verticalIconBoxStartIndex,V.verticalIconBoxEndIndex,V,!1)}},su.prototype._deserializeCollisionBoxesForSymbol=function(C,V,oe,_e,Pe,je,ct,Lt,Nt){for(var Xt={},gr=V;gr<oe;gr++){var Br=C.get(gr);Xt.textBox={x1:Br.x1,y1:Br.y1,x2:Br.x2,y2:Br.y2,anchorPointX:Br.anchorPointX,anchorPointY:Br.anchorPointY},Xt.textFeatureIndex=Br.featureIndex;break}for(var Rr=_e;Rr<Pe;Rr++){var na=C.get(Rr);Xt.verticalTextBox={x1:na.x1,y1:na.y1,x2:na.x2,y2:na.y2,anchorPointX:na.anchorPointX,anchorPointY:na.anchorPointY},Xt.verticalTextFeatureIndex=na.featureIndex;break}for(var Ia=je;Ia<ct;Ia++){var ii=C.get(Ia);Xt.iconBox={x1:ii.x1,y1:ii.y1,x2:ii.x2,y2:ii.y2,anchorPointX:ii.anchorPointX,anchorPointY:ii.anchorPointY},Xt.iconFeatureIndex=ii.featureIndex;break}for(var Wa=Lt;Wa<Nt;Wa++){var Si=C.get(Wa);Xt.verticalIconBox={x1:Si.x1,y1:Si.y1,x2:Si.x2,y2:Si.y2,anchorPointX:Si.anchorPointX,anchorPointY:Si.anchorPointY},Xt.verticalIconFeatureIndex=Si.featureIndex;break}return Xt},su.prototype.deserializeCollisionBoxes=function(C){this.collisionArrays=[];for(var V=0;V<this.symbolInstances.length;V++){var oe=this.symbolInstances.get(V);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(C,oe.textBoxStartIndex,oe.textBoxEndIndex,oe.verticalTextBoxStartIndex,oe.verticalTextBoxEndIndex,oe.iconBoxStartIndex,oe.iconBoxEndIndex,oe.verticalIconBoxStartIndex,oe.verticalIconBoxEndIndex))}},su.prototype.hasTextData=function(){return this.text.segments.get().length>0},su.prototype.hasIconData=function(){return this.icon.segments.get().length>0},su.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},su.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},su.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},su.prototype.addIndicesForPlacedSymbol=function(C,V){for(var oe=C.placedSymbolArray.get(V),_e=oe.vertexStartIndex+oe.numGlyphs*4,Pe=oe.vertexStartIndex;Pe<_e;Pe+=4)C.indexArray.emplaceBack(Pe,Pe+1,Pe+2),C.indexArray.emplaceBack(Pe+1,Pe+2,Pe+3)},su.prototype.getSortedSymbolIndexes=function(C){if(this.sortedAngle===C&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var V=Math.sin(C),oe=Math.cos(C),_e=[],Pe=[],je=[],ct=0;ct<this.symbolInstances.length;++ct){je.push(ct);var Lt=this.symbolInstances.get(ct);_e.push(Math.round(V*Lt.anchorX+oe*Lt.anchorY)|0),Pe.push(Lt.featureIndex)}return je.sort(function(Nt,Xt){return _e[Nt]-_e[Xt]||Pe[Xt]-Pe[Nt]}),je},su.prototype.addToSortKeyRanges=function(C,V){var oe=this.sortKeyRanges[this.sortKeyRanges.length-1];oe&&oe.sortKey===V?oe.symbolInstanceEnd=C+1:this.sortKeyRanges.push({sortKey:V,symbolInstanceStart:C,symbolInstanceEnd:C+1})},su.prototype.sortFeatures=function(C){var V=this;if(this.sortFeaturesByY&&this.sortedAngle!==C&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(C),this.sortedAngle=C,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var oe=0,_e=this.symbolInstanceIndexes;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.symbolInstances.get(Pe);this.featureSortOrder.push(je.featureIndex),[je.rightJustifiedTextSymbolIndex,je.centerJustifiedTextSymbolIndex,je.leftJustifiedTextSymbolIndex].forEach(function(ct,Lt,Nt){ct>=0&&Nt.indexOf(ct)===Lt&&V.addIndicesForPlacedSymbol(V.text,ct)}),je.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,je.verticalPlacedTextSymbolIndex),je.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.placedIconSymbolIndex),je.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},de("SymbolBucket",su,{omit:["layers","collisionBoxArray","features","compareText"]}),su.MAX_GLYPHS=65535,su.addDynamicAttributes=dA;function dW(k,C){return C.replace(/{([^{}]+)}/g,function(V,oe){return oe in k?String(k[oe]):""})}var vW=new xi({"symbol-placement":new Qt(fi.layout_symbol["symbol-placement"]),"symbol-spacing":new Qt(fi.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Qt(fi.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new ra(fi.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Qt(fi.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Qt(fi.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Qt(fi.layout_symbol["icon-ignore-placement"]),"icon-optional":new Qt(fi.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Qt(fi.layout_symbol["icon-rotation-alignment"]),"icon-size":new ra(fi.layout_symbol["icon-size"]),"icon-text-fit":new Qt(fi.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Qt(fi.layout_symbol["icon-text-fit-padding"]),"icon-image":new ra(fi.layout_symbol["icon-image"]),"icon-rotate":new ra(fi.layout_symbol["icon-rotate"]),"icon-padding":new Qt(fi.layout_symbol["icon-padding"]),"icon-keep-upright":new Qt(fi.layout_symbol["icon-keep-upright"]),"icon-offset":new ra(fi.layout_symbol["icon-offset"]),"icon-anchor":new ra(fi.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Qt(fi.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Qt(fi.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Qt(fi.layout_symbol["text-rotation-alignment"]),"text-field":new ra(fi.layout_symbol["text-field"]),"text-font":new ra(fi.layout_symbol["text-font"]),"text-size":new ra(fi.layout_symbol["text-size"]),"text-max-width":new ra(fi.layout_symbol["text-max-width"]),"text-line-height":new Qt(fi.layout_symbol["text-line-height"]),"text-letter-spacing":new ra(fi.layout_symbol["text-letter-spacing"]),"text-justify":new ra(fi.layout_symbol["text-justify"]),"text-radial-offset":new ra(fi.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Qt(fi.layout_symbol["text-variable-anchor"]),"text-anchor":new ra(fi.layout_symbol["text-anchor"]),"text-max-angle":new Qt(fi.layout_symbol["text-max-angle"]),"text-writing-mode":new Qt(fi.layout_symbol["text-writing-mode"]),"text-rotate":new ra(fi.layout_symbol["text-rotate"]),"text-padding":new Qt(fi.layout_symbol["text-padding"]),"text-keep-upright":new Qt(fi.layout_symbol["text-keep-upright"]),"text-transform":new ra(fi.layout_symbol["text-transform"]),"text-offset":new ra(fi.layout_symbol["text-offset"]),"text-allow-overlap":new Qt(fi.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Qt(fi.layout_symbol["text-ignore-placement"]),"text-optional":new Qt(fi.layout_symbol["text-optional"])}),mW=new xi({"icon-opacity":new ra(fi.paint_symbol["icon-opacity"]),"icon-color":new ra(fi.paint_symbol["icon-color"]),"icon-halo-color":new ra(fi.paint_symbol["icon-halo-color"]),"icon-halo-width":new ra(fi.paint_symbol["icon-halo-width"]),"icon-halo-blur":new ra(fi.paint_symbol["icon-halo-blur"]),"icon-translate":new Qt(fi.paint_symbol["icon-translate"]),"icon-translate-anchor":new Qt(fi.paint_symbol["icon-translate-anchor"]),"text-opacity":new ra(fi.paint_symbol["text-opacity"]),"text-color":new ra(fi.paint_symbol["text-color"],{runtimeType:_s,getOverride:function(k){return k.textColor},hasOverride:function(k){return!!k.textColor}}),"text-halo-color":new ra(fi.paint_symbol["text-halo-color"]),"text-halo-width":new ra(fi.paint_symbol["text-halo-width"]),"text-halo-blur":new ra(fi.paint_symbol["text-halo-blur"]),"text-translate":new Qt(fi.paint_symbol["text-translate"]),"text-translate-anchor":new Qt(fi.paint_symbol["text-translate-anchor"])}),vA={paint:mW,layout:vW},j0=function(C){this.type=C.property.overrides?C.property.overrides.runtimeType:vl,this.defaultValue=C};j0.prototype.evaluate=function(C){if(C.formattedSection){var V=this.defaultValue.property.overrides;if(V&&V.hasOverride(C.formattedSection))return V.getOverride(C.formattedSection)}return C.feature&&C.featureState?this.defaultValue.evaluate(C.feature,C.featureState):this.defaultValue.property.specification.default},j0.prototype.eachChild=function(C){if(!this.defaultValue.isConstant()){var V=this.defaultValue.value;C(V._styleExpression.expression)}},j0.prototype.outputDefined=function(){return!1},j0.prototype.serialize=function(){return null},de("FormatSectionOverride",j0,{omit:["defaultValue"]});var gW=function(k){function C(V){k.call(this,V,vA)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){if(k.prototype.recalculate.call(this,oe,_e),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var Pe=this.layout.get("text-writing-mode");if(Pe){for(var je=[],ct=0,Lt=Pe;ct<Lt.length;ct+=1){var Nt=Lt[ct];je.indexOf(Nt)<0&&je.push(Nt)}this.layout._values["text-writing-mode"]=je}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},C.prototype.getValueAndResolveTokens=function(oe,_e,Pe,je){var ct=this.layout.get(oe).evaluate(_e,{},Pe,je),Lt=this._unevaluatedLayout._values[oe];return!Lt.isDataDriven()&&!ro(Lt.value)&&ct?dW(_e.properties,ct):ct},C.prototype.createBucket=function(oe){return new su(oe)},C.prototype.queryRadius=function(){return 0},C.prototype.queryIntersectsFeature=function(){return!1},C.prototype._setPaintOverrides=function(){for(var oe=0,_e=vA.paint.overridableProperties;oe<_e.length;oe+=1){var Pe=_e[oe];if(C.hasPaintOverride(this.layout,Pe)){var je=this.paint.get(Pe),ct=new j0(je),Lt=new Ac(ct,je.property.specification),Nt=null;je.value.kind==="constant"||je.value.kind==="source"?Nt=new Nc("source",Lt):Nt=new hc("composite",Lt,je.value.zoomStops,je.value._interpolationType),this.paint._values[Pe]=new Ll(je.property,Nt,je.parameters)}}},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!this.layout||_e.isDataDriven()||Pe.isDataDriven()?!1:C.hasPaintOverride(this.layout,oe)},C.hasPaintOverride=function(oe,_e){var Pe=oe.get("text-field"),je=vA.paint.properties[_e],ct=!1,Lt=function(gr){for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(je.overrides&&je.overrides.hasOverride(na)){ct=!0;return}}};if(Pe.value.kind==="constant"&&Pe.value.value instanceof Zl)Lt(Pe.value.value.sections);else if(Pe.value.kind==="source"){var Nt=function(gr){if(!ct)if(gr instanceof Bs&&Zs(gr.value)===ml){var Br=gr.value;Lt(Br.sections)}else gr instanceof Yu?Lt(gr.sections):gr.eachChild(Nt)},Xt=Pe.value;Xt._styleExpression&&Nt(Xt._styleExpression.expression)}return ct},C}(Fi),yW=new xi({"background-color":new Qt(fi.paint_background["background-color"]),"background-pattern":new si(fi.paint_background["background-pattern"]),"background-opacity":new Qt(fi.paint_background["background-opacity"])}),_W={paint:yW},xW=function(k){function C(V){k.call(this,V,_W)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Fi),bW=new xi({"raster-opacity":new Qt(fi.paint_raster["raster-opacity"]),"raster-hue-rotate":new Qt(fi.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Qt(fi.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Qt(fi.paint_raster["raster-brightness-max"]),"raster-saturation":new Qt(fi.paint_raster["raster-saturation"]),"raster-contrast":new Qt(fi.paint_raster["raster-contrast"]),"raster-resampling":new Qt(fi.paint_raster["raster-resampling"]),"raster-fade-duration":new Qt(fi.paint_raster["raster-fade-duration"])}),wW={paint:bW},TW=function(k){function C(V){k.call(this,V,wW)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Fi);function AW(k){var C=[],V=k.id;return V===void 0&&C.push({message:"layers."+V+': missing required property "id"'}),k.render===void 0&&C.push({message:"layers."+V+': missing required method "render"'}),k.renderingMode&&k.renderingMode!=="2d"&&k.renderingMode!=="3d"&&C.push({message:"layers."+V+': property "renderingMode" must be either "2d" or "3d"'}),C}var SW=function(k){function C(V){k.call(this,V,{}),this.implementation=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.is3D=function(){return this.implementation.renderingMode==="3d"},C.prototype.hasOffscreenPass=function(){return this.implementation.prerender!==void 0},C.prototype.recalculate=function(){},C.prototype.updateTransitions=function(){},C.prototype.hasTransition=function(){},C.prototype.serialize=function(){},C.prototype.onAdd=function(oe){this.implementation.onAdd&&this.implementation.onAdd(oe,oe.painter.context.gl)},C.prototype.onRemove=function(oe){this.implementation.onRemove&&this.implementation.onRemove(oe,oe.painter.context.gl)},C}(Fi),MW={circle:WT,heatmap:w0,hillshade:Px,fill:Rg,"fill-extrusion":pv,line:D,symbol:gW,background:xW,raster:TW};function EW(k){return k.type==="custom"?new SW(k):new MW[k.type](k)}var SC=s.HTMLImageElement,MC=s.HTMLCanvasElement,EC=s.HTMLVideoElement,kC=s.ImageData,hb=s.ImageBitmap,Og=function(C,V,oe,_e){this.context=C,this.format=oe,this.texture=C.gl.createTexture(),this.update(V,_e)};Og.prototype.update=function(C,V,oe){var _e=C.width,Pe=C.height,je=(!this.size||this.size[0]!==_e||this.size[1]!==Pe)&&!oe,ct=this,Lt=ct.context,Nt=Lt.gl;if(this.useMipmap=!!(V&&V.useMipmap),Nt.bindTexture(Nt.TEXTURE_2D,this.texture),Lt.pixelStoreUnpackFlipY.set(!1),Lt.pixelStoreUnpack.set(1),Lt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Nt.RGBA&&(!V||V.premultiply!==!1)),je)this.size=[_e,Pe],C instanceof SC||C instanceof MC||C instanceof EC||C instanceof kC||hb&&C instanceof hb?Nt.texImage2D(Nt.TEXTURE_2D,0,this.format,this.format,Nt.UNSIGNED_BYTE,C):Nt.texImage2D(Nt.TEXTURE_2D,0,this.format,_e,Pe,0,this.format,Nt.UNSIGNED_BYTE,C.data);else{var Xt=oe||{x:0,y:0},gr=Xt.x,Br=Xt.y;C instanceof SC||C instanceof MC||C instanceof EC||C instanceof kC||hb&&C instanceof hb?Nt.texSubImage2D(Nt.TEXTURE_2D,0,gr,Br,Nt.RGBA,Nt.UNSIGNED_BYTE,C):Nt.texSubImage2D(Nt.TEXTURE_2D,0,gr,Br,_e,Pe,Nt.RGBA,Nt.UNSIGNED_BYTE,C.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Nt.generateMipmap(Nt.TEXTURE_2D)},Og.prototype.bind=function(C,V,oe){var _e=this,Pe=_e.context,je=Pe.gl;je.bindTexture(je.TEXTURE_2D,this.texture),oe===je.LINEAR_MIPMAP_NEAREST&&!this.isSizePowerOfTwo()&&(oe=je.LINEAR),C!==this.filter&&(je.texParameteri(je.TEXTURE_2D,je.TEXTURE_MAG_FILTER,C),je.texParameteri(je.TEXTURE_2D,je.TEXTURE_MIN_FILTER,oe||C),this.filter=C),V!==this.wrap&&(je.texParameteri(je.TEXTURE_2D,je.TEXTURE_WRAP_S,V),je.texParameteri(je.TEXTURE_2D,je.TEXTURE_WRAP_T,V),this.wrap=V)},Og.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1===0},Og.prototype.destroy=function(){var C=this.context,V=C.gl;V.deleteTexture(this.texture),this.texture=null};var mA=function(C){var V=this;this._callback=C,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){V._triggered=!1,V._callback()})};mA.prototype.trigger=function(){var C=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(function(){C._triggered=!1,C._callback()},0))},mA.prototype.remove=function(){delete this._channel,this._callback=function(){}};var V0=function(C,V,oe){this.target=C,this.parent=V,this.mapId=oe,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},L(["receive","process"],this),this.invoker=new mA(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=se()?C:s};V0.prototype.send=function(C,V,oe,_e,Pe){var je=this;Pe===void 0&&(Pe=!1);var ct=Math.round(Math.random()*1e18).toString(36).substring(0,10);oe&&(this.callbacks[ct]=oe);var Lt=$(this.globalScope)?void 0:[];return this.target.postMessage({id:ct,type:C,hasCallback:!!oe,targetMapId:_e,mustQueue:Pe,sourceMapId:this.mapId,data:vt(V,Lt)},Lt),{cancel:function(){oe&&delete je.callbacks[ct],je.target.postMessage({id:ct,type:"<cancel>",targetMapId:_e,sourceMapId:je.mapId})}}},V0.prototype.receive=function(C){var V=C.data,oe=V.id;if(oe&&!(V.targetMapId&&this.mapId!==V.targetMapId))if(V.type==="<cancel>"){delete this.tasks[oe];var _e=this.cancelCallbacks[oe];delete this.cancelCallbacks[oe],_e&&_e()}else se()||V.mustQueue?(this.tasks[oe]=V,this.taskQueue.push(oe),this.invoker.trigger()):this.processTask(oe,V)},V0.prototype.process=function(){if(this.taskQueue.length){var C=this.taskQueue.shift(),V=this.tasks[C];delete this.tasks[C],this.taskQueue.length&&this.invoker.trigger(),V&&this.processTask(C,V)}},V0.prototype.processTask=function(C,V){var oe=this;if(V.type==="<response>"){var _e=this.callbacks[C];delete this.callbacks[C],_e&&(V.error?_e(wt(V.error)):_e(null,wt(V.data)))}else{var Pe=!1,je=$(this.globalScope)?void 0:[],ct=V.hasCallback?function(Br,Rr){Pe=!0,delete oe.cancelCallbacks[C],oe.target.postMessage({id:C,type:"<response>",sourceMapId:oe.mapId,error:Br?vt(Br):null,data:vt(Rr,je)},je)}:function(Br){Pe=!0},Lt=null,Nt=wt(V.data);if(this.parent[V.type])Lt=this.parent[V.type](V.sourceMapId,Nt,ct);else if(this.parent.getWorkerSource){var Xt=V.type.split("."),gr=this.parent.getWorkerSource(V.sourceMapId,Xt[0],Nt.source);Lt=gr[Xt[1]](Nt,ct)}else ct(new Error("Could not find function "+V.type));!Pe&&Lt&&Lt.cancel&&(this.cancelCallbacks[C]=Lt.cancel)}},V0.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function kW(k,C,V){C=Math.pow(2,V)-C-1;var oe=CC(k*256,C*256,V),_e=CC((k+1)*256,(C+1)*256,V);return oe[0]+","+oe[1]+","+_e[0]+","+_e[1]}function CC(k,C,V){var oe=2*Math.PI*6378137/256/Math.pow(2,V),_e=k*oe-2*Math.PI*6378137/2,Pe=C*oe-2*Math.PI*6378137/2;return[_e,Pe]}var Ef=function(C,V){C&&(V?this.setSouthWest(C).setNorthEast(V):C.length===4?this.setSouthWest([C[0],C[1]]).setNorthEast([C[2],C[3]]):this.setSouthWest(C[0]).setNorthEast(C[1]))};Ef.prototype.setNorthEast=function(C){return this._ne=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.setSouthWest=function(C){return this._sw=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.extend=function(C){var V=this._sw,oe=this._ne,_e,Pe;if(C instanceof rc)_e=C,Pe=C;else if(C instanceof Ef){if(_e=C._sw,Pe=C._ne,!_e||!Pe)return this}else{if(Array.isArray(C))if(C.length===4||C.every(Array.isArray)){var je=C;return this.extend(Ef.convert(je))}else{var ct=C;return this.extend(rc.convert(ct))}return this}return!V&&!oe?(this._sw=new rc(_e.lng,_e.lat),this._ne=new rc(Pe.lng,Pe.lat)):(V.lng=Math.min(_e.lng,V.lng),V.lat=Math.min(_e.lat,V.lat),oe.lng=Math.max(Pe.lng,oe.lng),oe.lat=Math.max(Pe.lat,oe.lat)),this},Ef.prototype.getCenter=function(){return new rc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Ef.prototype.getSouthWest=function(){return this._sw},Ef.prototype.getNorthEast=function(){return this._ne},Ef.prototype.getNorthWest=function(){return new rc(this.getWest(),this.getNorth())},Ef.prototype.getSouthEast=function(){return new rc(this.getEast(),this.getSouth())},Ef.prototype.getWest=function(){return this._sw.lng},Ef.prototype.getSouth=function(){return this._sw.lat},Ef.prototype.getEast=function(){return this._ne.lng},Ef.prototype.getNorth=function(){return this._ne.lat},Ef.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Ef.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Ef.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Ef.prototype.contains=function(C){var V=rc.convert(C),oe=V.lng,_e=V.lat,Pe=this._sw.lat<=_e&&_e<=this._ne.lat,je=this._sw.lng<=oe&&oe<=this._ne.lng;return this._sw.lng>this._ne.lng&&(je=this._sw.lng>=oe&&oe>=this._ne.lng),Pe&&je},Ef.convert=function(C){return!C||C instanceof Ef?C:new Ef(C)};var LC=63710088e-1,rc=function(C,V){if(isNaN(C)||isNaN(V))throw new Error("Invalid LngLat object: ("+C+", "+V+")");if(this.lng=+C,this.lat=+V,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};rc.prototype.wrap=function(){return new rc(_(this.lng,-180,180),this.lat)},rc.prototype.toArray=function(){return[this.lng,this.lat]},rc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},rc.prototype.distanceTo=function(C){var V=Math.PI/180,oe=this.lat*V,_e=C.lat*V,Pe=Math.sin(oe)*Math.sin(_e)+Math.cos(oe)*Math.cos(_e)*Math.cos((C.lng-this.lng)*V),je=LC*Math.acos(Math.min(Pe,1));return je},rc.prototype.toBounds=function(C){C===void 0&&(C=0);var V=40075017,oe=360*C/V,_e=oe/Math.cos(Math.PI/180*this.lat);return new Ef(new rc(this.lng-_e,this.lat-oe),new rc(this.lng+_e,this.lat+oe))},rc.convert=function(C){if(C instanceof rc)return C;if(Array.isArray(C)&&(C.length===2||C.length===3))return new rc(Number(C[0]),Number(C[1]));if(!Array.isArray(C)&&typeof C=="object"&&C!==null)return new rc(Number("lng"in C?C.lng:C.lon),Number(C.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var PC=2*Math.PI*LC;function IC(k){return PC*Math.cos(k*Math.PI/180)}function RC(k){return(180+k)/360}function DC(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function zC(k,C){return k/IC(C)}function CW(k){return k*360-180}function gA(k){var C=180-k*360;return 360/Math.PI*Math.atan(Math.exp(C*Math.PI/180))-90}function LW(k,C){return k*IC(gA(C))}function PW(k){return 1/Math.cos(k*Math.PI/180)}var Bg=function(C,V,oe){oe===void 0&&(oe=0),this.x=+C,this.y=+V,this.z=+oe};Bg.fromLngLat=function(C,V){V===void 0&&(V=0);var oe=rc.convert(C);return new Bg(RC(oe.lng),DC(oe.lat),zC(V,oe.lat))},Bg.prototype.toLngLat=function(){return new rc(CW(this.x),gA(this.y))},Bg.prototype.toAltitude=function(){return LW(this.z,this.y)},Bg.prototype.meterInMercatorCoordinateUnits=function(){return 1/PC*PW(gA(this.y))};var Ng=function(C,V,oe){this.z=C,this.x=V,this.y=oe,this.key=Q1(0,C,C,V,oe)};Ng.prototype.equals=function(C){return this.z===C.z&&this.x===C.x&&this.y===C.y},Ng.prototype.url=function(C,V){var oe=kW(this.x,this.y,this.z),_e=IW(this.z,this.x,this.y);return C[(this.x+this.y)%C.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(V==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",_e).replace("{bbox-epsg-3857}",oe)},Ng.prototype.getTilePoint=function(C){var V=Math.pow(2,this.z);return new i((C.x*V-this.x)*Ii,(C.y*V-this.y)*Ii)},Ng.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var FC=function(C,V){this.wrap=C,this.canonical=V,this.key=Q1(C,V.z,V.z,V.x,V.y)},kf=function(C,V,oe,_e,Pe){this.overscaledZ=C,this.wrap=V,this.canonical=new Ng(oe,+_e,+Pe),this.key=Q1(V,C,oe,_e,Pe)};kf.prototype.equals=function(C){return this.overscaledZ===C.overscaledZ&&this.wrap===C.wrap&&this.canonical.equals(C.canonical)},kf.prototype.scaledTo=function(C){var V=this.canonical.z-C;return C>this.canonical.z?new kf(C,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new kf(C,this.wrap,C,this.canonical.x>>V,this.canonical.y>>V)},kf.prototype.calculateScaledKey=function(C,V){var oe=this.canonical.z-C;return C>this.canonical.z?Q1(this.wrap*+V,C,this.canonical.z,this.canonical.x,this.canonical.y):Q1(this.wrap*+V,C,C,this.canonical.x>>oe,this.canonical.y>>oe)},kf.prototype.isChildOf=function(C){if(C.wrap!==this.wrap)return!1;var V=this.canonical.z-C.canonical.z;return C.overscaledZ===0||C.overscaledZ<this.overscaledZ&&C.canonical.x===this.canonical.x>>V&&C.canonical.y===this.canonical.y>>V},kf.prototype.children=function(C){if(this.overscaledZ>=C)return[new kf(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var V=this.canonical.z+1,oe=this.canonical.x*2,_e=this.canonical.y*2;return[new kf(V,this.wrap,V,oe,_e),new kf(V,this.wrap,V,oe+1,_e),new kf(V,this.wrap,V,oe,_e+1),new kf(V,this.wrap,V,oe+1,_e+1)]},kf.prototype.isLessThan=function(C){return this.wrap<C.wrap?!0:this.wrap>C.wrap?!1:this.overscaledZ<C.overscaledZ?!0:this.overscaledZ>C.overscaledZ?!1:this.canonical.x<C.canonical.x?!0:this.canonical.x>C.canonical.x?!1:this.canonical.y<C.canonical.y},kf.prototype.wrapped=function(){return new kf(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},kf.prototype.unwrapTo=function(C){return new kf(this.overscaledZ,C,this.canonical.z,this.canonical.x,this.canonical.y)},kf.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},kf.prototype.toUnwrapped=function(){return new FC(this.wrap,this.canonical)},kf.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},kf.prototype.getTilePoint=function(C){return this.canonical.getTilePoint(new Bg(C.x-this.wrap,C.y))};function Q1(k,C,V,oe,_e){k*=2,k<0&&(k=k*-1-1);var Pe=1<<V;return(Pe*Pe*k+Pe*_e+oe).toString(36)+V.toString(36)+C.toString(36)}function IW(k,C,V){for(var oe="",_e,Pe=k;Pe>0;Pe--)_e=1<<Pe-1,oe+=(C&_e?1:0)+(V&_e?2:0);return oe}de("CanonicalTileID",Ng),de("OverscaledTileID",kf,{omit:["posMatrix"]});var Bv=function(C,V,oe){if(this.uid=C,V.height!==V.width)throw new RangeError("DEM tiles must be square");if(oe&&oe!=="mapbox"&&oe!=="terrarium")return U('"'+oe+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');this.stride=V.height;var _e=this.dim=V.height-2;this.data=new Uint32Array(V.data.buffer),this.encoding=oe||"mapbox";for(var Pe=0;Pe<_e;Pe++)this.data[this._idx(-1,Pe)]=this.data[this._idx(0,Pe)],this.data[this._idx(_e,Pe)]=this.data[this._idx(_e-1,Pe)],this.data[this._idx(Pe,-1)]=this.data[this._idx(Pe,0)],this.data[this._idx(Pe,_e)]=this.data[this._idx(Pe,_e-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(_e,-1)]=this.data[this._idx(_e-1,0)],this.data[this._idx(-1,_e)]=this.data[this._idx(0,_e-1)],this.data[this._idx(_e,_e)]=this.data[this._idx(_e-1,_e-1)]};Bv.prototype.get=function(C,V){var oe=new Uint8Array(this.data.buffer),_e=this._idx(C,V)*4,Pe=this.encoding==="terrarium"?this._unpackTerrarium:this._unpackMapbox;return Pe(oe[_e],oe[_e+1],oe[_e+2])},Bv.prototype.getUnpackVector=function(){return this.encoding==="terrarium"?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},Bv.prototype._idx=function(C,V){if(C<-1||C>=this.dim+1||V<-1||V>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(V+1)*this.stride+(C+1)},Bv.prototype._unpackMapbox=function(C,V,oe){return(C*256*256+V*256+oe)/10-1e4},Bv.prototype._unpackTerrarium=function(C,V,oe){return C*256+V+oe/256-32768},Bv.prototype.getPixels=function(){return new Of({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bv.prototype.backfillBorder=function(C,V,oe){if(this.dim!==C.dim)throw new Error("dem dimension mismatch");var _e=V*this.dim,Pe=V*this.dim+this.dim,je=oe*this.dim,ct=oe*this.dim+this.dim;switch(V){case-1:_e=Pe-1;break;case 1:Pe=_e+1;break}switch(oe){case-1:je=ct-1;break;case 1:ct=je+1;break}for(var Lt=-V*this.dim,Nt=-oe*this.dim,Xt=je;Xt<ct;Xt++)for(var gr=_e;gr<Pe;gr++)this.data[this._idx(gr,Xt)]=C.data[this._idx(gr+Lt,Xt+Nt)]},de("DEMData",Bv);function RW(k,C){var V={};if(!C)return V;for(var oe=function(){var je=Pe[_e],ct=je.layerIds.map(function(gr){return C.getLayer(gr)}).filter(Boolean);if(ct.length!==0){je.layers=ct,je.stateDependentLayerIds&&(je.stateDependentLayers=je.stateDependentLayerIds.map(function(gr){return ct.filter(function(Br){return Br.id===gr})[0]}));for(var Lt=0,Nt=ct;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt];V[Xt.id]=je}}},_e=0,Pe=k;_e<Pe.length;_e+=1)oe();return V}var pb=function(C){this._stringToNumber={},this._numberToString=[];for(var V=0;V<C.length;V++){var oe=C[V];this._stringToNumber[oe]=V,this._numberToString[V]=oe}};pb.prototype.encode=function(C){return this._stringToNumber[C]},pb.prototype.decode=function(C){return this._numberToString[C]};var db=function(C,V,oe,_e,Pe){this.type="Feature",this._vectorTileFeature=C,C._z=V,C._x=oe,C._y=_e,this.properties=C.properties,this.id=Pe},yA={geometry:{configurable:!0}};yA.geometry.get=function(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},yA.geometry.set=function(k){this._geometry=k},db.prototype.toJSON=function(){var C={geometry:this.geometry};for(var V in this)V==="_geometry"||V==="_vectorTileFeature"||(C[V]=this[V]);return C},Object.defineProperties(db.prototype,yA);var q0=function(){this.state={},this.stateChanges={},this.deletedStates={}};q0.prototype.updateState=function(C,V,oe){var _e=String(V);if(this.stateChanges[C]=this.stateChanges[C]||{},this.stateChanges[C][_e]=this.stateChanges[C][_e]||{},m(this.stateChanges[C][_e],oe),this.deletedStates[C]===null){this.deletedStates[C]={};for(var Pe in this.state[C])Pe!==_e&&(this.deletedStates[C][Pe]=null)}else{var je=this.deletedStates[C]&&this.deletedStates[C][_e]===null;if(je){this.deletedStates[C][_e]={};for(var ct in this.state[C][_e])oe[ct]||(this.deletedStates[C][_e][ct]=null)}else for(var Lt in oe){var Nt=this.deletedStates[C]&&this.deletedStates[C][_e]&&this.deletedStates[C][_e][Lt]===null;Nt&&delete this.deletedStates[C][_e][Lt]}}},q0.prototype.removeFeatureState=function(C,V,oe){var _e=this.deletedStates[C]===null;if(!_e){var Pe=String(V);if(this.deletedStates[C]=this.deletedStates[C]||{},oe&&V!==void 0)this.deletedStates[C][Pe]!==null&&(this.deletedStates[C][Pe]=this.deletedStates[C][Pe]||{},this.deletedStates[C][Pe][oe]=null);else if(V!==void 0){var je=this.stateChanges[C]&&this.stateChanges[C][Pe];if(je){this.deletedStates[C][Pe]={};for(oe in this.stateChanges[C][Pe])this.deletedStates[C][Pe][oe]=null}else this.deletedStates[C][Pe]=null}else this.deletedStates[C]=null}},q0.prototype.getState=function(C,V){var oe=String(V),_e=this.state[C]||{},Pe=this.stateChanges[C]||{},je=m({},_e[oe],Pe[oe]);if(this.deletedStates[C]===null)return{};if(this.deletedStates[C]){var ct=this.deletedStates[C][V];if(ct===null)return{};for(var Lt in ct)delete je[Lt]}return je},q0.prototype.initializeTileState=function(C,V){C.setFeatureState(this.state,V)},q0.prototype.coalesceChanges=function(C,V){var oe={};for(var _e in this.stateChanges){this.state[_e]=this.state[_e]||{};var Pe={};for(var je in this.stateChanges[_e])this.state[_e][je]||(this.state[_e][je]={}),m(this.state[_e][je],this.stateChanges[_e][je]),Pe[je]=this.state[_e][je];oe[_e]=Pe}for(var ct in this.deletedStates){this.state[ct]=this.state[ct]||{};var Lt={};if(this.deletedStates[ct]===null)for(var Nt in this.state[ct])Lt[Nt]={},this.state[ct][Nt]={};else for(var Xt in this.deletedStates[ct]){var gr=this.deletedStates[ct][Xt]===null;if(gr)this.state[ct][Xt]={};else for(var Br=0,Rr=Object.keys(this.deletedStates[ct][Xt]);Br<Rr.length;Br+=1){var na=Rr[Br];delete this.state[ct][Xt][na]}Lt[Xt]=this.state[ct][Xt]}oe[ct]=oe[ct]||{},m(oe[ct],Lt)}if(this.stateChanges={},this.deletedStates={},Object.keys(oe).length!==0)for(var Ia in C){var ii=C[Ia];ii.setFeatureState(oe,V)}};var Nv=function(C,V){this.tileID=C,this.x=C.canonical.x,this.y=C.canonical.y,this.z=C.canonical.z,this.grid=new fu(Ii,16,0),this.grid3D=new fu(Ii,16,0),this.featureIndexArray=new Vc,this.promoteId=V};Nv.prototype.insert=function(C,V,oe,_e,Pe,je){var ct=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(oe,_e,Pe);for(var Lt=je?this.grid3D:this.grid,Nt=0;Nt<V.length;Nt++){for(var Xt=V[Nt],gr=[1/0,1/0,-1/0,-1/0],Br=0;Br<Xt.length;Br++){var Rr=Xt[Br];gr[0]=Math.min(gr[0],Rr.x),gr[1]=Math.min(gr[1],Rr.y),gr[2]=Math.max(gr[2],Rr.x),gr[3]=Math.max(gr[3],Rr.y)}gr[0]<Ii&&gr[1]<Ii&&gr[2]>=0&&gr[3]>=0&&Lt.insert(ct,gr[0],gr[1],gr[2],gr[3])}},Nv.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Zd.VectorTile(new eo(this.rawTileData)).layers,this.sourceLayerCoder=new pb(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Nv.prototype.query=function(C,V,oe,_e){var Pe=this;this.loadVTLayers();for(var je=C.params||{},ct=Ii/C.tileSize/C.scale,Lt=Je(je.filter),Nt=C.queryGeometry,Xt=C.queryPadding*ct,gr=BC(Nt),Br=this.grid.query(gr.minX-Xt,gr.minY-Xt,gr.maxX+Xt,gr.maxY+Xt),Rr=BC(C.cameraQueryGeometry),na=this.grid3D.query(Rr.minX-Xt,Rr.minY-Xt,Rr.maxX+Xt,Rr.maxY+Xt,function(Ki,kn,Tn,lo){return rd(C.cameraQueryGeometry,Ki-Xt,kn-Xt,Tn+Xt,lo+Xt)}),Ia=0,ii=na;Ia<ii.length;Ia+=1){var Wa=ii[Ia];Br.push(Wa)}Br.sort(DW);for(var Si={},ci,Ai=function(Ki){var kn=Br[Ki];if(kn!==ci){ci=kn;var Tn=Pe.featureIndexArray.get(kn),lo=null;Pe.loadMatchingFeature(Si,Tn.bucketIndex,Tn.sourceLayerIndex,Tn.featureIndex,Lt,je.layers,je.availableImages,V,oe,_e,function(qn,to,ds){return lo||(lo=zn(qn)),to.queryIntersectsFeature(Nt,qn,ds,lo,Pe.z,C.transform,ct,C.pixelPosMatrix)})}},Li=0;Li<Br.length;Li++)Ai(Li);return Si},Nv.prototype.loadMatchingFeature=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.bucketLayerIDs[V];if(!(je&&!I(je,Br))){var Rr=this.sourceLayerCoder.decode(oe),na=this.vtLayers[Rr],Ia=na.feature(_e);if(Pe.needGeometry){var ii=ms(Ia,!0);if(!Pe.filter(new Vi(this.tileID.overscaledZ),ii,this.tileID.canonical))return}else if(!Pe.filter(new Vi(this.tileID.overscaledZ),Ia))return;for(var Wa=this.getId(Ia,Rr),Si=0;Si<Br.length;Si++){var ci=Br[Si];if(!(je&&je.indexOf(ci)<0)){var Ai=Lt[ci];if(Ai){var Li={};Wa!==void 0&&Xt&&(Li=Xt.getState(Ai.sourceLayer||"_geojsonTileLayer",Wa));var Ki=m({},Nt[ci]);Ki.paint=OC(Ki.paint,Ai.paint,Ia,Li,ct),Ki.layout=OC(Ki.layout,Ai.layout,Ia,Li,ct);var kn=!gr||gr(Ia,Ai,Li);if(kn){var Tn=new db(Ia,this.z,this.x,this.y,Wa);Tn.layer=Ki;var lo=C[ci];lo===void 0&&(lo=C[ci]=[]),lo.push({featureIndex:_e,feature:Tn,intersectionZ:kn})}}}}}},Nv.prototype.lookupSymbolFeatures=function(C,V,oe,_e,Pe,je,ct,Lt){var Nt={};this.loadVTLayers();for(var Xt=Je(Pe),gr=0,Br=C;gr<Br.length;gr+=1){var Rr=Br[gr];this.loadMatchingFeature(Nt,oe,_e,Rr,Xt,je,ct,Lt,V)}return Nt},Nv.prototype.hasLayer=function(C){for(var V=0,oe=this.bucketLayerIDs;V<oe.length;V+=1)for(var _e=oe[V],Pe=0,je=_e;Pe<je.length;Pe+=1){var ct=je[Pe];if(C===ct)return!0}return!1},Nv.prototype.getId=function(C,V){var oe=C.id;if(this.promoteId){var _e=typeof this.promoteId=="string"?this.promoteId:this.promoteId[V];oe=C.properties[_e],typeof oe=="boolean"&&(oe=Number(oe))}return oe},de("FeatureIndex",Nv,{omit:["rawTileData","sourceLayerCoder"]});function OC(k,C,V,oe,_e){return F(k,function(Pe,je){var ct=C instanceof dc?C.get(je):null;return ct&&ct.evaluate?ct.evaluate(V,oe,_e):ct})}function BC(k){for(var C=1/0,V=1/0,oe=-1/0,_e=-1/0,Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe];C=Math.min(C,ct.x),V=Math.min(V,ct.y),oe=Math.max(oe,ct.x),_e=Math.max(_e,ct.y)}return{minX:C,minY:V,maxX:oe,maxY:_e}}function DW(k,C){return C-k}var zW=3e4,ah=function(C,V){this.tileID=C,this.uid=u(),this.uses=0,this.tileSize=V,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state="loading"};ah.prototype.registerFadeDuration=function(C){var V=C+this.timeAdded;V<be.now()||this.fadeEndTime&&V<this.fadeEndTime||(this.fadeEndTime=V)},ah.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},ah.prototype.loadVectorData=function(C,V,oe){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",!C){this.collisionBoxArray=new Ws;return}C.featureIndex&&(this.latestFeatureIndex=C.featureIndex,C.rawTileData?(this.latestRawTileData=C.rawTileData,this.latestFeatureIndex.rawTileData=C.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=C.collisionBoxArray,this.buckets=RW(C.buckets,V.style),this.hasSymbolBuckets=!1;for(var _e in this.buckets){var Pe=this.buckets[_e];if(Pe instanceof su)if(this.hasSymbolBuckets=!0,oe)Pe.justReloaded=!0;else break}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var je in this.buckets){var ct=this.buckets[je];if(ct instanceof su&&ct.hasRTLText){this.hasRTLText=!0,sl();break}}this.queryPadding=0;for(var Lt in this.buckets){var Nt=this.buckets[Lt];this.queryPadding=Math.max(this.queryPadding,V.style.getLayer(Lt).queryRadius(Nt))}C.imageAtlas&&(this.imageAtlas=C.imageAtlas),C.glyphAtlasImage&&(this.glyphAtlasImage=C.glyphAtlasImage)},ah.prototype.unloadVectorData=function(){for(var C in this.buckets)this.buckets[C].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"},ah.prototype.getBucket=function(C){return this.buckets[C.id]},ah.prototype.upload=function(C){for(var V in this.buckets){var oe=this.buckets[V];oe.uploadPending()&&oe.upload(C)}var _e=C.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Og(C,this.imageAtlas.image,_e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Og(C,this.glyphAtlasImage,_e.ALPHA),this.glyphAtlasImage=null)},ah.prototype.prepare=function(C){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(C,this.imageAtlasTexture)},ah.prototype.queryRenderedFeatures=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){return!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData?{}:this.latestFeatureIndex.query({queryGeometry:_e,cameraQueryGeometry:Pe,scale:je,tileSize:this.tileSize,pixelPosMatrix:Xt,transform:Lt,params:ct,queryPadding:this.queryPadding*Nt},C,V,oe)},ah.prototype.querySourceFeatures=function(C,V){var oe=this.latestFeatureIndex;if(!(!oe||!oe.rawTileData)){var _e=oe.loadVTLayers(),Pe=V?V.sourceLayer:"",je=_e._geojsonTileLayer||_e[Pe];if(je)for(var ct=Je(V&&V.filter),Lt=this.tileID.canonical,Nt=Lt.z,Xt=Lt.x,gr=Lt.y,Br={z:Nt,x:Xt,y:gr},Rr=0;Rr<je.length;Rr++){var na=je.feature(Rr);if(ct.needGeometry){var Ia=ms(na,!0);if(!ct.filter(new Vi(this.tileID.overscaledZ),Ia,this.tileID.canonical))continue}else if(!ct.filter(new Vi(this.tileID.overscaledZ),na))continue;var ii=oe.getId(na,Pe),Wa=new db(na,Nt,Xt,gr,ii);Wa.tile=Br,C.push(Wa)}}},ah.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},ah.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},ah.prototype.setExpiryData=function(C){var V=this.expirationTime;if(C.cacheControl){var oe=he(C.cacheControl);oe["max-age"]&&(this.expirationTime=Date.now()+oe["max-age"]*1e3)}else C.expires&&(this.expirationTime=new Date(C.expires).getTime());if(this.expirationTime){var _e=Date.now(),Pe=!1;if(this.expirationTime>_e)Pe=!1;else if(!V)Pe=!0;else if(this.expirationTime<V)Pe=!0;else{var je=this.expirationTime-V;je?this.expirationTime=_e+Math.max(je,zW):Pe=!0}Pe?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},ah.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-new Date().getTime(),Math.pow(2,31)-1)},ah.prototype.setFeatureState=function(C,V){if(!(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(C).length===0)){var oe=this.latestFeatureIndex.loadVTLayers();for(var _e in this.buckets)if(V.style.hasLayer(_e)){var Pe=this.buckets[_e],je=Pe.layers[0].sourceLayer||"_geojsonTileLayer",ct=oe[je],Lt=C[je];if(!(!ct||!Lt||Object.keys(Lt).length===0)){Pe.update(Lt,ct,this.imageAtlas&&this.imageAtlas.patternPositions||{});var Nt=V&&V.style&&V.style.getLayer(_e);Nt&&(this.queryPadding=Math.max(this.queryPadding,Nt.queryRadius(Pe)))}}}},ah.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},ah.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<be.now()},ah.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},ah.prototype.setHoldDuration=function(C){this.symbolFadeHoldUntil=be.now()+C},ah.prototype.setDependencies=function(C,V){for(var oe={},_e=0,Pe=V;_e<Pe.length;_e+=1){var je=Pe[_e];oe[je]=!0}this.dependencies[C]=oe},ah.prototype.hasDependency=function(C,V){for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.dependencies[Pe];if(je)for(var ct=0,Lt=V;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(je[Nt])return!0}}return!1};var FW=["type","source","source-layer","minzoom","maxzoom","filter","layout"],gm=s.performance,NC=function(C){this._marks={start:[C.url,"start"].join("#"),end:[C.url,"end"].join("#"),measure:C.url.toString()},gm.mark(this._marks.start)};NC.prototype.finish=function(){gm.mark(this._marks.end);var C=gm.getEntriesByName(this._marks.measure);return C.length===0&&(gm.measure(this._marks.measure,this._marks.start,this._marks.end),C=gm.getEntriesByName(this._marks.measure),gm.clearMarks(this._marks.start),gm.clearMarks(this._marks.end),gm.clearMeasures(this._marks.measure)),C},e.Actor=V0,e.AlphaImage=Cp,e.CanonicalTileID=Ng,e.CollisionBoxArray=Ws,e.Color=Rs,e.DEMData=Bv,e.DataConstantProperty=Qt,e.DictionaryCoder=pb,e.EXTENT=Ii,e.ErrorEvent=Fr,e.EvaluationParameters=Vi,e.Event=Mr,e.Evented=Lr,e.FeatureIndex=Nv,e.FillBucket=ad,e.FillExtrusionBucket=fd,e.ImageAtlas=Xd,e.ImagePosition=gf,e.LineBucket=Mf,e.LngLat=rc,e.LngLatBounds=Ef,e.MercatorCoordinate=Bg,e.ONE_EM=Ei,e.OverscaledTileID=kf,e.Point=i,e.Point$1=i,e.Properties=xi,e.Protobuf=eo,e.RGBAImage=Of,e.RequestManager=ce,e.RequestPerformance=NC,e.ResourceType=Ua,e.SegmentVector=Cs,e.SourceFeatureState=q0,e.StructArrayLayout1ui2=As,e.StructArrayLayout2f1f2i16=xn,e.StructArrayLayout2i4=Mi,e.StructArrayLayout3ui6=jn,e.StructArrayLayout4i8=tn,e.SymbolBucket=su,e.Texture=Og,e.Tile=ah,e.Transitionable=hs,e.Uniform1f=tr,e.Uniform1i=qt,e.Uniform2f=dr,e.Uniform3f=Pr,e.Uniform4f=Vr,e.UniformColor=Hr,e.UniformMatrix4f=Qr,e.UnwrappedTileID=FC,e.ValidationError=mn,e.WritingMode=dp,e.ZoomHistory=Jt,e.add=kp,e.addDynamicAttributes=dA,e.asyncAll=w,e.bezier=p,e.bindAll=L,e.browser=be,e.cacheEntryPossiblyAdded=sa,e.clamp=l,e.clearTileCache=La,e.clipLine=_C,e.clone=nm,e.clone$1=O,e.clone$2=y0,e.collisionCircleLayout=$t,e.config=Ae,e.create=im,e.create$1=eh,e.create$2=Hd,e.createCommonjsModule=t,e.createExpression=Po,e.createLayout=on,e.createStyleLayer=EW,e.cross=UT,e.deepEqual=c,e.dot=NT,e.dot$1=GT,e.ease=T,e.emitValidationErrors=qu,e.endsWith=z,e.enforceCacheSizeLimit=Aa,e.evaluateSizeForFeature=hC,e.evaluateSizeForZoom=pC,e.evaluateVariableOffset=wC,e.evented=Vn,e.extend=m,e.featureFilter=Je,e.filterObject=B,e.fromRotation=iv,e.getAnchorAlignment=K1,e.getAnchorJustification=pA,e.getArrayBuffer=pa,e.getImage=Er,e.getJSON=Zr,e.getRTLTextPluginStatus=No,e.getReferrer=Wt,e.getVideo=kr,e.identity=Pv,e.invert=nv,e.isChar=Rt,e.isMapboxURL=ze,e.keysDifference=E,e.makeRequest=xr,e.mapObject=F,e.mercatorXfromLng=RC,e.mercatorYfromLat=DC,e.mercatorZfromAltitude=zC,e.mul=xg,e.multiply=ov,e.mvt=Zd,e.nextPowerOfTwo=f,e.normalize=bg,e.number=xl,e.offscreenCanvasSupported=Ma,e.ortho=Ql,e.parseGlyphPBF=_d,e.pbf=eo,e.performSymbolLayout=sW,e.perspective=om,e.pick=b,e.plugin=Gs,e.polygonIntersectsPolygon=qo,e.postMapLoadEvent=Ne,e.postTurnstileEvent=Fe,e.potpack=Wp,e.refProperties=FW,e.register=de,e.registerForPluginStateChange=Gn,e.renderColorRamp=Ag,e.rotate=Lv,e.rotateX=Lh,e.rotateZ=Iv,e.scale=Bl,e.scale$1=HT,e.scale$2=_0,e.setCacheLimits=ka,e.setRTLTextPlugin=Fo,e.sphericalToCartesian=ue,e.sqrLen=L1,e.styleSpec=fi,e.sub=VT,e.symbolSize=$G,e.transformMat3=jT,e.transformMat4=Rv,e.translate=Du,e.triggerPluginCompletionEvent=hn,e.uniqueId=u,e.validateCustomStyleLayer=AW,e.validateLight=Go,e.validateStyle=Zo,e.values=S,e.vectorTile=Zd,e.version=r,e.warnOnce=U,e.webpSupported=Be,e.window=s,e.wrap=_}),M(["./shared"],function(e){"use strict";function t(Wt){var zt=typeof Wt;if(zt==="number"||zt==="boolean"||zt==="string"||Wt===void 0||Wt===null)return JSON.stringify(Wt);if(Array.isArray(Wt)){for(var Vt="[",Ut=0,xr=Wt;Ut<xr.length;Ut+=1){var Zr=xr[Ut];Vt+=t(Zr)+","}return Vt+"]"}for(var pa=Object.keys(Wt).sort(),Xr="{",Ea=0;Ea<pa.length;Ea++)Xr+=JSON.stringify(pa[Ea])+":"+t(Wt[pa[Ea]])+",";return Xr+"}"}function r(Wt){for(var zt="",Vt=0,Ut=e.refProperties;Vt<Ut.length;Vt+=1){var xr=Ut[Vt];zt+="/"+t(Wt[xr])}return zt}function o(Wt,zt){for(var Vt={},Ut=0;Ut<Wt.length;Ut++){var xr=zt&&zt[Wt[Ut].id]||r(Wt[Ut]);zt&&(zt[Wt[Ut].id]=xr);var Zr=Vt[xr];Zr||(Zr=Vt[xr]=[]),Zr.push(Wt[Ut])}var pa=[];for(var Xr in Vt)pa.push(Vt[Xr]);return pa}var a=function(zt){this.keyCache={},zt&&this.replace(zt)};a.prototype.replace=function(zt){this._layerConfigs={},this._layers={},this.update(zt,[])},a.prototype.update=function(zt,Vt){for(var Ut=this,xr=0,Zr=zt;xr<Zr.length;xr+=1){var pa=Zr[xr];this._layerConfigs[pa.id]=pa;var Xr=this._layers[pa.id]=e.createStyleLayer(pa);Xr._featureFilter=e.featureFilter(Xr.filter),this.keyCache[pa.id]&&delete this.keyCache[pa.id]}for(var Ea=0,Fa=Vt;Ea<Fa.length;Ea+=1){var qa=Fa[Ea];delete this.keyCache[qa],delete this._layerConfigs[qa],delete this._layers[qa]}this.familiesBySource={};for(var ya=o(e.values(this._layerConfigs),this.keyCache),$a=0,mt=ya;$a<mt.length;$a+=1){var gt=mt[$a],Er=gt.map(function(Lr){return Ut._layers[Lr.id]}),kr=Er[0];if(kr.visibility!=="none"){var br=kr.source||"",Tr=this.familiesBySource[br];Tr||(Tr=this.familiesBySource[br]={});var Mr=kr.sourceLayer||"_geojsonTileLayer",Fr=Tr[Mr];Fr||(Fr=Tr[Mr]=[]),Fr.push(Er)}}};var i=1,n=function(zt){var Vt={},Ut=[];for(var xr in zt){var Zr=zt[xr],pa=Vt[xr]={};for(var Xr in Zr){var Ea=Zr[+Xr];if(!(!Ea||Ea.bitmap.width===0||Ea.bitmap.height===0)){var Fa={x:0,y:0,w:Ea.bitmap.width+2*i,h:Ea.bitmap.height+2*i};Ut.push(Fa),pa[Xr]={rect:Fa,metrics:Ea.metrics}}}}var qa=e.potpack(Ut),ya=qa.w,$a=qa.h,mt=new e.AlphaImage({width:ya||1,height:$a||1});for(var gt in zt){var Er=zt[gt];for(var kr in Er){var br=Er[+kr];if(!(!br||br.bitmap.width===0||br.bitmap.height===0)){var Tr=Vt[gt][kr].rect;e.AlphaImage.copy(br.bitmap,mt,{x:0,y:0},{x:Tr.x+i,y:Tr.y+i},br.bitmap)}}}this.image=mt,this.positions=Vt};e.register("GlyphAtlas",n);var s=function(zt){this.tileID=new e.OverscaledTileID(zt.tileID.overscaledZ,zt.tileID.wrap,zt.tileID.canonical.z,zt.tileID.canonical.x,zt.tileID.canonical.y),this.uid=zt.uid,this.zoom=zt.zoom,this.pixelRatio=zt.pixelRatio,this.tileSize=zt.tileSize,this.source=zt.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=zt.showCollisionBoxes,this.collectResourceTiming=!!zt.collectResourceTiming,this.returnDependencies=!!zt.returnDependencies,this.promoteId=zt.promoteId};s.prototype.parse=function(zt,Vt,Ut,xr,Zr){var pa=this;this.status="parsing",this.data=zt,this.collisionBoxArray=new e.CollisionBoxArray;var Xr=new e.DictionaryCoder(Object.keys(zt.layers).sort()),Ea=new e.FeatureIndex(this.tileID,this.promoteId);Ea.bucketLayerIDs=[];var Fa={},qa={featureIndex:Ea,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ut},ya=Vt.familiesBySource[this.source];for(var $a in ya){var mt=zt.layers[$a];if(mt){mt.version===1&&e.warnOnce('Vector tile source "'+this.source+'" layer "'+$a+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var gt=Xr.encode($a),Er=[],kr=0;kr<mt.length;kr++){var br=mt.feature(kr),Tr=Ea.getId(br,$a);Er.push({feature:br,id:Tr,index:kr,sourceLayerIndex:gt})}for(var Mr=0,Fr=ya[$a];Mr<Fr.length;Mr+=1){var Lr=Fr[Mr],Jr=Lr[0];if(!(Jr.minzoom&&this.zoom<Math.floor(Jr.minzoom))&&!(Jr.maxzoom&&this.zoom>=Jr.maxzoom)&&Jr.visibility!=="none"){c(Lr,this.zoom,Ut);var oa=Fa[Jr.id]=Jr.createBucket({index:Ea.bucketLayerIDs.length,layers:Lr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:gt,sourceID:this.source});oa.populate(Er,qa,this.tileID.canonical),Ea.bucketLayerIDs.push(Lr.map(function(da){return da.id}))}}}}var ca,kt,ir,mr,$r=e.mapObject(qa.glyphDependencies,function(da){return Object.keys(da).map(Number)});Object.keys($r).length?xr.send("getGlyphs",{uid:this.uid,stacks:$r},function(da,Sa){ca||(ca=da,kt=Sa,Ca.call(pa))}):kt={};var ma=Object.keys(qa.iconDependencies);ma.length?xr.send("getImages",{icons:ma,source:this.source,tileID:this.tileID,type:"icons"},function(da,Sa){ca||(ca=da,ir=Sa,Ca.call(pa))}):ir={};var Ba=Object.keys(qa.patternDependencies);Ba.length?xr.send("getImages",{icons:Ba,source:this.source,tileID:this.tileID,type:"patterns"},function(da,Sa){ca||(ca=da,mr=Sa,Ca.call(pa))}):mr={},Ca.call(this);function Ca(){if(ca)return Zr(ca);if(kt&&ir&&mr){var da=new n(kt),Sa=new e.ImageAtlas(ir,mr);for(var Ti in Fa){var ai=Fa[Ti];ai instanceof e.SymbolBucket?(c(ai.layers,this.zoom,Ut),e.performSymbolLayout(ai,kt,da.positions,ir,Sa.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):ai.hasPattern&&(ai instanceof e.LineBucket||ai instanceof e.FillBucket||ai instanceof e.FillExtrusionBucket)&&(c(ai.layers,this.zoom,Ut),ai.addFeatures(qa,this.tileID.canonical,Sa.patternPositions))}this.status="done",Zr(null,{buckets:e.values(Fa).filter(function(an){return!an.isEmpty()}),featureIndex:Ea,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:da.image,imageAtlas:Sa,glyphMap:this.returnDependencies?kt:null,iconMap:this.returnDependencies?ir:null,glyphPositions:this.returnDependencies?da.positions:null})}}};function c(Wt,zt,Vt){for(var Ut=new e.EvaluationParameters(zt),xr=0,Zr=Wt;xr<Zr.length;xr+=1){var pa=Zr[xr];pa.recalculate(Ut,Vt)}}function h(Wt,zt){var Vt=e.getArrayBuffer(Wt.request,function(Ut,xr,Zr,pa){Ut?zt(Ut):xr&&zt(null,{vectorTile:new e.vectorTile.VectorTile(new e.pbf(xr)),rawData:xr,cacheControl:Zr,expires:pa})});return function(){Vt.cancel(),zt()}}var v=function(zt,Vt,Ut,xr){this.actor=zt,this.layerIndex=Vt,this.availableImages=Ut,this.loadVectorData=xr||h,this.loading={},this.loaded={}};v.prototype.loadTile=function(zt,Vt){var Ut=this,xr=zt.uid;this.loading||(this.loading={});var Zr=zt&&zt.request&&zt.request.collectResourceTiming?new e.RequestPerformance(zt.request):!1,pa=this.loading[xr]=new s(zt);pa.abort=this.loadVectorData(zt,function(Xr,Ea){if(delete Ut.loading[xr],Xr||!Ea)return pa.status="done",Ut.loaded[xr]=pa,Vt(Xr);var Fa=Ea.rawData,qa={};Ea.expires&&(qa.expires=Ea.expires),Ea.cacheControl&&(qa.cacheControl=Ea.cacheControl);var ya={};if(Zr){var $a=Zr.finish();$a&&(ya.resourceTiming=JSON.parse(JSON.stringify($a)))}pa.vectorTile=Ea.vectorTile,pa.parse(Ea.vectorTile,Ut.layerIndex,Ut.availableImages,Ut.actor,function(mt,gt){if(mt||!gt)return Vt(mt);Vt(null,e.extend({rawTileData:Fa.slice(0)},gt,qa,ya))}),Ut.loaded=Ut.loaded||{},Ut.loaded[xr]=pa})},v.prototype.reloadTile=function(zt,Vt){var Ut=this,xr=this.loaded,Zr=zt.uid,pa=this;if(xr&&xr[Zr]){var Xr=xr[Zr];Xr.showCollisionBoxes=zt.showCollisionBoxes;var Ea=function(Fa,qa){var ya=Xr.reloadCallback;ya&&(delete Xr.reloadCallback,Xr.parse(Xr.vectorTile,pa.layerIndex,Ut.availableImages,pa.actor,ya)),Vt(Fa,qa)};Xr.status==="parsing"?Xr.reloadCallback=Ea:Xr.status==="done"&&(Xr.vectorTile?Xr.parse(Xr.vectorTile,this.layerIndex,this.availableImages,this.actor,Ea):Ea())}},v.prototype.abortTile=function(zt,Vt){var Ut=this.loading,xr=zt.uid;Ut&&Ut[xr]&&Ut[xr].abort&&(Ut[xr].abort(),delete Ut[xr]),Vt()},v.prototype.removeTile=function(zt,Vt){var Ut=this.loaded,xr=zt.uid;Ut&&Ut[xr]&&delete Ut[xr],Vt()};var p=e.window.ImageBitmap,T=function(){this.loaded={}};T.prototype.loadTile=function(zt,Vt){var Ut=zt.uid,xr=zt.encoding,Zr=zt.rawImageData,pa=p&&Zr instanceof p?this.getImageData(Zr):Zr,Xr=new e.DEMData(Ut,pa,xr);this.loaded=this.loaded||{},this.loaded[Ut]=Xr,Vt(null,Xr)},T.prototype.getImageData=function(zt){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(zt.width,zt.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=zt.width,this.offscreenCanvas.height=zt.height,this.offscreenCanvasContext.drawImage(zt,0,0,zt.width,zt.height);var Vt=this.offscreenCanvasContext.getImageData(-1,-1,zt.width+2,zt.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new e.RGBAImage({width:Vt.width,height:Vt.height},Vt.data)},T.prototype.removeTile=function(zt){var Vt=this.loaded,Ut=zt.uid;Vt&&Vt[Ut]&&delete Vt[Ut]};var l=_;function _(Wt,zt){var Vt=Wt&&Wt.type,Ut;if(Vt==="FeatureCollection")for(Ut=0;Ut<Wt.features.length;Ut++)_(Wt.features[Ut],zt);else if(Vt==="GeometryCollection")for(Ut=0;Ut<Wt.geometries.length;Ut++)_(Wt.geometries[Ut],zt);else if(Vt==="Feature")_(Wt.geometry,zt);else if(Vt==="Polygon")w(Wt.coordinates,zt);else if(Vt==="MultiPolygon")for(Ut=0;Ut<Wt.coordinates.length;Ut++)w(Wt.coordinates[Ut],zt);return Wt}function w(Wt,zt){if(Wt.length!==0){S(Wt[0],zt);for(var Vt=1;Vt<Wt.length;Vt++)S(Wt[Vt],!zt)}}function S(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-1;Ut<xr;Zr=Ut++)Vt+=(Wt[Ut][0]-Wt[Zr][0])*(Wt[Zr][1]+Wt[Ut][1]);Vt>=0!=!!zt&&Wt.reverse()}var E=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(zt){this._feature=zt,this.extent=e.EXTENT,this.type=zt.type,this.properties=zt.tags,"id"in zt&&!isNaN(zt.id)&&(this.id=parseInt(zt.id,10))};m.prototype.loadGeometry=function(){if(this._feature.type===1){for(var zt=[],Vt=0,Ut=this._feature.geometry;Vt<Ut.length;Vt+=1){var xr=Ut[Vt];zt.push([new e.Point$1(xr[0],xr[1])])}return zt}else{for(var Zr=[],pa=0,Xr=this._feature.geometry;pa<Xr.length;pa+=1){for(var Ea=Xr[pa],Fa=[],qa=0,ya=Ea;qa<ya.length;qa+=1){var $a=ya[qa];Fa.push(new e.Point$1($a[0],$a[1]))}Zr.push(Fa)}return Zr}},m.prototype.toGeoJSON=function(zt,Vt,Ut){return E.call(this,zt,Vt,Ut)};var b=function(zt){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.EXTENT,this.length=zt.length,this._features=zt};b.prototype.feature=function(zt){return new m(this._features[zt])};var d=e.vectorTile.VectorTileFeature,u=y;function y(Wt,zt){this.options=zt||{},this.features=Wt,this.length=Wt.length}y.prototype.feature=function(Wt){return new f(this.features[Wt],this.options.extent)};function f(Wt,zt){this.id=typeof Wt.id=="number"?Wt.id:void 0,this.type=Wt.type,this.rawGeometry=Wt.type===1?[Wt.geometry]:Wt.geometry,this.properties=Wt.tags,this.extent=zt||4096}f.prototype.loadGeometry=function(){var Wt=this.rawGeometry;this.geometry=[];for(var zt=0;zt<Wt.length;zt++){for(var Vt=Wt[zt],Ut=[],xr=0;xr<Vt.length;xr++)Ut.push(new e.Point$1(Vt[xr][0],Vt[xr][1]));this.geometry.push(Ut)}return this.geometry},f.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var Wt=this.geometry,zt=1/0,Vt=-1/0,Ut=1/0,xr=-1/0,Zr=0;Zr<Wt.length;Zr++)for(var pa=Wt[Zr],Xr=0;Xr<pa.length;Xr++){var Ea=pa[Xr];zt=Math.min(zt,Ea.x),Vt=Math.max(Vt,Ea.x),Ut=Math.min(Ut,Ea.y),xr=Math.max(xr,Ea.y)}return[zt,Ut,Vt,xr]},f.prototype.toGeoJSON=d.prototype.toGeoJSON;var P=B,L=B,z=O,F=u;function B(Wt){var zt=new e.pbf;return I(Wt,zt),zt.finish()}function O(Wt,zt){zt=zt||{};var Vt={};for(var Ut in Wt)Vt[Ut]=new u(Wt[Ut].features,zt),Vt[Ut].name=Ut,Vt[Ut].version=zt.version,Vt[Ut].extent=zt.extent;return B({layers:Vt})}function I(Wt,zt){for(var Vt in Wt.layers)zt.writeMessage(3,N,Wt.layers[Vt])}function N(Wt,zt){zt.writeVarintField(15,Wt.version||1),zt.writeStringField(1,Wt.name||""),zt.writeVarintField(5,Wt.extent||4096);var Vt,Ut={keys:[],values:[],keycache:{},valuecache:{}};for(Vt=0;Vt<Wt.length;Vt++)Ut.feature=Wt.feature(Vt),zt.writeMessage(2,U,Ut);var xr=Ut.keys;for(Vt=0;Vt<xr.length;Vt++)zt.writeStringField(3,xr[Vt]);var Zr=Ut.values;for(Vt=0;Vt<Zr.length;Vt++)zt.writeMessage(4,he,Zr[Vt])}function U(Wt,zt){var Vt=Wt.feature;Vt.id!==void 0&&zt.writeVarintField(1,Vt.id),zt.writeMessage(2,W,Wt),zt.writeVarintField(3,Vt.type),zt.writeMessage(4,se,Vt)}function W(Wt,zt){var Vt=Wt.feature,Ut=Wt.keys,xr=Wt.values,Zr=Wt.keycache,pa=Wt.valuecache;for(var Xr in Vt.properties){var Ea=Zr[Xr];typeof Ea>"u"&&(Ut.push(Xr),Ea=Ut.length-1,Zr[Xr]=Ea),zt.writeVarint(Ea);var Fa=Vt.properties[Xr],qa=typeof Fa;qa!=="string"&&qa!=="boolean"&&qa!=="number"&&(Fa=JSON.stringify(Fa));var ya=qa+":"+Fa,$a=pa[ya];typeof $a>"u"&&(xr.push(Fa),$a=xr.length-1,pa[ya]=$a),zt.writeVarint($a)}}function Q(Wt,zt){return(zt<<3)+(Wt&7)}function ue(Wt){return Wt<<1^Wt>>31}function se(Wt,zt){for(var Vt=Wt.loadGeometry(),Ut=Wt.type,xr=0,Zr=0,pa=Vt.length,Xr=0;Xr<pa;Xr++){var Ea=Vt[Xr],Fa=1;Ut===1&&(Fa=Ea.length),zt.writeVarint(Q(1,Fa));for(var qa=Ut===3?Ea.length-1:Ea.length,ya=0;ya<qa;ya++){ya===1&&Ut!==1&&zt.writeVarint(Q(2,qa-1));var $a=Ea[ya].x-xr,mt=Ea[ya].y-Zr;zt.writeVarint(ue($a)),zt.writeVarint(ue(mt)),xr+=$a,Zr+=mt}Ut===3&&zt.writeVarint(Q(7,1))}}function he(Wt,zt){var Vt=typeof Wt;Vt==="string"?zt.writeStringField(1,Wt):Vt==="boolean"?zt.writeBooleanField(7,Wt):Vt==="number"&&(Wt%1!==0?zt.writeDoubleField(3,Wt):Wt<0?zt.writeSVarintField(6,Wt):zt.writeVarintField(5,Wt))}P.fromVectorTileJs=L,P.fromGeojsonVt=z,P.GeoJSONWrapper=F;function G(Wt,zt,Vt,Ut,xr,Zr){if(!(xr-Ut<=Vt)){var pa=Ut+xr>>1;$(Wt,zt,pa,Ut,xr,Zr%2),G(Wt,zt,Vt,Ut,pa-1,Zr+1),G(Wt,zt,Vt,pa+1,xr,Zr+1)}}function $(Wt,zt,Vt,Ut,xr,Zr){for(;xr>Ut;){if(xr-Ut>600){var pa=xr-Ut+1,Xr=Vt-Ut+1,Ea=Math.log(pa),Fa=.5*Math.exp(2*Ea/3),qa=.5*Math.sqrt(Ea*Fa*(pa-Fa)/pa)*(Xr-pa/2<0?-1:1),ya=Math.max(Ut,Math.floor(Vt-Xr*Fa/pa+qa)),$a=Math.min(xr,Math.floor(Vt+(pa-Xr)*Fa/pa+qa));$(Wt,zt,Vt,ya,$a,Zr)}var mt=zt[2*Vt+Zr],gt=Ut,Er=xr;for(J(Wt,zt,Ut,Vt),zt[2*xr+Zr]>mt&&J(Wt,zt,Ut,xr);gt<Er;){for(J(Wt,zt,gt,Er),gt++,Er--;zt[2*gt+Zr]<mt;)gt++;for(;zt[2*Er+Zr]>mt;)Er--}zt[2*Ut+Zr]===mt?J(Wt,zt,Ut,Er):(Er++,J(Wt,zt,Er,xr)),Er<=Vt&&(Ut=Er+1),Vt<=Er&&(xr=Er-1)}}function J(Wt,zt,Vt,Ut){Z(Wt,Vt,Ut),Z(zt,2*Vt,2*Ut),Z(zt,2*Vt+1,2*Ut+1)}function Z(Wt,zt,Vt){var Ut=Wt[zt];Wt[zt]=Wt[Vt],Wt[Vt]=Ut}function re(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[0,Wt.length-1,0],Ea=[],Fa,qa;Xr.length;){var ya=Xr.pop(),$a=Xr.pop(),mt=Xr.pop();if($a-mt<=pa){for(var gt=mt;gt<=$a;gt++)Fa=zt[2*gt],qa=zt[2*gt+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[gt]);continue}var Er=Math.floor((mt+$a)/2);Fa=zt[2*Er],qa=zt[2*Er+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[Er]);var kr=(ya+1)%2;(ya===0?Vt<=Fa:Ut<=qa)&&(Xr.push(mt),Xr.push(Er-1),Xr.push(kr)),(ya===0?xr>=Fa:Zr>=qa)&&(Xr.push(Er+1),Xr.push($a),Xr.push(kr))}return Ea}function ne(Wt,zt,Vt,Ut,xr,Zr){for(var pa=[0,Wt.length-1,0],Xr=[],Ea=xr*xr;pa.length;){var Fa=pa.pop(),qa=pa.pop(),ya=pa.pop();if(qa-ya<=Zr){for(var $a=ya;$a<=qa;$a++)j(zt[2*$a],zt[2*$a+1],Vt,Ut)<=Ea&&Xr.push(Wt[$a]);continue}var mt=Math.floor((ya+qa)/2),gt=zt[2*mt],Er=zt[2*mt+1];j(gt,Er,Vt,Ut)<=Ea&&Xr.push(Wt[mt]);var kr=(Fa+1)%2;(Fa===0?Vt-xr<=gt:Ut-xr<=Er)&&(pa.push(ya),pa.push(mt-1),pa.push(kr)),(Fa===0?Vt+xr>=gt:Ut+xr>=Er)&&(pa.push(mt+1),pa.push(qa),pa.push(kr))}return Xr}function j(Wt,zt,Vt,Ut){var xr=Wt-Vt,Zr=zt-Ut;return xr*xr+Zr*Zr}var ee=function(Wt){return Wt[0]},ie=function(Wt){return Wt[1]},fe=function(zt,Vt,Ut,xr,Zr){Vt===void 0&&(Vt=ee),Ut===void 0&&(Ut=ie),xr===void 0&&(xr=64),Zr===void 0&&(Zr=Float64Array),this.nodeSize=xr,this.points=zt;for(var pa=zt.length<65536?Uint16Array:Uint32Array,Xr=this.ids=new pa(zt.length),Ea=this.coords=new Zr(zt.length*2),Fa=0;Fa<zt.length;Fa++)Xr[Fa]=Fa,Ea[2*Fa]=Vt(zt[Fa]),Ea[2*Fa+1]=Ut(zt[Fa]);G(Xr,Ea,xr,0,Xr.length-1,0)};fe.prototype.range=function(zt,Vt,Ut,xr){return re(this.ids,this.coords,zt,Vt,Ut,xr,this.nodeSize)},fe.prototype.within=function(zt,Vt,Ut){return ne(this.ids,this.coords,zt,Vt,Ut,this.nodeSize)};var be={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(Wt){return Wt}},Ae=function(zt){this.options=ge(Object.create(be),zt),this.trees=new Array(this.options.maxZoom+1)};Ae.prototype.load=function(zt){var Vt=this.options,Ut=Vt.log,xr=Vt.minZoom,Zr=Vt.maxZoom,pa=Vt.nodeSize;Ut&&console.time("total time");var Xr="prepare "+zt.length+" points";Ut&&console.time(Xr),this.points=zt;for(var Ea=[],Fa=0;Fa<zt.length;Fa++)zt[Fa].geometry&&Ea.push(Ie(zt[Fa],Fa));this.trees[Zr+1]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.timeEnd(Xr);for(var qa=Zr;qa>=xr;qa--){var ya=+Date.now();Ea=this._cluster(Ea,qa),this.trees[qa]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.log("z%d: %d clusters in %dms",qa,Ea.length,+Date.now()-ya)}return Ut&&console.timeEnd("total time"),this},Ae.prototype.getClusters=function(zt,Vt){var Ut=((zt[0]+180)%360+360)%360-180,xr=Math.max(-90,Math.min(90,zt[1])),Zr=zt[2]===180?180:((zt[2]+180)%360+360)%360-180,pa=Math.max(-90,Math.min(90,zt[3]));if(zt[2]-zt[0]>=360)Ut=-180,Zr=180;else if(Ut>Zr){var Xr=this.getClusters([Ut,xr,180,pa],Vt),Ea=this.getClusters([-180,xr,Zr,pa],Vt);return Xr.concat(Ea)}for(var Fa=this.trees[this._limitZoom(Vt)],qa=Fa.range(it(Ut),et(pa),it(Zr),et(xr)),ya=[],$a=0,mt=qa;$a<mt.length;$a+=1){var gt=mt[$a],Er=Fa.points[gt];ya.push(Er.numPoints?Ze(Er):this.points[Er.index])}return ya},Ae.prototype.getChildren=function(zt){var Vt=this._getOriginId(zt),Ut=this._getOriginZoom(zt),xr="No cluster with the specified id.",Zr=this.trees[Ut];if(!Zr)throw new Error(xr);var pa=Zr.points[Vt];if(!pa)throw new Error(xr);for(var Xr=this.options.radius/(this.options.extent*Math.pow(2,Ut-1)),Ea=Zr.within(pa.x,pa.y,Xr),Fa=[],qa=0,ya=Ea;qa<ya.length;qa+=1){var $a=ya[qa],mt=Zr.points[$a];mt.parentId===zt&&Fa.push(mt.numPoints?Ze(mt):this.points[mt.index])}if(Fa.length===0)throw new Error(xr);return Fa},Ae.prototype.getLeaves=function(zt,Vt,Ut){Vt=Vt||10,Ut=Ut||0;var xr=[];return this._appendLeaves(xr,zt,Vt,Ut,0),xr},Ae.prototype.getTile=function(zt,Vt,Ut){var xr=this.trees[this._limitZoom(zt)],Zr=Math.pow(2,zt),pa=this.options,Xr=pa.extent,Ea=pa.radius,Fa=Ea/Xr,qa=(Ut-Fa)/Zr,ya=(Ut+1+Fa)/Zr,$a={features:[]};return this._addTileFeatures(xr.range((Vt-Fa)/Zr,qa,(Vt+1+Fa)/Zr,ya),xr.points,Vt,Ut,Zr,$a),Vt===0&&this._addTileFeatures(xr.range(1-Fa/Zr,qa,1,ya),xr.points,Zr,Ut,Zr,$a),Vt===Zr-1&&this._addTileFeatures(xr.range(0,qa,Fa/Zr,ya),xr.points,-1,Ut,Zr,$a),$a.features.length?$a:null},Ae.prototype.getClusterExpansionZoom=function(zt){for(var Vt=this._getOriginZoom(zt)-1;Vt<=this.options.maxZoom;){var Ut=this.getChildren(zt);if(Vt++,Ut.length!==1)break;zt=Ut[0].properties.cluster_id}return Vt},Ae.prototype._appendLeaves=function(zt,Vt,Ut,xr,Zr){for(var pa=this.getChildren(Vt),Xr=0,Ea=pa;Xr<Ea.length;Xr+=1){var Fa=Ea[Xr],qa=Fa.properties;if(qa&&qa.cluster?Zr+qa.point_count<=xr?Zr+=qa.point_count:Zr=this._appendLeaves(zt,qa.cluster_id,Ut,xr,Zr):Zr<xr?Zr++:zt.push(Fa),zt.length===Ut)break}return Zr},Ae.prototype._addTileFeatures=function(zt,Vt,Ut,xr,Zr,pa){for(var Xr=0,Ea=zt;Xr<Ea.length;Xr+=1){var Fa=Ea[Xr],qa=Vt[Fa],ya=qa.numPoints,$a={type:1,geometry:[[Math.round(this.options.extent*(qa.x*Zr-Ut)),Math.round(this.options.extent*(qa.y*Zr-xr))]],tags:ya?at(qa):this.points[qa.index].properties},mt=void 0;ya?mt=qa.id:this.options.generateId?mt=qa.index:this.points[qa.index].id&&(mt=this.points[qa.index].id),mt!==void 0&&($a.id=mt),pa.features.push($a)}},Ae.prototype._limitZoom=function(zt){return Math.max(this.options.minZoom,Math.min(+zt,this.options.maxZoom+1))},Ae.prototype._cluster=function(zt,Vt){for(var Ut=[],xr=this.options,Zr=xr.radius,pa=xr.extent,Xr=xr.reduce,Ea=xr.minPoints,Fa=Zr/(pa*Math.pow(2,Vt)),qa=0;qa<zt.length;qa++){var ya=zt[qa];if(!(ya.zoom<=Vt)){ya.zoom=Vt;for(var $a=this.trees[Vt+1],mt=$a.within(ya.x,ya.y,Fa),gt=ya.numPoints||1,Er=gt,kr=0,br=mt;kr<br.length;kr+=1){var Tr=br[kr],Mr=$a.points[Tr];Mr.zoom>Vt&&(Er+=Mr.numPoints||1)}if(Er>=Ea){for(var Fr=ya.x*gt,Lr=ya.y*gt,Jr=Xr&&gt>1?this._map(ya,!0):null,oa=(qa<<5)+(Vt+1)+this.points.length,ca=0,kt=mt;ca<kt.length;ca+=1){var ir=kt[ca],mr=$a.points[ir];if(!(mr.zoom<=Vt)){mr.zoom=Vt;var $r=mr.numPoints||1;Fr+=mr.x*$r,Lr+=mr.y*$r,mr.parentId=oa,Xr&&(Jr||(Jr=this._map(ya,!0)),Xr(Jr,this._map(mr)))}}ya.parentId=oa,Ut.push(Be(Fr/Er,Lr/Er,oa,Er,Jr))}else if(Ut.push(ya),Er>1)for(var ma=0,Ba=mt;ma<Ba.length;ma+=1){var Ca=Ba[ma],da=$a.points[Ca];da.zoom<=Vt||(da.zoom=Vt,Ut.push(da))}}}return Ut},Ae.prototype._getOriginId=function(zt){return zt-this.points.length>>5},Ae.prototype._getOriginZoom=function(zt){return(zt-this.points.length)%32},Ae.prototype._map=function(zt,Vt){if(zt.numPoints)return Vt?ge({},zt.properties):zt.properties;var Ut=this.points[zt.index].properties,xr=this.options.map(Ut);return Vt&&xr===Ut?ge({},xr):xr};function Be(Wt,zt,Vt,Ut,xr){return{x:Wt,y:zt,zoom:1/0,id:Vt,parentId:-1,numPoints:Ut,properties:xr}}function Ie(Wt,zt){var Vt=Wt.geometry.coordinates,Ut=Vt[0],xr=Vt[1];return{x:it(Ut),y:et(xr),zoom:1/0,index:zt,parentId:-1}}function Ze(Wt){return{type:"Feature",id:Wt.id,properties:at(Wt),geometry:{type:"Point",coordinates:[lt(Wt.x),Me(Wt.y)]}}}function at(Wt){var zt=Wt.numPoints,Vt=zt>=1e4?Math.round(zt/1e3)+"k":zt>=1e3?Math.round(zt/100)/10+"k":zt;return ge(ge({},Wt.properties),{cluster:!0,cluster_id:Wt.id,point_count:zt,point_count_abbreviated:Vt})}function it(Wt){return Wt/360+.5}function et(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function lt(Wt){return(Wt-.5)*360}function Me(Wt){var zt=(180-Wt*360)*Math.PI/180;return 360*Math.atan(Math.exp(zt))/Math.PI-90}function ge(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function ce(Wt){return Wt.x}function ze(Wt){return Wt.y}function tt(Wt,zt,Vt,Ut){for(var xr=Ut,Zr=Vt-zt>>1,pa=Vt-zt,Xr,Ea=Wt[zt],Fa=Wt[zt+1],qa=Wt[Vt],ya=Wt[Vt+1],$a=zt+3;$a<Vt;$a+=3){var mt=nt(Wt[$a],Wt[$a+1],Ea,Fa,qa,ya);if(mt>xr)Xr=$a,xr=mt;else if(mt===xr){var gt=Math.abs($a-Zr);gt<pa&&(Xr=$a,pa=gt)}}xr>Ut&&(Xr-zt>3&&tt(Wt,zt,Xr,Ut),Wt[Xr+2]=xr,Vt-Xr>3&&tt(Wt,Xr,Vt,Ut))}function nt(Wt,zt,Vt,Ut,xr,Zr){var pa=xr-Vt,Xr=Zr-Ut;if(pa!==0||Xr!==0){var Ea=((Wt-Vt)*pa+(zt-Ut)*Xr)/(pa*pa+Xr*Xr);Ea>1?(Vt=xr,Ut=Zr):Ea>0&&(Vt+=pa*Ea,Ut+=Xr*Ea)}return pa=Wt-Vt,Xr=zt-Ut,pa*pa+Xr*Xr}function Qe(Wt,zt,Vt,Ut){var xr={id:typeof Wt>"u"?null:Wt,type:zt,geometry:Vt,tags:Ut,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return Ct(xr),xr}function Ct(Wt){var zt=Wt.geometry,Vt=Wt.type;if(Vt==="Point"||Vt==="MultiPoint"||Vt==="LineString")St(Wt,zt);else if(Vt==="Polygon"||Vt==="MultiLineString")for(var Ut=0;Ut<zt.length;Ut++)St(Wt,zt[Ut]);else if(Vt==="MultiPolygon")for(Ut=0;Ut<zt.length;Ut++)for(var xr=0;xr<zt[Ut].length;xr++)St(Wt,zt[Ut][xr])}function St(Wt,zt){for(var Vt=0;Vt<zt.length;Vt+=3)Wt.minX=Math.min(Wt.minX,zt[Vt]),Wt.minY=Math.min(Wt.minY,zt[Vt+1]),Wt.maxX=Math.max(Wt.maxX,zt[Vt]),Wt.maxY=Math.max(Wt.maxY,zt[Vt+1])}function Ot(Wt,zt){var Vt=[];if(Wt.type==="FeatureCollection")for(var Ut=0;Ut<Wt.features.length;Ut++)jt(Vt,Wt.features[Ut],zt,Ut);else Wt.type==="Feature"?jt(Vt,Wt,zt):jt(Vt,{geometry:Wt},zt);return Vt}function jt(Wt,zt,Vt,Ut){if(zt.geometry){var xr=zt.geometry.coordinates,Zr=zt.geometry.type,pa=Math.pow(Vt.tolerance/((1<<Vt.maxZoom)*Vt.extent),2),Xr=[],Ea=zt.id;if(Vt.promoteId?Ea=zt.properties[Vt.promoteId]:Vt.generateId&&(Ea=Ut||0),Zr==="Point")ur(xr,Xr);else if(Zr==="MultiPoint")for(var Fa=0;Fa<xr.length;Fa++)ur(xr[Fa],Xr);else if(Zr==="LineString")ar(xr,Xr,pa,!1);else if(Zr==="MultiLineString")if(Vt.lineMetrics){for(Fa=0;Fa<xr.length;Fa++)Xr=[],ar(xr[Fa],Xr,pa,!1),Wt.push(Qe(Ea,"LineString",Xr,zt.properties));return}else Cr(xr,Xr,pa,!1);else if(Zr==="Polygon")Cr(xr,Xr,pa,!0);else if(Zr==="MultiPolygon")for(Fa=0;Fa<xr.length;Fa++){var qa=[];Cr(xr[Fa],qa,pa,!0),Xr.push(qa)}else if(Zr==="GeometryCollection"){for(Fa=0;Fa<zt.geometry.geometries.length;Fa++)jt(Wt,{id:Ea,geometry:zt.geometry.geometries[Fa],properties:zt.properties},Vt,Ut);return}else throw new Error("Input data is not a valid GeoJSON object.");Wt.push(Qe(Ea,Zr,Xr,zt.properties))}}function ur(Wt,zt){zt.push(vr(Wt[0])),zt.push(_r(Wt[1])),zt.push(0)}function ar(Wt,zt,Vt,Ut){for(var xr,Zr,pa=0,Xr=0;Xr<Wt.length;Xr++){var Ea=vr(Wt[Xr][0]),Fa=_r(Wt[Xr][1]);zt.push(Ea),zt.push(Fa),zt.push(0),Xr>0&&(Ut?pa+=(xr*Fa-Ea*Zr)/2:pa+=Math.sqrt(Math.pow(Ea-xr,2)+Math.pow(Fa-Zr,2))),xr=Ea,Zr=Fa}var qa=zt.length-3;zt[2]=1,tt(zt,0,qa,Vt),zt[qa+2]=1,zt.size=Math.abs(pa),zt.start=0,zt.end=zt.size}function Cr(Wt,zt,Vt,Ut){for(var xr=0;xr<Wt.length;xr++){var Zr=[];ar(Wt[xr],Zr,Vt,Ut),zt.push(Zr)}}function vr(Wt){return Wt/360+.5}function _r(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function yt(Wt,zt,Vt,Ut,xr,Zr,pa,Xr){if(Vt/=zt,Ut/=zt,Zr>=Vt&&pa<Ut)return Wt;if(pa<Vt||Zr>=Ut)return null;for(var Ea=[],Fa=0;Fa<Wt.length;Fa++){var qa=Wt[Fa],ya=qa.geometry,$a=qa.type,mt=xr===0?qa.minX:qa.minY,gt=xr===0?qa.maxX:qa.maxY;if(mt>=Vt&&gt<Ut){Ea.push(qa);continue}else if(gt<Vt||mt>=Ut)continue;var Er=[];if($a==="Point"||$a==="MultiPoint")Fe(ya,Er,Vt,Ut,xr);else if($a==="LineString")Ke(ya,Er,Vt,Ut,xr,!1,Xr.lineMetrics);else if($a==="MultiLineString")Ee(ya,Er,Vt,Ut,xr,!1);else if($a==="Polygon")Ee(ya,Er,Vt,Ut,xr,!0);else if($a==="MultiPolygon")for(var kr=0;kr<ya.length;kr++){var br=[];Ee(ya[kr],br,Vt,Ut,xr,!0),br.length&&Er.push(br)}if(Er.length){if(Xr.lineMetrics&&$a==="LineString"){for(kr=0;kr<Er.length;kr++)Ea.push(Qe(qa.id,$a,Er[kr],qa.tags));continue}($a==="LineString"||$a==="MultiLineString")&&(Er.length===1?($a="LineString",Er=Er[0]):$a="MultiLineString"),($a==="Point"||$a==="MultiPoint")&&($a=Er.length===3?"Point":"MultiPoint"),Ea.push(Qe(qa.id,$a,Er,qa.tags))}}return Ea.length?Ea:null}function Fe(Wt,zt,Vt,Ut,xr){for(var Zr=0;Zr<Wt.length;Zr+=3){var pa=Wt[Zr+xr];pa>=Vt&&pa<=Ut&&(zt.push(Wt[Zr]),zt.push(Wt[Zr+1]),zt.push(Wt[Zr+2]))}}function Ke(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=Ne(Wt),Ea=xr===0?ke:Te,Fa=Wt.start,qa,ya,$a=0;$a<Wt.length-3;$a+=3){var mt=Wt[$a],gt=Wt[$a+1],Er=Wt[$a+2],kr=Wt[$a+3],br=Wt[$a+4],Tr=xr===0?mt:gt,Mr=xr===0?kr:br,Fr=!1;pa&&(qa=Math.sqrt(Math.pow(mt-kr,2)+Math.pow(gt-br,2))),Tr<Vt?Mr>Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),pa&&(Xr.start=Fa+qa*ya)):Tr>Ut?Mr<Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),pa&&(Xr.start=Fa+qa*ya)):Ve(Xr,mt,gt,Er),Mr<Vt&&Tr>=Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),Fr=!0),Mr>Ut&&Tr<=Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),Fr=!0),!Zr&&Fr&&(pa&&(Xr.end=Fa+qa*ya),zt.push(Xr),Xr=Ne(Wt)),pa&&(Fa+=qa)}var Lr=Wt.length-3;mt=Wt[Lr],gt=Wt[Lr+1],Er=Wt[Lr+2],Tr=xr===0?mt:gt,Tr>=Vt&&Tr<=Ut&&Ve(Xr,mt,gt,Er),Lr=Xr.length-3,Zr&&Lr>=3&&(Xr[Lr]!==Xr[0]||Xr[Lr+1]!==Xr[1])&&Ve(Xr,Xr[0],Xr[1],Xr[2]),Xr.length&&zt.push(Xr)}function Ne(Wt){var zt=[];return zt.size=Wt.size,zt.start=Wt.start,zt.end=Wt.end,zt}function Ee(Wt,zt,Vt,Ut,xr,Zr){for(var pa=0;pa<Wt.length;pa++)Ke(Wt[pa],zt,Vt,Ut,xr,Zr,!1)}function Ve(Wt,zt,Vt,Ut){Wt.push(zt),Wt.push(Vt),Wt.push(Ut)}function ke(Wt,zt,Vt,Ut,xr,Zr){var pa=(Zr-zt)/(Ut-zt);return Wt.push(Zr),Wt.push(Vt+(xr-Vt)*pa),Wt.push(1),pa}function Te(Wt,zt,Vt,Ut,xr,Zr){var pa=(Zr-Vt)/(xr-Vt);return Wt.push(zt+(Ut-zt)*pa),Wt.push(Zr),Wt.push(1),pa}function Le(Wt,zt){var Vt=zt.buffer/zt.extent,Ut=Wt,xr=yt(Wt,1,-1-Vt,Vt,0,-1,2,zt),Zr=yt(Wt,1,1-Vt,2+Vt,0,-1,2,zt);return(xr||Zr)&&(Ut=yt(Wt,1,-Vt,1+Vt,0,-1,2,zt)||[],xr&&(Ut=rt(xr,1).concat(Ut)),Zr&&(Ut=Ut.concat(rt(Zr,-1)))),Ut}function rt(Wt,zt){for(var Vt=[],Ut=0;Ut<Wt.length;Ut++){var xr=Wt[Ut],Zr=xr.type,pa;if(Zr==="Point"||Zr==="MultiPoint"||Zr==="LineString")pa=dt(xr.geometry,zt);else if(Zr==="MultiLineString"||Zr==="Polygon"){pa=[];for(var Xr=0;Xr<xr.geometry.length;Xr++)pa.push(dt(xr.geometry[Xr],zt))}else if(Zr==="MultiPolygon")for(pa=[],Xr=0;Xr<xr.geometry.length;Xr++){for(var Ea=[],Fa=0;Fa<xr.geometry[Xr].length;Fa++)Ea.push(dt(xr.geometry[Xr][Fa],zt));pa.push(Ea)}Vt.push(Qe(xr.id,Zr,pa,xr.tags))}return Vt}function dt(Wt,zt){var Vt=[];Vt.size=Wt.size,Wt.start!==void 0&&(Vt.start=Wt.start,Vt.end=Wt.end);for(var Ut=0;Ut<Wt.length;Ut+=3)Vt.push(Wt[Ut]+zt,Wt[Ut+1],Wt[Ut+2]);return Vt}function xt(Wt,zt){if(Wt.transformed)return Wt;var Vt=1<<Wt.z,Ut=Wt.x,xr=Wt.y,Zr,pa,Xr;for(Zr=0;Zr<Wt.features.length;Zr++){var Ea=Wt.features[Zr],Fa=Ea.geometry,qa=Ea.type;if(Ea.geometry=[],qa===1)for(pa=0;pa<Fa.length;pa+=2)Ea.geometry.push(It(Fa[pa],Fa[pa+1],zt,Vt,Ut,xr));else for(pa=0;pa<Fa.length;pa++){var ya=[];for(Xr=0;Xr<Fa[pa].length;Xr+=2)ya.push(It(Fa[pa][Xr],Fa[pa][Xr+1],zt,Vt,Ut,xr));Ea.geometry.push(ya)}}return Wt.transformed=!0,Wt}function It(Wt,zt,Vt,Ut,xr,Zr){return[Math.round(Vt*(Wt*Ut-xr)),Math.round(Vt*(zt*Ut-Zr))]}function Bt(Wt,zt,Vt,Ut,xr){for(var Zr=zt===xr.maxZoom?0:xr.tolerance/((1<<zt)*xr.extent),pa={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:Vt,y:Ut,z:zt,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},Xr=0;Xr<Wt.length;Xr++){pa.numFeatures++,Gt(pa,Wt[Xr],Zr,xr);var Ea=Wt[Xr].minX,Fa=Wt[Xr].minY,qa=Wt[Xr].maxX,ya=Wt[Xr].maxY;Ea<pa.minX&&(pa.minX=Ea),Fa<pa.minY&&(pa.minY=Fa),qa>pa.maxX&&(pa.maxX=qa),ya>pa.maxY&&(pa.maxY=ya)}return pa}function Gt(Wt,zt,Vt,Ut){var xr=zt.geometry,Zr=zt.type,pa=[];if(Zr==="Point"||Zr==="MultiPoint")for(var Xr=0;Xr<xr.length;Xr+=3)pa.push(xr[Xr]),pa.push(xr[Xr+1]),Wt.numPoints++,Wt.numSimplified++;else if(Zr==="LineString")Kt(pa,xr,Wt,Vt,!1,!1);else if(Zr==="MultiLineString"||Zr==="Polygon")for(Xr=0;Xr<xr.length;Xr++)Kt(pa,xr[Xr],Wt,Vt,Zr==="Polygon",Xr===0);else if(Zr==="MultiPolygon")for(var Ea=0;Ea<xr.length;Ea++){var Fa=xr[Ea];for(Xr=0;Xr<Fa.length;Xr++)Kt(pa,Fa[Xr],Wt,Vt,!0,Xr===0)}if(pa.length){var qa=zt.tags||null;if(Zr==="LineString"&&Ut.lineMetrics){qa={};for(var ya in zt.tags)qa[ya]=zt.tags[ya];qa.mapbox_clip_start=xr.start/xr.size,qa.mapbox_clip_end=xr.end/xr.size}var $a={geometry:pa,type:Zr==="Polygon"||Zr==="MultiPolygon"?3:Zr==="LineString"||Zr==="MultiLineString"?2:1,tags:qa};zt.id!==null&&($a.id=zt.id),Wt.features.push($a)}}function Kt(Wt,zt,Vt,Ut,xr,Zr){var pa=Ut*Ut;if(Ut>0&&zt.size<(xr?pa:Ut)){Vt.numPoints+=zt.length/3;return}for(var Xr=[],Ea=0;Ea<zt.length;Ea+=3)(Ut===0||zt[Ea+2]>pa)&&(Vt.numSimplified++,Xr.push(zt[Ea]),Xr.push(zt[Ea+1])),Vt.numPoints++;xr&&sr(Xr,Zr),Wt.push(Xr)}function sr(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-2;Ut<xr;Zr=Ut,Ut+=2)Vt+=(Wt[Ut]-Wt[Zr])*(Wt[Ut+1]+Wt[Zr+1]);if(Vt>0===zt)for(Ut=0,xr=Wt.length;Ut<xr/2;Ut+=2){var pa=Wt[Ut],Xr=Wt[Ut+1];Wt[Ut]=Wt[xr-2-Ut],Wt[Ut+1]=Wt[xr-1-Ut],Wt[xr-2-Ut]=pa,Wt[xr-1-Ut]=Xr}}function sa(Wt,zt){return new Aa(Wt,zt)}function Aa(Wt,zt){zt=this.options=ka(Object.create(this.options),zt);var Vt=zt.debug;if(Vt&&console.time("preprocess data"),zt.maxZoom<0||zt.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(zt.promoteId&&zt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Ut=Ot(Wt,zt);this.tiles={},this.tileCoords=[],Vt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",zt.indexMaxZoom,zt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ut=Le(Ut,zt),Ut.length&&this.splitTile(Ut,0,0,0),Vt&&(Ut.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}Aa.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Aa.prototype.splitTile=function(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[Wt,zt,Vt,Ut],Ea=this.options,Fa=Ea.debug;Xr.length;){Ut=Xr.pop(),Vt=Xr.pop(),zt=Xr.pop(),Wt=Xr.pop();var qa=1<<zt,ya=La(zt,Vt,Ut),$a=this.tiles[ya];if(!$a&&(Fa>1&&console.time("creation"),$a=this.tiles[ya]=Bt(Wt,zt,Vt,Ut,Ea),this.tileCoords.push({z:zt,x:Vt,y:Ut}),Fa)){Fa>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",zt,Vt,Ut,$a.numFeatures,$a.numPoints,$a.numSimplified),console.timeEnd("creation"));var mt="z"+zt;this.stats[mt]=(this.stats[mt]||0)+1,this.total++}if($a.source=Wt,xr){if(zt===Ea.maxZoom||zt===xr)continue;var gt=1<<xr-zt;if(Vt!==Math.floor(Zr/gt)||Ut!==Math.floor(pa/gt))continue}else if(zt===Ea.indexMaxZoom||$a.numPoints<=Ea.indexMaxPoints)continue;if($a.source=null,Wt.length!==0){Fa>1&&console.time("clipping");var Er=.5*Ea.buffer/Ea.extent,kr=.5-Er,br=.5+Er,Tr=1+Er,Mr,Fr,Lr,Jr,oa,ca;Mr=Fr=Lr=Jr=null,oa=yt(Wt,qa,Vt-Er,Vt+br,0,$a.minX,$a.maxX,Ea),ca=yt(Wt,qa,Vt+kr,Vt+Tr,0,$a.minX,$a.maxX,Ea),Wt=null,oa&&(Mr=yt(oa,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Fr=yt(oa,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),oa=null),ca&&(Lr=yt(ca,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Jr=yt(ca,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),ca=null),Fa>1&&console.timeEnd("clipping"),Xr.push(Mr||[],zt+1,Vt*2,Ut*2),Xr.push(Fr||[],zt+1,Vt*2,Ut*2+1),Xr.push(Lr||[],zt+1,Vt*2+1,Ut*2),Xr.push(Jr||[],zt+1,Vt*2+1,Ut*2+1)}}},Aa.prototype.getTile=function(Wt,zt,Vt){var Ut=this.options,xr=Ut.extent,Zr=Ut.debug;if(Wt<0||Wt>24)return null;var pa=1<<Wt;zt=(zt%pa+pa)%pa;var Xr=La(Wt,zt,Vt);if(this.tiles[Xr])return xt(this.tiles[Xr],xr);Zr>1&&console.log("drilling down to z%d-%d-%d",Wt,zt,Vt);for(var Ea=Wt,Fa=zt,qa=Vt,ya;!ya&&Ea>0;)Ea--,Fa=Math.floor(Fa/2),qa=Math.floor(qa/2),ya=this.tiles[La(Ea,Fa,qa)];return!ya||!ya.source?null:(Zr>1&&console.log("found parent tile z%d-%d-%d",Ea,Fa,qa),Zr>1&&console.time("drilling down"),this.splitTile(ya.source,Ea,Fa,qa,Wt,zt,Vt),Zr>1&&console.timeEnd("drilling down"),this.tiles[Xr]?xt(this.tiles[Xr],xr):null)};function La(Wt,zt,Vt){return((1<<Wt)*Vt+zt)*32+Wt}function ka(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function Ga(Wt,zt){var Vt=Wt.tileID.canonical;if(!this._geoJSONIndex)return zt(null,null);var Ut=this._geoJSONIndex.getTile(Vt.z,Vt.x,Vt.y);if(!Ut)return zt(null,null);var xr=new b(Ut.features),Zr=P(xr);(Zr.byteOffset!==0||Zr.byteLength!==Zr.buffer.byteLength)&&(Zr=new Uint8Array(Zr)),zt(null,{vectorTile:xr,rawData:Zr.buffer})}var Ma=function(Wt){function zt(Vt,Ut,xr,Zr){Wt.call(this,Vt,Ut,xr,Ga),Zr&&(this.loadGeoJSON=Zr)}return Wt&&(zt.__proto__=Wt),zt.prototype=Object.create(Wt&&Wt.prototype),zt.prototype.constructor=zt,zt.prototype.loadData=function(Ut,xr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=xr,this._pendingLoadDataParams=Ut,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},zt.prototype._loadData=function(){var Ut=this;if(!(!this._pendingCallback||!this._pendingLoadDataParams)){var xr=this._pendingCallback,Zr=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var pa=Zr&&Zr.request&&Zr.request.collectResourceTiming?new e.RequestPerformance(Zr.request):!1;this.loadGeoJSON(Zr,function(Xr,Ea){if(Xr||!Ea)return xr(Xr);if(typeof Ea!="object")return xr(new Error("Input data given to '"+Zr.source+"' is not a valid GeoJSON object."));l(Ea,!0);try{if(Zr.filter){var Fa=e.createExpression(Zr.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Fa.result==="error")throw new Error(Fa.value.map(function(mt){return mt.key+": "+mt.message}).join(", "));var qa=Ea.features.filter(function(mt){return Fa.value.evaluate({zoom:0},mt)});Ea={type:"FeatureCollection",features:qa}}Ut._geoJSONIndex=Zr.cluster?new Ae(Ua(Zr)).load(Ea.features):sa(Ea,Zr.geojsonVtOptions)}catch(mt){return xr(mt)}Ut.loaded={};var ya={};if(pa){var $a=pa.finish();$a&&(ya.resourceTiming={},ya.resourceTiming[Zr.source]=JSON.parse(JSON.stringify($a)))}xr(null,ya)})}},zt.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},zt.prototype.reloadTile=function(Ut,xr){var Zr=this.loaded,pa=Ut.uid;return Zr&&Zr[pa]?Wt.prototype.reloadTile.call(this,Ut,xr):this.loadTile(Ut,xr)},zt.prototype.loadGeoJSON=function(Ut,xr){if(Ut.request)e.getJSON(Ut.request,xr);else if(typeof Ut.data=="string")try{return xr(null,JSON.parse(Ut.data))}catch{return xr(new Error("Input data given to '"+Ut.source+"' is not a valid GeoJSON object."))}else return xr(new Error("Input data given to '"+Ut.source+"' is not a valid GeoJSON object."))},zt.prototype.removeSource=function(Ut,xr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),xr()},zt.prototype.getClusterExpansionZoom=function(Ut,xr){try{xr(null,this._geoJSONIndex.getClusterExpansionZoom(Ut.clusterId))}catch(Zr){xr(Zr)}},zt.prototype.getClusterChildren=function(Ut,xr){try{xr(null,this._geoJSONIndex.getChildren(Ut.clusterId))}catch(Zr){xr(Zr)}},zt.prototype.getClusterLeaves=function(Ut,xr){try{xr(null,this._geoJSONIndex.getLeaves(Ut.clusterId,Ut.limit,Ut.offset))}catch(Zr){xr(Zr)}},zt}(v);function Ua(Wt){var zt=Wt.superclusterOptions,Vt=Wt.clusterProperties;if(!Vt||!zt)return zt;for(var Ut={},xr={},Zr={accumulated:null,zoom:0},pa={properties:null},Xr=Object.keys(Vt),Ea=0,Fa=Xr;Ea<Fa.length;Ea+=1){var qa=Fa[Ea],ya=Vt[qa],$a=ya[0],mt=ya[1],gt=e.createExpression(mt),Er=e.createExpression(typeof $a=="string"?[$a,["accumulated"],["get",qa]]:$a);Ut[qa]=gt.value,xr[qa]=Er.value}return zt.map=function(kr){pa.properties=kr;for(var br={},Tr=0,Mr=Xr;Tr<Mr.length;Tr+=1){var Fr=Mr[Tr];br[Fr]=Ut[Fr].evaluate(Zr,pa)}return br},zt.reduce=function(kr,br){pa.properties=br;for(var Tr=0,Mr=Xr;Tr<Mr.length;Tr+=1){var Fr=Mr[Tr];Zr.accumulated=kr[Fr],kr[Fr]=xr[Fr].evaluate(Zr,pa)}},zt}var ni=function(zt){var Vt=this;this.self=zt,this.actor=new e.Actor(zt,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:v,geojson:Ma},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(Ut,xr){if(Vt.workerSourceTypes[Ut])throw new Error('Worker source with name "'+Ut+'" already registered.');Vt.workerSourceTypes[Ut]=xr},this.self.registerRTLTextPlugin=function(Ut){if(e.plugin.isParsed())throw new Error("RTL text plugin already registered.");e.plugin.applyArabicShaping=Ut.applyArabicShaping,e.plugin.processBidirectionalText=Ut.processBidirectionalText,e.plugin.processStyledBidirectionalText=Ut.processStyledBidirectionalText}};return ni.prototype.setReferrer=function(zt,Vt){this.referrer=Vt},ni.prototype.setImages=function(zt,Vt,Ut){this.availableImages[zt]=Vt;for(var xr in this.workerSources[zt]){var Zr=this.workerSources[zt][xr];for(var pa in Zr)Zr[pa].availableImages=Vt}Ut()},ni.prototype.setLayers=function(zt,Vt,Ut){this.getLayerIndex(zt).replace(Vt),Ut()},ni.prototype.updateLayers=function(zt,Vt,Ut){this.getLayerIndex(zt).update(Vt.layers,Vt.removedIds),Ut()},ni.prototype.loadTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).loadTile(Vt,Ut)},ni.prototype.loadDEMTile=function(zt,Vt,Ut){this.getDEMWorkerSource(zt,Vt.source).loadTile(Vt,Ut)},ni.prototype.reloadTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).reloadTile(Vt,Ut)},ni.prototype.abortTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).abortTile(Vt,Ut)},ni.prototype.removeTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).removeTile(Vt,Ut)},ni.prototype.removeDEMTile=function(zt,Vt){this.getDEMWorkerSource(zt,Vt.source).removeTile(Vt)},ni.prototype.removeSource=function(zt,Vt,Ut){if(!(!this.workerSources[zt]||!this.workerSources[zt][Vt.type]||!this.workerSources[zt][Vt.type][Vt.source])){var xr=this.workerSources[zt][Vt.type][Vt.source];delete this.workerSources[zt][Vt.type][Vt.source],xr.removeSource!==void 0?xr.removeSource(Vt,Ut):Ut()}},ni.prototype.loadWorkerSource=function(zt,Vt,Ut){try{this.self.importScripts(Vt.url),Ut()}catch(xr){Ut(xr.toString())}},ni.prototype.syncRTLPluginState=function(zt,Vt,Ut){try{e.plugin.setState(Vt);var xr=e.plugin.getPluginURL();if(e.plugin.isLoaded()&&!e.plugin.isParsed()&&xr!=null){this.self.importScripts(xr);var Zr=e.plugin.isParsed(),pa=Zr?void 0:new Error("RTL Text Plugin failed to import scripts from "+xr);Ut(pa,Zr)}}catch(Xr){Ut(Xr.toString())}},ni.prototype.getAvailableImages=function(zt){var Vt=this.availableImages[zt];return Vt||(Vt=[]),Vt},ni.prototype.getLayerIndex=function(zt){var Vt=this.layerIndexes[zt];return Vt||(Vt=this.layerIndexes[zt]=new a),Vt},ni.prototype.getWorkerSource=function(zt,Vt,Ut){var xr=this;if(this.workerSources[zt]||(this.workerSources[zt]={}),this.workerSources[zt][Vt]||(this.workerSources[zt][Vt]={}),!this.workerSources[zt][Vt][Ut]){var Zr={send:function(pa,Xr,Ea){xr.actor.send(pa,Xr,Ea,zt)}};this.workerSources[zt][Vt][Ut]=new this.workerSourceTypes[Vt](Zr,this.getLayerIndex(zt),this.getAvailableImages(zt))}return this.workerSources[zt][Vt][Ut]},ni.prototype.getDEMWorkerSource=function(zt,Vt){return this.demWorkerSources[zt]||(this.demWorkerSources[zt]={}),this.demWorkerSources[zt][Vt]||(this.demWorkerSources[zt][Vt]=new T),this.demWorkerSources[zt][Vt]},ni.prototype.enforceCacheSizeLimit=function(zt,Vt){e.enforceCacheSizeLimit(Vt)},typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope&&(self.worker=new ni(self)),ni}),M(["./shared"],function(e){"use strict";var t=e.createCommonjsModule(function(ve){ve.exports?ve.exports=K:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=K,window.mapboxgl.notSupportedReason=ye);function K(Pr){return!ye(Pr)}function ye(Pr){if(!te())return"not a browser";if(!xe())return"insufficent Array support";if(!We())return"insufficient Function support";if(!He())return"insufficient Object support";if(!st())return"insufficient JSON support";if(!Et())return"insufficient worker support";if(!Ht())return"insufficient Uint8ClampedArray support";if(!yr())return"insufficient ArrayBuffer support";if(!Ir())return"insufficient Canvas/getImageData support";if(!qt(Pr&&Pr.failIfMajorPerformanceCaveat))return"insufficient WebGL support"}function te(){return typeof window<"u"&&typeof document<"u"}function xe(){return Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray}function We(){return Function.prototype&&Function.prototype.bind}function He(){return Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions}function st(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function Et(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var Pr=new Blob([""],{type:"text/javascript"}),Vr=URL.createObjectURL(Pr),Hr,aa;try{aa=new Worker(Vr),Hr=!0}catch{Hr=!1}return aa&&aa.terminate(),URL.revokeObjectURL(Vr),Hr}function Ht(){return"Uint8ClampedArray"in window}function yr(){return ArrayBuffer.isView}function Ir(){var Pr=document.createElement("canvas");Pr.width=Pr.height=1;var Vr=Pr.getContext("2d");if(!Vr)return!1;var Hr=Vr.getImageData(0,0,1,1);return Hr&&Hr.width===Pr.width}var wr={};function qt(Pr){return wr[Pr]===void 0&&(wr[Pr]=dr(Pr)),wr[Pr]}K.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};function tr(Pr){var Vr=document.createElement("canvas"),Hr=Object.create(K.webGLContextAttributes);return Hr.failIfMajorPerformanceCaveat=Pr,Vr.probablySupportsContext?Vr.probablySupportsContext("webgl",Hr)||Vr.probablySupportsContext("experimental-webgl",Hr):Vr.supportsContext?Vr.supportsContext("webgl",Hr)||Vr.supportsContext("experimental-webgl",Hr):Vr.getContext("webgl",Hr)||Vr.getContext("experimental-webgl",Hr)}function dr(Pr){var Vr=tr(Pr);if(!Vr)return!1;var Hr=Vr.createShader(Vr.VERTEX_SHADER);return!Hr||Vr.isContextLost()?!1:(Vr.shaderSource(Hr,"void main() {}"),Vr.compileShader(Hr),Vr.getShaderParameter(Hr,Vr.COMPILE_STATUS)===!0)}}),r={};r.create=function(ve,K,ye){var te=e.window.document.createElement(ve);return K!==void 0&&(te.className=K),ye&&ye.appendChild(te),te},r.createNS=function(ve,K){var ye=e.window.document.createElementNS(ve,K);return ye};var o=e.window.document&&e.window.document.documentElement.style;function a(ve){if(!o)return ve[0];for(var K=0;K<ve.length;K++)if(ve[K]in o)return ve[K];return ve[0]}var i=a(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),n;r.disableDrag=function(){o&&i&&(n=o[i],o[i]="none")},r.enableDrag=function(){o&&i&&(o[i]=n)};var s=a(["transform","WebkitTransform"]);r.setTransform=function(ve,K){ve.style[s]=K};var c=!1;try{var h=Object.defineProperty({},"passive",{get:function(){c=!0}});e.window.addEventListener("test",h,h),e.window.removeEventListener("test",h,h)}catch{c=!1}r.addEventListener=function(ve,K,ye,te){te===void 0&&(te={}),"passive"in te&&c?ve.addEventListener(K,ye,te):ve.addEventListener(K,ye,te.capture)},r.removeEventListener=function(ve,K,ye,te){te===void 0&&(te={}),"passive"in te&&c?ve.removeEventListener(K,ye,te):ve.removeEventListener(K,ye,te.capture)};var v=function(ve){ve.preventDefault(),ve.stopPropagation(),e.window.removeEventListener("click",v,!0)};r.suppressClick=function(){e.window.addEventListener("click",v,!0),e.window.setTimeout(function(){e.window.removeEventListener("click",v,!0)},0)},r.mousePos=function(ve,K){var ye=ve.getBoundingClientRect();return new e.Point(K.clientX-ye.left-ve.clientLeft,K.clientY-ye.top-ve.clientTop)},r.touchPos=function(ve,K){for(var ye=ve.getBoundingClientRect(),te=[],xe=0;xe<K.length;xe++)te.push(new e.Point(K[xe].clientX-ye.left-ve.clientLeft,K[xe].clientY-ye.top-ve.clientTop));return te},r.mouseButton=function(ve){return typeof e.window.InstallTrigger<"u"&&ve.button===2&&ve.ctrlKey&&e.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:ve.button},r.remove=function(ve){ve.parentNode&&ve.parentNode.removeChild(ve)};function p(ve,K,ye){var te,xe,We,He=e.browser.devicePixelRatio>1?"@2x":"",st=e.getJSON(K.transformRequest(K.normalizeSpriteURL(ve,He,".json"),e.ResourceType.SpriteJSON),function(yr,Ir){st=null,We||(We=yr,te=Ir,Ht())}),Et=e.getImage(K.transformRequest(K.normalizeSpriteURL(ve,He,".png"),e.ResourceType.SpriteImage),function(yr,Ir){Et=null,We||(We=yr,xe=Ir,Ht())});function Ht(){if(We)ye(We);else if(te&&xe){var yr=e.browser.getImageData(xe),Ir={};for(var wr in te){var qt=te[wr],tr=qt.width,dr=qt.height,Pr=qt.x,Vr=qt.y,Hr=qt.sdf,aa=qt.pixelRatio,Qr=qt.stretchX,Gr=qt.stretchY,ia=qt.content,Ur=new e.RGBAImage({width:tr,height:dr});e.RGBAImage.copy(yr,Ur,{x:Pr,y:Vr},{x:0,y:0},{width:tr,height:dr}),Ir[wr]={data:Ur,pixelRatio:aa,sdf:Hr,stretchX:Qr,stretchY:Gr,content:ia}}ye(null,Ir)}}return{cancel:function(){st&&(st.cancel(),st=null),Et&&(Et.cancel(),Et=null)}}}function T(ve){var K=ve.userImage;if(K&&K.render){var ye=K.render();if(ye)return ve.data.replace(new Uint8Array(K.data.buffer)),!0}return!1}var l=1,_=function(ve){function K(){ve.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.isLoaded=function(){return this.loaded},K.prototype.setLoaded=function(te){if(this.loaded!==te&&(this.loaded=te,te)){for(var xe=0,We=this.requestors;xe<We.length;xe+=1){var He=We[xe],st=He.ids,Et=He.callback;this._notify(st,Et)}this.requestors=[]}},K.prototype.getImage=function(te){return this.images[te]},K.prototype.addImage=function(te,xe){this._validate(te,xe)&&(this.images[te]=xe)},K.prototype._validate=function(te,xe){var We=!0;return this._validateStretch(xe.stretchX,xe.data&&xe.data.width)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "stretchX" value'))),We=!1),this._validateStretch(xe.stretchY,xe.data&&xe.data.height)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "stretchY" value'))),We=!1),this._validateContent(xe.content,xe)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "content" value'))),We=!1),We},K.prototype._validateStretch=function(te,xe){if(!te)return!0;for(var We=0,He=0,st=te;He<st.length;He+=1){var Et=st[He];if(Et[0]<We||Et[1]<Et[0]||xe<Et[1])return!1;We=Et[1]}return!0},K.prototype._validateContent=function(te,xe){return te?!(te.length!==4||te[0]<0||xe.data.width<te[0]||te[1]<0||xe.data.height<te[1]||te[2]<0||xe.data.width<te[2]||te[3]<0||xe.data.height<te[3]||te[2]<te[0]||te[3]<te[1]):!0},K.prototype.updateImage=function(te,xe){var We=this.images[te];xe.version=We.version+1,this.images[te]=xe,this.updatedImages[te]=!0},K.prototype.removeImage=function(te){var xe=this.images[te];delete this.images[te],delete this.patterns[te],xe.userImage&&xe.userImage.onRemove&&xe.userImage.onRemove()},K.prototype.listImages=function(){return Object.keys(this.images)},K.prototype.getImages=function(te,xe){var We=!0;if(!this.isLoaded())for(var He=0,st=te;He<st.length;He+=1){var Et=st[He];this.images[Et]||(We=!1)}this.isLoaded()||We?this._notify(te,xe):this.requestors.push({ids:te,callback:xe})},K.prototype._notify=function(te,xe){for(var We={},He=0,st=te;He<st.length;He+=1){var Et=st[He];this.images[Et]||this.fire(new e.Event("styleimagemissing",{id:Et}));var Ht=this.images[Et];Ht?We[Et]={data:Ht.data.clone(),pixelRatio:Ht.pixelRatio,sdf:Ht.sdf,version:Ht.version,stretchX:Ht.stretchX,stretchY:Ht.stretchY,content:Ht.content,hasRenderCallback:!!(Ht.userImage&&Ht.userImage.render)}:e.warnOnce('Image "'+Et+'" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.')}xe(null,We)},K.prototype.getPixelSize=function(){var te=this.atlasImage,xe=te.width,We=te.height;return{width:xe,height:We}},K.prototype.getPattern=function(te){var xe=this.patterns[te],We=this.getImage(te);if(!We)return null;if(xe&&xe.position.version===We.version)return xe.position;if(xe)xe.position.version=We.version;else{var He=We.data.width+l*2,st=We.data.height+l*2,Et={w:He,h:st,x:0,y:0},Ht=new e.ImagePosition(Et,We);this.patterns[te]={bin:Et,position:Ht}}return this._updatePatternAtlas(),this.patterns[te].position},K.prototype.bind=function(te){var xe=te.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new e.Texture(te,this.atlasImage,xe.RGBA),this.atlasTexture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE)},K.prototype._updatePatternAtlas=function(){var te=[];for(var xe in this.patterns)te.push(this.patterns[xe].bin);var We=e.potpack(te),He=We.w,st=We.h,Et=this.atlasImage;Et.resize({width:He||1,height:st||1});for(var Ht in this.patterns){var yr=this.patterns[Ht],Ir=yr.bin,wr=Ir.x+l,qt=Ir.y+l,tr=this.images[Ht].data,dr=tr.width,Pr=tr.height;e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr,y:qt},{width:dr,height:Pr}),e.RGBAImage.copy(tr,Et,{x:0,y:Pr-1},{x:wr,y:qt-1},{width:dr,height:1}),e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr,y:qt+Pr},{width:dr,height:1}),e.RGBAImage.copy(tr,Et,{x:dr-1,y:0},{x:wr-1,y:qt},{width:1,height:Pr}),e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr+dr,y:qt},{width:1,height:Pr})}this.dirty=!0},K.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},K.prototype.dispatchRenderCallbacks=function(te){for(var xe=0,We=te;xe<We.length;xe+=1){var He=We[xe];if(!this.callbackDispatchedThisFrame[He]){this.callbackDispatchedThisFrame[He]=!0;var st=this.images[He],Et=T(st);Et&&this.updateImage(He,st)}}},K}(e.Evented);function w(ve,K,ye,te,xe){var We=K*256,He=We+255,st=te.transformRequest(te.normalizeGlyphsURL(ye).replace("{fontstack}",ve).replace("{range}",We+"-"+He),e.ResourceType.Glyphs);e.getArrayBuffer(st,function(Et,Ht){if(Et)xe(Et);else if(Ht){for(var yr={},Ir=0,wr=e.parseGlyphPBF(Ht);Ir<wr.length;Ir+=1){var qt=wr[Ir];yr[qt.id]=qt}xe(null,yr)}})}var S=b,E=b,m=1e20;function b(ve,K,ye,te,xe,We){this.fontSize=ve||24,this.buffer=K===void 0?3:K,this.cutoff=te||.25,this.fontFamily=xe||"sans-serif",this.fontWeight=We||"normal",this.radius=ye||8;var He=this.size=this.fontSize+this.buffer*2;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=He,this.ctx=this.canvas.getContext("2d"),this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily,this.ctx.textBaseline="middle",this.ctx.fillStyle="black",this.gridOuter=new Float64Array(He*He),this.gridInner=new Float64Array(He*He),this.f=new Float64Array(He),this.d=new Float64Array(He),this.z=new Float64Array(He+1),this.v=new Int16Array(He),this.middle=Math.round(He/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}b.prototype.draw=function(ve){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(ve,this.buffer,this.middle);for(var K=this.ctx.getImageData(0,0,this.size,this.size),ye=new Uint8ClampedArray(this.size*this.size),te=0;te<this.size*this.size;te++){var xe=K.data[te*4+3]/255;this.gridOuter[te]=xe===1?0:xe===0?m:Math.pow(Math.max(0,.5-xe),2),this.gridInner[te]=xe===1?m:xe===0?0:Math.pow(Math.max(0,xe-.5),2)}for(d(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),d(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),te=0;te<this.size*this.size;te++){var We=this.gridOuter[te]-this.gridInner[te];ye[te]=Math.max(0,Math.min(255,Math.round(255-255*(We/this.radius+this.cutoff))))}return ye};function d(ve,K,ye,te,xe,We,He){for(var st=0;st<K;st++){for(var Et=0;Et<ye;Et++)te[Et]=ve[Et*K+st];for(u(te,xe,We,He,ye),Et=0;Et<ye;Et++)ve[Et*K+st]=xe[Et]}for(Et=0;Et<ye;Et++){for(st=0;st<K;st++)te[st]=ve[Et*K+st];for(u(te,xe,We,He,K),st=0;st<K;st++)ve[Et*K+st]=Math.sqrt(xe[st])}}function u(ve,K,ye,te,xe){ye[0]=0,te[0]=-m,te[1]=+m;for(var We=1,He=0;We<xe;We++){for(var st=(ve[We]+We*We-(ve[ye[He]]+ye[He]*ye[He]))/(2*We-2*ye[He]);st<=te[He];)He--,st=(ve[We]+We*We-(ve[ye[He]]+ye[He]*ye[He]))/(2*We-2*ye[He]);He++,ye[He]=We,te[He]=st,te[He+1]=+m}for(We=0,He=0;We<xe;We++){for(;te[He+1]<We;)He++;K[We]=(We-ye[He])*(We-ye[He])+ve[ye[He]]}}S.default=E;var y=function(K,ye){this.requestManager=K,this.localIdeographFontFamily=ye,this.entries={}};y.prototype.setURL=function(K){this.url=K},y.prototype.getGlyphs=function(K,ye){var te=this,xe=[];for(var We in K)for(var He=0,st=K[We];He<st.length;He+=1){var Et=st[He];xe.push({stack:We,id:Et})}e.asyncAll(xe,function(Ht,yr){var Ir=Ht.stack,wr=Ht.id,qt=te.entries[Ir];qt||(qt=te.entries[Ir]={glyphs:{},requests:{},ranges:{}});var tr=qt.glyphs[wr];if(tr!==void 0){yr(null,{stack:Ir,id:wr,glyph:tr});return}if(tr=te._tinySDF(qt,Ir,wr),tr){qt.glyphs[wr]=tr,yr(null,{stack:Ir,id:wr,glyph:tr});return}var dr=Math.floor(wr/256);if(dr*256>65535){yr(new Error("glyphs > 65535 not supported"));return}if(qt.ranges[dr]){yr(null,{stack:Ir,id:wr,glyph:tr});return}var Pr=qt.requests[dr];Pr||(Pr=qt.requests[dr]=[],y.loadGlyphRange(Ir,dr,te.url,te.requestManager,function(Vr,Hr){if(Hr){for(var aa in Hr)te._doesCharSupportLocalGlyph(+aa)||(qt.glyphs[+aa]=Hr[+aa]);qt.ranges[dr]=!0}for(var Qr=0,Gr=Pr;Qr<Gr.length;Qr+=1){var ia=Gr[Qr];ia(Vr,Hr)}delete qt.requests[dr]})),Pr.push(function(Vr,Hr){Vr?yr(Vr):Hr&&yr(null,{stack:Ir,id:wr,glyph:Hr[wr]||null})})},function(Ht,yr){if(Ht)ye(Ht);else if(yr){for(var Ir={},wr=0,qt=yr;wr<qt.length;wr+=1){var tr=qt[wr],dr=tr.stack,Pr=tr.id,Vr=tr.glyph;(Ir[dr]||(Ir[dr]={}))[Pr]=Vr&&{id:Vr.id,bitmap:Vr.bitmap.clone(),metrics:Vr.metrics}}ye(null,Ir)}})},y.prototype._doesCharSupportLocalGlyph=function(K){return!!this.localIdeographFontFamily&&(e.isChar["CJK Unified Ideographs"](K)||e.isChar["Hangul Syllables"](K)||e.isChar.Hiragana(K)||e.isChar.Katakana(K))},y.prototype._tinySDF=function(K,ye,te){var xe=this.localIdeographFontFamily;if(xe&&this._doesCharSupportLocalGlyph(te)){var We=K.tinySDF;if(!We){var He="400";/bold/i.test(ye)?He="900":/medium/i.test(ye)?He="500":/light/i.test(ye)&&(He="200"),We=K.tinySDF=new y.TinySDF(24,3,8,.25,xe,He)}return{id:te,bitmap:new e.AlphaImage({width:30,height:30},We.draw(String.fromCharCode(te))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},y.loadGlyphRange=w,y.TinySDF=S;var f=function(){this.specification=e.styleSpec.light.position};f.prototype.possiblyEvaluate=function(K,ye){return e.sphericalToCartesian(K.expression.evaluate(ye))},f.prototype.interpolate=function(K,ye,te){return{x:e.number(K.x,ye.x,te),y:e.number(K.y,ye.y,te),z:e.number(K.z,ye.z,te)}};var P=new e.Properties({anchor:new e.DataConstantProperty(e.styleSpec.light.anchor),position:new f,color:new e.DataConstantProperty(e.styleSpec.light.color),intensity:new e.DataConstantProperty(e.styleSpec.light.intensity)}),L="-transition",z=function(ve){function K(ye){ve.call(this),this._transitionable=new e.Transitionable(P),this.setLight(ye),this._transitioning=this._transitionable.untransitioned()}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getLight=function(){return this._transitionable.serialize()},K.prototype.setLight=function(te,xe){if(xe===void 0&&(xe={}),!this._validate(e.validateLight,te,xe))for(var We in te){var He=te[We];e.endsWith(We,L)?this._transitionable.setTransition(We.slice(0,-L.length),He):this._transitionable.setValue(We,He)}},K.prototype.updateTransitions=function(te){this._transitioning=this._transitionable.transitioned(te,this._transitioning)},K.prototype.hasTransition=function(){return this._transitioning.hasTransition()},K.prototype.recalculate=function(te){this.properties=this._transitioning.possiblyEvaluate(te)},K.prototype._validate=function(te,xe,We){return We&&We.validate===!1?!1:e.emitValidationErrors(this,te.call(e.validateStyle,e.extend({value:xe,style:{glyphs:!0,sprite:!0},styleSpec:e.styleSpec})))},K}(e.Evented),F=function(K,ye){this.width=K,this.height=ye,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};F.prototype.getDash=function(K,ye){var te=K.join(",")+String(ye);return this.dashEntry[te]||(this.dashEntry[te]=this.addDash(K,ye)),this.dashEntry[te]},F.prototype.getDashRanges=function(K,ye,te){var xe=K.length%2===1,We=[],He=xe?-K[K.length-1]*te:0,st=K[0]*te,Et=!0;We.push({left:He,right:st,isDash:Et,zeroLength:K[0]===0});for(var Ht=K[0],yr=1;yr<K.length;yr++){Et=!Et;var Ir=K[yr];He=Ht*te,Ht+=Ir,st=Ht*te,We.push({left:He,right:st,isDash:Et,zeroLength:Ir===0})}return We},F.prototype.addRoundDash=function(K,ye,te){for(var xe=ye/2,We=-te;We<=te;We++)for(var He=this.nextRow+te+We,st=this.width*He,Et=0,Ht=K[Et],yr=0;yr<this.width;yr++){yr/Ht.right>1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=void 0,dr=We/te*(xe+1);if(Ht.isDash){var Pr=xe-Math.abs(dr);tr=Math.sqrt(qt*qt+Pr*Pr)}else tr=xe-Math.sqrt(qt*qt+dr*dr);this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addRegularDash=function(K){for(var ye=K.length-1;ye>=0;--ye){var te=K[ye],xe=K[ye+1];te.zeroLength?K.splice(ye,1):xe&&xe.isDash===te.isDash&&(xe.left=te.left,K.splice(ye,1))}var We=K[0],He=K[K.length-1];We.isDash===He.isDash&&(We.left=He.left-this.width,He.right=We.right+this.width);for(var st=this.width*this.nextRow,Et=0,Ht=K[Et],yr=0;yr<this.width;yr++){yr/Ht.right>1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=Ht.isDash?qt:-qt;this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addDash=function(K,ye){var te=ye?7:0,xe=2*te+1;if(this.nextRow+xe>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var We=0,He=0;He<K.length;He++)We+=K[He];if(We!==0){var st=this.width/We,Et=this.getDashRanges(K,this.width,st);ye?this.addRoundDash(Et,st,te):this.addRegularDash(Et)}var Ht={y:(this.nextRow+te+.5)/this.height,height:2*te/this.height,width:We};return this.nextRow+=xe,this.dirty=!0,Ht},F.prototype.bind=function(K){var ye=K.gl;this.texture?(ye.bindTexture(ye.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,ye.texSubImage2D(ye.TEXTURE_2D,0,0,0,this.width,this.height,ye.ALPHA,ye.UNSIGNED_BYTE,this.data))):(this.texture=ye.createTexture(),ye.bindTexture(ye.TEXTURE_2D,this.texture),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_WRAP_S,ye.REPEAT),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_WRAP_T,ye.REPEAT),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_MIN_FILTER,ye.LINEAR),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_MAG_FILTER,ye.LINEAR),ye.texImage2D(ye.TEXTURE_2D,0,ye.ALPHA,this.width,this.height,0,ye.ALPHA,ye.UNSIGNED_BYTE,this.data))};var B=function ve(K,ye){this.workerPool=K,this.actors=[],this.currentActor=0,this.id=e.uniqueId();for(var te=this.workerPool.acquire(this.id),xe=0;xe<te.length;xe++){var We=te[xe],He=new ve.Actor(We,ye,this.id);He.name="Worker "+xe,this.actors.push(He)}};B.prototype.broadcast=function(K,ye,te){te=te||function(){},e.asyncAll(this.actors,function(xe,We){xe.send(K,ye,We)},te)},B.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},B.prototype.remove=function(){this.actors.forEach(function(K){K.remove()}),this.actors=[],this.workerPool.release(this.id)},B.Actor=e.Actor;function O(ve,K,ye){var te=function(xe,We){if(xe)return ye(xe);if(We){var He=e.pick(e.extend(We,ve),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);We.vector_layers&&(He.vectorLayers=We.vector_layers,He.vectorLayerIds=He.vectorLayers.map(function(st){return st.id})),He.tiles=K.canonicalizeTileset(He,ve.url),ye(null,He)}};return ve.url?e.getJSON(K.transformRequest(K.normalizeSourceURL(ve.url),e.ResourceType.Source),te):e.browser.frame(function(){return te(null,ve)})}var I=function(K,ye,te){this.bounds=e.LngLatBounds.convert(this.validateBounds(K)),this.minzoom=ye||0,this.maxzoom=te||24};I.prototype.validateBounds=function(K){return!Array.isArray(K)||K.length!==4?[-180,-90,180,90]:[Math.max(-180,K[0]),Math.max(-90,K[1]),Math.min(180,K[2]),Math.min(90,K[3])]},I.prototype.contains=function(K){var ye=Math.pow(2,K.z),te={minX:Math.floor(e.mercatorXfromLng(this.bounds.getWest())*ye),minY:Math.floor(e.mercatorYfromLat(this.bounds.getNorth())*ye),maxX:Math.ceil(e.mercatorXfromLng(this.bounds.getEast())*ye),maxY:Math.ceil(e.mercatorYfromLat(this.bounds.getSouth())*ye)},xe=K.x>=te.minX&&K.x<te.maxX&&K.y>=te.minY&&K.y<te.maxY;return xe};var N=function(ve){function K(ye,te,xe,We){if(ve.call(this),this.id=ye,this.dispatcher=xe,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,e.extend(this,e.pick(te,["url","scheme","tileSize","promoteId"])),this._options=e.extend({type:"vector"},te),this._collectResourceTiming=te.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(We)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(xe,We){te._tileJSONRequest=null,te._loaded=!0,xe?te.fire(new e.ErrorEvent(xe)):We&&(e.extend(te,We),We.bounds&&(te.tileBounds=new I(We.bounds,te.minzoom,te.maxzoom)),e.postTurnstileEvent(We.tiles,te.map._requestManager._customAccessToken),e.postMapLoadEvent(We.tiles,te.map._getMapId(),te.map._requestManager._skuToken,te.map._requestManager._customAccessToken),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))})},K.prototype.loaded=function(){return this._loaded},K.prototype.hasTile=function(te){return!this.tileBounds||this.tileBounds.contains(te.canonical)},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setSourceProperty=function(te){this._tileJSONRequest&&this._tileJSONRequest.cancel(),te();var xe=this.map.style.sourceCaches[this.id];xe.clearTiles(),this.load()},K.prototype.setTiles=function(te){var xe=this;return this.setSourceProperty(function(){xe._options.tiles=te}),this},K.prototype.setUrl=function(te){var xe=this;return this.setSourceProperty(function(){xe.url=te,xe._options.url=te}),this},K.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},K.prototype.serialize=function(){return e.extend({},this._options)},K.prototype.loadTile=function(te,xe){var We=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme)),He={request:this.map._requestManager.transformRequest(We,e.ResourceType.Tile),uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,tileSize:this.tileSize*te.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};He.request.collectResourceTiming=this._collectResourceTiming,!te.actor||te.state==="expired"?(te.actor=this.dispatcher.getActor(),te.request=te.actor.send("loadTile",He,st.bind(this))):te.state==="loading"?te.reloadCallback=xe:te.request=te.actor.send("reloadTile",He,st.bind(this));function st(Et,Ht){if(delete te.request,te.aborted)return xe(null);if(Et&&Et.status!==404)return xe(Et);Ht&&Ht.resourceTiming&&(te.resourceTiming=Ht.resourceTiming),this.map._refreshExpiredTiles&&Ht&&te.setExpiryData(Ht),te.loadVectorData(Ht,this.map.painter),e.cacheEntryPossiblyAdded(this.dispatcher),xe(null),te.reloadCallback&&(this.loadTile(te,te.reloadCallback),te.reloadCallback=null)}},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.actor&&te.actor.send("abortTile",{uid:te.uid,type:this.type,source:this.id},void 0)},K.prototype.unloadTile=function(te){te.unloadVectorData(),te.actor&&te.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id},void 0)},K.prototype.hasTransition=function(){return!1},K}(e.Evented),U=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.setEventedParent(We),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=e.extend({type:"raster"},te),e.extend(this,e.pick(te,["url","scheme","tileSize"]))}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(xe,We){te._tileJSONRequest=null,te._loaded=!0,xe?te.fire(new e.ErrorEvent(xe)):We&&(e.extend(te,We),We.bounds&&(te.tileBounds=new I(We.bounds,te.minzoom,te.maxzoom)),e.postTurnstileEvent(We.tiles),e.postMapLoadEvent(We.tiles,te.map._getMapId(),te.map._requestManager._skuToken),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))})},K.prototype.loaded=function(){return this._loaded},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},K.prototype.serialize=function(){return e.extend({},this._options)},K.prototype.hasTile=function(te){return!this.tileBounds||this.tileBounds.contains(te.canonical)},K.prototype.loadTile=function(te,xe){var We=this,He=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);te.request=e.getImage(this.map._requestManager.transformRequest(He,e.ResourceType.Tile),function(st,Et){if(delete te.request,te.aborted)te.state="unloaded",xe(null);else if(st)te.state="errored",xe(st);else if(Et){We.map._refreshExpiredTiles&&te.setExpiryData(Et),delete Et.cacheControl,delete Et.expires;var Ht=We.map.painter.context,yr=Ht.gl;te.texture=We.map.painter.getTileTexture(Et.width),te.texture?te.texture.update(Et,{useMipmap:!0}):(te.texture=new e.Texture(Ht,Et,yr.RGBA,{useMipmap:!0}),te.texture.bind(yr.LINEAR,yr.CLAMP_TO_EDGE,yr.LINEAR_MIPMAP_NEAREST),Ht.extTextureFilterAnisotropic&&yr.texParameterf(yr.TEXTURE_2D,Ht.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Ht.extTextureFilterAnisotropicMax)),te.state="loaded",e.cacheEntryPossiblyAdded(We.dispatcher),xe(null)}})},K.prototype.abortTile=function(te,xe){te.request&&(te.request.cancel(),delete te.request),xe()},K.prototype.unloadTile=function(te,xe){te.texture&&this.map.painter.saveTileTexture(te.texture),xe()},K.prototype.hasTransition=function(){return!1},K}(e.Evented),W=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),this.type="raster-dem",this.maxzoom=22,this._options=e.extend({type:"raster-dem"},te),this.encoding=te.encoding||"mapbox"}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},K.prototype.loadTile=function(te,xe){var We=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);te.request=e.getImage(this.map._requestManager.transformRequest(We,e.ResourceType.Tile),He.bind(this)),te.neighboringTiles=this._getNeighboringTiles(te.tileID);function He(Et,Ht){if(delete te.request,te.aborted)te.state="unloaded",xe(null);else if(Et)te.state="errored",xe(Et);else if(Ht){this.map._refreshExpiredTiles&&te.setExpiryData(Ht),delete Ht.cacheControl,delete Ht.expires;var yr=e.window.ImageBitmap&&Ht instanceof e.window.ImageBitmap&&e.offscreenCanvasSupported(),Ir=yr?Ht:e.browser.getImageData(Ht,1),wr={uid:te.uid,coord:te.tileID,source:this.id,rawImageData:Ir,encoding:this.encoding};(!te.actor||te.state==="expired")&&(te.actor=this.dispatcher.getActor(),te.actor.send("loadDEMTile",wr,st.bind(this)))}}function st(Et,Ht){Et&&(te.state="errored",xe(Et)),Ht&&(te.dem=Ht,te.needsHillshadePrepare=!0,te.state="loaded",xe(null))}},K.prototype._getNeighboringTiles=function(te){var xe=te.canonical,We=Math.pow(2,xe.z),He=(xe.x-1+We)%We,st=xe.x===0?te.wrap-1:te.wrap,Et=(xe.x+1+We)%We,Ht=xe.x+1===We?te.wrap+1:te.wrap,yr={};return yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y).key]={backfilled:!1},xe.y>0&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y-1).key]={backfilled:!1}),xe.y+1<We&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y+1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y+1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y+1).key]={backfilled:!1}),yr},K.prototype.unloadTile=function(te){te.demTexture&&this.map.painter.saveTileTexture(te.demTexture),te.fbo&&(te.fbo.destroy(),delete te.fbo),te.dem&&delete te.dem,delete te.neighboringTiles,te.state="unloaded",te.actor&&te.actor.send("removeDEMTile",{uid:te.uid,source:this.id})},K}(U),Q=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=xe.getActor(),this.setEventedParent(We),this._data=te.data,this._options=e.extend({},te),this._collectResourceTiming=te.collectResourceTiming,this._resourceTiming=[],te.maxzoom!==void 0&&(this.maxzoom=te.maxzoom),te.type&&(this.type=te.type),te.attribution&&(this.attribution=te.attribution),this.promoteId=te.promoteId;var He=e.EXTENT/this.tileSize;this.workerOptions=e.extend({source:this.id,cluster:te.cluster||!1,geojsonVtOptions:{buffer:(te.buffer!==void 0?te.buffer:128)*He,tolerance:(te.tolerance!==void 0?te.tolerance:.375)*He,extent:e.EXTENT,maxZoom:this.maxzoom,lineMetrics:te.lineMetrics||!1,generateId:te.generateId||!1},superclusterOptions:{maxZoom:te.clusterMaxZoom!==void 0?Math.min(te.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,te.clusterMinPoints||2),extent:e.EXTENT,radius:(te.clusterRadius||50)*He,log:!1,generateId:te.generateId||!1},clusterProperties:te.clusterProperties,filter:te.filter},te.workerOptions)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(xe){if(xe){te.fire(new e.ErrorEvent(xe));return}var We={dataType:"source",sourceDataType:"metadata"};te._collectResourceTiming&&te._resourceTiming&&te._resourceTiming.length>0&&(We.resourceTiming=te._resourceTiming,te._resourceTiming=[]),te.fire(new e.Event("data",We))})},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setData=function(te){var xe=this;return this._data=te,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(We){if(We){xe.fire(new e.ErrorEvent(We));return}var He={dataType:"source",sourceDataType:"content"};xe._collectResourceTiming&&xe._resourceTiming&&xe._resourceTiming.length>0&&(He.resourceTiming=xe._resourceTiming,xe._resourceTiming=[]),xe.fire(new e.Event("data",He))}),this},K.prototype.getClusterExpansionZoom=function(te,xe){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterChildren=function(te,xe){return this.actor.send("geojson.getClusterChildren",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterLeaves=function(te,xe,We,He){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:te,limit:xe,offset:We},He),this},K.prototype._updateWorkerData=function(te){var xe=this;this._loaded=!1;var We=e.extend({},this.workerOptions),He=this._data;typeof He=="string"?(We.request=this.map._requestManager.transformRequest(e.browser.resolveURL(He),e.ResourceType.Source),We.request.collectResourceTiming=this._collectResourceTiming):We.data=JSON.stringify(He),this.actor.send(this.type+".loadData",We,function(st,Et){xe._removed||Et&&Et.abandoned||(xe._loaded=!0,Et&&Et.resourceTiming&&Et.resourceTiming[xe.id]&&(xe._resourceTiming=Et.resourceTiming[xe.id].slice(0)),xe.actor.send(xe.type+".coalesce",{source:We.source},null),te(st))})},K.prototype.loaded=function(){return this._loaded},K.prototype.loadTile=function(te,xe){var We=this,He=te.actor?"reloadTile":"loadTile";te.actor=this.actor;var st={type:this.type,uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};te.request=this.actor.send(He,st,function(Et,Ht){return delete te.request,te.unloadVectorData(),te.aborted?xe(null):Et?xe(Et):(te.loadVectorData(Ht,We.map.painter,He==="reloadTile"),xe(null))})},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.aborted=!0},K.prototype.unloadTile=function(te){te.unloadVectorData(),this.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id})},K.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},K.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},K.prototype.hasTransition=function(){return!1},K}(e.Evented),ue=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),se=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.coordinates=te.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(We),this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(te,xe){var We=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),function(He,st){We._loaded=!0,He?We.fire(new e.ErrorEvent(He)):st&&(We.image=st,te&&(We.coordinates=te),xe&&xe(),We._finishLoading())})},K.prototype.loaded=function(){return this._loaded},K.prototype.updateImage=function(te){var xe=this;return!this.image||!te.url?this:(this.options.url=te.url,this.load(te.coordinates,function(){xe.texture=null}),this)},K.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setCoordinates=function(te){var xe=this;this.coordinates=te;var We=te.map(e.MercatorCoordinate.fromLngLat);this.tileID=he(We),this.minzoom=this.maxzoom=this.tileID.z;var He=We.map(function(st){return xe.tileID.getTilePoint(st)._round()});return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(He[0].x,He[0].y,0,0),this._boundsArray.emplaceBack(He[1].x,He[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(He[3].x,He[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(He[2].x,He[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(te,this.image,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.loadTile=function(te,xe){this.tileID&&this.tileID.equals(te.tileID.canonical)?(this.tiles[String(te.tileID.wrap)]=te,te.buckets={},xe(null)):(te.state="errored",xe(null))},K.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return!1},K}(e.Evented);function he(ve){for(var K=1/0,ye=1/0,te=-1/0,xe=-1/0,We=0,He=ve;We<He.length;We+=1){var st=He[We];K=Math.min(K,st.x),ye=Math.min(ye,st.y),te=Math.max(te,st.x),xe=Math.max(xe,st.y)}var Et=te-K,Ht=xe-ye,yr=Math.max(Et,Ht),Ir=Math.max(0,Math.floor(-Math.log(yr)/Math.LN2)),wr=Math.pow(2,Ir);return new e.CanonicalTileID(Ir,Math.floor((K+te)/2*wr),Math.floor((ye+xe)/2*wr))}var G=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),this.roundZoom=!0,this.type="video",this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1;var xe=this.options;this.urls=[];for(var We=0,He=xe.urls;We<He.length;We+=1){var st=He[We];this.urls.push(this.map._requestManager.transformRequest(st,e.ResourceType.Source).url)}e.getVideo(this.urls,function(Et,Ht){te._loaded=!0,Et?te.fire(new e.ErrorEvent(Et)):Ht&&(te.video=Ht,te.video.loop=!0,te.video.addEventListener("playing",function(){te.map.triggerRepaint()}),te.map&&te.video.play(),te._finishLoading())})},K.prototype.pause=function(){this.video&&this.video.pause()},K.prototype.play=function(){this.video&&this.video.play()},K.prototype.seek=function(te){if(this.video){var xe=this.video.seekable;te<xe.start(0)||te>xe.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+xe.start(0)+" and "+xe.end(0)+"-second mark."))):this.video.currentTime=te}},K.prototype.getVideo=function(){return this.video},K.prototype.onAdd=function(te){this.map||(this.map=te,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),xe.texSubImage2D(xe.TEXTURE_2D,0,0,0,xe.RGBA,xe.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(te,this.video,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this.video&&!this.video.paused},K}(se),$=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),te.coordinates?(!Array.isArray(te.coordinates)||te.coordinates.length!==4||te.coordinates.some(function(He){return!Array.isArray(He)||He.length!==2||He.some(function(st){return typeof st!="number"})}))&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "coordinates"'))),te.animate&&typeof te.animate!="boolean"&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'optional "animate" property must be a boolean value'))),te.canvas?typeof te.canvas!="string"&&!(te.canvas instanceof e.window.HTMLCanvasElement)&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "canvas"'))),this.options=te,this.animate=te.animate!==void 0?te.animate:!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},K.prototype.getCanvas=function(){return this.canvas},K.prototype.onAdd=function(te){this.map=te,this.load(),this.canvas&&this.animate&&this.play()},K.prototype.onRemove=function(){this.pause()},K.prototype.prepare=function(){var te=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,te=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,te=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var xe=this.map.painter.context,We=xe.gl;this.boundsBuffer||(this.boundsBuffer=xe.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(te||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(xe,this.canvas,We.RGBA,{premultiply:!0});for(var He in this.tiles){var st=this.tiles[He];st.state!=="loaded"&&(st.state="loaded",st.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this._playing},K.prototype._hasInvalidDimensions=function(){for(var te=0,xe=[this.canvas.width,this.canvas.height];te<xe.length;te+=1){var We=xe[te];if(isNaN(We)||We<=0)return!0}return!1},K}(se),J={vector:N,raster:U,"raster-dem":W,geojson:Q,video:G,image:se,canvas:$},Z=function(ve,K,ye,te){var xe=new J[K.type](ve,K,ye,te);if(xe.id!==ve)throw new Error("Expected Source id to be "+ve+" instead of "+xe.id);return e.bindAll(["load","abort","unload","serialize","prepare"],xe),xe},re=function(ve){return J[ve]},ne=function(ve,K){J[ve]=K};function j(ve,K){var ye=e.identity([]);return e.translate(ye,ye,[1,1,0]),e.scale(ye,ye,[ve.width*.5,ve.height*.5,1]),e.multiply(ye,ye,ve.calculatePosMatrix(K.toUnwrapped()))}function ee(ve,K,ye){if(ve)for(var te=0,xe=ve;te<xe.length;te+=1){var We=xe[te],He=K[We];if(He&&He.source===ye&&He.type==="fill-extrusion")return!0}else for(var st in K){var Et=K[st];if(Et.source===ye&&Et.type==="fill-extrusion")return!0}return!1}function ie(ve,K,ye,te,xe,We){var He=ee(xe&&xe.layers,K,ve.id),st=We.maxPitchScaleFactor(),Et=ve.tilesIn(te,st,He);Et.sort(Ae);for(var Ht=[],yr=0,Ir=Et;yr<Ir.length;yr+=1){var wr=Ir[yr];Ht.push({wrappedTileID:wr.tileID.wrapped().key,queryResults:wr.tile.queryRenderedFeatures(K,ye,ve._state,wr.queryGeometry,wr.cameraQueryGeometry,wr.scale,xe,We,st,j(ve.transform,wr.tileID))})}var qt=Be(Ht);for(var tr in qt)qt[tr].forEach(function(dr){var Pr=dr.feature,Vr=ve.getFeatureState(Pr.layer["source-layer"],Pr.id);Pr.source=Pr.layer.source,Pr.layer["source-layer"]&&(Pr.sourceLayer=Pr.layer["source-layer"]),Pr.state=Vr});return qt}function fe(ve,K,ye,te,xe,We,He){for(var st={},Et=We.queryRenderedSymbols(te),Ht=[],yr=0,Ir=Object.keys(Et).map(Number);yr<Ir.length;yr+=1){var wr=Ir[yr];Ht.push(He[wr])}Ht.sort(Ae);for(var qt=function(){var Hr=dr[tr],aa=Hr.featureIndex.lookupSymbolFeatures(Et[Hr.bucketInstanceId],K,Hr.bucketIndex,Hr.sourceLayerIndex,xe.filter,xe.layers,xe.availableImages,ve);for(var Qr in aa){var Gr=st[Qr]=st[Qr]||[],ia=aa[Qr];ia.sort(function(ri,Pi){var mi=Hr.featureSortOrder;if(mi){var Di=mi.indexOf(ri.featureIndex),An=mi.indexOf(Pi.featureIndex);return An-Di}else return Pi.featureIndex-ri.featureIndex});for(var Ur=0,wa=ia;Ur<wa.length;Ur+=1){var Oa=wa[Ur];Gr.push(Oa)}}},tr=0,dr=Ht;tr<dr.length;tr+=1)qt();var Pr=function(Hr){st[Hr].forEach(function(aa){var Qr=aa.feature,Gr=ve[Hr],ia=ye[Gr.source],Ur=ia.getFeatureState(Qr.layer["source-layer"],Qr.id);Qr.source=Qr.layer.source,Qr.layer["source-layer"]&&(Qr.sourceLayer=Qr.layer["source-layer"]),Qr.state=Ur})};for(var Vr in st)Pr(Vr);return st}function be(ve,K){for(var ye=ve.getRenderableIds().map(function(Et){return ve.getTileByID(Et)}),te=[],xe={},We=0;We<ye.length;We++){var He=ye[We],st=He.tileID.canonical.key;xe[st]||(xe[st]=!0,He.querySourceFeatures(te,K))}return te}function Ae(ve,K){var ye=ve.tileID,te=K.tileID;return ye.overscaledZ-te.overscaledZ||ye.canonical.y-te.canonical.y||ye.wrap-te.wrap||ye.canonical.x-te.canonical.x}function Be(ve){for(var K={},ye={},te=0,xe=ve;te<xe.length;te+=1){var We=xe[te],He=We.queryResults,st=We.wrappedTileID,Et=ye[st]=ye[st]||{};for(var Ht in He)for(var yr=He[Ht],Ir=Et[Ht]=Et[Ht]||{},wr=K[Ht]=K[Ht]||[],qt=0,tr=yr;qt<tr.length;qt+=1){var dr=tr[qt];Ir[dr.featureIndex]||(Ir[dr.featureIndex]=!0,wr.push(dr))}}return K}var Ie=function(K,ye){this.max=K,this.onRemove=ye,this.reset()};Ie.prototype.reset=function(){for(var K in this.data)for(var ye=0,te=this.data[K];ye<te.length;ye+=1){var xe=te[ye];xe.timeout&&clearTimeout(xe.timeout),this.onRemove(xe.value)}return this.data={},this.order=[],this},Ie.prototype.add=function(K,ye,te){var xe=this,We=K.wrapped().key;this.data[We]===void 0&&(this.data[We]=[]);var He={value:ye,timeout:void 0};if(te!==void 0&&(He.timeout=setTimeout(function(){xe.remove(K,He)},te)),this.data[We].push(He),this.order.push(We),this.order.length>this.max){var st=this._getAndRemoveByKey(this.order[0]);st&&this.onRemove(st)}return this},Ie.prototype.has=function(K){return K.wrapped().key in this.data},Ie.prototype.getAndRemove=function(K){return this.has(K)?this._getAndRemoveByKey(K.wrapped().key):null},Ie.prototype._getAndRemoveByKey=function(K){var ye=this.data[K].shift();return ye.timeout&&clearTimeout(ye.timeout),this.data[K].length===0&&delete this.data[K],this.order.splice(this.order.indexOf(K),1),ye.value},Ie.prototype.getByKey=function(K){var ye=this.data[K];return ye?ye[0].value:null},Ie.prototype.get=function(K){if(!this.has(K))return null;var ye=this.data[K.wrapped().key][0];return ye.value},Ie.prototype.remove=function(K,ye){if(!this.has(K))return this;var te=K.wrapped().key,xe=ye===void 0?0:this.data[te].indexOf(ye),We=this.data[te][xe];return this.data[te].splice(xe,1),We.timeout&&clearTimeout(We.timeout),this.data[te].length===0&&delete this.data[te],this.onRemove(We.value),this.order.splice(this.order.indexOf(te),1),this},Ie.prototype.setMaxSize=function(K){for(this.max=K;this.order.length>this.max;){var ye=this._getAndRemoveByKey(this.order[0]);ye&&this.onRemove(ye)}return this},Ie.prototype.filter=function(K){var ye=[];for(var te in this.data)for(var xe=0,We=this.data[te];xe<We.length;xe+=1){var He=We[xe];K(He.value)||ye.push(He)}for(var st=0,Et=ye;st<Et.length;st+=1){var Ht=Et[st];this.remove(Ht.value.tileID,Ht)}};var Ze=function(K,ye,te){this.context=K;var xe=K.gl;this.buffer=xe.createBuffer(),this.dynamicDraw=!!te,this.context.unbindVAO(),K.bindElementBuffer.set(this.buffer),xe.bufferData(xe.ELEMENT_ARRAY_BUFFER,ye.arrayBuffer,this.dynamicDraw?xe.DYNAMIC_DRAW:xe.STATIC_DRAW),this.dynamicDraw||delete ye.arrayBuffer};Ze.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},Ze.prototype.updateData=function(K){var ye=this.context.gl;this.context.unbindVAO(),this.bind(),ye.bufferSubData(ye.ELEMENT_ARRAY_BUFFER,0,K.arrayBuffer)},Ze.prototype.destroy=function(){var K=this.context.gl;this.buffer&&(K.deleteBuffer(this.buffer),delete this.buffer)};var at={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},it=function(K,ye,te,xe){this.length=ye.length,this.attributes=te,this.itemSize=ye.bytesPerElement,this.dynamicDraw=xe,this.context=K;var We=K.gl;this.buffer=We.createBuffer(),K.bindVertexBuffer.set(this.buffer),We.bufferData(We.ARRAY_BUFFER,ye.arrayBuffer,this.dynamicDraw?We.DYNAMIC_DRAW:We.STATIC_DRAW),this.dynamicDraw||delete ye.arrayBuffer};it.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},it.prototype.updateData=function(K){var ye=this.context.gl;this.bind(),ye.bufferSubData(ye.ARRAY_BUFFER,0,K.arrayBuffer)},it.prototype.enableAttributes=function(K,ye){for(var te=0;te<this.attributes.length;te++){var xe=this.attributes[te],We=ye.attributes[xe.name];We!==void 0&&K.enableVertexAttribArray(We)}},it.prototype.setVertexAttribPointers=function(K,ye,te){for(var xe=0;xe<this.attributes.length;xe++){var We=this.attributes[xe],He=ye.attributes[We.name];He!==void 0&&K.vertexAttribPointer(He,We.components,K[at[We.type]],!1,this.itemSize,We.offset+this.itemSize*(te||0))}},it.prototype.destroy=function(){var K=this.context.gl;this.buffer&&(K.deleteBuffer(this.buffer),delete this.buffer)};var et=function(K){this.gl=K.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};et.prototype.get=function(){return this.current},et.prototype.set=function(K){},et.prototype.getDefault=function(){return this.default},et.prototype.setDefault=function(){this.set(this.default)};var lt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return e.Color.transparent},K.prototype.set=function(te){var xe=this.current;te.r===xe.r&&te.g===xe.g&&te.b===xe.b&&te.a===xe.a&&!this.dirty||(this.gl.clearColor(te.r,te.g,te.b,te.a),this.current=te,this.dirty=!1)},K}(et),Me=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 1},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.clearDepth(te),this.current=te,this.dirty=!1)},K}(et),ge=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.clearStencil(te),this.current=te,this.dirty=!1)},K}(et),ce=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return[!0,!0,!0,!0]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&te[3]===xe[3]&&!this.dirty||(this.gl.colorMask(te[0],te[1],te[2],te[3]),this.current=te,this.dirty=!1)},K}(et),ze=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.depthMask(te),this.current=te,this.dirty=!1)},K}(et),tt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 255},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.stencilMask(te),this.current=te,this.dirty=!1)},K}(et),nt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},K.prototype.set=function(te){var xe=this.current;te.func===xe.func&&te.ref===xe.ref&&te.mask===xe.mask&&!this.dirty||(this.gl.stencilFunc(te.func,te.ref,te.mask),this.current=te,this.dirty=!1)},K}(et),Qe=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[te.KEEP,te.KEEP,te.KEEP]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&!this.dirty||(this.gl.stencilOp(te[0],te[1],te[2]),this.current=te,this.dirty=!1)},K}(et),Ct=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.STENCIL_TEST):xe.disable(xe.STENCIL_TEST),this.current=te,this.dirty=!1}},K}(et),St=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return[0,1]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&!this.dirty||(this.gl.depthRange(te[0],te[1]),this.current=te,this.dirty=!1)},K}(et),Ot=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.DEPTH_TEST):xe.disable(xe.DEPTH_TEST),this.current=te,this.dirty=!1}},K}(et),jt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.LESS},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.depthFunc(te),this.current=te,this.dirty=!1)},K}(et),ur=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.BLEND):xe.disable(xe.BLEND),this.current=te,this.dirty=!1}},K}(et),ar=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[te.ONE,te.ZERO]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&!this.dirty||(this.gl.blendFunc(te[0],te[1]),this.current=te,this.dirty=!1)},K}(et),Cr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return e.Color.transparent},K.prototype.set=function(te){var xe=this.current;te.r===xe.r&&te.g===xe.g&&te.b===xe.b&&te.a===xe.a&&!this.dirty||(this.gl.blendColor(te.r,te.g,te.b,te.a),this.current=te,this.dirty=!1)},K}(et),vr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.FUNC_ADD},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.blendEquation(te),this.current=te,this.dirty=!1)},K}(et),_r=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.CULL_FACE):xe.disable(xe.CULL_FACE),this.current=te,this.dirty=!1}},K}(et),yt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.BACK},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.cullFace(te),this.current=te,this.dirty=!1)},K}(et),Fe=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.CCW},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.frontFace(te),this.current=te,this.dirty=!1)},K}(et),Ke=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.useProgram(te),this.current=te,this.dirty=!1)},K}(et),Ne=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.TEXTURE0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.activeTexture(te),this.current=te,this.dirty=!1)},K}(et),Ee=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[0,0,te.drawingBufferWidth,te.drawingBufferHeight]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&te[3]===xe[3]&&!this.dirty||(this.gl.viewport(te[0],te[1],te[2],te[3]),this.current=te,this.dirty=!1)},K}(et),Ve=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindFramebuffer(xe.FRAMEBUFFER,te),this.current=te,this.dirty=!1}},K}(et),ke=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindRenderbuffer(xe.RENDERBUFFER,te),this.current=te,this.dirty=!1}},K}(et),Te=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindTexture(xe.TEXTURE_2D,te),this.current=te,this.dirty=!1}},K}(et),Le=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindBuffer(xe.ARRAY_BUFFER,te),this.current=te,this.dirty=!1}},K}(et),rt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){var xe=this.gl;xe.bindBuffer(xe.ELEMENT_ARRAY_BUFFER,te),this.current=te,this.dirty=!1},K}(et),dt=function(ve){function K(ye){ve.call(this,ye),this.vao=ye.extVertexArrayObject}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){!this.vao||te===this.current&&!this.dirty||(this.vao.bindVertexArrayOES(te),this.current=te,this.dirty=!1)},K}(et),xt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 4},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_ALIGNMENT,te),this.current=te,this.dirty=!1}},K}(et),It=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_PREMULTIPLY_ALPHA_WEBGL,te),this.current=te,this.dirty=!1}},K}(et),Bt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_FLIP_Y_WEBGL,te),this.current=te,this.dirty=!1}},K}(et),Gt=function(ve){function K(ye,te){ve.call(this,ye),this.context=ye,this.parent=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K}(et),Kt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.setDirty=function(){this.dirty=!0},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var xe=this.gl;xe.framebufferTexture2D(xe.FRAMEBUFFER,xe.COLOR_ATTACHMENT0,xe.TEXTURE_2D,te,0),this.current=te,this.dirty=!1}},K}(Gt),sr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var xe=this.gl;xe.framebufferRenderbuffer(xe.FRAMEBUFFER,xe.DEPTH_ATTACHMENT,xe.RENDERBUFFER,te),this.current=te,this.dirty=!1}},K}(Gt),sa=function(K,ye,te,xe){this.context=K,this.width=ye,this.height=te;var We=K.gl,He=this.framebuffer=We.createFramebuffer();this.colorAttachment=new Kt(K,He),xe&&(this.depthAttachment=new sr(K,He))};sa.prototype.destroy=function(){var K=this.context.gl,ye=this.colorAttachment.get();if(ye&&K.deleteTexture(ye),this.depthAttachment){var te=this.depthAttachment.get();te&&K.deleteRenderbuffer(te)}K.deleteFramebuffer(this.framebuffer)};var Aa=519,La=function(K,ye,te){this.func=K,this.mask=ye,this.range=te};La.ReadOnly=!1,La.ReadWrite=!0,La.disabled=new La(Aa,La.ReadOnly,[0,1]);var ka=519,Ga=7680,Ma=function(K,ye,te,xe,We,He){this.test=K,this.ref=ye,this.mask=te,this.fail=xe,this.depthFail=We,this.pass=He};Ma.disabled=new Ma({func:ka,mask:0},0,0,Ga,Ga,Ga);var Ua=0,ni=1,Wt=771,zt=function(K,ye,te){this.blendFunction=K,this.blendColor=ye,this.mask=te};zt.Replace=[ni,Ua],zt.disabled=new zt(zt.Replace,e.Color.transparent,[!1,!1,!1,!1]),zt.unblended=new zt(zt.Replace,e.Color.transparent,[!0,!0,!0,!0]),zt.alphaBlended=new zt([ni,Wt],e.Color.transparent,[!0,!0,!0,!0]);var Vt=1029,Ut=2305,xr=function(K,ye,te){this.enable=K,this.mode=ye,this.frontFace=te};xr.disabled=new xr(!1,Vt,Ut),xr.backCCW=new xr(!0,Vt,Ut);var Zr=function(K){this.gl=K,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new lt(this),this.clearDepth=new Me(this),this.clearStencil=new ge(this),this.colorMask=new ce(this),this.depthMask=new ze(this),this.stencilMask=new tt(this),this.stencilFunc=new nt(this),this.stencilOp=new Qe(this),this.stencilTest=new Ct(this),this.depthRange=new St(this),this.depthTest=new Ot(this),this.depthFunc=new jt(this),this.blend=new ur(this),this.blendFunc=new ar(this),this.blendColor=new Cr(this),this.blendEquation=new vr(this),this.cullFace=new _r(this),this.cullFaceSide=new yt(this),this.frontFace=new Fe(this),this.program=new Ke(this),this.activeTexture=new Ne(this),this.viewport=new Ee(this),this.bindFramebuffer=new Ve(this),this.bindRenderbuffer=new ke(this),this.bindTexture=new Te(this),this.bindVertexBuffer=new Le(this),this.bindElementBuffer=new rt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new dt(this),this.pixelStoreUnpack=new xt(this),this.pixelStoreUnpackPremultiplyAlpha=new It(this),this.pixelStoreUnpackFlipY=new Bt(this),this.extTextureFilterAnisotropic=K.getExtension("EXT_texture_filter_anisotropic")||K.getExtension("MOZ_EXT_texture_filter_anisotropic")||K.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=K.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=K.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(K.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=K.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=K.getExtension("EXT_disjoint_timer_query"),this.maxTextureSize=K.getParameter(K.MAX_TEXTURE_SIZE)};Zr.prototype.setDefault=function(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()},Zr.prototype.setDirty=function(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.extVertexArrayObject&&(this.bindVertexArrayOES.dirty=!0),this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0},Zr.prototype.createIndexBuffer=function(K,ye){return new Ze(this,K,ye)},Zr.prototype.createVertexBuffer=function(K,ye,te){return new it(this,K,ye,te)},Zr.prototype.createRenderbuffer=function(K,ye,te){var xe=this.gl,We=xe.createRenderbuffer();return this.bindRenderbuffer.set(We),xe.renderbufferStorage(xe.RENDERBUFFER,K,ye,te),this.bindRenderbuffer.set(null),We},Zr.prototype.createFramebuffer=function(K,ye,te){return new sa(this,K,ye,te)},Zr.prototype.clear=function(K){var ye=K.color,te=K.depth,xe=this.gl,We=0;ye&&(We|=xe.COLOR_BUFFER_BIT,this.clearColor.set(ye),this.colorMask.set([!0,!0,!0,!0])),typeof te<"u"&&(We|=xe.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(te),this.depthMask.set(!0)),xe.clear(We)},Zr.prototype.setCullFace=function(K){K.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(K.mode),this.frontFace.set(K.frontFace))},Zr.prototype.setDepthMode=function(K){K.func===this.gl.ALWAYS&&!K.mask?this.depthTest.set(!1):(this.depthTest.set(!0),this.depthFunc.set(K.func),this.depthMask.set(K.mask),this.depthRange.set(K.range))},Zr.prototype.setStencilMode=function(K){K.test.func===this.gl.ALWAYS&&!K.mask?this.stencilTest.set(!1):(this.stencilTest.set(!0),this.stencilMask.set(K.mask),this.stencilOp.set([K.fail,K.depthFail,K.pass]),this.stencilFunc.set({func:K.test.func,ref:K.ref,mask:K.test.mask}))},Zr.prototype.setColorMode=function(K){e.deepEqual(K.blendFunction,zt.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(K.blendFunction),this.blendColor.set(K.blendColor)),this.colorMask.set(K.mask)},Zr.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var pa=function(ve){function K(ye,te,xe){var We=this;ve.call(this),this.id=ye,this.dispatcher=xe,this.on("data",function(He){He.dataType==="source"&&He.sourceDataType==="metadata"&&(We._sourceLoaded=!0),We._sourceLoaded&&!We._paused&&He.dataType==="source"&&He.sourceDataType==="content"&&(We.reload(),We.transform&&We.update(We.transform))}),this.on("error",function(){We._sourceErrored=!0}),this._source=Z(ye,te,xe,this),this._tiles={},this._cache=new Ie(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new e.SourceFeatureState}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){this.map=te,this._maxTileCacheSize=te?te._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(te)},K.prototype.onRemove=function(te){this._source&&this._source.onRemove&&this._source.onRemove(te)},K.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;for(var te in this._tiles){var xe=this._tiles[te];if(xe.state!=="loaded"&&xe.state!=="errored")return!1}return!0},K.prototype.getSource=function(){return this._source},K.prototype.pause=function(){this._paused=!0},K.prototype.resume=function(){if(this._paused){var te=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,te&&this.reload(),this.transform&&this.update(this.transform)}},K.prototype._loadTile=function(te,xe){return this._source.loadTile(te,xe)},K.prototype._unloadTile=function(te){if(this._source.unloadTile)return this._source.unloadTile(te,function(){})},K.prototype._abortTile=function(te){if(this._source.abortTile)return this._source.abortTile(te,function(){})},K.prototype.serialize=function(){return this._source.serialize()},K.prototype.prepare=function(te){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(var xe in this._tiles){var We=this._tiles[xe];We.upload(te),We.prepare(this.map.style.imageManager)}},K.prototype.getIds=function(){return e.values(this._tiles).map(function(te){return te.tileID}).sort(Xr).map(function(te){return te.key})},K.prototype.getRenderableIds=function(te){var xe=this,We=[];for(var He in this._tiles)this._isIdRenderable(He,te)&&We.push(this._tiles[He]);return te?We.sort(function(st,Et){var Ht=st.tileID,yr=Et.tileID,Ir=new e.Point(Ht.canonical.x,Ht.canonical.y)._rotate(xe.transform.angle),wr=new e.Point(yr.canonical.x,yr.canonical.y)._rotate(xe.transform.angle);return Ht.overscaledZ-yr.overscaledZ||wr.y-Ir.y||wr.x-Ir.x}).map(function(st){return st.tileID.key}):We.map(function(st){return st.tileID}).sort(Xr).map(function(st){return st.key})},K.prototype.hasRenderableParent=function(te){var xe=this.findLoadedParent(te,0);return xe?this._isIdRenderable(xe.tileID.key):!1},K.prototype._isIdRenderable=function(te,xe){return this._tiles[te]&&this._tiles[te].hasData()&&!this._coveredTiles[te]&&(xe||!this._tiles[te].holdingForFade())},K.prototype.reload=function(){if(this._paused){this._shouldReloadOnResume=!0;return}this._cache.reset();for(var te in this._tiles)this._tiles[te].state!=="errored"&&this._reloadTile(te,"reloading")},K.prototype._reloadTile=function(te,xe){var We=this._tiles[te];We&&(We.state!=="loading"&&(We.state=xe),this._loadTile(We,this._tileLoaded.bind(this,We,te,xe)))},K.prototype._tileLoaded=function(te,xe,We,He){if(He){te.state="errored",He.status!==404?this._source.fire(new e.ErrorEvent(He,{tile:te})):this.update(this.transform);return}te.timeAdded=e.browser.now(),We==="expired"&&(te.refreshedUponExpiration=!0),this._setTileReloadTimer(xe,te),this.getSource().type==="raster-dem"&&te.dem&&this._backfillDEM(te),this._state.initializeTileState(te,this.map?this.map.painter:null),this._source.fire(new e.Event("data",{dataType:"source",tile:te,coord:te.tileID}))},K.prototype._backfillDEM=function(te){for(var xe=this.getRenderableIds(),We=0;We<xe.length;We++){var He=xe[We];if(te.neighboringTiles&&te.neighboringTiles[He]){var st=this.getTileByID(He);Et(te,st),Et(st,te)}}function Et(Ht,yr){Ht.needsHillshadePrepare=!0;var Ir=yr.tileID.canonical.x-Ht.tileID.canonical.x,wr=yr.tileID.canonical.y-Ht.tileID.canonical.y,qt=Math.pow(2,Ht.tileID.canonical.z),tr=yr.tileID.key;Ir===0&&wr===0||Math.abs(wr)>1||(Math.abs(Ir)>1&&(Math.abs(Ir+qt)===1?Ir+=qt:Math.abs(Ir-qt)===1&&(Ir-=qt)),!(!yr.dem||!Ht.dem)&&(Ht.dem.backfillBorder(yr.dem,Ir,wr),Ht.neighboringTiles&&Ht.neighboringTiles[tr]&&(Ht.neighboringTiles[tr].backfilled=!0)))}},K.prototype.getTile=function(te){return this.getTileByID(te.key)},K.prototype.getTileByID=function(te){return this._tiles[te]},K.prototype._retainLoadedChildren=function(te,xe,We,He){for(var st in this._tiles){var Et=this._tiles[st];if(!(He[st]||!Et.hasData()||Et.tileID.overscaledZ<=xe||Et.tileID.overscaledZ>We)){for(var Ht=Et.tileID;Et&&Et.tileID.overscaledZ>xe+1;){var yr=Et.tileID.scaledTo(Et.tileID.overscaledZ-1);Et=this._tiles[yr.key],Et&&Et.hasData()&&(Ht=yr)}for(var Ir=Ht;Ir.overscaledZ>xe;)if(Ir=Ir.scaledTo(Ir.overscaledZ-1),te[Ir.key]){He[Ht.key]=Ht;break}}}},K.prototype.findLoadedParent=function(te,xe){if(te.key in this._loadedParentTiles){var We=this._loadedParentTiles[te.key];return We&&We.tileID.overscaledZ>=xe?We:null}for(var He=te.overscaledZ-1;He>=xe;He--){var st=te.scaledTo(He),Et=this._getLoadedTile(st);if(Et)return Et}},K.prototype._getLoadedTile=function(te){var xe=this._tiles[te.key];if(xe&&xe.hasData())return xe;var We=this._cache.getByKey(te.wrapped().key);return We},K.prototype.updateCacheSize=function(te){var xe=Math.ceil(te.width/this._source.tileSize)+1,We=Math.ceil(te.height/this._source.tileSize)+1,He=xe*We,st=5,Et=Math.floor(He*st),Ht=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Et):Et;this._cache.setMaxSize(Ht)},K.prototype.handleWrapJump=function(te){var xe=this._prevLng===void 0?te:this._prevLng,We=te-xe,He=We/360,st=Math.round(He);if(this._prevLng=te,st){var Et={};for(var Ht in this._tiles){var yr=this._tiles[Ht];yr.tileID=yr.tileID.unwrapTo(yr.tileID.wrap+st),Et[yr.tileID.key]=yr}this._tiles=Et;for(var Ir in this._timers)clearTimeout(this._timers[Ir]),delete this._timers[Ir];for(var wr in this._tiles){var qt=this._tiles[wr];this._setTileReloadTimer(wr,qt)}}},K.prototype.update=function(te){var xe=this;if(this.transform=te,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(te),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var We;this.used?this._source.tileID?We=te.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(ri){return new e.OverscaledTileID(ri.canonical.z,ri.wrap,ri.canonical.z,ri.canonical.x,ri.canonical.y)}):(We=te.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(We=We.filter(function(ri){return xe._source.hasTile(ri)}))):We=[];var He=te.coveringZoomLevel(this._source),st=Math.max(He-K.maxOverzooming,this._source.minzoom),Et=Math.max(He+K.maxUnderzooming,this._source.minzoom),Ht=this._updateRetainedTiles(We,He);if(Ea(this._source.type)){for(var yr={},Ir={},wr=Object.keys(Ht),qt=0,tr=wr;qt<tr.length;qt+=1){var dr=tr[qt],Pr=Ht[dr],Vr=this._tiles[dr];if(!(!Vr||Vr.fadeEndTime&&Vr.fadeEndTime<=e.browser.now())){var Hr=this.findLoadedParent(Pr,st);Hr&&(this._addTile(Hr.tileID),yr[Hr.tileID.key]=Hr.tileID),Ir[dr]=Pr}}this._retainLoadedChildren(Ir,He,Et,Ht);for(var aa in yr)Ht[aa]||(this._coveredTiles[aa]=!0,Ht[aa]=yr[aa])}for(var Qr in Ht)this._tiles[Qr].clearFadeHold();for(var Gr=e.keysDifference(this._tiles,Ht),ia=0,Ur=Gr;ia<Ur.length;ia+=1){var wa=Ur[ia],Oa=this._tiles[wa];Oa.hasSymbolBuckets&&!Oa.holdingForFade()?Oa.setHoldDuration(this.map._fadeDuration):(!Oa.hasSymbolBuckets||Oa.symbolFadeFinished())&&this._removeTile(wa)}this._updateLoadedParentTileCache()}},K.prototype.releaseSymbolFadeTiles=function(){for(var te in this._tiles)this._tiles[te].holdingForFade()&&this._removeTile(te)},K.prototype._updateRetainedTiles=function(te,xe){for(var We={},He={},st=Math.max(xe-K.maxOverzooming,this._source.minzoom),Et=Math.max(xe+K.maxUnderzooming,this._source.minzoom),Ht={},yr=0,Ir=te;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=this._addTile(wr);We[wr.key]=wr,!qt.hasData()&&xe<this._source.maxzoom&&(Ht[wr.key]=wr)}this._retainLoadedChildren(Ht,xe,Et,We);for(var tr=0,dr=te;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=this._tiles[Pr.key];if(!Vr.hasData()){if(xe+1>this._source.maxzoom){var Hr=Pr.children(this._source.maxzoom)[0],aa=this.getTile(Hr);if(aa&&aa.hasData()){We[Hr.key]=Hr;continue}}else{var Qr=Pr.children(this._source.maxzoom);if(We[Qr[0].key]&&We[Qr[1].key]&&We[Qr[2].key]&&We[Qr[3].key])continue}for(var Gr=Vr.wasRequested(),ia=Pr.overscaledZ-1;ia>=st;--ia){var Ur=Pr.scaledTo(ia);if(He[Ur.key]||(He[Ur.key]=!0,Vr=this.getTile(Ur),!Vr&&Gr&&(Vr=this._addTile(Ur)),Vr&&(We[Ur.key]=Ur,Gr=Vr.wasRequested(),Vr.hasData())))break}}}return We},K.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var te in this._tiles){for(var xe=[],We=void 0,He=this._tiles[te].tileID;He.overscaledZ>0;){if(He.key in this._loadedParentTiles){We=this._loadedParentTiles[He.key];break}xe.push(He.key);var st=He.scaledTo(He.overscaledZ-1);if(We=this._getLoadedTile(st),We)break;He=st}for(var Et=0,Ht=xe;Et<Ht.length;Et+=1){var yr=Ht[Et];this._loadedParentTiles[yr]=We}}},K.prototype._addTile=function(te){var xe=this._tiles[te.key];if(xe)return xe;xe=this._cache.getAndRemove(te),xe&&(this._setTileReloadTimer(te.key,xe),xe.tileID=te,this._state.initializeTileState(xe,this.map?this.map.painter:null),this._cacheTimers[te.key]&&(clearTimeout(this._cacheTimers[te.key]),delete this._cacheTimers[te.key],this._setTileReloadTimer(te.key,xe)));var We=!!xe;return We||(xe=new e.Tile(te,this._source.tileSize*te.overscaleFactor()),this._loadTile(xe,this._tileLoaded.bind(this,xe,te.key,xe.state))),xe?(xe.uses++,this._tiles[te.key]=xe,We||this._source.fire(new e.Event("dataloading",{tile:xe,coord:xe.tileID,dataType:"source"})),xe):null},K.prototype._setTileReloadTimer=function(te,xe){var We=this;te in this._timers&&(clearTimeout(this._timers[te]),delete this._timers[te]);var He=xe.getExpiryTimeout();He&&(this._timers[te]=setTimeout(function(){We._reloadTile(te,"expired"),delete We._timers[te]},He))},K.prototype._removeTile=function(te){var xe=this._tiles[te];xe&&(xe.uses--,delete this._tiles[te],this._timers[te]&&(clearTimeout(this._timers[te]),delete this._timers[te]),!(xe.uses>0)&&(xe.hasData()&&xe.state!=="reloading"?this._cache.add(xe.tileID,xe,xe.getExpiryTimeout()):(xe.aborted=!0,this._abortTile(xe),this._unloadTile(xe))))},K.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var te in this._tiles)this._removeTile(te);this._cache.reset()},K.prototype.tilesIn=function(te,xe,We){var He=this,st=[],Et=this.transform;if(!Et)return st;for(var Ht=We?Et.getCameraQueryGeometry(te):te,yr=te.map(function(ia){return Et.pointCoordinate(ia)}),Ir=Ht.map(function(ia){return Et.pointCoordinate(ia)}),wr=this.getIds(),qt=1/0,tr=1/0,dr=-1/0,Pr=-1/0,Vr=0,Hr=Ir;Vr<Hr.length;Vr+=1){var aa=Hr[Vr];qt=Math.min(qt,aa.x),tr=Math.min(tr,aa.y),dr=Math.max(dr,aa.x),Pr=Math.max(Pr,aa.y)}for(var Qr=function(ia){var Ur=He._tiles[wr[ia]];if(!Ur.holdingForFade()){var wa=Ur.tileID,Oa=Math.pow(2,Et.zoom-Ur.tileID.overscaledZ),ri=xe*Ur.queryPadding*e.EXTENT/Ur.tileSize/Oa,Pi=[wa.getTilePoint(new e.MercatorCoordinate(qt,tr)),wa.getTilePoint(new e.MercatorCoordinate(dr,Pr))];if(Pi[0].x-ri<e.EXTENT&&Pi[0].y-ri<e.EXTENT&&Pi[1].x+ri>=0&&Pi[1].y+ri>=0){var mi=yr.map(function(An){return wa.getTilePoint(An)}),Di=Ir.map(function(An){return wa.getTilePoint(An)});st.push({tile:Ur,tileID:wa,queryGeometry:mi,cameraQueryGeometry:Di,scale:Oa})}}},Gr=0;Gr<wr.length;Gr++)Qr(Gr);return st},K.prototype.getVisibleCoordinates=function(te){for(var xe=this,We=this.getRenderableIds(te).map(function(Ht){return xe._tiles[Ht].tileID}),He=0,st=We;He<st.length;He+=1){var Et=st[He];Et.posMatrix=this.transform.calculatePosMatrix(Et.toUnwrapped())}return We},K.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(Ea(this._source.type))for(var te in this._tiles){var xe=this._tiles[te];if(xe.fadeEndTime!==void 0&&xe.fadeEndTime>=e.browser.now())return!0}return!1},K.prototype.setFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.updateState(te,xe,We)},K.prototype.removeFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.removeFeatureState(te,xe,We)},K.prototype.getFeatureState=function(te,xe){return te=te||"_geojsonTileLayer",this._state.getState(te,xe)},K.prototype.setDependencies=function(te,xe,We){var He=this._tiles[te];He&&He.setDependencies(xe,We)},K.prototype.reloadTilesForDependencies=function(te,xe){for(var We in this._tiles){var He=this._tiles[We];He.hasDependency(te,xe)&&this._reloadTile(We,"reloading")}this._cache.filter(function(st){return!st.hasDependency(te,xe)})},K}(e.Evented);pa.maxOverzooming=10,pa.maxUnderzooming=3;function Xr(ve,K){var ye=Math.abs(ve.wrap*2)-+(ve.wrap<0),te=Math.abs(K.wrap*2)-+(K.wrap<0);return ve.overscaledZ-K.overscaledZ||te-ye||K.canonical.y-ve.canonical.y||K.canonical.x-ve.canonical.x}function Ea(ve){return ve==="raster"||ve==="image"||ve==="video"}function Fa(){return new e.window.Worker(Cs.workerUrl)}var qa="mapboxgl_preloaded_worker_pool",ya=function(){this.active={}};ya.prototype.acquire=function(K){if(!this.workers)for(this.workers=[];this.workers.length<ya.workerCount;)this.workers.push(new Fa);return this.active[K]=!0,this.workers.slice()},ya.prototype.release=function(K){delete this.active[K],this.numActive()===0&&(this.workers.forEach(function(ye){ye.terminate()}),this.workers=null)},ya.prototype.isPreloaded=function(){return!!this.active[qa]},ya.prototype.numActive=function(){return Object.keys(this.active).length};var $a=Math.floor(e.browser.hardwareConcurrency/2);ya.workerCount=Math.max(Math.min($a,6),1);var mt;function gt(){return mt||(mt=new ya),mt}function Er(){var ve=gt();ve.acquire(qa)}function kr(){var ve=mt;ve&&(ve.isPreloaded()&&ve.numActive()===1?(ve.release(qa),mt=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))}function br(ve,K){var ye={};for(var te in ve)te!=="ref"&&(ye[te]=ve[te]);return e.refProperties.forEach(function(xe){xe in K&&(ye[xe]=K[xe])}),ye}function Tr(ve){ve=ve.slice();for(var K=Object.create(null),ye=0;ye<ve.length;ye++)K[ve[ye].id]=ve[ye];for(var te=0;te<ve.length;te++)"ref"in ve[te]&&(ve[te]=br(ve[te],K[ve[te].ref]));return ve}function Mr(){var ve={},K=e.styleSpec.$version;for(var ye in e.styleSpec.$root){var te=e.styleSpec.$root[ye];if(te.required){var xe=null;ye==="version"?xe=K:te.type==="array"?xe=[]:xe={},xe!=null&&(ve[ye]=xe)}}return ve}var Fr={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setGeoJSONSourceData:"setGeoJSONSourceData",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};function Lr(ve,K,ye){ye.push({command:Fr.addSource,args:[ve,K[ve]]})}function Jr(ve,K,ye){K.push({command:Fr.removeSource,args:[ve]}),ye[ve]=!0}function oa(ve,K,ye,te){Jr(ve,ye,te),Lr(ve,K,ye)}function ca(ve,K,ye){var te;for(te in ve[ye])if(ve[ye].hasOwnProperty(te)&&te!=="data"&&!e.deepEqual(ve[ye][te],K[ye][te]))return!1;for(te in K[ye])if(K[ye].hasOwnProperty(te)&&te!=="data"&&!e.deepEqual(ve[ye][te],K[ye][te]))return!1;return!0}function kt(ve,K,ye,te){ve=ve||{},K=K||{};var xe;for(xe in ve)ve.hasOwnProperty(xe)&&(K.hasOwnProperty(xe)||Jr(xe,ye,te));for(xe in K)K.hasOwnProperty(xe)&&(ve.hasOwnProperty(xe)?e.deepEqual(ve[xe],K[xe])||(ve[xe].type==="geojson"&&K[xe].type==="geojson"&&ca(ve,K,xe)?ye.push({command:Fr.setGeoJSONSourceData,args:[xe,K[xe].data]}):oa(xe,K,ye,te)):Lr(xe,K,ye))}function ir(ve,K,ye,te,xe,We){ve=ve||{},K=K||{};var He;for(He in ve)ve.hasOwnProperty(He)&&(e.deepEqual(ve[He],K[He])||ye.push({command:We,args:[te,He,K[He],xe]}));for(He in K)!K.hasOwnProperty(He)||ve.hasOwnProperty(He)||e.deepEqual(ve[He],K[He])||ye.push({command:We,args:[te,He,K[He],xe]})}function mr(ve){return ve.id}function $r(ve,K){return ve[K.id]=K,ve}function ma(ve,K,ye){ve=ve||[],K=K||[];var te=ve.map(mr),xe=K.map(mr),We=ve.reduce($r,{}),He=K.reduce($r,{}),st=te.slice(),Et=Object.create(null),Ht,yr,Ir,wr,qt,tr,dr;for(Ht=0,yr=0;Ht<te.length;Ht++)Ir=te[Ht],He.hasOwnProperty(Ir)?yr++:(ye.push({command:Fr.removeLayer,args:[Ir]}),st.splice(st.indexOf(Ir,yr),1));for(Ht=0,yr=0;Ht<xe.length;Ht++)Ir=xe[xe.length-1-Ht],st[st.length-1-Ht]!==Ir&&(We.hasOwnProperty(Ir)?(ye.push({command:Fr.removeLayer,args:[Ir]}),st.splice(st.lastIndexOf(Ir,st.length-yr),1)):yr++,tr=st[st.length-Ht],ye.push({command:Fr.addLayer,args:[He[Ir],tr]}),st.splice(st.length-Ht,0,Ir),Et[Ir]=!0);for(Ht=0;Ht<xe.length;Ht++)if(Ir=xe[Ht],wr=We[Ir],qt=He[Ir],!(Et[Ir]||e.deepEqual(wr,qt))){if(!e.deepEqual(wr.source,qt.source)||!e.deepEqual(wr["source-layer"],qt["source-layer"])||!e.deepEqual(wr.type,qt.type)){ye.push({command:Fr.removeLayer,args:[Ir]}),tr=st[st.lastIndexOf(Ir)+1],ye.push({command:Fr.addLayer,args:[qt,tr]});continue}ir(wr.layout,qt.layout,ye,Ir,null,Fr.setLayoutProperty),ir(wr.paint,qt.paint,ye,Ir,null,Fr.setPaintProperty),e.deepEqual(wr.filter,qt.filter)||ye.push({command:Fr.setFilter,args:[Ir,qt.filter]}),(!e.deepEqual(wr.minzoom,qt.minzoom)||!e.deepEqual(wr.maxzoom,qt.maxzoom))&&ye.push({command:Fr.setLayerZoomRange,args:[Ir,qt.minzoom,qt.maxzoom]});for(dr in wr)wr.hasOwnProperty(dr)&&(dr==="layout"||dr==="paint"||dr==="filter"||dr==="metadata"||dr==="minzoom"||dr==="maxzoom"||(dr.indexOf("paint.")===0?ir(wr[dr],qt[dr],ye,Ir,dr.slice(6),Fr.setPaintProperty):e.deepEqual(wr[dr],qt[dr])||ye.push({command:Fr.setLayerProperty,args:[Ir,dr,qt[dr]]})));for(dr in qt)!qt.hasOwnProperty(dr)||wr.hasOwnProperty(dr)||dr==="layout"||dr==="paint"||dr==="filter"||dr==="metadata"||dr==="minzoom"||dr==="maxzoom"||(dr.indexOf("paint.")===0?ir(wr[dr],qt[dr],ye,Ir,dr.slice(6),Fr.setPaintProperty):e.deepEqual(wr[dr],qt[dr])||ye.push({command:Fr.setLayerProperty,args:[Ir,dr,qt[dr]]}))}}function Ba(ve,K){if(!ve)return[{command:Fr.setStyle,args:[K]}];var ye=[];try{if(!e.deepEqual(ve.version,K.version))return[{command:Fr.setStyle,args:[K]}];e.deepEqual(ve.center,K.center)||ye.push({command:Fr.setCenter,args:[K.center]}),e.deepEqual(ve.zoom,K.zoom)||ye.push({command:Fr.setZoom,args:[K.zoom]}),e.deepEqual(ve.bearing,K.bearing)||ye.push({command:Fr.setBearing,args:[K.bearing]}),e.deepEqual(ve.pitch,K.pitch)||ye.push({command:Fr.setPitch,args:[K.pitch]}),e.deepEqual(ve.sprite,K.sprite)||ye.push({command:Fr.setSprite,args:[K.sprite]}),e.deepEqual(ve.glyphs,K.glyphs)||ye.push({command:Fr.setGlyphs,args:[K.glyphs]}),e.deepEqual(ve.transition,K.transition)||ye.push({command:Fr.setTransition,args:[K.transition]}),e.deepEqual(ve.light,K.light)||ye.push({command:Fr.setLight,args:[K.light]});var te={},xe=[];kt(ve.sources,K.sources,xe,te);var We=[];ve.layers&&ve.layers.forEach(function(He){te[He.source]?ye.push({command:Fr.removeLayer,args:[He.id]}):We.push(He)}),ye=ye.concat(xe),ma(We,K.layers,ye)}catch(He){console.warn("Unable to compute style diff:",He),ye=[{command:Fr.setStyle,args:[K]}]}return ye}var Ca=function(K,ye){this.reset(K,ye)};Ca.prototype.reset=function(K,ye){this.points=K||[],this._distances=[0];for(var te=1;te<this.points.length;te++)this._distances[te]=this._distances[te-1]+this.points[te].dist(this.points[te-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(ye||0,this.length*.5),this.paddedLength=this.length-this.padding*2},Ca.prototype.lerp=function(K){if(this.points.length===1)return this.points[0];K=e.clamp(K,0,1);for(var ye=1,te=this._distances[ye],xe=K*this.paddedLength+this.padding;te<xe&&ye<this._distances.length;)te=this._distances[++ye];var We=ye-1,He=this._distances[We],st=te-He,Et=st>0?(xe-He)/st:0;return this.points[We].mult(1-Et).add(this.points[ye].mult(Et))};var da=function(K,ye,te){var xe=this.boxCells=[],We=this.circleCells=[];this.xCellCount=Math.ceil(K/te),this.yCellCount=Math.ceil(ye/te);for(var He=0;He<this.xCellCount*this.yCellCount;He++)xe.push([]),We.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=K,this.height=ye,this.xScale=this.xCellCount/K,this.yScale=this.yCellCount/ye,this.boxUid=0,this.circleUid=0};da.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},da.prototype.insert=function(K,ye,te,xe,We){this._forEachCell(ye,te,xe,We,this._insertBoxCell,this.boxUid++),this.boxKeys.push(K),this.bboxes.push(ye),this.bboxes.push(te),this.bboxes.push(xe),this.bboxes.push(We)},da.prototype.insertCircle=function(K,ye,te,xe){this._forEachCell(ye-xe,te-xe,ye+xe,te+xe,this._insertCircleCell,this.circleUid++),this.circleKeys.push(K),this.circles.push(ye),this.circles.push(te),this.circles.push(xe)},da.prototype._insertBoxCell=function(K,ye,te,xe,We,He){this.boxCells[We].push(He)},da.prototype._insertCircleCell=function(K,ye,te,xe,We,He){this.circleCells[We].push(He)},da.prototype._query=function(K,ye,te,xe,We,He){if(te<0||K>this.width||xe<0||ye>this.height)return We?!1:[];var st=[];if(K<=0&&ye<=0&&this.width<=te&&this.height<=xe){if(We)return!0;for(var Et=0;Et<this.boxKeys.length;Et++)st.push({key:this.boxKeys[Et],x1:this.bboxes[Et*4],y1:this.bboxes[Et*4+1],x2:this.bboxes[Et*4+2],y2:this.bboxes[Et*4+3]});for(var Ht=0;Ht<this.circleKeys.length;Ht++){var yr=this.circles[Ht*3],Ir=this.circles[Ht*3+1],wr=this.circles[Ht*3+2];st.push({key:this.circleKeys[Ht],x1:yr-wr,y1:Ir-wr,x2:yr+wr,y2:Ir+wr})}return He?st.filter(He):st}else{var qt={hitTest:We,seenUids:{box:{},circle:{}}};return this._forEachCell(K,ye,te,xe,this._queryCell,st,qt,He),We?st.length>0:st}},da.prototype._queryCircle=function(K,ye,te,xe,We){var He=K-te,st=K+te,Et=ye-te,Ht=ye+te;if(st<0||He>this.width||Ht<0||Et>this.height)return xe?!1:[];var yr=[],Ir={hitTest:xe,circle:{x:K,y:ye,radius:te},seenUids:{box:{},circle:{}}};return this._forEachCell(He,Et,st,Ht,this._queryCellCircle,yr,Ir,We),xe?yr.length>0:yr},da.prototype.query=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!1,We)},da.prototype.hitTest=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!0,We)},da.prototype.hitTestCircle=function(K,ye,te,xe){return this._queryCircle(K,ye,te,!0,xe)},da.prototype._queryCell=function(K,ye,te,xe,We,He,st,Et){var Ht=st.seenUids,yr=this.boxCells[We];if(yr!==null)for(var Ir=this.bboxes,wr=0,qt=yr;wr<qt.length;wr+=1){var tr=qt[wr];if(!Ht.box[tr]){Ht.box[tr]=!0;var dr=tr*4;if(K<=Ir[dr+2]&&ye<=Ir[dr+3]&&te>=Ir[dr+0]&&xe>=Ir[dr+1]&&(!Et||Et(this.boxKeys[tr]))){if(st.hitTest)return He.push(!0),!0;He.push({key:this.boxKeys[tr],x1:Ir[dr],y1:Ir[dr+1],x2:Ir[dr+2],y2:Ir[dr+3]})}}}var Pr=this.circleCells[We];if(Pr!==null)for(var Vr=this.circles,Hr=0,aa=Pr;Hr<aa.length;Hr+=1){var Qr=aa[Hr];if(!Ht.circle[Qr]){Ht.circle[Qr]=!0;var Gr=Qr*3;if(this._circleAndRectCollide(Vr[Gr],Vr[Gr+1],Vr[Gr+2],K,ye,te,xe)&&(!Et||Et(this.circleKeys[Qr]))){if(st.hitTest)return He.push(!0),!0;var ia=Vr[Gr],Ur=Vr[Gr+1],wa=Vr[Gr+2];He.push({key:this.circleKeys[Qr],x1:ia-wa,y1:Ur-wa,x2:ia+wa,y2:Ur+wa})}}}},da.prototype._queryCellCircle=function(K,ye,te,xe,We,He,st,Et){var Ht=st.circle,yr=st.seenUids,Ir=this.boxCells[We];if(Ir!==null)for(var wr=this.bboxes,qt=0,tr=Ir;qt<tr.length;qt+=1){var dr=tr[qt];if(!yr.box[dr]){yr.box[dr]=!0;var Pr=dr*4;if(this._circleAndRectCollide(Ht.x,Ht.y,Ht.radius,wr[Pr+0],wr[Pr+1],wr[Pr+2],wr[Pr+3])&&(!Et||Et(this.boxKeys[dr])))return He.push(!0),!0}}var Vr=this.circleCells[We];if(Vr!==null)for(var Hr=this.circles,aa=0,Qr=Vr;aa<Qr.length;aa+=1){var Gr=Qr[aa];if(!yr.circle[Gr]){yr.circle[Gr]=!0;var ia=Gr*3;if(this._circlesCollide(Hr[ia],Hr[ia+1],Hr[ia+2],Ht.x,Ht.y,Ht.radius)&&(!Et||Et(this.circleKeys[Gr])))return He.push(!0),!0}}},da.prototype._forEachCell=function(K,ye,te,xe,We,He,st,Et){for(var Ht=this._convertToXCellCoord(K),yr=this._convertToYCellCoord(ye),Ir=this._convertToXCellCoord(te),wr=this._convertToYCellCoord(xe),qt=Ht;qt<=Ir;qt++)for(var tr=yr;tr<=wr;tr++){var dr=this.xCellCount*tr+qt;if(We.call(this,K,ye,te,xe,dr,He,st,Et))return}},da.prototype._convertToXCellCoord=function(K){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(K*this.xScale)))},da.prototype._convertToYCellCoord=function(K){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(K*this.yScale)))},da.prototype._circlesCollide=function(K,ye,te,xe,We,He){var st=xe-K,Et=We-ye,Ht=te+He;return Ht*Ht>st*st+Et*Et},da.prototype._circleAndRectCollide=function(K,ye,te,xe,We,He,st){var Et=(He-xe)/2,Ht=Math.abs(K-(xe+Et));if(Ht>Et+te)return!1;var yr=(st-We)/2,Ir=Math.abs(ye-(We+yr));if(Ir>yr+te)return!1;if(Ht<=Et||Ir<=yr)return!0;var wr=Ht-Et,qt=Ir-yr;return wr*wr+qt*qt<=te*te};function Sa(ve,K,ye,te,xe){var We=e.create();return K?(e.scale(We,We,[1/xe,1/xe,1]),ye||e.rotateZ(We,We,te.angle)):e.multiply(We,te.labelPlaneMatrix,ve),We}function Ti(ve,K,ye,te,xe){if(K){var We=e.clone(ve);return e.scale(We,We,[xe,xe,1]),ye||e.rotateZ(We,We,-te.angle),We}else return te.glCoordMatrix}function ai(ve,K){var ye=[ve.x,ve.y,0,1];as(ye,ye,K);var te=ye[3];return{point:new e.Point(ye[0]/te,ye[1]/te),signedDistanceFromCamera:te}}function an(ve,K){return .5+.5*(ve/K)}function sn(ve,K){var ye=ve[0]/ve[3],te=ve[1]/ve[3],xe=ye>=-K[0]&&ye<=K[0]&&te>=-K[1]&&te<=K[1];return xe}function Mn(ve,K,ye,te,xe,We,He,st){var Et=te?ve.textSizeData:ve.iconSizeData,Ht=e.evaluateSizeForZoom(Et,ye.transform.zoom),yr=[256/ye.width*2+1,256/ye.height*2+1],Ir=te?ve.text.dynamicLayoutVertexArray:ve.icon.dynamicLayoutVertexArray;Ir.clear();for(var wr=ve.lineVertexArray,qt=te?ve.text.placedSymbolArray:ve.icon.placedSymbolArray,tr=ye.transform.width/ye.transform.height,dr=!1,Pr=0;Pr<qt.length;Pr++){var Vr=qt.get(Pr);if(Vr.hidden||Vr.writingMode===e.WritingMode.vertical&&!dr){zo(Vr.numGlyphs,Ir);continue}dr=!1;var Hr=[Vr.anchorX,Vr.anchorY,0,1];if(e.transformMat4(Hr,Hr,K),!sn(Hr,yr)){zo(Vr.numGlyphs,Ir);continue}var aa=Hr[3],Qr=an(ye.transform.cameraToCenterDistance,aa),Gr=e.evaluateSizeForFeature(Et,Ht,Vr),ia=He?Gr/Qr:Gr*Qr,Ur=new e.Point(Vr.anchorX,Vr.anchorY),wa=ai(Ur,xe).point,Oa={},ri=Cn(Vr,ia,!1,st,K,xe,We,ve.glyphOffsetArray,wr,Ir,wa,Ur,Oa,tr);dr=ri.useVertical,(ri.notEnoughRoom||dr||ri.needsFlipping&&Cn(Vr,ia,!0,st,K,xe,We,ve.glyphOffsetArray,wr,Ir,wa,Ur,Oa,tr).notEnoughRoom)&&zo(Vr.numGlyphs,Ir)}te?ve.text.dynamicLayoutVertexBuffer.updateData(Ir):ve.icon.dynamicLayoutVertexBuffer.updateData(Ir)}function On(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=st.glyphStartIndex+st.numGlyphs,wr=st.lineStartIndex,qt=st.lineStartIndex+st.lineLength,tr=K.getoffsetX(st.glyphStartIndex),dr=K.getoffsetX(Ir-1),Pr=Xi(ve*tr,ye,te,xe,We,He,st.segment,wr,qt,Et,Ht,yr);if(!Pr)return null;var Vr=Xi(ve*dr,ye,te,xe,We,He,st.segment,wr,qt,Et,Ht,yr);return Vr?{first:Pr,last:Vr}:null}function $n(ve,K,ye,te){if(ve===e.WritingMode.horizontal){var xe=Math.abs(ye.y-K.y),We=Math.abs(ye.x-K.x)*te;if(xe>We)return{useVertical:!0}}return(ve===e.WritingMode.vertical?K.y<ye.y:K.x>ye.x)?{needsFlipping:!0}:null}function Cn(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=K/24,dr=ve.lineOffsetX*tr,Pr=ve.lineOffsetY*tr,Vr;if(ve.numGlyphs>1){var Hr=ve.glyphStartIndex+ve.numGlyphs,aa=ve.lineStartIndex,Qr=ve.lineStartIndex+ve.lineLength,Gr=On(tr,st,dr,Pr,ye,yr,Ir,ve,Et,We,wr);if(!Gr)return{notEnoughRoom:!0};var ia=ai(Gr.first.point,He).point,Ur=ai(Gr.last.point,He).point;if(te&&!ye){var wa=$n(ve.writingMode,ia,Ur,qt);if(wa)return wa}Vr=[Gr.first];for(var Oa=ve.glyphStartIndex+1;Oa<Hr-1;Oa++)Vr.push(Xi(tr*st.getoffsetX(Oa),dr,Pr,ye,yr,Ir,ve.segment,aa,Qr,Et,We,wr));Vr.push(Gr.last)}else{if(te&&!ye){var ri=ai(Ir,xe).point,Pi=ve.lineStartIndex+ve.segment+1,mi=new e.Point(Et.getx(Pi),Et.gety(Pi)),Di=ai(mi,xe),An=Di.signedDistanceFromCamera>0?Di.point:Lo(Ir,mi,ri,1,xe),ln=$n(ve.writingMode,ri,An,qt);if(ln)return ln}var Ii=Xi(tr*st.getoffsetX(ve.glyphStartIndex),dr,Pr,ye,yr,Ir,ve.segment,ve.lineStartIndex,ve.lineStartIndex+ve.lineLength,Et,We,wr);if(!Ii)return{notEnoughRoom:!0};Vr=[Ii]}for(var Wi=0,Hi=Vr;Wi<Hi.length;Wi+=1){var yn=Hi[Wi];e.addDynamicAttributes(Ht,yn.point,yn.angle)}return{}}function Lo(ve,K,ye,te,xe){var We=ai(ve.add(ve.sub(K)._unit()),xe).point,He=ye.sub(We);return ye.add(He._mult(te/He.mag()))}function Xi(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir){var wr=te?ve-K:ve+K,qt=wr>0?1:-1,tr=0;te&&(qt*=-1,tr=Math.PI),qt<0&&(tr+=Math.PI);for(var dr=qt>0?st+He:st+He+1,Pr=xe,Vr=xe,Hr=0,aa=0,Qr=Math.abs(wr),Gr=[];Hr+aa<=Qr;){if(dr+=qt,dr<st||dr>=Et)return null;if(Vr=Pr,Gr.push(Pr),Pr=Ir[dr],Pr===void 0){var ia=new e.Point(Ht.getx(dr),Ht.gety(dr)),Ur=ai(ia,yr);if(Ur.signedDistanceFromCamera>0)Pr=Ir[dr]=Ur.point;else{var wa=dr-qt,Oa=Hr===0?We:new e.Point(Ht.getx(wa),Ht.gety(wa));Pr=Lo(Oa,ia,Vr,Qr-Hr+1,yr)}}Hr+=aa,aa=Vr.dist(Pr)}var ri=(Qr-Hr)/aa,Pi=Pr.sub(Vr),mi=Pi.mult(ri)._add(Vr);mi._add(Pi._unit()._perp()._mult(ye*qt));var Di=tr+Math.atan2(Pr.y-Vr.y,Pr.x-Vr.x);return Gr.push(mi),{point:mi,angle:Di,path:Gr}}var Jo=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function zo(ve,K){for(var ye=0;ye<ve;ye++){var te=K.length;K.resize(te+4),K.float32.set(Jo,te*3)}}function as(ve,K,ye){var te=K[0],xe=K[1];return ve[0]=ye[0]*te+ye[4]*xe+ye[12],ve[1]=ye[1]*te+ye[5]*xe+ye[13],ve[3]=ye[3]*te+ye[7]*xe+ye[15],ve}var Pn=100,go=function(K,ye,te){ye===void 0&&(ye=new da(K.width+2*Pn,K.height+2*Pn,25)),te===void 0&&(te=new da(K.width+2*Pn,K.height+2*Pn,25)),this.transform=K,this.grid=ye,this.ignoredGrid=te,this.pitchfactor=Math.cos(K._pitch)*K.cameraToCenterDistance,this.screenRightBoundary=K.width+Pn,this.screenBottomBoundary=K.height+Pn,this.gridRightBoundary=K.width+2*Pn,this.gridBottomBoundary=K.height+2*Pn};go.prototype.placeCollisionBox=function(K,ye,te,xe,We){var He=this.projectAndGetPerspectiveRatio(xe,K.anchorPointX,K.anchorPointY),st=te*He.perspectiveRatio,Et=K.x1*st+He.point.x,Ht=K.y1*st+He.point.y,yr=K.x2*st+He.point.x,Ir=K.y2*st+He.point.y;return!this.isInsideGrid(Et,Ht,yr,Ir)||!ye&&this.grid.hitTest(Et,Ht,yr,Ir,We)?{box:[],offscreen:!1}:{box:[Et,Ht,yr,Ir],offscreen:this.isOffscreen(Et,Ht,yr,Ir)}},go.prototype.placeCollisionCircles=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=[],dr=new e.Point(ye.anchorX,ye.anchorY),Pr=ai(dr,He),Vr=an(this.transform.cameraToCenterDistance,Pr.signedDistanceFromCamera),Hr=yr?We/Vr:We*Vr,aa=Hr/e.ONE_EM,Qr=ai(dr,st).point,Gr={},ia=ye.lineOffsetX*aa,Ur=ye.lineOffsetY*aa,wa=On(aa,xe,ia,Ur,!1,Qr,dr,ye,te,st,Gr),Oa=!1,ri=!1,Pi=!0;if(wa){for(var mi=wr*.5*Vr+qt,Di=new e.Point(-Pn,-Pn),An=new e.Point(this.screenRightBoundary,this.screenBottomBoundary),ln=new Ca,Ii=wa.first,Wi=wa.last,Hi=[],yn=Ii.path.length-1;yn>=1;yn--)Hi.push(Ii.path[yn]);for(var zn=1;zn<Wi.path.length;zn++)Hi.push(Wi.path[zn]);var ms=mi*2.5;if(Et){var us=Hi.map(function(Ep){return ai(Ep,Et)});us.some(function(Ep){return Ep.signedDistanceFromCamera<=0})?Hi=[]:Hi=us.map(function(Ep){return Ep.point})}var Vs=[];if(Hi.length>0){for(var qo=Hi[0].clone(),Ls=Hi[0].clone(),wl=1;wl<Hi.length;wl++)qo.x=Math.min(qo.x,Hi[wl].x),qo.y=Math.min(qo.y,Hi[wl].y),Ls.x=Math.max(Ls.x,Hi[wl].x),Ls.y=Math.max(Ls.y,Hi[wl].y);qo.x>=Di.x&&Ls.x<=An.x&&qo.y>=Di.y&&Ls.y<=An.y?Vs=[Hi]:Ls.x<Di.x||qo.x>An.x||Ls.y<Di.y||qo.y>An.y?Vs=[]:Vs=e.clipLine([Hi],Di.x,Di.y,An.x,An.y)}for(var Ru=0,Ap=Vs;Ru<Ap.length;Ru+=1){var Sp=Ap[Ru];ln.reset(Sp,mi*.25);var Eh=0;ln.length<=.5*mi?Eh=1:Eh=Math.ceil(ln.paddedLength/ms)+1;for(var Vp=0;Vp<Eh;Vp++){var Vd=Vp/Math.max(Eh-1,1),td=ln.lerp(Vd),kh=td.x+Pn,rd=td.y+Pn;tr.push(kh,rd,mi,0);var Xh=kh-mi,Ch=rd-mi,Mp=kh+mi,qp=rd+mi;if(Pi=Pi&&this.isOffscreen(Xh,Ch,Mp,qp),ri=ri||this.isInsideGrid(Xh,Ch,Mp,qp),!K&&this.grid.hitTestCircle(kh,rd,mi,Ir)&&(Oa=!0,!Ht))return{circles:[],offscreen:!1,collisionDetected:Oa}}}}return{circles:!Ht&&Oa||!ri?[]:tr,offscreen:Pi,collisionDetected:Oa}},go.prototype.queryRenderedSymbols=function(K){if(K.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};for(var ye=[],te=1/0,xe=1/0,We=-1/0,He=-1/0,st=0,Et=K;st<Et.length;st+=1){var Ht=Et[st],yr=new e.Point(Ht.x+Pn,Ht.y+Pn);te=Math.min(te,yr.x),xe=Math.min(xe,yr.y),We=Math.max(We,yr.x),He=Math.max(He,yr.y),ye.push(yr)}for(var Ir=this.grid.query(te,xe,We,He).concat(this.ignoredGrid.query(te,xe,We,He)),wr={},qt={},tr=0,dr=Ir;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=Pr.key;if(wr[Vr.bucketInstanceId]===void 0&&(wr[Vr.bucketInstanceId]={}),!wr[Vr.bucketInstanceId][Vr.featureIndex]){var Hr=[new e.Point(Pr.x1,Pr.y1),new e.Point(Pr.x2,Pr.y1),new e.Point(Pr.x2,Pr.y2),new e.Point(Pr.x1,Pr.y2)];e.polygonIntersectsPolygon(ye,Hr)&&(wr[Vr.bucketInstanceId][Vr.featureIndex]=!0,qt[Vr.bucketInstanceId]===void 0&&(qt[Vr.bucketInstanceId]=[]),qt[Vr.bucketInstanceId].push(Vr.featureIndex))}}return qt},go.prototype.insertCollisionBox=function(K,ye,te,xe,We){var He=ye?this.ignoredGrid:this.grid,st={bucketInstanceId:te,featureIndex:xe,collisionGroupID:We};He.insert(st,K[0],K[1],K[2],K[3])},go.prototype.insertCollisionCircles=function(K,ye,te,xe,We){for(var He=ye?this.ignoredGrid:this.grid,st={bucketInstanceId:te,featureIndex:xe,collisionGroupID:We},Et=0;Et<K.length;Et+=4)He.insertCircle(st,K[Et],K[Et+1],K[Et+2])},go.prototype.projectAndGetPerspectiveRatio=function(K,ye,te){var xe=[ye,te,0,1];as(xe,xe,K);var We=new e.Point((xe[0]/xe[3]+1)/2*this.transform.width+Pn,(-xe[1]/xe[3]+1)/2*this.transform.height+Pn);return{point:We,perspectiveRatio:.5+.5*(this.transform.cameraToCenterDistance/xe[3])}},go.prototype.isOffscreen=function(K,ye,te,xe){return te<Pn||K>=this.screenRightBoundary||xe<Pn||ye>this.screenBottomBoundary},go.prototype.isInsideGrid=function(K,ye,te,xe){return te>=0&&K<this.gridRightBoundary&&xe>=0&&ye<this.gridBottomBoundary},go.prototype.getViewportMatrix=function(){var K=e.identity([]);return e.translate(K,K,[-Pn,-Pn,0]),K};function In(ve,K,ye){return K*(e.EXTENT/(ve.tileSize*Math.pow(2,ye-ve.tileID.overscaledZ)))}var Do=function(K,ye,te,xe){K?this.opacity=Math.max(0,Math.min(1,K.opacity+(K.placed?ye:-ye))):this.opacity=xe&&te?1:0,this.placed=te};Do.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Ho=function(K,ye,te,xe,We){this.text=new Do(K?K.text:null,ye,te,We),this.icon=new Do(K?K.icon:null,ye,xe,We)};Ho.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var Qo=function(K,ye,te){this.text=K,this.icon=ye,this.skipFade=te},Xn=function(){this.invProjMatrix=e.create(),this.viewportMatrix=e.create(),this.circles=[]},po=function(K,ye,te,xe,We){this.bucketInstanceId=K,this.featureIndex=ye,this.sourceLayerIndex=te,this.bucketIndex=xe,this.tileID=We},ys=function(K){this.crossSourceCollisions=K,this.maxGroupID=0,this.collisionGroups={}};ys.prototype.get=function(K){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[K]){var ye=++this.maxGroupID;this.collisionGroups[K]={ID:ye,predicate:function(te){return te.collisionGroupID===ye}}}return this.collisionGroups[K]};function Is(ve,K,ye,te,xe){var We=e.getAnchorAlignment(ve),He=We.horizontalAlign,st=We.verticalAlign,Et=-(He-.5)*K,Ht=-(st-.5)*ye,yr=e.evaluateVariableOffset(ve,te);return new e.Point(Et+yr[0]*xe,Ht+yr[1]*xe)}function Fs(ve,K,ye,te,xe,We){var He=ve.x1,st=ve.x2,Et=ve.y1,Ht=ve.y2,yr=ve.anchorPointX,Ir=ve.anchorPointY,wr=new e.Point(K,ye);return te&&wr._rotate(xe?We:-We),{x1:He+wr.x,y1:Et+wr.y,x2:st+wr.x,y2:Ht+wr.y,anchorPointX:yr,anchorPointY:Ir}}var $o=function(K,ye,te,xe){this.transform=K.clone(),this.collisionIndex=new go(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ye,this.retainedQueryData={},this.collisionGroups=new ys(te),this.collisionCircleArrays={},this.prevPlacement=xe,xe&&(xe.prevPlacement=void 0),this.placedOrientations={}};$o.prototype.getBucketParts=function(K,ye,te,xe){var We=te.getBucket(ye),He=te.latestFeatureIndex;if(!(!We||!He||ye.id!==We.layerIds[0])){var st=te.collisionBoxArray,Et=We.layers[0].layout,Ht=Math.pow(2,this.transform.zoom-te.tileID.overscaledZ),yr=te.tileSize/e.EXTENT,Ir=this.transform.calculatePosMatrix(te.tileID.toUnwrapped()),wr=Et.get("text-pitch-alignment")==="map",qt=Et.get("text-rotation-alignment")==="map",tr=In(te,1,this.transform.zoom),dr=Sa(Ir,wr,qt,this.transform,tr),Pr=null;if(wr){var Vr=Ti(Ir,wr,qt,this.transform,tr);Pr=e.multiply([],this.transform.labelPlaneMatrix,Vr)}this.retainedQueryData[We.bucketInstanceId]=new po(We.bucketInstanceId,He,We.sourceLayerIndex,We.index,te.tileID);var Hr={bucket:We,layout:Et,posMatrix:Ir,textLabelPlaneMatrix:dr,labelToScreenMatrix:Pr,scale:Ht,textPixelRatio:yr,holdingForFade:te.holdingForFade(),collisionBoxArray:st,partiallyEvaluatedTextSize:e.evaluateSizeForZoom(We.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(We.sourceID)};if(xe)for(var aa=0,Qr=We.sortKeyRanges;aa<Qr.length;aa+=1){var Gr=Qr[aa],ia=Gr.sortKey,Ur=Gr.symbolInstanceStart,wa=Gr.symbolInstanceEnd;K.push({sortKey:ia,symbolInstanceStart:Ur,symbolInstanceEnd:wa,parameters:Hr})}else K.push({symbolInstanceStart:0,symbolInstanceEnd:We.symbolInstances.length,parameters:Hr})}},$o.prototype.attemptAnchorPlacement=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt,tr,dr){var Pr=[wr.textOffset0,wr.textOffset1],Vr=Is(K,te,xe,Pr,We),Hr=this.collisionIndex.placeCollisionBox(Fs(ye,Vr.x,Vr.y,He,st,this.transform.angle),Ir,Et,Ht,yr.predicate);if(dr){var aa=this.collisionIndex.placeCollisionBox(Fs(dr,Vr.x,Vr.y,He,st,this.transform.angle),Ir,Et,Ht,yr.predicate);if(aa.box.length===0)return}if(Hr.box.length>0){var Qr;return this.prevPlacement&&this.prevPlacement.variableOffsets[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID].text&&(Qr=this.prevPlacement.variableOffsets[wr.crossTileID].anchor),this.variableOffsets[wr.crossTileID]={textOffset:Pr,width:te,height:xe,anchor:K,textBoxScale:We,prevAnchor:Qr},this.markUsedJustification(qt,K,wr,tr),qt.allowVerticalPlacement&&(this.markUsedOrientation(qt,tr,wr),this.placedOrientations[wr.crossTileID]=tr),{shift:Vr,placedGlyphBoxes:Hr}}},$o.prototype.placeLayerBucketPart=function(K,ye,te){var xe=this,We=K.parameters,He=We.bucket,st=We.layout,Et=We.posMatrix,Ht=We.textLabelPlaneMatrix,yr=We.labelToScreenMatrix,Ir=We.textPixelRatio,wr=We.holdingForFade,qt=We.collisionBoxArray,tr=We.partiallyEvaluatedTextSize,dr=We.collisionGroup,Pr=st.get("text-optional"),Vr=st.get("icon-optional"),Hr=st.get("text-allow-overlap"),aa=st.get("icon-allow-overlap"),Qr=st.get("text-rotation-alignment")==="map",Gr=st.get("text-pitch-alignment")==="map",ia=st.get("icon-text-fit")!=="none",Ur=st.get("symbol-z-order")==="viewport-y",wa=Hr&&(aa||!He.hasIconData()||Vr),Oa=aa&&(Hr||!He.hasTextData()||Pr);!He.collisionArrays&&qt&&He.deserializeCollisionBoxes(qt);var ri=function(Ii,Wi){if(!ye[Ii.crossTileID]){if(wr){xe.placements[Ii.crossTileID]=new Qo(!1,!1,!1);return}var Hi=!1,yn=!1,zn=!0,ms=null,us={box:null,offscreen:null},Vs={box:null,offscreen:null},qo=null,Ls=null,wl=null,Ru=0,Ap=0,Sp=0;Wi.textFeatureIndex?Ru=Wi.textFeatureIndex:Ii.useRuntimeCollisionCircles&&(Ru=Ii.featureIndex),Wi.verticalTextFeatureIndex&&(Ap=Wi.verticalTextFeatureIndex);var Eh=Wi.textBox;if(Eh){var Vp=function(Du){var Bl=e.WritingMode.horizontal;if(He.allowVerticalPlacement&&!Du&&xe.prevPlacement){var Lh=xe.prevPlacement.placedOrientations[Ii.crossTileID];Lh&&(xe.placedOrientations[Ii.crossTileID]=Lh,Bl=Lh,xe.markUsedOrientation(He,Bl,Ii))}return Bl},Vd=function(Du,Bl){if(He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Wi.verticalTextBox)for(var Lh=0,Iv=He.writingModes;Lh<Iv.length;Lh+=1){var om=Iv[Lh];if(om===e.WritingMode.vertical?(us=Bl(),Vs=us):us=Du(),us&&us.box&&us.box.length)break}else us=Du()};if(st.get("text-variable-anchor")){var Xh=st.get("text-variable-anchor");if(xe.prevPlacement&&xe.prevPlacement.variableOffsets[Ii.crossTileID]){var Ch=xe.prevPlacement.variableOffsets[Ii.crossTileID];Xh.indexOf(Ch.anchor)>0&&(Xh=Xh.filter(function(Du){return Du!==Ch.anchor}),Xh.unshift(Ch.anchor))}var Mp=function(Du,Bl,Lh){for(var Iv=Du.x2-Du.x1,om=Du.y2-Du.y1,Ql=Ii.textBoxScale,xg=ia&&!aa?Bl:null,sv={box:[],offscreen:!1},y0=Hr?Xh.length*2:Xh.length,kp=0;kp<y0;++kp){var lv=Xh[kp%Xh.length],_0=kp>=Xh.length,bg=xe.attemptAnchorPlacement(lv,Du,Iv,om,Ql,Qr,Gr,Ir,Et,dr,_0,Ii,He,Lh,xg);if(bg&&(sv=bg.placedGlyphBoxes,sv&&sv.box&&sv.box.length)){Hi=!0,ms=bg.shift;break}}return sv},qp=function(){return Mp(Eh,Wi.iconBox,e.WritingMode.horizontal)},Ep=function(){var Du=Wi.verticalTextBox,Bl=us&&us.box&&us.box.length;return He.allowVerticalPlacement&&!Bl&&Ii.numVerticalGlyphVertices>0&&Du?Mp(Du,Wi.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(qp,Ep),us&&(Hi=us.box,zn=us.offscreen);var Cv=Vp(us&&us.box);if(!Hi&&xe.prevPlacement){var qd=xe.prevPlacement.variableOffsets[Ii.crossTileID];qd&&(xe.variableOffsets[Ii.crossTileID]=qd,xe.markUsedJustification(He,qd.anchor,Ii,Cv))}}else{var td=function(Du,Bl){var Lh=xe.collisionIndex.placeCollisionBox(Du,Hr,Ir,Et,dr.predicate);return Lh&&Lh.box&&Lh.box.length&&(xe.markUsedOrientation(He,Bl,Ii),xe.placedOrientations[Ii.crossTileID]=Bl),Lh},kh=function(){return td(Eh,e.WritingMode.horizontal)},rd=function(){var Du=Wi.verticalTextBox;return He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Du?td(Du,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(kh,rd),Vp(us&&us.box&&us.box.length)}}if(qo=us,Hi=qo&&qo.box&&qo.box.length>0,zn=qo&&qo.offscreen,Ii.useRuntimeCollisionCircles){var Sf=He.text.placedSymbolArray.get(Ii.centerJustifiedTextSymbolIndex),Hd=e.evaluateSizeForFeature(He.textSizeData,tr,Sf),Lv=st.get("text-padding"),eh=Ii.collisionCircleDiameter;Ls=xe.collisionIndex.placeCollisionCircles(Hr,Sf,He.lineVertexArray,He.glyphOffsetArray,Hd,Et,Ht,yr,te,Gr,dr.predicate,eh,Lv),Hi=Hr||Ls.circles.length>0&&!Ls.collisionDetected,zn=zn&&Ls.offscreen}if(Wi.iconFeatureIndex&&(Sp=Wi.iconFeatureIndex),Wi.iconBox){var iv=function(Du){var Bl=ia&&ms?Fs(Du,ms.x,ms.y,Qr,Gr,xe.transform.angle):Du;return xe.collisionIndex.placeCollisionBox(Bl,aa,Ir,Et,dr.predicate)};Vs&&Vs.box&&Vs.box.length&&Wi.verticalIconBox?(wl=iv(Wi.verticalIconBox),yn=wl.box.length>0):(wl=iv(Wi.iconBox),yn=wl.box.length>0),zn=zn&&wl.offscreen}var im=Pr||Ii.numHorizontalGlyphVertices===0&&Ii.numVerticalGlyphVertices===0,nm=Vr||Ii.numIconVertices===0;if(!im&&!nm?yn=Hi=yn&&Hi:nm?im||(yn=yn&&Hi):Hi=yn&&Hi,Hi&&qo&&qo.box&&(Vs&&Vs.box&&Ap?xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ap,dr.ID):xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID)),yn&&wl&&xe.collisionIndex.insertCollisionBox(wl.box,st.get("icon-ignore-placement"),He.bucketInstanceId,Sp,dr.ID),Ls&&(Hi&&xe.collisionIndex.insertCollisionCircles(Ls.circles,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID),te)){var Pv=He.bucketInstanceId,nv=xe.collisionCircleArrays[Pv];nv===void 0&&(nv=xe.collisionCircleArrays[Pv]=new Xn);for(var ov=0;ov<Ls.circles.length;ov+=4)nv.circles.push(Ls.circles[ov+0]),nv.circles.push(Ls.circles[ov+1]),nv.circles.push(Ls.circles[ov+2]),nv.circles.push(Ls.collisionDetected?1:0)}xe.placements[Ii.crossTileID]=new Qo(Hi||wa,yn||Oa,zn||He.justReloaded),ye[Ii.crossTileID]=!0}};if(Ur)for(var Pi=He.getSortedSymbolIndexes(this.transform.angle),mi=Pi.length-1;mi>=0;--mi){var Di=Pi[mi];ri(He.symbolInstances.get(Di),He.collisionArrays[Di])}else for(var An=K.symbolInstanceStart;An<K.symbolInstanceEnd;An++)ri(He.symbolInstances.get(An),He.collisionArrays[An]);if(te&&He.bucketInstanceId in this.collisionCircleArrays){var ln=this.collisionCircleArrays[He.bucketInstanceId];e.invert(ln.invProjMatrix,Et),ln.viewportMatrix=this.collisionIndex.getViewportMatrix()}He.justReloaded=!1},$o.prototype.markUsedJustification=function(K,ye,te,xe){var We={left:te.leftJustifiedTextSymbolIndex,center:te.centerJustifiedTextSymbolIndex,right:te.rightJustifiedTextSymbolIndex},He;xe===e.WritingMode.vertical?He=te.verticalPlacedTextSymbolIndex:He=We[e.getAnchorJustification(ye)];for(var st=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex,te.verticalPlacedTextSymbolIndex],Et=0,Ht=st;Et<Ht.length;Et+=1){var yr=Ht[Et];yr>=0&&(He>=0&&yr!==He?K.text.placedSymbolArray.get(yr).crossTileID=0:K.text.placedSymbolArray.get(yr).crossTileID=te.crossTileID)}},$o.prototype.markUsedOrientation=function(K,ye,te){for(var xe=ye===e.WritingMode.horizontal||ye===e.WritingMode.horizontalOnly?ye:0,We=ye===e.WritingMode.vertical?ye:0,He=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex],st=0,Et=He;st<Et.length;st+=1){var Ht=Et[st];K.text.placedSymbolArray.get(Ht).placedOrientation=xe}te.verticalPlacedTextSymbolIndex&&(K.text.placedSymbolArray.get(te.verticalPlacedTextSymbolIndex).placedOrientation=We)},$o.prototype.commit=function(K){this.commitTime=K,this.zoomAtLastRecencyCheck=this.transform.zoom;var ye=this.prevPlacement,te=!1;this.prevZoomAdjustment=ye?ye.zoomAdjustment(this.transform.zoom):0;var xe=ye?ye.symbolFadeChange(K):1,We=ye?ye.opacities:{},He=ye?ye.variableOffsets:{},st=ye?ye.placedOrientations:{};for(var Et in this.placements){var Ht=this.placements[Et],yr=We[Et];yr?(this.opacities[Et]=new Ho(yr,xe,Ht.text,Ht.icon),te=te||Ht.text!==yr.text.placed||Ht.icon!==yr.icon.placed):(this.opacities[Et]=new Ho(null,xe,Ht.text,Ht.icon,Ht.skipFade),te=te||Ht.text||Ht.icon)}for(var Ir in We){var wr=We[Ir];if(!this.opacities[Ir]){var qt=new Ho(wr,xe,!1,!1);qt.isHidden()||(this.opacities[Ir]=qt,te=te||wr.text.placed||wr.icon.placed)}}for(var tr in He)!this.variableOffsets[tr]&&this.opacities[tr]&&!this.opacities[tr].isHidden()&&(this.variableOffsets[tr]=He[tr]);for(var dr in st)!this.placedOrientations[dr]&&this.opacities[dr]&&!this.opacities[dr].isHidden()&&(this.placedOrientations[dr]=st[dr]);te?this.lastPlacementChangeTime=K:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ye?ye.lastPlacementChangeTime:K)},$o.prototype.updateLayerOpacities=function(K,ye){for(var te={},xe=0,We=ye;xe<We.length;xe+=1){var He=We[xe],st=He.getBucket(K);st&&He.latestFeatureIndex&&K.id===st.layerIds[0]&&this.updateBucketOpacities(st,te,He.collisionBoxArray)}},$o.prototype.updateBucketOpacities=function(K,ye,te){var xe=this;K.hasTextData()&&K.text.opacityVertexArray.clear(),K.hasIconData()&&K.icon.opacityVertexArray.clear(),K.hasIconCollisionBoxData()&&K.iconCollisionBox.collisionVertexArray.clear(),K.hasTextCollisionBoxData()&&K.textCollisionBox.collisionVertexArray.clear();var We=K.layers[0].layout,He=new Ho(null,0,!1,!1,!0),st=We.get("text-allow-overlap"),Et=We.get("icon-allow-overlap"),Ht=We.get("text-variable-anchor"),yr=We.get("text-rotation-alignment")==="map",Ir=We.get("text-pitch-alignment")==="map",wr=We.get("icon-text-fit")!=="none",qt=new Ho(null,0,st&&(Et||!K.hasIconData()||We.get("icon-optional")),Et&&(st||!K.hasTextData()||We.get("text-optional")),!0);!K.collisionArrays&&te&&(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData())&&K.deserializeCollisionBoxes(te);for(var tr=function(Hr,aa,Qr){for(var Gr=0;Gr<aa/4;Gr++)Hr.opacityVertexArray.emplaceBack(Qr)},dr=function(Hr){var aa=K.symbolInstances.get(Hr),Qr=aa.numHorizontalGlyphVertices,Gr=aa.numVerticalGlyphVertices,ia=aa.crossTileID,Ur=ye[ia],wa=xe.opacities[ia];Ur?wa=He:wa||(wa=qt,xe.opacities[ia]=wa),ye[ia]=!0;var Oa=Qr>0||Gr>0,ri=aa.numIconVertices>0,Pi=xe.placedOrientations[aa.crossTileID],mi=Pi===e.WritingMode.vertical,Di=Pi===e.WritingMode.horizontal||Pi===e.WritingMode.horizontalOnly;if(Oa){var An=vl(wa.text),ln=mi?ji:An;tr(K.text,Qr,ln);var Ii=Di?ji:An;tr(K.text,Gr,Ii);var Wi=wa.text.isHidden();[aa.rightJustifiedTextSymbolIndex,aa.centerJustifiedTextSymbolIndex,aa.leftJustifiedTextSymbolIndex].forEach(function(Sp){Sp>=0&&(K.text.placedSymbolArray.get(Sp).hidden=Wi||mi?1:0)}),aa.verticalPlacedTextSymbolIndex>=0&&(K.text.placedSymbolArray.get(aa.verticalPlacedTextSymbolIndex).hidden=Wi||Di?1:0);var Hi=xe.variableOffsets[aa.crossTileID];Hi&&xe.markUsedJustification(K,Hi.anchor,aa,Pi);var yn=xe.placedOrientations[aa.crossTileID];yn&&(xe.markUsedJustification(K,"left",aa,yn),xe.markUsedOrientation(K,yn,aa))}if(ri){var zn=vl(wa.icon),ms=!(wr&&aa.verticalPlacedIconSymbolIndex&&mi);if(aa.placedIconSymbolIndex>=0){var us=ms?zn:ji;tr(K.icon,aa.numIconVertices,us),K.icon.placedSymbolArray.get(aa.placedIconSymbolIndex).hidden=wa.icon.isHidden()}if(aa.verticalPlacedIconSymbolIndex>=0){var Vs=ms?ji:zn;tr(K.icon,aa.numVerticalIconVertices,Vs),K.icon.placedSymbolArray.get(aa.verticalPlacedIconSymbolIndex).hidden=wa.icon.isHidden()}}if(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData()){var qo=K.collisionArrays[Hr];if(qo){var Ls=new e.Point(0,0);if(qo.textBox||qo.verticalTextBox){var wl=!0;if(Ht){var Ru=xe.variableOffsets[ia];Ru?(Ls=Is(Ru.anchor,Ru.width,Ru.height,Ru.textOffset,Ru.textBoxScale),yr&&Ls._rotate(Ir?xe.transform.angle:-xe.transform.angle)):wl=!1}qo.textBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||mi,Ls.x,Ls.y),qo.verticalTextBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||Di,Ls.x,Ls.y)}var Ap=!!(!Di&&qo.verticalIconBox);qo.iconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,Ap,wr?Ls.x:0,wr?Ls.y:0),qo.verticalIconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,!Ap,wr?Ls.x:0,wr?Ls.y:0)}}},Pr=0;Pr<K.symbolInstances.length;Pr++)dr(Pr);if(K.sortFeatures(this.transform.angle),this.retainedQueryData[K.bucketInstanceId]&&(this.retainedQueryData[K.bucketInstanceId].featureSortOrder=K.featureSortOrder),K.hasTextData()&&K.text.opacityVertexBuffer&&K.text.opacityVertexBuffer.updateData(K.text.opacityVertexArray),K.hasIconData()&&K.icon.opacityVertexBuffer&&K.icon.opacityVertexBuffer.updateData(K.icon.opacityVertexArray),K.hasIconCollisionBoxData()&&K.iconCollisionBox.collisionVertexBuffer&&K.iconCollisionBox.collisionVertexBuffer.updateData(K.iconCollisionBox.collisionVertexArray),K.hasTextCollisionBoxData()&&K.textCollisionBox.collisionVertexBuffer&&K.textCollisionBox.collisionVertexBuffer.updateData(K.textCollisionBox.collisionVertexArray),K.bucketInstanceId in this.collisionCircleArrays){var Vr=this.collisionCircleArrays[K.bucketInstanceId];K.placementInvProjMatrix=Vr.invProjMatrix,K.placementViewportMatrix=Vr.viewportMatrix,K.collisionCircleArray=Vr.circles,delete this.collisionCircleArrays[K.bucketInstanceId]}},$o.prototype.symbolFadeChange=function(K){return this.fadeDuration===0?1:(K-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},$o.prototype.zoomAdjustment=function(K){return Math.max(0,(this.transform.zoom-K)/1.5)},$o.prototype.hasTransitions=function(K){return this.stale||K-this.lastPlacementChangeTime<this.fadeDuration},$o.prototype.stillRecent=function(K,ye){var te=this.zoomAtLastRecencyCheck===ye?1-this.zoomAdjustment(ye):1;return this.zoomAtLastRecencyCheck=ye,this.commitTime+this.fadeDuration*te>K},$o.prototype.setStale=function(){this.stale=!0};function fi(ve,K,ye,te,xe){ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0)}var mn=Math.pow(2,25),ol=Math.pow(2,24),Os=Math.pow(2,17),so=Math.pow(2,16),Ns=Math.pow(2,9),fs=Math.pow(2,8),al=Math.pow(2,1);function vl(ve){if(ve.opacity===0&&!ve.placed)return 0;if(ve.opacity===1&&ve.placed)return 4294967295;var K=ve.placed?1:0,ye=Math.floor(ve.opacity*127);return ye*mn+K*ol+ye*Os+K*so+ye*Ns+K*fs+ye*al+K}var ji=0,To=function(K){this._sortAcrossTiles=K.layout.get("symbol-z-order")!=="viewport-y"&&K.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};To.prototype.continuePlacement=function(K,ye,te,xe,We){for(var He=this._bucketParts;this._currentTileIndex<K.length;){var st=K[this._currentTileIndex];if(ye.getBucketParts(He,xe,st,this._sortAcrossTiles),this._currentTileIndex++,We())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,He.sort(function(Ht,yr){return Ht.sortKey-yr.sortKey}));this._currentPartIndex<He.length;){var Et=He[this._currentPartIndex];if(ye.placeLayerBucketPart(Et,this._seenCrossTileIDs,te),this._currentPartIndex++,We())return!0}return!1};var Yn=function(K,ye,te,xe,We,He,st){this.placement=new $o(K,We,He,st),this._currentPlacementIndex=ye.length-1,this._forceFullPlacement=te,this._showCollisionBoxes=xe,this._done=!1};Yn.prototype.isDone=function(){return this._done},Yn.prototype.continuePlacement=function(K,ye,te){for(var xe=this,We=e.browser.now(),He=function(){var Ir=e.browser.now()-We;return xe._forceFullPlacement?!1:Ir>2};this._currentPlacementIndex>=0;){var st=K[this._currentPlacementIndex],Et=ye[st],Ht=this.placement.collisionIndex.transform.zoom;if(Et.type==="symbol"&&(!Et.minzoom||Et.minzoom<=Ht)&&(!Et.maxzoom||Et.maxzoom>Ht)){this._inProgressLayer||(this._inProgressLayer=new To(Et));var yr=this._inProgressLayer.continuePlacement(te[Et.source],this.placement,this._showCollisionBoxes,Et,He);if(yr)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Yn.prototype.commit=function(K){return this.placement.commit(K),this.placement};var _s=512/e.EXTENT/2,Yo=function(K,ye,te){this.tileID=K,this.indexedSymbolInstances={},this.bucketInstanceId=te;for(var xe=0;xe<ye.length;xe++){var We=ye.get(xe),He=We.key;this.indexedSymbolInstances[He]||(this.indexedSymbolInstances[He]=[]),this.indexedSymbolInstances[He].push({crossTileID:We.crossTileID,coord:this.getScaledCoordinates(We,K)})}};Yo.prototype.getScaledCoordinates=function(K,ye){var te=ye.canonical.z-this.tileID.canonical.z,xe=_s/Math.pow(2,te);return{x:Math.floor((ye.canonical.x*e.EXTENT+K.anchorX)*xe),y:Math.floor((ye.canonical.y*e.EXTENT+K.anchorY)*xe)}},Yo.prototype.findMatches=function(K,ye,te){for(var xe=this.tileID.canonical.z<ye.canonical.z?1:Math.pow(2,this.tileID.canonical.z-ye.canonical.z),We=0;We<K.length;We++){var He=K.get(We);if(!He.crossTileID){var st=this.indexedSymbolInstances[He.key];if(st)for(var Et=this.getScaledCoordinates(He,ye),Ht=0,yr=st;Ht<yr.length;Ht+=1){var Ir=yr[Ht];if(Math.abs(Ir.coord.x-Et.x)<=xe&&Math.abs(Ir.coord.y-Et.y)<=xe&&!te[Ir.crossTileID]){te[Ir.crossTileID]=!0,He.crossTileID=Ir.crossTileID;break}}}}};var Nn=function(){this.maxCrossTileID=0};Nn.prototype.generate=function(){return++this.maxCrossTileID};var Wl=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Wl.prototype.handleWrapJump=function(K){var ye=Math.round((K-this.lng)/360);if(ye!==0)for(var te in this.indexes){var xe=this.indexes[te],We={};for(var He in xe){var st=xe[He];st.tileID=st.tileID.unwrapTo(st.tileID.wrap+ye),We[st.tileID.key]=st}this.indexes[te]=We}this.lng=K},Wl.prototype.addBucket=function(K,ye,te){if(this.indexes[K.overscaledZ]&&this.indexes[K.overscaledZ][K.key]){if(this.indexes[K.overscaledZ][K.key].bucketInstanceId===ye.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(K.overscaledZ,this.indexes[K.overscaledZ][K.key])}for(var xe=0;xe<ye.symbolInstances.length;xe++){var We=ye.symbolInstances.get(xe);We.crossTileID=0}this.usedCrossTileIDs[K.overscaledZ]||(this.usedCrossTileIDs[K.overscaledZ]={});var He=this.usedCrossTileIDs[K.overscaledZ];for(var st in this.indexes){var Et=this.indexes[st];if(Number(st)>K.overscaledZ)for(var Ht in Et){var yr=Et[Ht];yr.tileID.isChildOf(K)&&yr.findMatches(ye.symbolInstances,K,He)}else{var Ir=K.scaledTo(Number(st)),wr=Et[Ir.key];wr&&wr.findMatches(ye.symbolInstances,K,He)}}for(var qt=0;qt<ye.symbolInstances.length;qt++){var tr=ye.symbolInstances.get(qt);tr.crossTileID||(tr.crossTileID=te.generate(),He[tr.crossTileID]=!0)}return this.indexes[K.overscaledZ]===void 0&&(this.indexes[K.overscaledZ]={}),this.indexes[K.overscaledZ][K.key]=new Yo(K,ye.symbolInstances,ye.bucketInstanceId),!0},Wl.prototype.removeBucketCrossTileIDs=function(K,ye){for(var te in ye.indexedSymbolInstances)for(var xe=0,We=ye.indexedSymbolInstances[te];xe<We.length;xe+=1){var He=We[xe];delete this.usedCrossTileIDs[K][He.crossTileID]}},Wl.prototype.removeStaleBuckets=function(K){var ye=!1;for(var te in this.indexes){var xe=this.indexes[te];for(var We in xe)K[xe[We].bucketInstanceId]||(this.removeBucketCrossTileIDs(te,xe[We]),delete xe[We],ye=!0)}return ye};var Zu=function(){this.layerIndexes={},this.crossTileIDs=new Nn,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Zu.prototype.addLayer=function(K,ye,te){var xe=this.layerIndexes[K.id];xe===void 0&&(xe=this.layerIndexes[K.id]=new Wl);var We=!1,He={};xe.handleWrapJump(te);for(var st=0,Et=ye;st<Et.length;st+=1){var Ht=Et[st],yr=Ht.getBucket(K);!yr||K.id!==yr.layerIds[0]||(yr.bucketInstanceId||(yr.bucketInstanceId=++this.maxBucketInstanceId),xe.addBucket(Ht.tileID,yr,this.crossTileIDs)&&(We=!0),He[yr.bucketInstanceId]=!0)}return xe.removeStaleBuckets(He)&&(We=!0),We},Zu.prototype.pruneUnusedLayers=function(K){var ye={};K.forEach(function(xe){ye[xe]=!0});for(var te in this.layerIndexes)ye[te]||delete this.layerIndexes[te]};var ml=function(ve,K){return e.emitValidationErrors(ve,K&&K.filter(function(ye){return ye.identifier!=="source.canvas"}))},Bu=e.pick(Fr,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),El=e.pick(Fr,["setCenter","setZoom","setBearing","setPitch"]),qs=Mr(),Jl=function(ve){function K(ye,te){var xe=this;te===void 0&&(te={}),ve.call(this),this.map=ye,this.dispatcher=new B(gt(),this),this.imageManager=new _,this.imageManager.setEventedParent(this),this.glyphManager=new y(ye._requestManager,te.localIdeographFontFamily),this.lineAtlas=new F(256,512),this.crossTileSymbolIndex=new Zu,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new e.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",e.getReferrer());var We=this;this._rtlTextPluginCallback=K.registerForPluginStateChange(function(He){var st={pluginStatus:He.pluginStatus,pluginURL:He.pluginURL};We.dispatcher.broadcast("syncRTLPluginState",st,function(Et,Ht){if(e.triggerPluginCompletionEvent(Et),Ht){var yr=Ht.every(function(wr){return wr});if(yr)for(var Ir in We.sourceCaches)We.sourceCaches[Ir].reload()}})}),this.on("data",function(He){if(!(He.dataType!=="source"||He.sourceDataType!=="metadata")){var st=xe.sourceCaches[He.sourceId];if(st){var Et=st.getSource();if(!(!Et||!Et.vectorLayerIds))for(var Ht in xe._layers){var yr=xe._layers[Ht];yr.source===Et.id&&xe._validateLayer(yr)}}}})}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.loadURL=function(te,xe){var We=this;xe===void 0&&(xe={}),this.fire(new e.Event("dataloading",{dataType:"style"}));var He=typeof xe.validate=="boolean"?xe.validate:!e.isMapboxURL(te);te=this.map._requestManager.normalizeStyleURL(te,xe.accessToken);var st=this.map._requestManager.transformRequest(te,e.ResourceType.Style);this._request=e.getJSON(st,function(Et,Ht){We._request=null,Et?We.fire(new e.ErrorEvent(Et)):Ht&&We._load(Ht,He)})},K.prototype.loadJSON=function(te,xe){var We=this;xe===void 0&&(xe={}),this.fire(new e.Event("dataloading",{dataType:"style"})),this._request=e.browser.frame(function(){We._request=null,We._load(te,xe.validate!==!1)})},K.prototype.loadEmpty=function(){this.fire(new e.Event("dataloading",{dataType:"style"})),this._load(qs,!1)},K.prototype._load=function(te,xe){if(!(xe&&ml(this,e.validateStyle(te)))){this._loaded=!0,this.stylesheet=te;for(var We in te.sources)this.addSource(We,te.sources[We],{validate:!1});te.sprite?this._loadSprite(te.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(te.glyphs);var He=Tr(this.stylesheet.layers);this._order=He.map(function(yr){return yr.id}),this._layers={},this._serializedLayers={};for(var st=0,Et=He;st<Et.length;st+=1){var Ht=Et[st];Ht=e.createStyleLayer(Ht),Ht.setEventedParent(this,{layer:{id:Ht.id}}),this._layers[Ht.id]=Ht,this._serializedLayers[Ht.id]=Ht.serialize()}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new z(this.stylesheet.light),this.fire(new e.Event("data",{dataType:"style"})),this.fire(new e.Event("style.load"))}},K.prototype._loadSprite=function(te){var xe=this;this._spriteRequest=p(te,this.map._requestManager,function(We,He){if(xe._spriteRequest=null,We)xe.fire(new e.ErrorEvent(We));else if(He)for(var st in He)xe.imageManager.addImage(st,He[st]);xe.imageManager.setLoaded(!0),xe._availableImages=xe.imageManager.listImages(),xe.dispatcher.broadcast("setImages",xe._availableImages),xe.fire(new e.Event("data",{dataType:"style"}))})},K.prototype._validateLayer=function(te){var xe=this.sourceCaches[te.source];if(xe){var We=te.sourceLayer;if(We){var He=xe.getSource();(He.type==="geojson"||He.vectorLayerIds&&He.vectorLayerIds.indexOf(We)===-1)&&this.fire(new e.ErrorEvent(new Error('Source layer "'+We+'" does not exist on source "'+He.id+'" as specified by style layer "'+te.id+'"')))}}},K.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var te in this.sourceCaches)if(!this.sourceCaches[te].loaded())return!1;return!!this.imageManager.isLoaded()},K.prototype._serializeLayers=function(te){for(var xe=[],We=0,He=te;We<He.length;We+=1){var st=He[We],Et=this._layers[st];Et.type!=="custom"&&xe.push(Et.serialize())}return xe},K.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var te in this.sourceCaches)if(this.sourceCaches[te].hasTransition())return!0;for(var xe in this._layers)if(this._layers[xe].hasTransition())return!0;return!1},K.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},K.prototype.update=function(te){if(this._loaded){var xe=this._changed;if(this._changed){var We=Object.keys(this._updatedLayers),He=Object.keys(this._removedLayers);(We.length||He.length)&&this._updateWorkerLayers(We,He);for(var st in this._updatedSources){var Et=this._updatedSources[st];Et==="reload"?this._reloadSource(st):Et==="clear"&&this._clearSource(st)}this._updateTilesForChangedImages();for(var Ht in this._updatedPaintProps)this._layers[Ht].updateTransitions(te);this.light.updateTransitions(te),this._resetUpdates()}var yr={};for(var Ir in this.sourceCaches){var wr=this.sourceCaches[Ir];yr[Ir]=wr.used,wr.used=!1}for(var qt=0,tr=this._order;qt<tr.length;qt+=1){var dr=tr[qt],Pr=this._layers[dr];Pr.recalculate(te,this._availableImages),!Pr.isHidden(te.zoom)&&Pr.source&&(this.sourceCaches[Pr.source].used=!0)}for(var Vr in yr){var Hr=this.sourceCaches[Vr];yr[Vr]!==Hr.used&&Hr.fire(new e.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:Vr}))}this.light.recalculate(te),this.z=te.zoom,xe&&this.fire(new e.Event("data",{dataType:"style"}))}},K.prototype._updateTilesForChangedImages=function(){var te=Object.keys(this._changedImages);if(te.length){for(var xe in this.sourceCaches)this.sourceCaches[xe].reloadTilesForDependencies(["icons","patterns"],te);this._changedImages={}}},K.prototype._updateWorkerLayers=function(te,xe){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(te),removedIds:xe})},K.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},K.prototype.setState=function(te){var xe=this;if(this._checkLoaded(),ml(this,e.validateStyle(te)))return!1;te=e.clone$1(te),te.layers=Tr(te.layers);var We=Ba(this.serialize(),te).filter(function(st){return!(st.command in El)});if(We.length===0)return!1;var He=We.filter(function(st){return!(st.command in Bu)});if(He.length>0)throw new Error("Unimplemented: "+He.map(function(st){return st.command}).join(", ")+".");return We.forEach(function(st){st.command!=="setTransition"&&xe[st.command].apply(xe,st.args)}),this.stylesheet=te,!0},K.prototype.addImage=function(te,xe){if(this.getImage(te))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(te,xe),this._afterImageUpdated(te)},K.prototype.updateImage=function(te,xe){this.imageManager.updateImage(te,xe)},K.prototype.getImage=function(te){return this.imageManager.getImage(te)},K.prototype.removeImage=function(te){if(!this.getImage(te))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(te),this._afterImageUpdated(te)},K.prototype._afterImageUpdated=function(te){this._availableImages=this.imageManager.listImages(),this._changedImages[te]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))},K.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},K.prototype.addSource=function(te,xe,We){var He=this;if(We===void 0&&(We={}),this._checkLoaded(),this.sourceCaches[te]!==void 0)throw new Error("There is already a source with this ID");if(!xe.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(xe).join(", ")+".");var st=["vector","raster","geojson","video","image"],Et=st.indexOf(xe.type)>=0;if(!(Et&&this._validate(e.validateStyle.source,"sources."+te,xe,null,We))){this.map&&this.map._collectResourceTiming&&(xe.collectResourceTiming=!0);var Ht=this.sourceCaches[te]=new pa(te,xe,this.dispatcher);Ht.style=this,Ht.setEventedParent(this,function(){return{isSourceLoaded:He.loaded(),source:Ht.serialize(),sourceId:te}}),Ht.onAdd(this.map),this._changed=!0}},K.prototype.removeSource=function(te){if(this._checkLoaded(),this.sourceCaches[te]===void 0)throw new Error("There is no source with this ID");for(var xe in this._layers)if(this._layers[xe].source===te)return this.fire(new e.ErrorEvent(new Error('Source "'+te+'" cannot be removed while layer "'+xe+'" is using it.')));var We=this.sourceCaches[te];delete this.sourceCaches[te],delete this._updatedSources[te],We.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:te})),We.setEventedParent(null),We.clearTiles(),We.onRemove&&We.onRemove(this.map),this._changed=!0},K.prototype.setGeoJSONSourceData=function(te,xe){this._checkLoaded();var We=this.sourceCaches[te].getSource();We.setData(xe),this._changed=!0},K.prototype.getSource=function(te){return this.sourceCaches[te]&&this.sourceCaches[te].getSource()},K.prototype.addLayer=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=te.id;if(this.getLayer(He)){this.fire(new e.ErrorEvent(new Error('Layer with id "'+He+'" already exists on this map')));return}var st;if(te.type==="custom"){if(ml(this,e.validateCustomStyleLayer(te)))return;st=e.createStyleLayer(te)}else{if(typeof te.source=="object"&&(this.addSource(He,te.source),te=e.clone$1(te),te=e.extend(te,{source:He})),this._validate(e.validateStyle.layer,"layers."+He,te,{arrayIndex:-1},We))return;st=e.createStyleLayer(te),this._validateLayer(st),st.setEventedParent(this,{layer:{id:He}}),this._serializedLayers[st.id]=st.serialize()}var Et=xe?this._order.indexOf(xe):this._order.length;if(xe&&Et===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}if(this._order.splice(Et,0,He),this._layerOrderChanged=!0,this._layers[He]=st,this._removedLayers[He]&&st.source&&st.type!=="custom"){var Ht=this._removedLayers[He];delete this._removedLayers[He],Ht.type!==st.type?this._updatedSources[st.source]="clear":(this._updatedSources[st.source]="reload",this.sourceCaches[st.source].pause())}this._updateLayer(st),st.onAdd&&st.onAdd(this.map)},K.prototype.moveLayer=function(te,xe){this._checkLoaded(),this._changed=!0;var We=this._layers[te];if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be moved.")));return}if(te!==xe){var He=this._order.indexOf(te);this._order.splice(He,1);var st=xe?this._order.indexOf(xe):this._order.length;if(xe&&st===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}this._order.splice(st,0,te),this._layerOrderChanged=!0}},K.prototype.removeLayer=function(te){this._checkLoaded();var xe=this._layers[te];if(!xe){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be removed.")));return}xe.setEventedParent(null);var We=this._order.indexOf(te);this._order.splice(We,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[te]=xe,delete this._layers[te],delete this._serializedLayers[te],delete this._updatedLayers[te],delete this._updatedPaintProps[te],xe.onRemove&&xe.onRemove(this.map)},K.prototype.getLayer=function(te){return this._layers[te]},K.prototype.hasLayer=function(te){return te in this._layers},K.prototype.setLayerZoomRange=function(te,xe,We){this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot have zoom extent.")));return}He.minzoom===xe&&He.maxzoom===We||(xe!=null&&(He.minzoom=xe),We!=null&&(He.maxzoom=We),this._updateLayer(He))},K.prototype.setFilter=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be filtered.")));return}if(!e.deepEqual(He.filter,xe)){if(xe==null){He.filter=void 0,this._updateLayer(He);return}this._validate(e.validateStyle.filter,"layers."+He.id+".filter",xe,null,We)||(He.filter=e.clone$1(xe),this._updateLayer(He))}},K.prototype.getFilter=function(te){return e.clone$1(this.getLayer(te).filter)},K.prototype.setLayoutProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}e.deepEqual(st.getLayoutProperty(xe),We)||(st.setLayoutProperty(xe,We,He),this._updateLayer(st))},K.prototype.getLayoutProperty=function(te,xe){var We=this.getLayer(te);if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style.")));return}return We.getLayoutProperty(xe)},K.prototype.setPaintProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}if(!e.deepEqual(st.getPaintProperty(xe),We)){var Et=st.setPaintProperty(xe,We,He);Et&&this._updateLayer(st),this._changed=!0,this._updatedPaintProps[te]=!0}},K.prototype.getPaintProperty=function(te,xe){return this.getLayer(te).getPaintProperty(xe)},K.prototype.setFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=te.sourceLayer,st=this.sourceCaches[We];if(st===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var Et=st.getSource().type;if(Et==="geojson"&&He){this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Et==="vector"&&!He){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),st.setFeatureState(He,te.id,xe)},K.prototype.removeFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=this.sourceCaches[We];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var st=He.getSource().type,Et=st==="vector"?te.sourceLayer:void 0;if(st==="vector"&&!Et){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(xe&&typeof te.id!="string"&&typeof te.id!="number"){this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}He.removeFeatureState(Et,te.id,xe)},K.prototype.getFeatureState=function(te){this._checkLoaded();var xe=te.source,We=te.sourceLayer,He=this.sourceCaches[xe];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+xe+"' does not exist in the map's style.")));return}var st=He.getSource().type;if(st==="vector"&&!We){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),He.getFeatureState(We,te.id)},K.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},K.prototype.serialize=function(){return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:e.mapObject(this.sourceCaches,function(te){return te.serialize()}),layers:this._serializeLayers(this._order)},function(te){return te!==void 0})},K.prototype._updateLayer=function(te){this._updatedLayers[te.id]=!0,te.source&&!this._updatedSources[te.source]&&this.sourceCaches[te.source].getSource().type!=="raster"&&(this._updatedSources[te.source]="reload",this.sourceCaches[te.source].pause()),this._changed=!0},K.prototype._flattenAndSortRenderedFeatures=function(te){for(var xe=this,We=function(Di){return xe._layers[Di].type==="fill-extrusion"},He={},st=[],Et=this._order.length-1;Et>=0;Et--){var Ht=this._order[Et];if(We(Ht)){He[Ht]=Et;for(var yr=0,Ir=te;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=wr[Ht];if(qt)for(var tr=0,dr=qt;tr<dr.length;tr+=1){var Pr=dr[tr];st.push(Pr)}}}}st.sort(function(Di,An){return An.intersectionZ-Di.intersectionZ});for(var Vr=[],Hr=this._order.length-1;Hr>=0;Hr--){var aa=this._order[Hr];if(We(aa))for(var Qr=st.length-1;Qr>=0;Qr--){var Gr=st[Qr].feature;if(He[Gr.layer.id]<Hr)break;Vr.push(Gr),st.pop()}else for(var ia=0,Ur=te;ia<Ur.length;ia+=1){var wa=Ur[ia],Oa=wa[aa];if(Oa)for(var ri=0,Pi=Oa;ri<Pi.length;ri+=1){var mi=Pi[ri];Vr.push(mi.feature)}}}return Vr},K.prototype.queryRenderedFeatures=function(te,xe,We){xe&&xe.filter&&this._validate(e.validateStyle.filter,"queryRenderedFeatures.filter",xe.filter,null,xe);var He={};if(xe&&xe.layers){if(!Array.isArray(xe.layers))return this.fire(new e.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var st=0,Et=xe.layers;st<Et.length;st+=1){var Ht=Et[st],yr=this._layers[Ht];if(!yr)return this.fire(new e.ErrorEvent(new Error("The layer '"+Ht+"' does not exist in the map's style and cannot be queried for features."))),[];He[yr.source]=!0}}var Ir=[];xe.availableImages=this._availableImages;for(var wr in this.sourceCaches)xe.layers&&!He[wr]||Ir.push(ie(this.sourceCaches[wr],this._layers,this._serializedLayers,te,xe,We));return this.placement&&Ir.push(fe(this._layers,this._serializedLayers,this.sourceCaches,te,xe,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(Ir)},K.prototype.querySourceFeatures=function(te,xe){xe&&xe.filter&&this._validate(e.validateStyle.filter,"querySourceFeatures.filter",xe.filter,null,xe);var We=this.sourceCaches[te];return We?be(We,xe):[]},K.prototype.addSourceType=function(te,xe,We){if(K.getSourceType(te))return We(new Error('A source type called "'+te+'" already exists.'));if(K.setSourceType(te,xe),!xe.workerSourceURL)return We(null,null);this.dispatcher.broadcast("loadWorkerSource",{name:te,url:xe.workerSourceURL},We)},K.prototype.getLight=function(){return this.light.getLight()},K.prototype.setLight=function(te,xe){xe===void 0&&(xe={}),this._checkLoaded();var We=this.light.getLight(),He=!1;for(var st in te)if(!e.deepEqual(te[st],We[st])){He=!0;break}if(He){var Et={now:e.browser.now(),transition:e.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(te,xe),this.light.updateTransitions(Et)}},K.prototype._validate=function(te,xe,We,He,st){return st===void 0&&(st={}),st&&st.validate===!1?!1:ml(this,te.call(e.validateStyle,e.extend({key:xe,style:this.serialize(),value:We,styleSpec:e.styleSpec},He)))},K.prototype._remove=function(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),e.evented.off("pluginStateChange",this._rtlTextPluginCallback);for(var te in this._layers){var xe=this._layers[te];xe.setEventedParent(null)}for(var We in this.sourceCaches)this.sourceCaches[We].clearTiles(),this.sourceCaches[We].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},K.prototype._clearSource=function(te){this.sourceCaches[te].clearTiles()},K.prototype._reloadSource=function(te){this.sourceCaches[te].resume(),this.sourceCaches[te].reload()},K.prototype._updateSources=function(te){for(var xe in this.sourceCaches)this.sourceCaches[xe].update(te)},K.prototype._generateCollisionBoxes=function(){for(var te in this.sourceCaches)this._reloadSource(te)},K.prototype._updatePlacement=function(te,xe,We,He,st){st===void 0&&(st=!1);for(var Et=!1,Ht=!1,yr={},Ir=0,wr=this._order;Ir<wr.length;Ir+=1){var qt=wr[Ir],tr=this._layers[qt];if(tr.type==="symbol"){if(!yr[tr.source]){var dr=this.sourceCaches[tr.source];yr[tr.source]=dr.getRenderableIds(!0).map(function(ia){return dr.getTileByID(ia)}).sort(function(ia,Ur){return Ur.tileID.overscaledZ-ia.tileID.overscaledZ||(ia.tileID.isLessThan(Ur.tileID)?-1:1)})}var Pr=this.crossTileSymbolIndex.addLayer(tr,yr[tr.source],te.center.lng);Et=Et||Pr}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),st=st||this._layerOrderChanged||We===0,(st||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(e.browser.now(),te.zoom))&&(this.pauseablePlacement=new Yn(te,this._order,st,xe,We,He,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,yr),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(e.browser.now()),Ht=!0),Et&&this.pauseablePlacement.placement.setStale()),Ht||Et)for(var Vr=0,Hr=this._order;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=this._layers[aa];Qr.type==="symbol"&&this.placement.updateLayerOpacities(Qr,yr[Qr.source])}var Gr=!this.pauseablePlacement.isDone()||this.placement.hasTransitions(e.browser.now());return Gr},K.prototype._releaseSymbolFadeTiles=function(){for(var te in this.sourceCaches)this.sourceCaches[te].releaseSymbolFadeTiles()},K.prototype.getImages=function(te,xe,We){this.imageManager.getImages(xe.icons,We),this._updateTilesForChangedImages();var He=this.sourceCaches[xe.source];He&&He.setDependencies(xe.tileID.key,xe.type,xe.icons)},K.prototype.getGlyphs=function(te,xe,We){this.glyphManager.getGlyphs(xe.stacks,We)},K.prototype.getResource=function(te,xe,We){return e.makeRequest(xe,We)},K}(e.Evented);Jl.getSourceType=re,Jl.setSourceType=ne,Jl.registerForPluginStateChange=e.registerForPluginStateChange;var Nu=e.createLayout([{name:"a_pos",type:"Int16",components:2}]),Ic=`#ifdef GL_ES
+precision mediump float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif`,Xu=`#ifdef GL_ES
+precision highp float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0
+);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}`,Th=`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,bf="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",Rs=`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Yc="uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}",If=`varying vec3 v_data;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zl=`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main(void) {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,0,1);} else {gl_Position=u_matrix*vec4(circle_center,0,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`,yl="void main() {gl_FragColor=vec4(1.0);}",oc="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",_c=`uniform highp float u_intensity;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#define GAUSS_COEF 0.3989422804014327
+void main() {
+#pragma mapbox: initialize highp float weight
+float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zs=`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#pragma mapbox: define mediump float radius
+const highp float ZERO=1.0/255.0/16.0;
+#define GAUSS_COEF 0.3989422804014327
+void main(void) {
+#pragma mapbox: initialize highp float weight
+#pragma mapbox: initialize mediump float radius
+vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}`,_l=`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(0.0);
+#endif
+}`,Bs="uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}",$s="varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}",sc="attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}",zl="varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}",Yu="attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}",Qs="uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}",fp="attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}",es=`#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_FragColor=color*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Wh=`attribute vec2 a_pos;uniform mat4 u_matrix;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);}`,Ss=`varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,So=`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`,hf=`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ku=`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`,cu=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zf=`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`,Rc=`varying vec4 v_color;void main() {gl_FragColor=v_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,pf=`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec4 v_color;
+#pragma mapbox: define highp float base
+#pragma mapbox: define highp float height
+#pragma mapbox: define highp vec4 color
+void main() {
+#pragma mapbox: initialize highp float base
+#pragma mapbox: initialize highp float height
+#pragma mapbox: initialize highp vec4 color
+vec3 normal=a_normal_ed.xyz;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`,Fl=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,lh=`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0
+? a_pos
+: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`,Xf=`#ifdef GL_ES
+precision highp float;
+#endif
+uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Rf="uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}",Kc=`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;
+#define PI 3.141592653589793
+void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Yf="uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}",uh=`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ju=`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Df=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Dc=`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`,Jc=`uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Eu=`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`,wf=`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,zc=`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`,Us=`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Kf="uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}",Zh=`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,ch=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}`,df=`#define SDF_PX 8.0
+uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ah=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`,ku=`#define SDF_PX 8.0
+#define SDF 1.0
+#define ICON 0.0
+uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,fh=`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,ru=el(Ic,Xu),Cu=el(Th,bf),xc=el(Rs,Yc),kl=el(If,Zl),Fc=el(yl,oc),$u=el(_c,Zs),vu=el(_l,Bs),xl=el($s,sc),hh=el(zl,Yu),Sh=el(Qs,fp),Uu=el(es,Wh),bc=el(Ss,So),lc=el(hf,Ku),hp=el(cu,Zf),vf=el(Rc,pf),Tf=el(Fl,lh),Lu=el(Xf,Rf),zf=el(Kc,Yf),au=el(uh,Ju),$c=el(Df,Dc),Mh=el(Jc,Eu),Ff=el(wf,zc),il=el(Us,Kf),mu=el(Zh,ch),gu=el(df,Ah),Jf=el(ku,fh);function el(ve,K){var ye=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,te=K.match(/attribute ([\w]+) ([\w]+)/g),xe=ve.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),We=K.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),He=We?We.concat(xe):xe,st={};return ve=ve.replace(ye,function(Et,Ht,yr,Ir,wr){return st[wr]=!0,Ht==="define"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+varying `+yr+" "+Ir+" "+wr+`;
+#else
+uniform `+yr+" "+Ir+" u_"+wr+`;
+#endif
+`:`
+#ifdef HAS_UNIFORM_u_`+wr+`
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`}),K=K.replace(ye,function(Et,Ht,yr,Ir,wr){var qt=Ir==="float"?"vec2":"vec4",tr=wr.match(/color/)?"color":qt;return st[wr]?Ht==="define"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+uniform lowp float u_`+wr+`_t;
+attribute `+yr+" "+qt+" a_"+wr+`;
+varying `+yr+" "+Ir+" "+wr+`;
+#else
+uniform `+yr+" "+Ir+" u_"+wr+`;
+#endif
+`:tr==="vec4"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+wr+" = a_"+wr+`;
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t);
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`:Ht==="define"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+uniform lowp float u_`+wr+`_t;
+attribute `+yr+" "+qt+" a_"+wr+`;
+#else
+uniform `+yr+" "+Ir+" u_"+wr+`;
+#endif
+`:tr==="vec4"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+yr+" "+Ir+" "+wr+" = a_"+wr+`;
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+yr+" "+Ir+" "+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t);
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`}),{fragmentSource:ve,vertexSource:K,staticAttributes:te,staticUniforms:He}}var mf=Object.freeze({__proto__:null,prelude:ru,background:Cu,backgroundPattern:xc,circle:kl,clippingMask:Fc,heatmap:$u,heatmapTexture:vu,collisionBox:xl,collisionCircle:hh,debug:Sh,fill:Uu,fillOutline:bc,fillOutlinePattern:lc,fillPattern:hp,fillExtrusion:vf,fillExtrusionPattern:Tf,hillshadePrepare:Lu,hillshade:zf,line:au,lineGradient:$c,linePattern:Mh,lineSDF:Ff,raster:il,symbolIcon:mu,symbolSDF:gu,symbolTextAndIcon:Jf}),wc=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};wc.prototype.bind=function(K,ye,te,xe,We,He,st,Et){this.context=K;for(var Ht=this.boundPaintVertexBuffers.length!==xe.length,yr=0;!Ht&&yr<xe.length;yr++)this.boundPaintVertexBuffers[yr]!==xe[yr]&&(Ht=!0);var Ir=!this.vao||this.boundProgram!==ye||this.boundLayoutVertexBuffer!==te||Ht||this.boundIndexBuffer!==We||this.boundVertexOffset!==He||this.boundDynamicVertexBuffer!==st||this.boundDynamicVertexBuffer2!==Et;!K.extVertexArrayObject||Ir?this.freshBind(ye,te,xe,We,He,st,Et):(K.bindVertexArrayOES.set(this.vao),st&&st.bind(),We&&We.dynamicDraw&&We.bind(),Et&&Et.bind())},wc.prototype.freshBind=function(K,ye,te,xe,We,He,st){var Et,Ht=K.numAttributes,yr=this.context,Ir=yr.gl;if(yr.extVertexArrayObject)this.vao&&this.destroy(),this.vao=yr.extVertexArrayObject.createVertexArrayOES(),yr.bindVertexArrayOES.set(this.vao),Et=0,this.boundProgram=K,this.boundLayoutVertexBuffer=ye,this.boundPaintVertexBuffers=te,this.boundIndexBuffer=xe,this.boundVertexOffset=We,this.boundDynamicVertexBuffer=He,this.boundDynamicVertexBuffer2=st;else{Et=yr.currentNumAttributes||0;for(var wr=Ht;wr<Et;wr++)Ir.disableVertexAttribArray(wr)}ye.enableAttributes(Ir,K);for(var qt=0,tr=te;qt<tr.length;qt+=1){var dr=tr[qt];dr.enableAttributes(Ir,K)}He&&He.enableAttributes(Ir,K),st&&st.enableAttributes(Ir,K),ye.bind(),ye.setVertexAttribPointers(Ir,K,We);for(var Pr=0,Vr=te;Pr<Vr.length;Pr+=1){var Hr=Vr[Pr];Hr.bind(),Hr.setVertexAttribPointers(Ir,K,We)}He&&(He.bind(),He.setVertexAttribPointers(Ir,K,We)),xe&&xe.bind(),st&&(st.bind(),st.setVertexAttribPointers(Ir,K,We)),yr.currentNumAttributes=Ht},wc.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};function ju(ve){for(var K=[],ye=0;ye<ve.length;ye++)if(ve[ye]!==null){var te=ve[ye].split(" ");K.push(te.pop())}return K}var Af=function(K,ye,te,xe,We,He){var st=K.gl;this.program=st.createProgram();for(var Et=ju(te.staticAttributes),Ht=xe?xe.getBinderAttributes():[],yr=Et.concat(Ht),Ir=te.staticUniforms?ju(te.staticUniforms):[],wr=xe?xe.getBinderUniforms():[],qt=Ir.concat(wr),tr=[],dr=0,Pr=qt;dr<Pr.length;dr+=1){var Vr=Pr[dr];tr.indexOf(Vr)<0&&tr.push(Vr)}var Hr=xe?xe.defines():[];He&&Hr.push("#define OVERDRAW_INSPECTOR;");var aa=Hr.concat(ru.fragmentSource,te.fragmentSource).join(`
+`),Qr=Hr.concat(ru.vertexSource,te.vertexSource).join(`
+`),Gr=st.createShader(st.FRAGMENT_SHADER);if(st.isContextLost()){this.failedToCreate=!0;return}st.shaderSource(Gr,aa),st.compileShader(Gr),st.attachShader(this.program,Gr);var ia=st.createShader(st.VERTEX_SHADER);if(st.isContextLost()){this.failedToCreate=!0;return}st.shaderSource(ia,Qr),st.compileShader(ia),st.attachShader(this.program,ia),this.attributes={};var Ur={};this.numAttributes=yr.length;for(var wa=0;wa<this.numAttributes;wa++)yr[wa]&&(st.bindAttribLocation(this.program,wa,yr[wa]),this.attributes[yr[wa]]=wa);st.linkProgram(this.program),st.deleteShader(ia),st.deleteShader(Gr);for(var Oa=0;Oa<tr.length;Oa++){var ri=tr[Oa];if(ri&&!Ur[ri]){var Pi=st.getUniformLocation(this.program,ri);Pi&&(Ur[ri]=Pi)}}this.fixedUniforms=We(K,Ur),this.binderUniforms=xe?xe.getUniforms(K,Ur):[]};Af.prototype.draw=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt,tr,dr,Pr){var Vr,Hr=K.gl;if(!this.failedToCreate){K.program.set(this.program),K.setDepthMode(te),K.setStencilMode(xe),K.setColorMode(We),K.setCullFace(He);for(var aa in this.fixedUniforms)this.fixedUniforms[aa].set(st[aa]);tr&&tr.setUniforms(K,this.binderUniforms,wr,{zoom:qt});for(var Qr=(Vr={},Vr[Hr.LINES]=2,Vr[Hr.TRIANGLES]=3,Vr[Hr.LINE_STRIP]=1,Vr)[ye],Gr=0,ia=Ir.get();Gr<ia.length;Gr+=1){var Ur=ia[Gr],wa=Ur.vaos||(Ur.vaos={}),Oa=wa[Et]||(wa[Et]=new wc);Oa.bind(K,this,Ht,tr?tr.getPaintVertexBuffers():[],yr,Ur.vertexOffset,dr,Pr),Hr.drawElements(ye,Ur.primitiveLength*Qr,Hr.UNSIGNED_SHORT,Ur.primitiveOffset*Qr*2)}}};function uc(ve,K,ye){var te=1/In(ye,1,K.transform.tileZoom),xe=Math.pow(2,ye.tileID.overscaledZ),We=ye.tileSize*Math.pow(2,K.transform.tileZoom)/xe,He=We*(ye.tileID.canonical.x+ye.tileID.wrap*xe),st=We*ye.tileID.canonical.y;return{u_image:0,u_texsize:ye.imageAtlasTexture.size,u_scale:[te,ve.fromScale,ve.toScale],u_fade:ve.t,u_pixel_coord_upper:[He>>16,st>>16],u_pixel_coord_lower:[He&65535,st&65535]}}function Qc(ve,K,ye,te){var xe=ye.imageManager.getPattern(ve.from.toString()),We=ye.imageManager.getPattern(ve.to.toString()),He=ye.imageManager.getPixelSize(),st=He.width,Et=He.height,Ht=Math.pow(2,te.tileID.overscaledZ),yr=te.tileSize*Math.pow(2,ye.transform.tileZoom)/Ht,Ir=yr*(te.tileID.canonical.x+te.tileID.wrap*Ht),wr=yr*te.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:xe.tl,u_pattern_br_a:xe.br,u_pattern_tl_b:We.tl,u_pattern_br_b:We.br,u_texsize:[st,Et],u_mix:K.t,u_pattern_size_a:xe.displaySize,u_pattern_size_b:We.displaySize,u_scale_a:K.fromScale,u_scale_b:K.toScale,u_tile_units_to_pixels:1/In(te,1,ye.transform.tileZoom),u_pixel_coord_upper:[Ir>>16,wr>>16],u_pixel_coord_lower:[Ir&65535,wr&65535]}}var $f=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Vl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_height_factor:new e.Uniform1f(ve,K.u_height_factor),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Qf=function(ve,K,ye,te){var xe=K.style.light,We=xe.properties.get("position"),He=[We.x,We.y,We.z],st=e.create$1();xe.properties.get("anchor")==="viewport"&&e.fromRotation(st,-K.transform.angle),e.transformMat3(He,He,st);var Et=xe.properties.get("color");return{u_matrix:ve,u_lightpos:He,u_lightintensity:xe.properties.get("intensity"),u_lightcolor:[Et.r,Et.g,Et.b],u_vertical_gradient:+ye,u_opacity:te}},Vu=function(ve,K,ye,te,xe,We,He){return e.extend(Qf(ve,K,ye,te),uc(We,K,He),{u_height_factor:-Math.pow(2,xe.overscaledZ)/He.tileSize/8})},Tc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},cc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Cl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world)}},iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},fc=function(ve){return{u_matrix:ve}},Oc=function(ve,K,ye,te){return e.extend(fc(ve),uc(ye,K,te))},Qu=function(ve,K){return{u_matrix:ve,u_world:K}},ef=function(ve,K,ye,te,xe){return e.extend(Oc(ve,K,ye,te),{u_world:xe})},Zt=function(ve,K){return{u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(ve,K.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},fr=function(ve,K,ye,te){var xe=ve.transform,We,He;if(te.paint.get("circle-pitch-alignment")==="map"){var st=In(ye,1,xe.zoom);We=!0,He=[st,st]}else We=!1,He=xe.pixelsToGLUnits;return{u_camera_to_center_distance:xe.cameraToCenterDistance,u_scale_with_map:+(te.paint.get("circle-pitch-scale")==="map"),u_matrix:ve.translatePosMatrix(K.posMatrix,ye,te.paint.get("circle-translate"),te.paint.get("circle-translate-anchor")),u_pitch_with_map:+We,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:He}},Yr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(ve,K.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_overscale_factor:new e.Uniform1f(ve,K.u_overscale_factor)}},qr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_inv_matrix:new e.UniformMatrix4f(ve,K.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(ve,K.u_viewport_size)}},ba=function(ve,K,ye){var te=In(ye,1,K.zoom),xe=Math.pow(2,K.zoom-ye.tileID.overscaledZ),We=ye.tileID.overscaleFactor();return{u_matrix:ve,u_camera_to_center_distance:K.cameraToCenterDistance,u_pixels_to_tile_units:te,u_extrude_scale:[K.pixelsToGLUnits[0]/(te*xe),K.pixelsToGLUnits[1]/(te*xe)],u_overscale_factor:We}},Ka=function(ve,K,ye){return{u_matrix:ve,u_inv_matrix:K,u_camera_to_center_distance:ye.cameraToCenterDistance,u_viewport_size:[ye.width,ye.height]}},oi=function(ve,K){return{u_color:new e.UniformColor(ve,K.u_color),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_overlay:new e.Uniform1i(ve,K.u_overlay),u_overlay_scale:new e.Uniform1f(ve,K.u_overlay_scale)}},yi=function(ve,K,ye){return ye===void 0&&(ye=1),{u_matrix:ve,u_color:K,u_overlay:0,u_overlay_scale:ye}},ki=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},Bi=function(ve){return{u_matrix:ve}},li=function(ve,K){return{u_extrude_scale:new e.Uniform1f(ve,K.u_extrude_scale),u_intensity:new e.Uniform1f(ve,K.u_intensity),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},_i=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_color_ramp:new e.Uniform1i(ve,K.u_color_ramp),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},vi=function(ve,K,ye,te){return{u_matrix:ve,u_extrude_scale:In(K,1,ye),u_intensity:te}},ti=function(ve,K,ye,te){var xe=e.create();e.ortho(xe,0,ve.width,ve.height,0,0,1);var We=ve.context.gl;return{u_matrix:xe,u_world:[We.drawingBufferWidth,We.drawingBufferHeight],u_image:ye,u_color_ramp:te,u_opacity:K.paint.get("heatmap-opacity")}},rn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_latrange:new e.Uniform2f(ve,K.u_latrange),u_light:new e.Uniform2f(ve,K.u_light),u_shadow:new e.UniformColor(ve,K.u_shadow),u_highlight:new e.UniformColor(ve,K.u_highlight),u_accent:new e.UniformColor(ve,K.u_accent)}},Kn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_dimension:new e.Uniform2f(ve,K.u_dimension),u_zoom:new e.Uniform1f(ve,K.u_zoom),u_unpack:new e.Uniform4f(ve,K.u_unpack)}},Wn=function(ve,K,ye){var te=ye.paint.get("hillshade-shadow-color"),xe=ye.paint.get("hillshade-highlight-color"),We=ye.paint.get("hillshade-accent-color"),He=ye.paint.get("hillshade-illumination-direction")*(Math.PI/180);ye.paint.get("hillshade-illumination-anchor")==="viewport"&&(He-=ve.transform.angle);var st=!ve.options.moving;return{u_matrix:ve.transform.calculatePosMatrix(K.tileID.toUnwrapped(),st),u_image:0,u_latrange:no(ve,K.tileID),u_light:[ye.paint.get("hillshade-exaggeration"),He],u_shadow:te,u_highlight:xe,u_accent:We}},Jn=function(ve,K){var ye=K.stride,te=e.create();return e.ortho(te,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(te,te,[0,-e.EXTENT,0]),{u_matrix:te,u_image:1,u_dimension:[ye,ye],u_zoom:ve.overscaledZ,u_unpack:K.getUnpackVector()}};function no(ve,K){var ye=Math.pow(2,K.canonical.z),te=K.canonical.y;return[new e.MercatorCoordinate(0,te/ye).toLngLat().lat,new e.MercatorCoordinate(0,(te+1)/ye).toLngLat().lat]}var en=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels)}},Ri=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_image:new e.Uniform1i(ve,K.u_image),u_image_height:new e.Uniform1f(ve,K.u_image_height)}},co=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_image:new e.Uniform1i(ve,K.u_image),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Wo=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(ve,K.u_patternscale_a),u_patternscale_b:new e.Uniform2f(ve,K.u_patternscale_b),u_sdfgamma:new e.Uniform1f(ve,K.u_sdfgamma),u_image:new e.Uniform1i(ve,K.u_image),u_tex_y_a:new e.Uniform1f(ve,K.u_tex_y_a),u_tex_y_b:new e.Uniform1f(ve,K.u_tex_y_b),u_mix:new e.Uniform1f(ve,K.u_mix)}},bs=function(ve,K,ye){var te=ve.transform;return{u_matrix:Il(ve,K,ye),u_ratio:1/In(K,1,te.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/te.pixelsToGLUnits[0],1/te.pixelsToGLUnits[1]]}},Xs=function(ve,K,ye,te){return e.extend(bs(ve,K,ye),{u_image:0,u_image_height:te})},Ms=function(ve,K,ye,te){var xe=ve.transform,We=vs(K,xe);return{u_matrix:Il(ve,K,ye),u_texsize:K.imageAtlasTexture.size,u_ratio:1/In(K,1,xe.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[We,te.fromScale,te.toScale],u_fade:te.t,u_units_to_pixels:[1/xe.pixelsToGLUnits[0],1/xe.pixelsToGLUnits[1]]}},Hs=function(ve,K,ye,te,xe){var We=ve.transform,He=ve.lineAtlas,st=vs(K,We),Et=ye.layout.get("line-cap")==="round",Ht=He.getDash(te.from,Et),yr=He.getDash(te.to,Et),Ir=Ht.width*xe.fromScale,wr=yr.width*xe.toScale;return e.extend(bs(ve,K,ye),{u_patternscale_a:[st/Ir,-Ht.height/2],u_patternscale_b:[st/wr,-yr.height/2],u_sdfgamma:He.width/(Math.min(Ir,wr)*256*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:Ht.y,u_tex_y_b:yr.y,u_mix:xe.t})};function vs(ve,K){return 1/In(ve,1,K.tileZoom)}function Il(ve,K,ye){return ve.translatePosMatrix(K.tileID.posMatrix,K,ye.paint.get("line-translate"),ye.paint.get("line-translate-anchor"))}var fl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_tl_parent:new e.Uniform2f(ve,K.u_tl_parent),u_scale_parent:new e.Uniform1f(ve,K.u_scale_parent),u_buffer_scale:new e.Uniform1f(ve,K.u_buffer_scale),u_fade_t:new e.Uniform1f(ve,K.u_fade_t),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image0:new e.Uniform1i(ve,K.u_image0),u_image1:new e.Uniform1i(ve,K.u_image1),u_brightness_low:new e.Uniform1f(ve,K.u_brightness_low),u_brightness_high:new e.Uniform1f(ve,K.u_brightness_high),u_saturation_factor:new e.Uniform1f(ve,K.u_saturation_factor),u_contrast_factor:new e.Uniform1f(ve,K.u_contrast_factor),u_spin_weights:new e.Uniform3f(ve,K.u_spin_weights)}},tl=function(ve,K,ye,te,xe){return{u_matrix:ve,u_tl_parent:K,u_scale_parent:ye,u_buffer_scale:1,u_fade_t:te.mix,u_opacity:te.opacity*xe.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:xe.paint.get("raster-brightness-min"),u_brightness_high:xe.paint.get("raster-brightness-max"),u_saturation_factor:js(xe.paint.get("raster-saturation")),u_contrast_factor:Ao(xe.paint.get("raster-contrast")),u_spin_weights:Ln(xe.paint.get("raster-hue-rotate"))}};function Ln(ve){ve*=Math.PI/180;var K=Math.sin(ve),ye=Math.cos(ve);return[(2*ye+1)/3,(-Math.sqrt(3)*K-ye+1)/3,(Math.sqrt(3)*K-ye+1)/3]}function Ao(ve){return ve>0?1/(1-ve):1+ve}function js(ve){return ve>0?1-1/(1.001-ve):-ve}var Ts=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture)}},nu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},Pu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texsize_icon:new e.Uniform2f(ve,K.u_texsize_icon),u_texture:new e.Uniform1i(ve,K.u_texture),u_texture_icon:new e.Uniform1i(ve,K.u_texture_icon),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},ec=function(ve,K,ye,te,xe,We,He,st,Et,Ht){var yr=xe.transform;return{u_is_size_zoom_constant:+(ve==="constant"||ve==="source"),u_is_size_feature_constant:+(ve==="constant"||ve==="camera"),u_size_t:K?K.uSizeT:0,u_size:K?K.uSize:0,u_camera_to_center_distance:yr.cameraToCenterDistance,u_pitch:yr.pitch/360*2*Math.PI,u_rotate_symbol:+ye,u_aspect_ratio:yr.width/yr.height,u_fade_change:xe.options.fadeDuration?xe.symbolFadeChange:1,u_matrix:We,u_label_plane_matrix:He,u_coord_matrix:st,u_is_text:+Et,u_pitch_with_map:+te,u_texsize:Ht,u_texture:0}},tf=function(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=xe.transform;return e.extend(ec(ve,K,ye,te,xe,We,He,st,Et,Ht),{u_gamma_scale:te?Math.cos(Ir._pitch)*Ir.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+yr})},yu=function(ve,K,ye,te,xe,We,He,st,Et,Ht){return e.extend(tf(ve,K,ye,te,xe,We,He,st,!0,Et,!0),{u_texsize_icon:Ht,u_texture_icon:1})},Bc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_color:new e.UniformColor(ve,K.u_color)}},Iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image:new e.Uniform1i(ve,K.u_image),u_pattern_tl_a:new e.Uniform2f(ve,K.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(ve,K.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(ve,K.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(ve,K.u_pattern_br_b),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_mix:new e.Uniform1f(ve,K.u_mix),u_pattern_size_a:new e.Uniform2f(ve,K.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(ve,K.u_pattern_size_b),u_scale_a:new e.Uniform1f(ve,K.u_scale_a),u_scale_b:new e.Uniform1f(ve,K.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(ve,K.u_tile_units_to_pixels)}},Ac=function(ve,K,ye){return{u_matrix:ve,u_opacity:K,u_color:ye}},ro=function(ve,K,ye,te,xe,We){return e.extend(Qc(te,We,ye,xe),{u_matrix:ve,u_opacity:K})},Po={fillExtrusion:$f,fillExtrusionPattern:Vl,fill:Tc,fillPattern:cc,fillOutline:Cl,fillOutlinePattern:iu,circle:Zt,collisionBox:Yr,collisionCircle:qr,debug:oi,clippingMask:ki,heatmap:li,heatmapTexture:_i,hillshade:rn,hillshadePrepare:Kn,line:en,lineGradient:Ri,linePattern:co,lineSDF:Wo,raster:fl,symbolIcon:Ts,symbolSDF:nu,symbolTextAndIcon:Pu,background:Bc,backgroundPattern:Iu},Nc;function hc(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ve.useProgram("collisionBox"),yr=[],Ir=0,wr=0,qt=0;qt<te.length;qt++){var tr=te[qt],dr=K.getTile(tr),Pr=dr.getBucket(ye);if(Pr){var Vr=tr.posMatrix;(xe[0]!==0||xe[1]!==0)&&(Vr=ve.translatePosMatrix(tr.posMatrix,dr,xe,We));var Hr=He?Pr.textCollisionBox:Pr.iconCollisionBox,aa=Pr.collisionCircleArray;if(aa.length>0){var Qr=e.create(),Gr=Vr;e.mul(Qr,Pr.placementInvProjMatrix,ve.transform.glCoordMatrix),e.mul(Qr,Qr,Pr.placementViewportMatrix),yr.push({circleArray:aa,circleOffset:wr,transform:Gr,invTransform:Qr}),Ir+=aa.length/4,wr=Ir}Hr&&Ht.draw(st,Et.LINES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ba(Vr,ve.transform,dr),ye.id,Hr.layoutVertexBuffer,Hr.indexBuffer,Hr.segments,null,ve.transform.zoom,null,null,Hr.collisionVertexBuffer)}}if(!(!He||!yr.length)){var ia=ve.useProgram("collisionCircle"),Ur=new e.StructArrayLayout2f1f2i16;Ur.resize(Ir*4),Ur._trim();for(var wa=0,Oa=0,ri=yr;Oa<ri.length;Oa+=1)for(var Pi=ri[Oa],mi=0;mi<Pi.circleArray.length/4;mi++){var Di=mi*4,An=Pi.circleArray[Di+0],ln=Pi.circleArray[Di+1],Ii=Pi.circleArray[Di+2],Wi=Pi.circleArray[Di+3];Ur.emplace(wa++,An,ln,Ii,Wi,0),Ur.emplace(wa++,An,ln,Ii,Wi,1),Ur.emplace(wa++,An,ln,Ii,Wi,2),Ur.emplace(wa++,An,ln,Ii,Wi,3)}(!Nc||Nc.length<Ir*2)&&(Nc=pc(Ir));for(var Hi=st.createIndexBuffer(Nc,!0),yn=st.createVertexBuffer(Ur,e.collisionCircleLayout.members,!0),zn=0,ms=yr;zn<ms.length;zn+=1){var us=ms[zn],Vs=Ka(us.transform,us.invTransform,ve.transform);ia.draw(st,Et.TRIANGLES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,Vs,ye.id,yn,Hi,e.SegmentVector.simpleSegment(0,us.circleOffset*2,us.circleArray.length,us.circleArray.length/2),null,ve.transform.zoom,null,null,null)}yn.destroy(),Hi.destroy()}}function pc(ve){var K=ve*2,ye=new e.StructArrayLayout3ui6;ye.resize(K),ye._trim();for(var te=0;te<K;te++){var xe=te*6;ye.uint16[xe+0]=te*4+0,ye.uint16[xe+1]=te*4+1,ye.uint16[xe+2]=te*4+2,ye.uint16[xe+3]=te*4+2,ye.uint16[xe+4]=te*4+3,ye.uint16[xe+5]=te*4+0}return ye}var Oe=e.identity(new Float32Array(16));function R(ve,K,ye,te,xe){if(ve.renderPass==="translucent"){var We=Ma.disabled,He=ve.colorModeForRenderPass(),st=ye.layout.get("text-variable-anchor");st&&we(te,ve,ye,K,ye.layout.get("text-rotation-alignment"),ye.layout.get("text-pitch-alignment"),xe),ye.paint.get("icon-opacity").constantOr(1)!==0&&ft(ve,K,ye,te,!1,ye.paint.get("icon-translate"),ye.paint.get("icon-translate-anchor"),ye.layout.get("icon-rotation-alignment"),ye.layout.get("icon-pitch-alignment"),ye.layout.get("icon-keep-upright"),We,He),ye.paint.get("text-opacity").constantOr(1)!==0&&ft(ve,K,ye,te,!0,ye.paint.get("text-translate"),ye.paint.get("text-translate-anchor"),ye.layout.get("text-rotation-alignment"),ye.layout.get("text-pitch-alignment"),ye.layout.get("text-keep-upright"),We,He),K.map.showCollisionBoxes&&(hc(ve,K,ye,te,ye.paint.get("text-translate"),ye.paint.get("text-translate-anchor"),!0),hc(ve,K,ye,te,ye.paint.get("icon-translate"),ye.paint.get("icon-translate-anchor"),!1))}}function ae(ve,K,ye,te,xe,We){var He=e.getAnchorAlignment(ve),st=He.horizontalAlign,Et=He.verticalAlign,Ht=-(st-.5)*K,yr=-(Et-.5)*ye,Ir=e.evaluateVariableOffset(ve,te);return new e.Point((Ht/xe+Ir[0])*We,(yr/xe+Ir[1])*We)}function we(ve,K,ye,te,xe,We,He){for(var st=K.transform,Et=xe==="map",Ht=We==="map",yr=0,Ir=ve;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=te.getTile(wr),tr=qt.getBucket(ye);if(!(!tr||!tr.text||!tr.text.segments.get().length)){var dr=tr.textSizeData,Pr=e.evaluateSizeForZoom(dr,st.zoom),Vr=In(qt,1,K.transform.zoom),Hr=Sa(wr.posMatrix,Ht,Et,K.transform,Vr),aa=ye.layout.get("icon-text-fit")!=="none"&&tr.hasIconData();if(Pr){var Qr=Math.pow(2,st.zoom-qt.tileID.overscaledZ);Se(tr,Et,Ht,He,e.symbolSize,st,Hr,wr.posMatrix,Qr,Pr,aa)}}}}function Se(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=ve.text.placedSymbolArray,wr=ve.text.dynamicLayoutVertexArray,qt=ve.icon.dynamicLayoutVertexArray,tr={};wr.clear();for(var dr=0;dr<Ir.length;dr++){var Pr=Ir.get(dr),Vr=ve.allowVerticalPlacement&&!Pr.placedOrientation,Hr=!Pr.hidden&&Pr.crossTileID&&!Vr?te[Pr.crossTileID]:null;if(!Hr)zo(Pr.numGlyphs,wr);else{var aa=new e.Point(Pr.anchorX,Pr.anchorY),Qr=ai(aa,ye?st:He),Gr=an(We.cameraToCenterDistance,Qr.signedDistanceFromCamera),ia=xe.evaluateSizeForFeature(ve.textSizeData,Ht,Pr)*Gr/e.ONE_EM;ye&&(ia*=ve.tilePixelRatio/Et);for(var Ur=Hr.width,wa=Hr.height,Oa=Hr.anchor,ri=Hr.textOffset,Pi=Hr.textBoxScale,mi=ae(Oa,Ur,wa,ri,Pi,ia),Di=ye?ai(aa.add(mi),He).point:Qr.point.add(K?mi.rotate(-We.angle):mi),An=ve.allowVerticalPlacement&&Pr.placedOrientation===e.WritingMode.vertical?Math.PI/2:0,ln=0;ln<Pr.numGlyphs;ln++)e.addDynamicAttributes(wr,Di,An);yr&&Pr.associatedIconIndex>=0&&(tr[Pr.associatedIconIndex]={shiftedAnchor:Di,angle:An})}}if(yr){qt.clear();for(var Ii=ve.icon.placedSymbolArray,Wi=0;Wi<Ii.length;Wi++){var Hi=Ii.get(Wi);if(Hi.hidden)zo(Hi.numGlyphs,qt);else{var yn=tr[Wi];if(!yn)zo(Hi.numGlyphs,qt);else for(var zn=0;zn<Hi.numGlyphs;zn++)e.addDynamicAttributes(qt,yn.shiftedAnchor,yn.angle)}}ve.icon.dynamicLayoutVertexBuffer.updateData(qt)}ve.text.dynamicLayoutVertexBuffer.updateData(wr)}function De(ve,K,ye){return ye.iconsInText&&K?"symbolTextAndIcon":ve?"symbolSDF":"symbolIcon"}function ft(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir){for(var wr=ve.context,qt=wr.gl,tr=ve.transform,dr=st==="map",Pr=Et==="map",Vr=dr&&ye.layout.get("symbol-placement")!=="point",Hr=dr&&!Pr&&!Vr,aa=ye.layout.get("symbol-sort-key").constantOr(1)!==void 0,Qr=!1,Gr=ve.depthModeForSublayer(0,La.ReadOnly),ia=ye.layout.get("text-variable-anchor"),Ur=[],wa=0,Oa=te;wa<Oa.length;wa+=1){var ri=Oa[wa],Pi=K.getTile(ri),mi=Pi.getBucket(ye);if(mi){var Di=xe?mi.text:mi.icon;if(!(!Di||!Di.segments.get().length)){var An=Di.programConfigurations.get(ye.id),ln=xe||mi.sdfIcons,Ii=xe?mi.textSizeData:mi.iconSizeData,Wi=Pr||tr.pitch!==0,Hi=ve.useProgram(De(ln,xe,mi),An),yn=e.evaluateSizeForZoom(Ii,tr.zoom),zn=void 0,ms=[0,0],us=void 0,Vs=void 0,qo=null,Ls=void 0;if(xe){if(us=Pi.glyphAtlasTexture,Vs=qt.LINEAR,zn=Pi.glyphAtlasTexture.size,mi.iconsInText){ms=Pi.imageAtlasTexture.size,qo=Pi.imageAtlasTexture;var wl=Ii.kind==="composite"||Ii.kind==="camera";Ls=Wi||ve.options.rotating||ve.options.zooming||wl?qt.LINEAR:qt.NEAREST}}else{var Ru=ye.layout.get("icon-size").constantOr(0)!==1||mi.iconsNeedLinear;us=Pi.imageAtlasTexture,Vs=ln||ve.options.rotating||ve.options.zooming||Ru||Wi?qt.LINEAR:qt.NEAREST,zn=Pi.imageAtlasTexture.size}var Ap=In(Pi,1,ve.transform.zoom),Sp=Sa(ri.posMatrix,Pr,dr,ve.transform,Ap),Eh=Ti(ri.posMatrix,Pr,dr,ve.transform,Ap),Vp=ia&&mi.hasTextData(),Vd=ye.layout.get("icon-text-fit")!=="none"&&Vp&&mi.hasIconData();Vr&&Mn(mi,ri.posMatrix,ve,xe,Sp,Eh,Pr,Ht);var td=ve.translatePosMatrix(ri.posMatrix,Pi,We,He),kh=Vr||xe&&ia||Vd?Oe:Sp,rd=ve.translatePosMatrix(Eh,Pi,We,He,!0),Xh=ln&&ye.paint.get(xe?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ch=void 0;ln?mi.iconsInText?Ch=yu(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,zn,ms):Ch=tf(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,xe,zn,!0):Ch=ec(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,xe,zn);var Mp={program:Hi,buffers:Di,uniformValues:Ch,atlasTexture:us,atlasTextureIcon:qo,atlasInterpolation:Vs,atlasInterpolationIcon:Ls,isSDF:ln,hasHalo:Xh};if(aa&&mi.canOverlap){Qr=!0;for(var qp=Di.segments.get(),Ep=0,Cv=qp;Ep<Cv.length;Ep+=1){var qd=Cv[Ep];Ur.push({segments:new e.SegmentVector([qd]),sortKey:qd.sortKey,state:Mp})}}else Ur.push({segments:Di.segments,sortKey:0,state:Mp})}}}Qr&&Ur.sort(function(im,nm){return im.sortKey-nm.sortKey});for(var Sf=0,Hd=Ur;Sf<Hd.length;Sf+=1){var Lv=Hd[Sf],eh=Lv.state;if(wr.activeTexture.set(qt.TEXTURE0),eh.atlasTexture.bind(eh.atlasInterpolation,qt.CLAMP_TO_EDGE),eh.atlasTextureIcon&&(wr.activeTexture.set(qt.TEXTURE1),eh.atlasTextureIcon&&eh.atlasTextureIcon.bind(eh.atlasInterpolationIcon,qt.CLAMP_TO_EDGE)),eh.isSDF){var iv=eh.uniformValues;eh.hasHalo&&(iv.u_is_halo=1,bt(eh.buffers,Lv.segments,ye,ve,eh.program,Gr,yr,Ir,iv)),iv.u_is_halo=0}bt(eh.buffers,Lv.segments,ye,ve,eh.program,Gr,yr,Ir,eh.uniformValues)}}function bt(ve,K,ye,te,xe,We,He,st,Et){var Ht=te.context,yr=Ht.gl;xe.draw(Ht,yr.TRIANGLES,We,He,st,xr.disabled,Et,ye.id,ve.layoutVertexBuffer,ve.indexBuffer,K,ye.paint,te.transform.zoom,ve.programConfigurations.get(ye.id),ve.dynamicLayoutVertexBuffer,ve.opacityVertexBuffer)}function Dt(ve,K,ye,te){if(ve.renderPass==="translucent"){var xe=ye.paint.get("circle-opacity"),We=ye.paint.get("circle-stroke-width"),He=ye.paint.get("circle-stroke-opacity"),st=ye.layout.get("circle-sort-key").constantOr(1)!==void 0;if(!(xe.constantOr(1)===0&&(We.constantOr(1)===0||He.constantOr(1)===0))){for(var Et=ve.context,Ht=Et.gl,yr=ve.depthModeForSublayer(0,La.ReadOnly),Ir=Ma.disabled,wr=ve.colorModeForRenderPass(),qt=[],tr=0;tr<te.length;tr++){var dr=te[tr],Pr=K.getTile(dr),Vr=Pr.getBucket(ye);if(Vr){var Hr=Vr.programConfigurations.get(ye.id),aa=ve.useProgram("circle",Hr),Qr=Vr.layoutVertexBuffer,Gr=Vr.indexBuffer,ia=fr(ve,dr,Pr,ye),Ur={programConfiguration:Hr,program:aa,layoutVertexBuffer:Qr,indexBuffer:Gr,uniformValues:ia};if(st)for(var wa=Vr.segments.get(),Oa=0,ri=wa;Oa<ri.length;Oa+=1){var Pi=ri[Oa];qt.push({segments:new e.SegmentVector([Pi]),sortKey:Pi.sortKey,state:Ur})}else qt.push({segments:Vr.segments,sortKey:0,state:Ur})}}st&&qt.sort(function(us,Vs){return us.sortKey-Vs.sortKey});for(var mi=0,Di=qt;mi<Di.length;mi+=1){var An=Di[mi],ln=An.state,Ii=ln.programConfiguration,Wi=ln.program,Hi=ln.layoutVertexBuffer,yn=ln.indexBuffer,zn=ln.uniformValues,ms=An.segments;Wi.draw(Et,Ht.TRIANGLES,yr,Ir,wr,xr.disabled,zn,ye.id,Hi,yn,ms,ye.paint,ve.transform.zoom,Ii)}}}}function Yt(ve,K,ye,te){if(ye.paint.get("heatmap-opacity")!==0)if(ve.renderPass==="offscreen"){var xe=ve.context,We=xe.gl,He=Ma.disabled,st=new zt([We.ONE,We.ONE],e.Color.transparent,[!0,!0,!0,!0]);cr(xe,ve,ye),xe.clear({color:e.Color.transparent});for(var Et=0;Et<te.length;Et++){var Ht=te[Et];if(!K.hasRenderableParent(Ht)){var yr=K.getTile(Ht),Ir=yr.getBucket(ye);if(Ir){var wr=Ir.programConfigurations.get(ye.id),qt=ve.useProgram("heatmap",wr),tr=ve.transform,dr=tr.zoom;qt.draw(xe,We.TRIANGLES,La.disabled,He,st,xr.disabled,vi(Ht.posMatrix,yr,dr,ye.paint.get("heatmap-intensity")),ye.id,Ir.layoutVertexBuffer,Ir.indexBuffer,Ir.segments,ye.paint,ve.transform.zoom,wr)}}}xe.viewport.set([0,0,ve.width,ve.height])}else ve.renderPass==="translucent"&&(ve.context.setColorMode(ve.colorModeForRenderPass()),jr(ve,ye))}function cr(ve,K,ye){var te=ve.gl;ve.activeTexture.set(te.TEXTURE1),ve.viewport.set([0,0,K.width/4,K.height/4]);var xe=ye.heatmapFbo;if(xe)te.bindTexture(te.TEXTURE_2D,xe.colorAttachment.get()),ve.bindFramebuffer.set(xe.framebuffer);else{var We=te.createTexture();te.bindTexture(te.TEXTURE_2D,We),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_WRAP_S,te.CLAMP_TO_EDGE),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_WRAP_T,te.CLAMP_TO_EDGE),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_MIN_FILTER,te.LINEAR),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_MAG_FILTER,te.LINEAR),xe=ye.heatmapFbo=ve.createFramebuffer(K.width/4,K.height/4,!1),hr(ve,K,We,xe)}}function hr(ve,K,ye,te){var xe=ve.gl,We=ve.extRenderToTextureHalfFloat?ve.extTextureHalfFloat.HALF_FLOAT_OES:xe.UNSIGNED_BYTE;xe.texImage2D(xe.TEXTURE_2D,0,xe.RGBA,K.width/4,K.height/4,0,xe.RGBA,We,null),te.colorAttachment.set(ye)}function jr(ve,K){var ye=ve.context,te=ye.gl,xe=K.heatmapFbo;if(xe){ye.activeTexture.set(te.TEXTURE0),te.bindTexture(te.TEXTURE_2D,xe.colorAttachment.get()),ye.activeTexture.set(te.TEXTURE1);var We=K.colorRampTexture;We||(We=K.colorRampTexture=new e.Texture(ye,K.colorRamp,te.RGBA)),We.bind(te.LINEAR,te.CLAMP_TO_EDGE),ve.useProgram("heatmapTexture").draw(ye,te.TRIANGLES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ti(ve,K,0,1),K.id,ve.viewportBuffer,ve.quadTriangleIndexBuffer,ve.viewportSegments,K.paint,ve.transform.zoom)}}function ea(ve,K,ye,te){if(ve.renderPass==="translucent"){var xe=ye.paint.get("line-opacity"),We=ye.paint.get("line-width");if(!(xe.constantOr(1)===0||We.constantOr(1)===0))for(var He=ve.depthModeForSublayer(0,La.ReadOnly),st=ve.colorModeForRenderPass(),Et=ye.paint.get("line-dasharray"),Ht=ye.paint.get("line-pattern"),yr=Ht.constantOr(1),Ir=ye.paint.get("line-gradient"),wr=ye.getCrossfadeParameters(),qt=yr?"linePattern":Et?"lineSDF":Ir?"lineGradient":"line",tr=ve.context,dr=tr.gl,Pr=!0,Vr=0,Hr=te;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=K.getTile(aa);if(!(yr&&!Qr.patternsLoaded())){var Gr=Qr.getBucket(ye);if(Gr){var ia=Gr.programConfigurations.get(ye.id),Ur=ve.context.program.get(),wa=ve.useProgram(qt,ia),Oa=Pr||wa.program!==Ur,ri=Ht.constantOr(null);if(ri&&Qr.imageAtlas){var Pi=Qr.imageAtlas,mi=Pi.patternPositions[ri.to.toString()],Di=Pi.patternPositions[ri.from.toString()];mi&&Di&&ia.setConstantPatternPositions(mi,Di)}var An=yr?Ms(ve,Qr,ye,wr):Et?Hs(ve,Qr,ye,Et,wr):Ir?Xs(ve,Qr,ye,Gr.lineClipsArray.length):bs(ve,Qr,ye);if(yr)tr.activeTexture.set(dr.TEXTURE0),Qr.imageAtlasTexture.bind(dr.LINEAR,dr.CLAMP_TO_EDGE),ia.updatePaintBuffers(wr);else if(Et&&(Oa||ve.lineAtlas.dirty))tr.activeTexture.set(dr.TEXTURE0),ve.lineAtlas.bind(tr);else if(Ir){var ln=Gr.gradients[ye.id],Ii=ln.texture;if(ye.gradientVersion!==ln.version){var Wi=256;if(ye.stepInterpolant){var Hi=K.getSource().maxzoom,yn=aa.canonical.z===Hi?Math.ceil(1<<ve.transform.maxZoom-aa.canonical.z):1,zn=Gr.maxLineLength/e.EXTENT,ms=1024,us=zn*ms*yn;Wi=e.clamp(e.nextPowerOfTwo(us),256,tr.maxTextureSize)}ln.gradient=e.renderColorRamp({expression:ye.gradientExpression(),evaluationKey:"lineProgress",resolution:Wi,image:ln.gradient||void 0,clips:Gr.lineClipsArray}),ln.texture?ln.texture.update(ln.gradient):ln.texture=new e.Texture(tr,ln.gradient,dr.RGBA),ln.version=ye.gradientVersion,Ii=ln.texture}tr.activeTexture.set(dr.TEXTURE0),Ii.bind(ye.stepInterpolant?dr.NEAREST:dr.LINEAR,dr.CLAMP_TO_EDGE)}wa.draw(tr,dr.TRIANGLES,He,ve.stencilModeForClipping(aa),st,xr.disabled,An,ye.id,Gr.layoutVertexBuffer,Gr.indexBuffer,Gr.segments,ye.paint,ve.transform.zoom,ia,Gr.layoutVertexBuffer2),Pr=!1}}}}}function qe(ve,K,ye,te){var xe=ye.paint.get("fill-color"),We=ye.paint.get("fill-opacity");if(We.constantOr(1)!==0){var He=ve.colorModeForRenderPass(),st=ye.paint.get("fill-pattern"),Et=ve.opaquePassEnabledForLayer()&&!st.constantOr(1)&&xe.constantOr(e.Color.transparent).a===1&&We.constantOr(0)===1?"opaque":"translucent";if(ve.renderPass===Et){var Ht=ve.depthModeForSublayer(1,ve.renderPass==="opaque"?La.ReadWrite:La.ReadOnly);Je(ve,K,ye,te,Ht,He,!1)}if(ve.renderPass==="translucent"&&ye.paint.get("fill-antialias")){var yr=ve.depthModeForSublayer(ye.getPaintProperty("fill-outline-color")?2:0,La.ReadOnly);Je(ve,K,ye,te,yr,He,!0)}}}function Je(ve,K,ye,te,xe,We,He){var st=ve.context.gl,Et=ye.paint.get("fill-pattern"),Ht=Et&&Et.constantOr(1),yr=ye.getCrossfadeParameters(),Ir,wr,qt,tr,dr;He?(wr=Ht&&!ye.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",Ir=st.LINES):(wr=Ht?"fillPattern":"fill",Ir=st.TRIANGLES);for(var Pr=0,Vr=te;Pr<Vr.length;Pr+=1){var Hr=Vr[Pr],aa=K.getTile(Hr);if(!(Ht&&!aa.patternsLoaded())){var Qr=aa.getBucket(ye);if(Qr){var Gr=Qr.programConfigurations.get(ye.id),ia=ve.useProgram(wr,Gr);Ht&&(ve.context.activeTexture.set(st.TEXTURE0),aa.imageAtlasTexture.bind(st.LINEAR,st.CLAMP_TO_EDGE),Gr.updatePaintBuffers(yr));var Ur=Et.constantOr(null);if(Ur&&aa.imageAtlas){var wa=aa.imageAtlas,Oa=wa.patternPositions[Ur.to.toString()],ri=wa.patternPositions[Ur.from.toString()];Oa&&ri&&Gr.setConstantPatternPositions(Oa,ri)}var Pi=ve.translatePosMatrix(Hr.posMatrix,aa,ye.paint.get("fill-translate"),ye.paint.get("fill-translate-anchor"));if(!He)tr=Qr.indexBuffer,dr=Qr.segments,qt=Ht?Oc(Pi,ve,yr,aa):fc(Pi);else{tr=Qr.indexBuffer2,dr=Qr.segments2;var mi=[st.drawingBufferWidth,st.drawingBufferHeight];qt=wr==="fillOutlinePattern"&&Ht?ef(Pi,ve,yr,aa,mi):Qu(Pi,mi)}ia.draw(ve.context,Ir,xe,ve.stencilModeForClipping(Hr),We,xr.disabled,qt,ye.id,Qr.layoutVertexBuffer,tr,dr,ye.paint,ve.transform.zoom,Gr)}}}}function ot(ve,K,ye,te){var xe=ye.paint.get("fill-extrusion-opacity");if(xe!==0&&ve.renderPass==="translucent"){var We=new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D);if(xe===1&&!ye.paint.get("fill-extrusion-pattern").constantOr(1)){var He=ve.colorModeForRenderPass();ht(ve,K,ye,te,We,Ma.disabled,He)}else ht(ve,K,ye,te,We,Ma.disabled,zt.disabled),ht(ve,K,ye,te,We,ve.stencilModeFor3D(),ve.colorModeForRenderPass())}}function ht(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ye.paint.get("fill-extrusion-pattern"),yr=Ht.constantOr(1),Ir=ye.getCrossfadeParameters(),wr=ye.paint.get("fill-extrusion-opacity"),qt=0,tr=te;qt<tr.length;qt+=1){var dr=tr[qt],Pr=K.getTile(dr),Vr=Pr.getBucket(ye);if(Vr){var Hr=Vr.programConfigurations.get(ye.id),aa=ve.useProgram(yr?"fillExtrusionPattern":"fillExtrusion",Hr);yr&&(ve.context.activeTexture.set(Et.TEXTURE0),Pr.imageAtlasTexture.bind(Et.LINEAR,Et.CLAMP_TO_EDGE),Hr.updatePaintBuffers(Ir));var Qr=Ht.constantOr(null);if(Qr&&Pr.imageAtlas){var Gr=Pr.imageAtlas,ia=Gr.patternPositions[Qr.to.toString()],Ur=Gr.patternPositions[Qr.from.toString()];ia&&Ur&&Hr.setConstantPatternPositions(ia,Ur)}var wa=ve.translatePosMatrix(dr.posMatrix,Pr,ye.paint.get("fill-extrusion-translate"),ye.paint.get("fill-extrusion-translate-anchor")),Oa=ye.paint.get("fill-extrusion-vertical-gradient"),ri=yr?Vu(wa,ve,Oa,wr,dr,Ir,Pr):Qf(wa,ve,Oa,wr);aa.draw(st,st.gl.TRIANGLES,xe,We,He,xr.backCCW,ri,ye.id,Vr.layoutVertexBuffer,Vr.indexBuffer,Vr.segments,ye.paint,ve.transform.zoom,Hr)}}}function At(ve,K,ye,te){if(!(ve.renderPass!=="offscreen"&&ve.renderPass!=="translucent")){for(var xe=ve.context,We=ve.depthModeForSublayer(0,La.ReadOnly),He=ve.colorModeForRenderPass(),st=ve.renderPass==="translucent"?ve.stencilConfigForOverlap(te):[{},te],Et=st[0],Ht=st[1],yr=0,Ir=Ht;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=K.getTile(wr);qt.needsHillshadePrepare&&ve.renderPass==="offscreen"?Pt(ve,qt,ye,We,Ma.disabled,He):ve.renderPass==="translucent"&&_t(ve,qt,ye,We,Et[wr.overscaledZ],He)}xe.viewport.set([0,0,ve.width,ve.height])}}function _t(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl,Et=K.fbo;if(Et){var Ht=ve.useProgram("hillshade");He.activeTexture.set(st.TEXTURE0),st.bindTexture(st.TEXTURE_2D,Et.colorAttachment.get());var yr=Wn(ve,K,ye);Ht.draw(He,st.TRIANGLES,te,xe,We,xr.disabled,yr,ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments)}}function Pt(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl,Et=K.dem;if(Et&&Et.data){var Ht=Et.dim,yr=Et.stride,Ir=Et.getPixels();if(He.activeTexture.set(st.TEXTURE1),He.pixelStoreUnpackPremultiplyAlpha.set(!1),K.demTexture=K.demTexture||ve.getTileTexture(yr),K.demTexture){var wr=K.demTexture;wr.update(Ir,{premultiply:!1}),wr.bind(st.NEAREST,st.CLAMP_TO_EDGE)}else K.demTexture=new e.Texture(He,Ir,st.RGBA,{premultiply:!1}),K.demTexture.bind(st.NEAREST,st.CLAMP_TO_EDGE);He.activeTexture.set(st.TEXTURE0);var qt=K.fbo;if(!qt){var tr=new e.Texture(He,{width:Ht,height:Ht,data:null},st.RGBA);tr.bind(st.LINEAR,st.CLAMP_TO_EDGE),qt=K.fbo=He.createFramebuffer(Ht,Ht,!0),qt.colorAttachment.set(tr.texture)}He.bindFramebuffer.set(qt.framebuffer),He.viewport.set([0,0,Ht,Ht]),ve.useProgram("hillshadePrepare").draw(He,st.TRIANGLES,te,xe,We,xr.disabled,Jn(K.tileID,Et),ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments),K.needsHillshadePrepare=!1}}function er(ve,K,ye,te){if(ve.renderPass==="translucent"&&ye.paint.get("raster-opacity")!==0&&te.length)for(var xe=ve.context,We=xe.gl,He=K.getSource(),st=ve.useProgram("raster"),Et=ve.colorModeForRenderPass(),Ht=He instanceof se?[{},te]:ve.stencilConfigForOverlap(te),yr=Ht[0],Ir=Ht[1],wr=Ir[Ir.length-1].overscaledZ,qt=!ve.options.moving,tr=0,dr=Ir;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=ve.depthModeForSublayer(Pr.overscaledZ-wr,ye.paint.get("raster-opacity")===1?La.ReadWrite:La.ReadOnly,We.LESS),Hr=K.getTile(Pr),aa=ve.transform.calculatePosMatrix(Pr.toUnwrapped(),qt);Hr.registerFadeDuration(ye.paint.get("raster-fade-duration"));var Qr=K.findLoadedParent(Pr,0),Gr=nr(Hr,Qr,K,ye,ve.transform),ia=void 0,Ur=void 0,wa=ye.paint.get("raster-resampling")==="nearest"?We.NEAREST:We.LINEAR;xe.activeTexture.set(We.TEXTURE0),Hr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST),xe.activeTexture.set(We.TEXTURE1),Qr?(Qr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST),ia=Math.pow(2,Qr.tileID.overscaledZ-Hr.tileID.overscaledZ),Ur=[Hr.tileID.canonical.x*ia%1,Hr.tileID.canonical.y*ia%1]):Hr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST);var Oa=tl(aa,Ur||[0,0],ia||1,Gr,ye);He instanceof se?st.draw(xe,We.TRIANGLES,Vr,Ma.disabled,Et,xr.disabled,Oa,ye.id,He.boundsBuffer,ve.quadTriangleIndexBuffer,He.boundsSegments):st.draw(xe,We.TRIANGLES,Vr,yr[Pr.overscaledZ],Et,xr.disabled,Oa,ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments)}}function nr(ve,K,ye,te,xe){var We=te.paint.get("raster-fade-duration");if(We>0){var He=e.browser.now(),st=(He-ve.timeAdded)/We,Et=K?(He-K.timeAdded)/We:-1,Ht=ye.getSource(),yr=xe.coveringZoomLevel({tileSize:Ht.tileSize,roundZoom:Ht.roundZoom}),Ir=!K||Math.abs(K.tileID.overscaledZ-yr)>Math.abs(ve.tileID.overscaledZ-yr),wr=Ir&&ve.refreshedUponExpiration?1:e.clamp(Ir?st:1-Et,0,1);return ve.refreshedUponExpiration&&st>=1&&(ve.refreshedUponExpiration=!1),K?{opacity:1,mix:1-wr}:{opacity:wr,mix:0}}else return{opacity:1,mix:0}}function pr(ve,K,ye){var te=ye.paint.get("background-color"),xe=ye.paint.get("background-opacity");if(xe!==0){var We=ve.context,He=We.gl,st=ve.transform,Et=st.tileSize,Ht=ye.paint.get("background-pattern");if(!ve.isPatternMissing(Ht)){var yr=!Ht&&te.a===1&&xe===1&&ve.opaquePassEnabledForLayer()?"opaque":"translucent";if(ve.renderPass===yr){var Ir=Ma.disabled,wr=ve.depthModeForSublayer(0,yr==="opaque"?La.ReadWrite:La.ReadOnly),qt=ve.colorModeForRenderPass(),tr=ve.useProgram(Ht?"backgroundPattern":"background"),dr=st.coveringTiles({tileSize:Et});Ht&&(We.activeTexture.set(He.TEXTURE0),ve.imageManager.bind(ve.context));for(var Pr=ye.getCrossfadeParameters(),Vr=0,Hr=dr;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=ve.transform.calculatePosMatrix(aa.toUnwrapped()),Gr=Ht?ro(Qr,xe,ve,Ht,{tileID:aa,tileSize:Et},Pr):Ac(Qr,xe,te);tr.draw(We,He.TRIANGLES,wr,Ir,qt,xr.disabled,Gr,ye.id,ve.tileExtentBuffer,ve.quadTriangleIndexBuffer,ve.tileExtentSegments)}}}}}var Sr=new e.Color(1,0,0,1),Wr=new e.Color(0,1,0,1),ha=new e.Color(0,0,1,1),ga=new e.Color(1,0,1,1),Pa=new e.Color(0,1,1,1);function Ja(ve){var K=ve.transform.padding,ye=3;pi(ve,ve.transform.height-(K.top||0),ye,Sr),pi(ve,K.bottom||0,ye,Wr),Ci(ve,K.left||0,ye,ha),Ci(ve,ve.transform.width-(K.right||0),ye,ga);var te=ve.transform.centerPoint;di(ve,te.x,ve.transform.height-te.y,Pa)}function di(ve,K,ye,te){var xe=20,We=2;$i(ve,K-We/2,ye-xe/2,We,xe,te),$i(ve,K-xe/2,ye-We/2,xe,We,te)}function pi(ve,K,ye,te){$i(ve,0,K+ye/2,ve.transform.width,ye,te)}function Ci(ve,K,ye,te){$i(ve,K-ye/2,0,ye,ve.transform.height,te)}function $i(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl;st.enable(st.SCISSOR_TEST),st.scissor(K*e.browser.devicePixelRatio,ye*e.browser.devicePixelRatio,te*e.browser.devicePixelRatio,xe*e.browser.devicePixelRatio),He.clear({color:We}),st.disable(st.SCISSOR_TEST)}function Bn(ve,K,ye){for(var te=0;te<ye.length;te++)Sn(ve,K,ye[te])}function Sn(ve,K,ye){var te=ve.context,xe=te.gl,We=ye.posMatrix,He=ve.useProgram("debug"),st=La.disabled,Et=Ma.disabled,Ht=ve.colorModeForRenderPass(),yr="$debug";te.activeTexture.set(xe.TEXTURE0),ve.emptyTexture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),He.draw(te,xe.LINE_STRIP,st,Et,Ht,xr.disabled,yi(We,e.Color.red),yr,ve.debugBuffer,ve.tileBorderIndexBuffer,ve.debugSegments);var Ir=K.getTileByID(ye.key).latestRawTileData,wr=Ir&&Ir.byteLength||0,qt=Math.floor(wr/1024),tr=K.getTile(ye).tileSize,dr=512/Math.min(tr,512)*(ye.overscaledZ/ve.transform.zoom)*.5,Pr=ye.canonical.toString();ye.overscaledZ!==ye.canonical.z&&(Pr+=" => "+ye.overscaledZ);var Vr=Pr+" "+qt+"kb";ho(ve,Vr),He.draw(te,xe.TRIANGLES,st,Et,zt.alphaBlended,xr.disabled,yi(We,e.Color.transparent,dr),yr,ve.debugBuffer,ve.quadTriangleIndexBuffer,ve.debugSegments)}function ho(ve,K){ve.initDebugOverlayCanvas();var ye=ve.debugOverlayCanvas,te=ve.context.gl,xe=ve.debugOverlayCanvas.getContext("2d");xe.clearRect(0,0,ye.width,ye.height),xe.shadowColor="white",xe.shadowBlur=2,xe.lineWidth=1.5,xe.strokeStyle="white",xe.textBaseline="top",xe.font="bold 36px Open Sans, sans-serif",xe.fillText(K,5,5),xe.strokeText(K,5,5),ve.debugOverlayTexture.update(ye),ve.debugOverlayTexture.bind(te.LINEAR,te.CLAMP_TO_EDGE)}function ts(ve,K,ye){var te=ve.context,xe=ye.implementation;if(ve.renderPass==="offscreen"){var We=xe.prerender;We&&(ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),We.call(xe,te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState())}else if(ve.renderPass==="translucent"){ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),te.setStencilMode(Ma.disabled);var He=xe.renderingMode==="3d"?new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D):ve.depthModeForSublayer(0,La.ReadOnly);te.setDepthMode(He),xe.render(te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState(),te.bindFramebuffer.set(null)}}var yo={symbol:R,circle:Dt,heatmap:Yt,line:ea,fill:qe,"fill-extrusion":ot,hillshade:At,raster:er,background:pr,debug:Bn,custom:ts},Vo=function(K,ye){this.context=new Zr(K),this.transform=ye,this._tileTextures={},this.setup(),this.numSublayers=pa.maxUnderzooming+pa.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Zu,this.gpuTimers={}};Vo.prototype.resize=function(K,ye){if(this.width=K*e.browser.devicePixelRatio,this.height=ye*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var te=0,xe=this.style._order;te<xe.length;te+=1){var We=xe[te];this.style._layers[We].resize()}},Vo.prototype.setup=function(){var K=this.context,ye=new e.StructArrayLayout2i4;ye.emplaceBack(0,0),ye.emplaceBack(e.EXTENT,0),ye.emplaceBack(0,e.EXTENT),ye.emplaceBack(e.EXTENT,e.EXTENT),this.tileExtentBuffer=K.createVertexBuffer(ye,Nu.members),this.tileExtentSegments=e.SegmentVector.simpleSegment(0,0,4,2);var te=new e.StructArrayLayout2i4;te.emplaceBack(0,0),te.emplaceBack(e.EXTENT,0),te.emplaceBack(0,e.EXTENT),te.emplaceBack(e.EXTENT,e.EXTENT),this.debugBuffer=K.createVertexBuffer(te,Nu.members),this.debugSegments=e.SegmentVector.simpleSegment(0,0,4,5);var xe=new e.StructArrayLayout4i8;xe.emplaceBack(0,0,0,0),xe.emplaceBack(e.EXTENT,0,e.EXTENT,0),xe.emplaceBack(0,e.EXTENT,0,e.EXTENT),xe.emplaceBack(e.EXTENT,e.EXTENT,e.EXTENT,e.EXTENT),this.rasterBoundsBuffer=K.createVertexBuffer(xe,ue.members),this.rasterBoundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);var We=new e.StructArrayLayout2i4;We.emplaceBack(0,0),We.emplaceBack(1,0),We.emplaceBack(0,1),We.emplaceBack(1,1),this.viewportBuffer=K.createVertexBuffer(We,Nu.members),this.viewportSegments=e.SegmentVector.simpleSegment(0,0,4,2);var He=new e.StructArrayLayout1ui2;He.emplaceBack(0),He.emplaceBack(1),He.emplaceBack(3),He.emplaceBack(2),He.emplaceBack(0),this.tileBorderIndexBuffer=K.createIndexBuffer(He);var st=new e.StructArrayLayout3ui6;st.emplaceBack(0,1,2),st.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=K.createIndexBuffer(st),this.emptyTexture=new e.Texture(K,{width:1,height:1,data:new Uint8Array([0,0,0,0])},K.gl.RGBA);var Et=this.context.gl;this.stencilClearMode=new Ma({func:Et.ALWAYS,mask:0},0,255,Et.ZERO,Et.ZERO,Et.ZERO)},Vo.prototype.clearStencil=function(){var K=this.context,ye=K.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var te=e.create();e.ortho(te,0,this.width,this.height,0,0,1),e.scale(te,te,[ye.drawingBufferWidth,ye.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(K,ye.TRIANGLES,La.disabled,this.stencilClearMode,zt.disabled,xr.disabled,Bi(te),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},Vo.prototype._renderTileClippingMasks=function(K,ye){if(!(this.currentStencilSource===K.source||!K.isTileClipped()||!ye||!ye.length)){this.currentStencilSource=K.source;var te=this.context,xe=te.gl;this.nextStencilID+ye.length>256&&this.clearStencil(),te.setColorMode(zt.disabled),te.setDepthMode(La.disabled);var We=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var He=0,st=ye;He<st.length;He+=1){var Et=st[He],Ht=this._tileClippingMaskIDs[Et.key]=this.nextStencilID++;We.draw(te,xe.TRIANGLES,La.disabled,new Ma({func:xe.ALWAYS,mask:0},Ht,255,xe.KEEP,xe.KEEP,xe.REPLACE),zt.disabled,xr.disabled,Bi(Et.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},Vo.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var K=this.nextStencilID++,ye=this.context.gl;return new Ma({func:ye.NOTEQUAL,mask:255},K,255,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilModeForClipping=function(K){var ye=this.context.gl;return new Ma({func:ye.EQUAL,mask:255},this._tileClippingMaskIDs[K.key],0,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilConfigForOverlap=function(K){var ye,te=this.context.gl,xe=K.sort(function(Ht,yr){return yr.overscaledZ-Ht.overscaledZ}),We=xe[xe.length-1].overscaledZ,He=xe[0].overscaledZ-We+1;if(He>1){this.currentStencilSource=void 0,this.nextStencilID+He>256&&this.clearStencil();for(var st={},Et=0;Et<He;Et++)st[Et+We]=new Ma({func:te.GEQUAL,mask:255},Et+this.nextStencilID,255,te.KEEP,te.KEEP,te.REPLACE);return this.nextStencilID+=He,[st,xe]}return[(ye={},ye[We]=Ma.disabled,ye),xe]},Vo.prototype.colorModeForRenderPass=function(){var K=this.context.gl;if(this._showOverdrawInspector){var ye=8,te=1/ye;return new zt([K.CONSTANT_COLOR,K.ONE],new e.Color(te,te,te,0),[!0,!0,!0,!0])}else return this.renderPass==="opaque"?zt.unblended:zt.alphaBlended},Vo.prototype.depthModeForSublayer=function(K,ye,te){if(!this.opaquePassEnabledForLayer())return La.disabled;var xe=1-((1+this.currentLayer)*this.numSublayers+K)*this.depthEpsilon;return new La(te||this.context.gl.LEQUAL,ye,[xe,xe])},Vo.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},Vo.prototype.render=function(K,ye){var te=this;this.style=K,this.options=ye,this.lineAtlas=K.lineAtlas,this.imageManager=K.imageManager,this.glyphManager=K.glyphManager,this.symbolFadeChange=K.placement.symbolFadeChange(e.browser.now()),this.imageManager.beginFrame();var xe=this.style._order,We=this.style.sourceCaches;for(var He in We){var st=We[He];st.used&&st.prepare(this.context)}var Et={},Ht={},yr={};for(var Ir in We){var wr=We[Ir];Et[Ir]=wr.getVisibleCoordinates(),Ht[Ir]=Et[Ir].slice().reverse(),yr[Ir]=wr.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var qt=0;qt<xe.length;qt++){var tr=xe[qt];if(this.style._layers[tr].is3D()){this.opaquePassCutoff=qt;break}}this.renderPass="offscreen";for(var dr=0,Pr=xe;dr<Pr.length;dr+=1){var Vr=Pr[dr],Hr=this.style._layers[Vr];if(!(!Hr.hasOffscreenPass()||Hr.isHidden(this.transform.zoom))){var aa=Ht[Hr.source];Hr.type!=="custom"&&!aa.length||this.renderLayer(this,We[Hr.source],Hr,aa)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:ye.showOverdrawInspector?e.Color.black:e.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=ye.showOverdrawInspector,this.depthRangeFor3D=[0,1-(K._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=xe.length-1;this.currentLayer>=0;this.currentLayer--){var Qr=this.style._layers[xe[this.currentLayer]],Gr=We[Qr.source],ia=Et[Qr.source];this._renderTileClippingMasks(Qr,ia),this.renderLayer(this,Gr,Qr,ia)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<xe.length;this.currentLayer++){var Ur=this.style._layers[xe[this.currentLayer]],wa=We[Ur.source],Oa=(Ur.type==="symbol"?yr:Ht)[Ur.source];this._renderTileClippingMasks(Ur,Et[Ur.source]),this.renderLayer(this,wa,Ur,Oa)}if(this.options.showTileBoundaries){var ri,Pi,mi=e.values(this.style._layers);mi.forEach(function(Di){Di.source&&!Di.isHidden(te.transform.zoom)&&(Di.source!==(Pi&&Pi.id)&&(Pi=te.style.sourceCaches[Di.source]),(!ri||ri.getSource().maxzoom<Pi.getSource().maxzoom)&&(ri=Pi))}),ri&&yo.debug(this,ri,ri.getVisibleCoordinates())}this.options.showPadding&&Ja(this),this.context.setDefault()},Vo.prototype.renderLayer=function(K,ye,te,xe){te.isHidden(this.transform.zoom)||te.type!=="background"&&te.type!=="custom"&&!xe.length||(this.id=te.id,this.gpuTimingStart(te),yo[te.type](K,ye,te,xe,this.style.placement.variableOffsets),this.gpuTimingEnd())},Vo.prototype.gpuTimingStart=function(K){if(this.options.gpuTiming){var ye=this.context.extTimerQuery,te=this.gpuTimers[K.id];te||(te=this.gpuTimers[K.id]={calls:0,cpuTime:0,query:ye.createQueryEXT()}),te.calls++,ye.beginQueryEXT(ye.TIME_ELAPSED_EXT,te.query)}},Vo.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var K=this.context.extTimerQuery;K.endQueryEXT(K.TIME_ELAPSED_EXT)}},Vo.prototype.collectGpuTimers=function(){var K=this.gpuTimers;return this.gpuTimers={},K},Vo.prototype.queryGpuTimers=function(K){var ye={};for(var te in K){var xe=K[te],We=this.context.extTimerQuery,He=We.getQueryObjectEXT(xe.query,We.QUERY_RESULT_EXT)/(1e3*1e3);We.deleteQueryEXT(xe.query),ye[te]=He}return ye},Vo.prototype.translatePosMatrix=function(K,ye,te,xe,We){if(!te[0]&&!te[1])return K;var He=We?xe==="map"?this.transform.angle:0:xe==="viewport"?-this.transform.angle:0;if(He){var st=Math.sin(He),Et=Math.cos(He);te=[te[0]*Et-te[1]*st,te[0]*st+te[1]*Et]}var Ht=[We?te[0]:In(ye,te[0],this.transform.zoom),We?te[1]:In(ye,te[1],this.transform.zoom),0],yr=new Float32Array(16);return e.translate(yr,K,Ht),yr},Vo.prototype.saveTileTexture=function(K){var ye=this._tileTextures[K.size[0]];ye?ye.push(K):this._tileTextures[K.size[0]]=[K]},Vo.prototype.getTileTexture=function(K){var ye=this._tileTextures[K];return ye&&ye.length>0?ye.pop():null},Vo.prototype.isPatternMissing=function(K){if(!K)return!1;if(!K.from||!K.to)return!0;var ye=this.imageManager.getPattern(K.from.toString()),te=this.imageManager.getPattern(K.to.toString());return!ye||!te},Vo.prototype.useProgram=function(K,ye){this.cache=this.cache||{};var te=""+K+(ye?ye.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[te]||(this.cache[te]=new Af(this.context,K,mf[K],ye,Po[K],this._showOverdrawInspector)),this.cache[te]},Vo.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},Vo.prototype.setBaseState=function(){var K=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(K.FUNC_ADD)},Vo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var K=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,K.RGBA)}},Vo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var ls=function(K,ye){this.points=K,this.planes=ye};ls.fromInvProjectionMatrix=function(K,ye,te){var xe=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],We=Math.pow(2,te),He=xe.map(function(Ht){return e.transformMat4([],Ht,K)}).map(function(Ht){return e.scale$1([],Ht,1/Ht[3]/ye*We)}),st=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Et=st.map(function(Ht){var yr=e.sub([],He[Ht[0]],He[Ht[1]]),Ir=e.sub([],He[Ht[2]],He[Ht[1]]),wr=e.normalize([],e.cross([],yr,Ir)),qt=-e.dot(wr,He[Ht[1]]);return wr.concat(qt)});return new ls(He,Et)};var rl=function(K,ye){this.min=K,this.max=ye,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};rl.prototype.quadrant=function(K){for(var ye=[K%2===0,K<2],te=e.clone$2(this.min),xe=e.clone$2(this.max),We=0;We<ye.length;We++)te[We]=ye[We]?this.min[We]:this.center[We],xe[We]=ye[We]?this.center[We]:this.max[We];return xe[2]=this.max[2],new rl(te,xe)},rl.prototype.distanceX=function(K){var ye=Math.max(Math.min(this.max[0],K[0]),this.min[0]);return ye-K[0]},rl.prototype.distanceY=function(K){var ye=Math.max(Math.min(this.max[1],K[1]),this.min[1]);return ye-K[1]},rl.prototype.intersects=function(K){for(var ye=[[this.min[0],this.min[1],0,1],[this.max[0],this.min[1],0,1],[this.max[0],this.max[1],0,1],[this.min[0],this.max[1],0,1]],te=!0,xe=0;xe<K.planes.length;xe++){for(var We=K.planes[xe],He=0,st=0;st<ye.length;st++)He+=e.dot$1(We,ye[st])>=0;if(He===0)return 0;He!==ye.length&&(te=!1)}if(te)return 2;for(var Et=0;Et<3;Et++){for(var Ht=Number.MAX_VALUE,yr=-Number.MAX_VALUE,Ir=0;Ir<K.points.length;Ir++){var wr=K.points[Ir][Et]-this.min[Et];Ht=Math.min(Ht,wr),yr=Math.max(yr,wr)}if(yr<0||Ht>this.max[Et]-this.min[Et])return 0}return 1};var Ys=function(K,ye,te,xe){if(K===void 0&&(K=0),ye===void 0&&(ye=0),te===void 0&&(te=0),xe===void 0&&(xe=0),isNaN(K)||K<0||isNaN(ye)||ye<0||isNaN(te)||te<0||isNaN(xe)||xe<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=K,this.bottom=ye,this.left=te,this.right=xe};Ys.prototype.interpolate=function(K,ye,te){return ye.top!=null&&K.top!=null&&(this.top=e.number(K.top,ye.top,te)),ye.bottom!=null&&K.bottom!=null&&(this.bottom=e.number(K.bottom,ye.bottom,te)),ye.left!=null&&K.left!=null&&(this.left=e.number(K.left,ye.left,te)),ye.right!=null&&K.right!=null&&(this.right=e.number(K.right,ye.right,te)),this},Ys.prototype.getCenter=function(K,ye){var te=e.clamp((this.left+K-this.right)/2,0,K),xe=e.clamp((this.top+ye-this.bottom)/2,0,ye);return new e.Point(te,xe)},Ys.prototype.equals=function(K){return this.top===K.top&&this.bottom===K.bottom&&this.left===K.left&&this.right===K.right},Ys.prototype.clone=function(){return new Ys(this.top,this.bottom,this.left,this.right)},Ys.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var Zo=function(K,ye,te,xe,We){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=We===void 0?!0:We,this._minZoom=K||0,this._maxZoom=ye||22,this._minPitch=te??0,this._maxPitch=xe??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ys,this._posMatrixCache={},this._alignedPosMatrixCache={}},Go={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};Zo.prototype.clone=function(){var K=new Zo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return K.tileSize=this.tileSize,K.latRange=this.latRange,K.width=this.width,K.height=this.height,K._center=this._center,K.zoom=this.zoom,K.angle=this.angle,K._fov=this._fov,K._pitch=this._pitch,K._unmodified=this._unmodified,K._edgeInsets=this._edgeInsets.clone(),K._calcMatrices(),K},Go.minZoom.get=function(){return this._minZoom},Go.minZoom.set=function(ve){this._minZoom!==ve&&(this._minZoom=ve,this.zoom=Math.max(this.zoom,ve))},Go.maxZoom.get=function(){return this._maxZoom},Go.maxZoom.set=function(ve){this._maxZoom!==ve&&(this._maxZoom=ve,this.zoom=Math.min(this.zoom,ve))},Go.minPitch.get=function(){return this._minPitch},Go.minPitch.set=function(ve){this._minPitch!==ve&&(this._minPitch=ve,this.pitch=Math.max(this.pitch,ve))},Go.maxPitch.get=function(){return this._maxPitch},Go.maxPitch.set=function(ve){this._maxPitch!==ve&&(this._maxPitch=ve,this.pitch=Math.min(this.pitch,ve))},Go.renderWorldCopies.get=function(){return this._renderWorldCopies},Go.renderWorldCopies.set=function(ve){ve===void 0?ve=!0:ve===null&&(ve=!1),this._renderWorldCopies=ve},Go.worldSize.get=function(){return this.tileSize*this.scale},Go.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Go.size.get=function(){return new e.Point(this.width,this.height)},Go.bearing.get=function(){return-this.angle/Math.PI*180},Go.bearing.set=function(ve){var K=-e.wrap(ve,-180,180)*Math.PI/180;this.angle!==K&&(this._unmodified=!1,this.angle=K,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Go.pitch.get=function(){return this._pitch/Math.PI*180},Go.pitch.set=function(ve){var K=e.clamp(ve,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==K&&(this._unmodified=!1,this._pitch=K,this._calcMatrices())},Go.fov.get=function(){return this._fov/Math.PI*180},Go.fov.set=function(ve){ve=Math.max(.01,Math.min(60,ve)),this._fov!==ve&&(this._unmodified=!1,this._fov=ve/180*Math.PI,this._calcMatrices())},Go.zoom.get=function(){return this._zoom},Go.zoom.set=function(ve){var K=Math.min(Math.max(ve,this.minZoom),this.maxZoom);this._zoom!==K&&(this._unmodified=!1,this._zoom=K,this.scale=this.zoomScale(K),this.tileZoom=Math.floor(K),this.zoomFraction=K-this.tileZoom,this._constrain(),this._calcMatrices())},Go.center.get=function(){return this._center},Go.center.set=function(ve){ve.lat===this._center.lat&&ve.lng===this._center.lng||(this._unmodified=!1,this._center=ve,this._constrain(),this._calcMatrices())},Go.padding.get=function(){return this._edgeInsets.toJSON()},Go.padding.set=function(ve){this._edgeInsets.equals(ve)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,ve,1),this._calcMatrices())},Go.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},Zo.prototype.isPaddingEqual=function(K){return this._edgeInsets.equals(K)},Zo.prototype.interpolatePadding=function(K,ye,te){this._unmodified=!1,this._edgeInsets.interpolate(K,ye,te),this._constrain(),this._calcMatrices()},Zo.prototype.coveringZoomLevel=function(K){var ye=(K.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/K.tileSize));return Math.max(0,ye)},Zo.prototype.getVisibleUnwrappedCoordinates=function(K){var ye=[new e.UnwrappedTileID(0,K)];if(this._renderWorldCopies)for(var te=this.pointCoordinate(new e.Point(0,0)),xe=this.pointCoordinate(new e.Point(this.width,0)),We=this.pointCoordinate(new e.Point(this.width,this.height)),He=this.pointCoordinate(new e.Point(0,this.height)),st=Math.floor(Math.min(te.x,xe.x,We.x,He.x)),Et=Math.floor(Math.max(te.x,xe.x,We.x,He.x)),Ht=1,yr=st-Ht;yr<=Et+Ht;yr++)yr!==0&&ye.push(new e.UnwrappedTileID(yr,K));return ye},Zo.prototype.coveringTiles=function(K){var ye=this.coveringZoomLevel(K),te=ye;if(K.minzoom!==void 0&&ye<K.minzoom)return[];K.maxzoom!==void 0&&ye>K.maxzoom&&(ye=K.maxzoom);var xe=e.MercatorCoordinate.fromLngLat(this.center),We=Math.pow(2,ye),He=[We*xe.x,We*xe.y,0],st=ls.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,ye),Et=K.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Et=ye);var Ht=3,yr=function(mi){return{aabb:new rl([mi*We,0,0],[(mi+1)*We,We,0]),zoom:0,x:0,y:0,wrap:mi,fullyVisible:!1}},Ir=[],wr=[],qt=ye,tr=K.reparseOverscaled?te:ye;if(this._renderWorldCopies)for(var dr=1;dr<=3;dr++)Ir.push(yr(-dr)),Ir.push(yr(dr));for(Ir.push(yr(0));Ir.length>0;){var Pr=Ir.pop(),Vr=Pr.x,Hr=Pr.y,aa=Pr.fullyVisible;if(!aa){var Qr=Pr.aabb.intersects(st);if(Qr===0)continue;aa=Qr===2}var Gr=Pr.aabb.distanceX(He),ia=Pr.aabb.distanceY(He),Ur=Math.max(Math.abs(Gr),Math.abs(ia)),wa=Ht+(1<<qt-Pr.zoom)-2;if(Pr.zoom===qt||Ur>wa&&Pr.zoom>=Et){wr.push({tileID:new e.OverscaledTileID(Pr.zoom===qt?tr:Pr.zoom,Pr.wrap,Pr.zoom,Vr,Hr),distanceSq:e.sqrLen([He[0]-.5-Vr,He[1]-.5-Hr])});continue}for(var Oa=0;Oa<4;Oa++){var ri=(Vr<<1)+Oa%2,Pi=(Hr<<1)+(Oa>>1);Ir.push({aabb:Pr.aabb.quadrant(Oa),zoom:Pr.zoom+1,x:ri,y:Pi,wrap:Pr.wrap,fullyVisible:aa})}}return wr.sort(function(mi,Di){return mi.distanceSq-Di.distanceSq}).map(function(mi){return mi.tileID})},Zo.prototype.resize=function(K,ye){this.width=K,this.height=ye,this.pixelsToGLUnits=[2/K,-2/ye],this._constrain(),this._calcMatrices()},Go.unmodified.get=function(){return this._unmodified},Zo.prototype.zoomScale=function(K){return Math.pow(2,K)},Zo.prototype.scaleZoom=function(K){return Math.log(K)/Math.LN2},Zo.prototype.project=function(K){var ye=e.clamp(K.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(K.lng)*this.worldSize,e.mercatorYfromLat(ye)*this.worldSize)},Zo.prototype.unproject=function(K){return new e.MercatorCoordinate(K.x/this.worldSize,K.y/this.worldSize).toLngLat()},Go.point.get=function(){return this.project(this.center)},Zo.prototype.setLocationAtPoint=function(K,ye){var te=this.pointCoordinate(ye),xe=this.pointCoordinate(this.centerPoint),We=this.locationCoordinate(K),He=new e.MercatorCoordinate(We.x-(te.x-xe.x),We.y-(te.y-xe.y));this.center=this.coordinateLocation(He),this._renderWorldCopies&&(this.center=this.center.wrap())},Zo.prototype.locationPoint=function(K){return this.coordinatePoint(this.locationCoordinate(K))},Zo.prototype.pointLocation=function(K){return this.coordinateLocation(this.pointCoordinate(K))},Zo.prototype.locationCoordinate=function(K){return e.MercatorCoordinate.fromLngLat(K)},Zo.prototype.coordinateLocation=function(K){return K.toLngLat()},Zo.prototype.pointCoordinate=function(K){var ye=0,te=[K.x,K.y,0,1],xe=[K.x,K.y,1,1];e.transformMat4(te,te,this.pixelMatrixInverse),e.transformMat4(xe,xe,this.pixelMatrixInverse);var We=te[3],He=xe[3],st=te[0]/We,Et=xe[0]/He,Ht=te[1]/We,yr=xe[1]/He,Ir=te[2]/We,wr=xe[2]/He,qt=Ir===wr?0:(ye-Ir)/(wr-Ir);return new e.MercatorCoordinate(e.number(st,Et,qt)/this.worldSize,e.number(Ht,yr,qt)/this.worldSize)},Zo.prototype.coordinatePoint=function(K){var ye=[K.x*this.worldSize,K.y*this.worldSize,0,1];return e.transformMat4(ye,ye,this.pixelMatrix),new e.Point(ye[0]/ye[3],ye[1]/ye[3])},Zo.prototype.getBounds=function(){return new e.LngLatBounds().extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},Zo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},Zo.prototype.setMaxBounds=function(K){K?(this.lngRange=[K.getWest(),K.getEast()],this.latRange=[K.getSouth(),K.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},Zo.prototype.calculatePosMatrix=function(K,ye){ye===void 0&&(ye=!1);var te=K.key,xe=ye?this._alignedPosMatrixCache:this._posMatrixCache;if(xe[te])return xe[te];var We=K.canonical,He=this.worldSize/this.zoomScale(We.z),st=We.x+Math.pow(2,We.z)*K.wrap,Et=e.identity(new Float64Array(16));return e.translate(Et,Et,[st*He,We.y*He,0]),e.scale(Et,Et,[He/e.EXTENT,He/e.EXTENT,1]),e.multiply(Et,ye?this.alignedProjMatrix:this.projMatrix,Et),xe[te]=new Float32Array(Et),xe[te]},Zo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},Zo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var K=-90,ye=90,te=-180,xe=180,We,He,st,Et,Ht=this.size,yr=this._unmodified;if(this.latRange){var Ir=this.latRange;K=e.mercatorYfromLat(Ir[1])*this.worldSize,ye=e.mercatorYfromLat(Ir[0])*this.worldSize,We=ye-K<Ht.y?Ht.y/(ye-K):0}if(this.lngRange){var wr=this.lngRange;te=e.mercatorXfromLng(wr[0])*this.worldSize,xe=e.mercatorXfromLng(wr[1])*this.worldSize,He=xe-te<Ht.x?Ht.x/(xe-te):0}var qt=this.point,tr=Math.max(He||0,We||0);if(tr){this.center=this.unproject(new e.Point(He?(xe+te)/2:qt.x,We?(ye+K)/2:qt.y)),this.zoom+=this.scaleZoom(tr),this._unmodified=yr,this._constraining=!1;return}if(this.latRange){var dr=qt.y,Pr=Ht.y/2;dr-Pr<K&&(Et=K+Pr),dr+Pr>ye&&(Et=ye-Pr)}if(this.lngRange){var Vr=qt.x,Hr=Ht.x/2;Vr-Hr<te&&(st=te+Hr),Vr+Hr>xe&&(st=xe-Hr)}(st!==void 0||Et!==void 0)&&(this.center=this.unproject(new e.Point(st!==void 0?st:qt.x,Et!==void 0?Et:qt.y))),this._unmodified=yr,this._constraining=!1}},Zo.prototype._calcMatrices=function(){if(this.height){var K=this._fov/2,ye=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(K)*this.height;var te=Math.PI/2+this._pitch,xe=this._fov*(.5+ye.y/this.height),We=Math.sin(xe)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-te-xe,.01,Math.PI-.01)),He=this.point,st=He.x,Et=He.y,Ht=Math.cos(Math.PI/2-this._pitch)*We+this.cameraToCenterDistance,yr=Ht*1.01,Ir=this.height/50,wr=new Float64Array(16);e.perspective(wr,this._fov,this.width/this.height,Ir,yr),wr[8]=-ye.x*2/this.width,wr[9]=ye.y*2/this.height,e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[0,0,-this.cameraToCenterDistance]),e.rotateX(wr,wr,this._pitch),e.rotateZ(wr,wr,this.angle),e.translate(wr,wr,[-st,-Et,0]),this.mercatorMatrix=e.scale([],wr,[this.worldSize,this.worldSize,this.worldSize]),e.scale(wr,wr,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=wr,this.invProjMatrix=e.invert([],this.projMatrix);var qt=this.width%2/2,tr=this.height%2/2,dr=Math.cos(this.angle),Pr=Math.sin(this.angle),Vr=st-Math.round(st)+dr*qt+Pr*tr,Hr=Et-Math.round(Et)+dr*tr+Pr*qt,aa=new Float64Array(wr);if(e.translate(aa,aa,[Vr>.5?Vr-1:Vr,Hr>.5?Hr-1:Hr,0]),this.alignedProjMatrix=aa,wr=e.create(),e.scale(wr,wr,[this.width/2,-this.height/2,1]),e.translate(wr,wr,[1,-1,0]),this.labelPlaneMatrix=wr,wr=e.create(),e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[-1,-1,0]),e.scale(wr,wr,[2/this.width,2/this.height,1]),this.glCoordMatrix=wr,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),wr=e.invert(new Float64Array(16),this.pixelMatrix),!wr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=wr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},Zo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var K=this.pointCoordinate(new e.Point(0,0)),ye=[K.x*this.worldSize,K.y*this.worldSize,0,1],te=e.transformMat4(ye,ye,this.pixelMatrix);return te[3]/this.cameraToCenterDistance},Zo.prototype.getCameraPoint=function(){var K=this._pitch,ye=Math.tan(K)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,ye))},Zo.prototype.getCameraQueryGeometry=function(K){var ye=this.getCameraPoint();if(K.length===1)return[K[0],ye];for(var te=ye.x,xe=ye.y,We=ye.x,He=ye.y,st=0,Et=K;st<Et.length;st+=1){var Ht=Et[st];te=Math.min(te,Ht.x),xe=Math.min(xe,Ht.y),We=Math.max(We,Ht.x),He=Math.max(He,Ht.y)}return[new e.Point(te,xe),new e.Point(We,xe),new e.Point(We,He),new e.Point(te,He),new e.Point(te,xe)]},Object.defineProperties(Zo.prototype,Go);function Rl(ve,K){var ye=!1,te=null,xe=function(){te=null,ye&&(ve(),te=setTimeout(xe,K),ye=!1)};return function(){return ye=!0,te||xe(),te}}var Xl=function(K){this._hashName=K&&encodeURIComponent(K),e.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=Rl(this._updateHashUnthrottled.bind(this),30*1e3/100)};Xl.prototype.addTo=function(K){return this._map=K,e.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Xl.prototype.remove=function(){return e.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Xl.prototype.getHashString=function(K){var ye=this._map.getCenter(),te=Math.round(this._map.getZoom()*100)/100,xe=Math.ceil((te*Math.LN2+Math.log(512/360/.5))/Math.LN10),We=Math.pow(10,xe),He=Math.round(ye.lng*We)/We,st=Math.round(ye.lat*We)/We,Et=this._map.getBearing(),Ht=this._map.getPitch(),yr="";if(K?yr+="/"+He+"/"+st+"/"+te:yr+=te+"/"+st+"/"+He,(Et||Ht)&&(yr+="/"+Math.round(Et*10)/10),Ht&&(yr+="/"+Math.round(Ht)),this._hashName){var Ir=this._hashName,wr=!1,qt=e.window.location.hash.slice(1).split("&").map(function(tr){var dr=tr.split("=")[0];return dr===Ir?(wr=!0,dr+"="+yr):tr}).filter(function(tr){return tr});return wr||qt.push(Ir+"="+yr),"#"+qt.join("&")}return"#"+yr},Xl.prototype._getCurrentHash=function(){var K=this,ye=e.window.location.hash.replace("#","");if(this._hashName){var te;return ye.split("&").map(function(xe){return xe.split("=")}).forEach(function(xe){xe[0]===K._hashName&&(te=xe)}),(te&&te[1]||"").split("/")}return ye.split("/")},Xl.prototype._onHashChange=function(){var K=this._getCurrentHash();if(K.length>=3&&!K.some(function(te){return isNaN(te)})){var ye=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(K[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+K[2],+K[1]],zoom:+K[0],bearing:ye,pitch:+(K[4]||0)}),!0}return!1},Xl.prototype._updateHashUnthrottled=function(){var K=e.window.location.href.replace(/(#.+)?$/,this.getHashString());try{e.window.history.replaceState(e.window.history.state,null,K)}catch{}};var qu={linearity:.3,easing:e.bezier(0,0,.3,1)},fu=e.extend({deceleration:2500,maxSpeed:1400},qu),bl=e.extend({deceleration:20,maxSpeed:1400},qu),ou=e.extend({deceleration:1e3,maxSpeed:360},qu),Sc=e.extend({deceleration:1e3,maxSpeed:90},qu),ql=function(K){this._map=K,this.clear()};ql.prototype.clear=function(){this._inertiaBuffer=[]},ql.prototype.record=function(K){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.browser.now(),settings:K})},ql.prototype._drainInertiaBuffer=function(){for(var K=this._inertiaBuffer,ye=e.browser.now(),te=160;K.length>0&&ye-K[0].time>te;)K.shift()},ql.prototype._onMoveEnd=function(K){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var ye={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},te=0,xe=this._inertiaBuffer;te<xe.length;te+=1){var We=xe[te],He=We.settings;ye.zoom+=He.zoomDelta||0,ye.bearing+=He.bearingDelta||0,ye.pitch+=He.pitchDelta||0,He.panDelta&&ye.pan._add(He.panDelta),He.around&&(ye.around=He.around),He.pinchAround&&(ye.pinchAround=He.pinchAround)}var st=this._inertiaBuffer[this._inertiaBuffer.length-1],Et=st.time-this._inertiaBuffer[0].time,Ht={};if(ye.pan.mag()){var yr=de(ye.pan.mag(),Et,e.extend({},fu,K||{}));Ht.offset=ye.pan.mult(yr.amount/ye.pan.mag()),Ht.center=this._map.transform.center,Hl(Ht,yr)}if(ye.zoom){var Ir=de(ye.zoom,Et,bl);Ht.zoom=this._map.transform.zoom+Ir.amount,Hl(Ht,Ir)}if(ye.bearing){var wr=de(ye.bearing,Et,ou);Ht.bearing=this._map.transform.bearing+e.clamp(wr.amount,-179,179),Hl(Ht,wr)}if(ye.pitch){var qt=de(ye.pitch,Et,Sc);Ht.pitch=this._map.transform.pitch+qt.amount,Hl(Ht,qt)}if(Ht.zoom||Ht.bearing){var tr=ye.pinchAround===void 0?ye.around:ye.pinchAround;Ht.around=tr?this._map.unproject(tr):this._map.getCenter()}return this.clear(),e.extend(Ht,{noMoveStart:!0})}};function Hl(ve,K){(!ve.duration||ve.duration<K.duration)&&(ve.duration=K.duration,ve.easing=K.easing)}function de(ve,K,ye){var te=ye.maxSpeed,xe=ye.linearity,We=ye.deceleration,He=e.clamp(ve*xe/(K/1e3),-te,te),st=Math.abs(He)/(We*xe);return{easing:ye.easing,duration:st*1e3,amount:He*(st/2)}}var Re=function(ve){function K(te,xe,We,He){He===void 0&&(He={});var st=r.mousePos(xe.getCanvasContainer(),We),Et=xe.unproject(st);ve.call(this,te,e.extend({point:st,lngLat:Et,originalEvent:We},He)),this._defaultPrevented=!1,this.target=xe}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),$e=function(ve){function K(te,xe,We){var He=te==="touchend"?We.changedTouches:We.touches,st=r.touchPos(xe.getCanvasContainer(),He),Et=st.map(function(Ir){return xe.unproject(Ir)}),Ht=st.reduce(function(Ir,wr,qt,tr){return Ir.add(wr.div(tr.length))},new e.Point(0,0)),yr=xe.unproject(Ht);ve.call(this,te,{points:st,point:Ht,lngLats:Et,lngLat:yr,originalEvent:We}),this._defaultPrevented=!1}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),pt=function(ve){function K(te,xe,We){ve.call(this,te,{originalEvent:We}),this._defaultPrevented=!1}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),vt=function(K,ye){this._map=K,this._clickTolerance=ye.clickTolerance};vt.prototype.reset=function(){delete this._mousedownPos},vt.prototype.wheel=function(K){return this._firePreventable(new pt(K.type,this._map,K))},vt.prototype.mousedown=function(K,ye){return this._mousedownPos=ye,this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseup=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.click=function(K,ye){this._mousedownPos&&this._mousedownPos.dist(ye)>=this._clickTolerance||this._map.fire(new Re(K.type,this._map,K))},vt.prototype.dblclick=function(K){return this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseover=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.mouseout=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.touchstart=function(K){return this._firePreventable(new $e(K.type,this._map,K))},vt.prototype.touchmove=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchend=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchcancel=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype._firePreventable=function(K){if(this._map.fire(K),K.defaultPrevented)return{}},vt.prototype.isEnabled=function(){return!0},vt.prototype.isActive=function(){return!1},vt.prototype.enable=function(){},vt.prototype.disable=function(){};var wt=function(K){this._map=K};wt.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},wt.prototype.mousemove=function(K){this._map.fire(new Re(K.type,this._map,K))},wt.prototype.mousedown=function(){this._delayContextMenu=!0},wt.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Re("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},wt.prototype.contextmenu=function(K){this._delayContextMenu?this._contextMenuEvent=K:this._map.fire(new Re(K.type,this._map,K)),this._map.listens("contextmenu")&&K.preventDefault()},wt.prototype.isEnabled=function(){return!0},wt.prototype.isActive=function(){return!1},wt.prototype.enable=function(){},wt.prototype.disable=function(){};var Jt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._container=K.getContainer(),this._clickTolerance=ye.clickTolerance||1};Jt.prototype.isEnabled=function(){return!!this._enabled},Jt.prototype.isActive=function(){return!!this._active},Jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Jt.prototype.mousedown=function(K,ye){this.isEnabled()&&K.shiftKey&&K.button===0&&(r.disableDrag(),this._startPos=this._lastPos=ye,this._active=!0)},Jt.prototype.mousemoveWindow=function(K,ye){if(this._active){var te=ye;if(!(this._lastPos.equals(te)||!this._box&&te.dist(this._startPos)<this._clickTolerance)){var xe=this._startPos;this._lastPos=te,this._box||(this._box=r.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",K));var We=Math.min(xe.x,te.x),He=Math.max(xe.x,te.x),st=Math.min(xe.y,te.y),Et=Math.max(xe.y,te.y);r.setTransform(this._box,"translate("+We+"px,"+st+"px)"),this._box.style.width=He-We+"px",this._box.style.height=Et-st+"px"}}},Jt.prototype.mouseupWindow=function(K,ye){var te=this;if(this._active&&K.button===0){var xe=this._startPos,We=ye;if(this.reset(),r.suppressClick(),xe.x===We.x&&xe.y===We.y)this._fireEvent("boxzoomcancel",K);else return this._map.fire(new e.Event("boxzoomend",{originalEvent:K})),{cameraAnimation:function(He){return He.fitScreenCoordinates(xe,We,te._map.getBearing(),{linear:!0})}}}},Jt.prototype.keydown=function(K){this._active&&K.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",K))},Jt.prototype.reset=function(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(r.remove(this._box),this._box=null),r.enableDrag(),delete this._startPos,delete this._lastPos},Jt.prototype._fireEvent=function(K,ye){return this._map.fire(new e.Event(K,{originalEvent:ye}))};function Rt(ve,K){for(var ye={},te=0;te<ve.length;te++)ye[ve[te].identifier]=K[te];return ye}function or(ve){for(var K=new e.Point(0,0),ye=0,te=ve;ye<te.length;ye+=1){var xe=te[ye];K._add(xe)}return K.div(ve.length)}var Dr=500,Or=500,va=30,fa=function(K){this.reset(),this.numTouches=K.numTouches};fa.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},fa.prototype.touchstart=function(K,ye,te){(this.centroid||te.length>this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=K.timeStamp),te.length===this.numTouches&&(this.centroid=or(ye),this.touches=Rt(te,ye)))},fa.prototype.touchmove=function(K,ye,te){if(!(this.aborted||!this.centroid)){var xe=Rt(te,ye);for(var We in this.touches){var He=this.touches[We],st=xe[We];(!st||st.dist(He)>va)&&(this.aborted=!0)}}},fa.prototype.touchend=function(K,ye,te){if((!this.centroid||K.timeStamp-this.startTime>Or)&&(this.aborted=!0),te.length===0){var xe=!this.aborted&&this.centroid;if(this.reset(),xe)return xe}};var Va=function(K){this.singleTap=new fa(K),this.numTaps=K.numTaps,this.reset()};Va.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Va.prototype.touchstart=function(K,ye,te){this.singleTap.touchstart(K,ye,te)},Va.prototype.touchmove=function(K,ye,te){this.singleTap.touchmove(K,ye,te)},Va.prototype.touchend=function(K,ye,te){var xe=this.singleTap.touchend(K,ye,te);if(xe){var We=K.timeStamp-this.lastTime<Dr,He=!this.lastTap||this.lastTap.dist(xe)<va;if((!We||!He)&&this.reset(),this.count++,this.lastTime=K.timeStamp,this.lastTap=xe,this.count===this.numTaps)return this.reset(),xe}};var Xa=function(){this._zoomIn=new Va({numTouches:1,numTaps:2}),this._zoomOut=new Va({numTouches:2,numTaps:1}),this.reset()};Xa.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Xa.prototype.touchstart=function(K,ye,te){this._zoomIn.touchstart(K,ye,te),this._zoomOut.touchstart(K,ye,te)},Xa.prototype.touchmove=function(K,ye,te){this._zoomIn.touchmove(K,ye,te),this._zoomOut.touchmove(K,ye,te)},Xa.prototype.touchend=function(K,ye,te){var xe=this,We=this._zoomIn.touchend(K,ye,te),He=this._zoomOut.touchend(K,ye,te);if(We)return this._active=!0,K.preventDefault(),setTimeout(function(){return xe.reset()},0),{cameraAnimation:function(st){return st.easeTo({duration:300,zoom:st.getZoom()+1,around:st.unproject(We)},{originalEvent:K})}};if(He)return this._active=!0,K.preventDefault(),setTimeout(function(){return xe.reset()},0),{cameraAnimation:function(st){return st.easeTo({duration:300,zoom:st.getZoom()-1,around:st.unproject(He)},{originalEvent:K})}}},Xa.prototype.touchcancel=function(){this.reset()},Xa.prototype.enable=function(){this._enabled=!0},Xa.prototype.disable=function(){this._enabled=!1,this.reset()},Xa.prototype.isEnabled=function(){return this._enabled},Xa.prototype.isActive=function(){return this._active};var _a=0,Ra=2,Na={};Na[_a]=1,Na[Ra]=2;function Qa(ve,K){var ye=Na[K];return ve.buttons===void 0||(ve.buttons&ye)!==ye}var Ya=function(K){this.reset(),this._clickTolerance=K.clickTolerance||1};Ya.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},Ya.prototype._correctButton=function(K,ye){return!1},Ya.prototype._move=function(K,ye){return{}},Ya.prototype.mousedown=function(K,ye){if(!this._lastPoint){var te=r.mouseButton(K);this._correctButton(K,te)&&(this._lastPoint=ye,this._eventButton=te)}},Ya.prototype.mousemoveWindow=function(K,ye){var te=this._lastPoint;if(te){if(K.preventDefault(),Qa(K,this._eventButton)){this.reset();return}if(!(!this._moved&&ye.dist(te)<this._clickTolerance))return this._moved=!0,this._lastPoint=ye,this._move(te,ye)}},Ya.prototype.mouseupWindow=function(K){if(this._lastPoint){var ye=r.mouseButton(K);ye===this._eventButton&&(this._moved&&r.suppressClick(),this.reset())}},Ya.prototype.enable=function(){this._enabled=!0},Ya.prototype.disable=function(){this._enabled=!1,this.reset()},Ya.prototype.isEnabled=function(){return this._enabled},Ya.prototype.isActive=function(){return this._active};var Da=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.mousedown=function(te,xe){ve.prototype.mousedown.call(this,te,xe),this._lastPoint&&(this._active=!0)},K.prototype._correctButton=function(te,xe){return xe===_a&&!te.ctrlKey},K.prototype._move=function(te,xe){return{around:xe,panDelta:xe.sub(te)}},K}(Ya),zi=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype._correctButton=function(te,xe){return xe===_a&&te.ctrlKey||xe===Ra},K.prototype._move=function(te,xe){var We=.8,He=(xe.x-te.x)*We;if(He)return this._active=!0,{bearingDelta:He}},K.prototype.contextmenu=function(te){te.preventDefault()},K}(Ya),Ni=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype._correctButton=function(te,xe){return xe===_a&&te.ctrlKey||xe===Ra},K.prototype._move=function(te,xe){var We=-.5,He=(xe.y-te.y)*We;if(He)return this._active=!0,{pitchDelta:He}},K.prototype.contextmenu=function(te){te.preventDefault()},K}(Ya),Qi=function(K){this._minTouches=1,this._clickTolerance=K.clickTolerance||1,this.reset()};Qi.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new e.Point(0,0)},Qi.prototype.touchstart=function(K,ye,te){return this._calculateTransform(K,ye,te)},Qi.prototype.touchmove=function(K,ye,te){if(!(!this._active||te.length<this._minTouches))return K.preventDefault(),this._calculateTransform(K,ye,te)},Qi.prototype.touchend=function(K,ye,te){this._calculateTransform(K,ye,te),this._active&&te.length<this._minTouches&&this.reset()},Qi.prototype.touchcancel=function(){this.reset()},Qi.prototype._calculateTransform=function(K,ye,te){te.length>0&&(this._active=!0);var xe=Rt(te,ye),We=new e.Point(0,0),He=new e.Point(0,0),st=0;for(var Et in xe){var Ht=xe[Et],yr=this._touches[Et];yr&&(We._add(Ht),He._add(Ht.sub(yr)),st++,xe[Et]=Ht)}if(this._touches=xe,!(st<this._minTouches||!He.mag())){var Ir=He.div(st);if(this._sum._add(Ir),!(this._sum.mag()<this._clickTolerance)){var wr=We.div(st);return{around:wr,panDelta:Ir}}}},Qi.prototype.enable=function(){this._enabled=!0},Qi.prototype.disable=function(){this._enabled=!1,this.reset()},Qi.prototype.isEnabled=function(){return this._enabled},Qi.prototype.isActive=function(){return this._active};var hn=function(){this.reset()};hn.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},hn.prototype._start=function(K){},hn.prototype._move=function(K,ye,te){return{}},hn.prototype.touchstart=function(K,ye,te){this._firstTwoTouches||te.length<2||(this._firstTwoTouches=[te[0].identifier,te[1].identifier],this._start([ye[0],ye[1]]))},hn.prototype.touchmove=function(K,ye,te){if(this._firstTwoTouches){K.preventDefault();var xe=this._firstTwoTouches,We=xe[0],He=xe[1],st=Un(te,ye,We),Et=Un(te,ye,He);if(!(!st||!Et)){var Ht=this._aroundCenter?null:st.add(Et).div(2);return this._move([st,Et],Ht,K)}}},hn.prototype.touchend=function(K,ye,te){if(this._firstTwoTouches){var xe=this._firstTwoTouches,We=xe[0],He=xe[1],st=Un(te,ye,We),Et=Un(te,ye,He);st&&Et||(this._active&&r.suppressClick(),this.reset())}},hn.prototype.touchcancel=function(){this.reset()},hn.prototype.enable=function(K){this._enabled=!0,this._aroundCenter=!!K&&K.around==="center"},hn.prototype.disable=function(){this._enabled=!1,this.reset()},hn.prototype.isEnabled=function(){return this._enabled},hn.prototype.isActive=function(){return this._active};function Un(ve,K,ye){for(var te=0;te<ve.length;te++)if(ve[te].identifier===ye)return K[te]}var Vn=.1;function No(ve,K){return Math.log(ve/K)/Math.LN2}var Gn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),delete this._distance,delete this._startDistance},K.prototype._start=function(te){this._startDistance=this._distance=te[0].dist(te[1])},K.prototype._move=function(te,xe){var We=this._distance;if(this._distance=te[0].dist(te[1]),!(!this._active&&Math.abs(No(this._distance,this._startDistance))<Vn))return this._active=!0,{zoomDelta:No(this._distance,We),pinchAround:xe}},K}(hn),Fo=25;function Ks(ve,K){return ve.angleWith(K)*180/Math.PI}var Gs=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},K.prototype._start=function(te){this._startVector=this._vector=te[0].sub(te[1]),this._minDiameter=te[0].dist(te[1])},K.prototype._move=function(te,xe){var We=this._vector;if(this._vector=te[0].sub(te[1]),!(!this._active&&this._isBelowThreshold(this._vector)))return this._active=!0,{bearingDelta:Ks(this._vector,We),pinchAround:xe}},K.prototype._isBelowThreshold=function(te){this._minDiameter=Math.min(this._minDiameter,te.mag());var xe=Math.PI*this._minDiameter,We=Fo/xe*360,He=Ks(te,this._startVector);return Math.abs(He)<We},K}(hn);function sl(ve){return Math.abs(ve.y)>Math.abs(ve.x)}var Vi=100,ao=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},K.prototype._start=function(te){this._lastPoints=te,sl(te[0].sub(te[1]))&&(this._valid=!1)},K.prototype._move=function(te,xe,We){var He=te[0].sub(this._lastPoints[0]),st=te[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(He,st,We.timeStamp),!!this._valid){this._lastPoints=te,this._active=!0;var Et=(He.y+st.y)/2,Ht=-.5;return{pitchDelta:Et*Ht}}},K.prototype.gestureBeginsVertically=function(te,xe,We){if(this._valid!==void 0)return this._valid;var He=2,st=te.mag()>=He,Et=xe.mag()>=He;if(!(!st&&!Et)){if(!st||!Et)return this._firstMove===void 0&&(this._firstMove=We),We-this._firstMove<Vi?void 0:!1;var Ht=te.y>0==xe.y>0;return sl(te)&&sl(xe)&&Ht}},K}(hn),ns={panStep:100,bearingStep:15,pitchStep:10},hs=function(){var K=ns;this._panStep=K.panStep,this._bearingStep=K.bearingStep,this._pitchStep=K.pitchStep,this._rotationDisabled=!1};hs.prototype.reset=function(){this._active=!1},hs.prototype.keydown=function(K){var ye=this;if(!(K.altKey||K.ctrlKey||K.metaKey)){var te=0,xe=0,We=0,He=0,st=0;switch(K.keyCode){case 61:case 107:case 171:case 187:te=1;break;case 189:case 109:case 173:te=-1;break;case 37:K.shiftKey?xe=-1:(K.preventDefault(),He=-1);break;case 39:K.shiftKey?xe=1:(K.preventDefault(),He=1);break;case 38:K.shiftKey?We=1:(K.preventDefault(),st=-1);break;case 40:K.shiftKey?We=-1:(K.preventDefault(),st=1);break;default:return}return this._rotationDisabled&&(xe=0,We=0),{cameraAnimation:function(Et){var Ht=Et.getZoom();Et.easeTo({duration:300,easeId:"keyboardHandler",easing:hl,zoom:te?Math.round(Ht)+te*(K.shiftKey?2:1):Ht,bearing:Et.getBearing()+xe*ye._bearingStep,pitch:Et.getPitch()+We*ye._pitchStep,offset:[-He*ye._panStep,-st*ye._panStep],center:Et.getCenter()},{originalEvent:K})}}}},hs.prototype.enable=function(){this._enabled=!0},hs.prototype.disable=function(){this._enabled=!1,this.reset()},hs.prototype.isEnabled=function(){return this._enabled},hs.prototype.isActive=function(){return this._active},hs.prototype.disableRotation=function(){this._rotationDisabled=!0},hs.prototype.enableRotation=function(){this._rotationDisabled=!1};function hl(ve){return ve*(2-ve)}var Dl=4.000244140625,hu=1/100,Ll=1/450,dc=2,Qt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._handler=ye,this._delta=0,this._defaultZoomRate=hu,this._wheelZoomRate=Ll,e.bindAll(["_onTimeout"],this)};Qt.prototype.setZoomRate=function(K){this._defaultZoomRate=K},Qt.prototype.setWheelZoomRate=function(K){this._wheelZoomRate=K},Qt.prototype.isEnabled=function(){return!!this._enabled},Qt.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Qt.prototype.isZooming=function(){return!!this._zooming},Qt.prototype.enable=function(K){this.isEnabled()||(this._enabled=!0,this._aroundCenter=K&&K.around==="center")},Qt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Qt.prototype.wheel=function(K){if(this.isEnabled()){var ye=K.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?K.deltaY*40:K.deltaY,te=e.browser.now(),xe=te-(this._lastWheelEventTime||0);this._lastWheelEventTime=te,ye!==0&&ye%Dl===0?this._type="wheel":ye!==0&&Math.abs(ye)<4?this._type="trackpad":xe>400?(this._type=null,this._lastValue=ye,this._timeout=setTimeout(this._onTimeout,40,K)):this._type||(this._type=Math.abs(xe*ye)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ye+=this._lastValue)),K.shiftKey&&ye&&(ye=ye/4),this._type&&(this._lastWheelEvent=K,this._delta-=ye,this._active||this._start(K)),K.preventDefault()}},Qt.prototype._onTimeout=function(K){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(K)},Qt.prototype._start=function(K){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var ye=r.mousePos(this._el,K);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(ye)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Qt.prototype.renderFrame=function(){var K=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var ye=this._map.transform;if(this._delta!==0){var te=this._type==="wheel"&&Math.abs(this._delta)>Dl?this._wheelZoomRate:this._defaultZoomRate,xe=dc/(1+Math.exp(-Math.abs(this._delta*te)));this._delta<0&&xe!==0&&(xe=1/xe);var We=typeof this._targetZoom=="number"?ye.zoomScale(this._targetZoom):ye.scale;this._targetZoom=Math.min(ye.maxZoom,Math.max(ye.minZoom,ye.scaleZoom(We*xe))),this._type==="wheel"&&(this._startZoom=ye.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var He=typeof this._targetZoom=="number"?this._targetZoom:ye.zoom,st=this._startZoom,Et=this._easing,Ht=!1,yr;if(this._type==="wheel"&&st&&Et){var Ir=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),wr=Et(Ir);yr=e.number(st,He,wr),Ir<1?this._frameId||(this._frameId=!0):Ht=!0}else yr=He,Ht=!0;return this._active=!0,Ht&&(this._active=!1,this._finishTimeout=setTimeout(function(){K._zooming=!1,K._handler._triggerRenderFrame(),delete K._targetZoom,delete K._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Ht,zoomDelta:yr-ye.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Qt.prototype._smoothOutEasing=function(K){var ye=e.ease;if(this._prevEase){var te=this._prevEase,xe=(e.browser.now()-te.start)/te.duration,We=te.easing(xe+.01)-te.easing(xe),He=.27/Math.sqrt(We*We+1e-4)*.01,st=Math.sqrt(.27*.27-He*He);ye=e.bezier(He,st,.25,1)}return this._prevEase={start:e.browser.now(),duration:K,easing:ye},ye},Qt.prototype.reset=function(){this._active=!1};var ra=function(K,ye){this._clickZoom=K,this._tapZoom=ye};ra.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},ra.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},ra.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},ra.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Ta=function(){this.reset()};Ta.prototype.reset=function(){this._active=!1},Ta.prototype.dblclick=function(K,ye){return K.preventDefault(),{cameraAnimation:function(te){te.easeTo({duration:300,zoom:te.getZoom()+(K.shiftKey?-1:1),around:te.unproject(ye)},{originalEvent:K})}}},Ta.prototype.enable=function(){this._enabled=!0},Ta.prototype.disable=function(){this._enabled=!1,this.reset()},Ta.prototype.isEnabled=function(){return this._enabled},Ta.prototype.isActive=function(){return this._active};var si=function(){this._tap=new Va({numTouches:1,numTaps:1}),this.reset()};si.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},si.prototype.touchstart=function(K,ye,te){this._swipePoint||(this._tapTime&&K.timeStamp-this._tapTime>Dr&&this.reset(),this._tapTime?te.length>0&&(this._swipePoint=ye[0],this._swipeTouch=te[0].identifier):this._tap.touchstart(K,ye,te))},si.prototype.touchmove=function(K,ye,te){if(!this._tapTime)this._tap.touchmove(K,ye,te);else if(this._swipePoint){if(te[0].identifier!==this._swipeTouch)return;var xe=ye[0],We=xe.y-this._swipePoint.y;return this._swipePoint=xe,K.preventDefault(),this._active=!0,{zoomDelta:We/128}}},si.prototype.touchend=function(K,ye,te){if(this._tapTime)this._swipePoint&&te.length===0&&this.reset();else{var xe=this._tap.touchend(K,ye,te);xe&&(this._tapTime=K.timeStamp)}},si.prototype.touchcancel=function(){this.reset()},si.prototype.enable=function(){this._enabled=!0},si.prototype.disable=function(){this._enabled=!1,this.reset()},si.prototype.isEnabled=function(){return this._enabled},si.prototype.isActive=function(){return this._active};var wi=function(K,ye,te){this._el=K,this._mousePan=ye,this._touchPan=te};wi.prototype.enable=function(K){this._inertiaOptions=K||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},wi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},wi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},wi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xi=function(K,ye,te){this._pitchWithRotate=K.pitchWithRotate,this._mouseRotate=ye,this._mousePitch=te};xi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var bi=function(K,ye,te,xe){this._el=K,this._touchZoom=ye,this._touchRotate=te,this._tapDragZoom=xe,this._rotationDisabled=!1,this._enabled=!0};bi.prototype.enable=function(K){this._touchZoom.enable(K),this._rotationDisabled||this._touchRotate.enable(K),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},bi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},bi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},bi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},bi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},bi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var Fi=function(ve){return ve.zoom||ve.drag||ve.pitch||ve.rotate},cn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K}(e.Event);function fn(ve){return ve.panDelta&&ve.panDelta.mag()||ve.zoomDelta||ve.bearingDelta||ve.pitchDelta}var Gi=function(K,ye){this._map=K,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new ql(K),this._bearingSnap=ye.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ye),e.bindAll(["handleEvent","handleWindowEvent"],this);var te=this._el;this._listeners=[[te,"touchstart",{passive:!0}],[te,"touchmove",{passive:!1}],[te,"touchend",void 0],[te,"touchcancel",void 0],[te,"mousedown",void 0],[te,"mousemove",void 0],[te,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[te,"mouseover",void 0],[te,"mouseout",void 0],[te,"dblclick",void 0],[te,"click",void 0],[te,"keydown",{capture:!1}],[te,"keyup",void 0],[te,"wheel",{passive:!1}],[te,"contextmenu",void 0],[e.window,"blur",void 0]];for(var xe=0,We=this._listeners;xe<We.length;xe+=1){var He=We[xe],st=He[0],Et=He[1],Ht=He[2];r.addEventListener(st,Et,st===e.window.document?this.handleWindowEvent:this.handleEvent,Ht)}};Gi.prototype.destroy=function(){for(var K=0,ye=this._listeners;K<ye.length;K+=1){var te=ye[K],xe=te[0],We=te[1],He=te[2];r.removeEventListener(xe,We,xe===e.window.document?this.handleWindowEvent:this.handleEvent,He)}},Gi.prototype._addDefaultHandlers=function(K){var ye=this._map,te=ye.getCanvasContainer();this._add("mapEvent",new vt(ye,K));var xe=ye.boxZoom=new Jt(ye,K);this._add("boxZoom",xe);var We=new Xa,He=new Ta;ye.doubleClickZoom=new ra(He,We),this._add("tapZoom",We),this._add("clickZoom",He);var st=new si;this._add("tapDragZoom",st);var Et=ye.touchPitch=new ao;this._add("touchPitch",Et);var Ht=new zi(K),yr=new Ni(K);ye.dragRotate=new xi(K,Ht,yr),this._add("mouseRotate",Ht,["mousePitch"]),this._add("mousePitch",yr,["mouseRotate"]);var Ir=new Da(K),wr=new Qi(K);ye.dragPan=new wi(te,Ir,wr),this._add("mousePan",Ir),this._add("touchPan",wr,["touchZoom","touchRotate"]);var qt=new Gs,tr=new Gn;ye.touchZoomRotate=new bi(te,tr,qt,st),this._add("touchRotate",qt,["touchPan","touchZoom"]),this._add("touchZoom",tr,["touchPan","touchRotate"]);var dr=ye.scrollZoom=new Qt(ye,this);this._add("scrollZoom",dr,["mousePan"]);var Pr=ye.keyboard=new hs;this._add("keyboard",Pr),this._add("blockableMapEvent",new wt(ye));for(var Vr=0,Hr=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];Vr<Hr.length;Vr+=1){var aa=Hr[Vr];K.interactive&&K[aa]&&ye[aa].enable(K[aa])}},Gi.prototype._add=function(K,ye,te){this._handlers.push({handlerName:K,handler:ye,allowed:te}),this._handlersById[K]=ye},Gi.prototype.stop=function(K){if(!this._updatingCamera){for(var ye=0,te=this._handlers;ye<te.length;ye+=1){var xe=te[ye],We=xe.handler;We.reset()}this._inertia.clear(),this._fireEvents({},{},K),this._changes=[]}},Gi.prototype.isActive=function(){for(var K=0,ye=this._handlers;K<ye.length;K+=1){var te=ye[K],xe=te.handler;if(xe.isActive())return!0}return!1},Gi.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},Gi.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},Gi.prototype.isMoving=function(){return!!Fi(this._eventsInProgress)||this.isZooming()},Gi.prototype._blockedByActive=function(K,ye,te){for(var xe in K)if(xe!==te&&(!ye||ye.indexOf(xe)<0))return!0;return!1},Gi.prototype.handleWindowEvent=function(K){this.handleEvent(K,K.type+"Window")},Gi.prototype._getMapTouches=function(K){for(var ye=[],te=0,xe=K;te<xe.length;te+=1){var We=xe[te],He=We.target;this._el.contains(He)&&ye.push(We)}return ye},Gi.prototype.handleEvent=function(K,ye){if(K.type==="blur"){this.stop(!0);return}this._updatingCamera=!0;for(var te=K.type==="renderFrame"?void 0:K,xe={needsRenderFrame:!1},We={},He={},st=K.touches?this._getMapTouches(K.touches):void 0,Et=st?r.touchPos(this._el,st):r.mousePos(this._el,K),Ht=0,yr=this._handlers;Ht<yr.length;Ht+=1){var Ir=yr[Ht],wr=Ir.handlerName,qt=Ir.handler,tr=Ir.allowed;if(qt.isEnabled()){var dr=void 0;this._blockedByActive(He,tr,wr)?qt.reset():qt[ye||K.type]&&(dr=qt[ye||K.type](K,Et,st),this.mergeHandlerResult(xe,We,dr,wr,te),dr&&dr.needsRenderFrame&&this._triggerRenderFrame()),(dr||qt.isActive())&&(He[wr]=qt)}}var Pr={};for(var Vr in this._previousActiveHandlers)He[Vr]||(Pr[Vr]=te);this._previousActiveHandlers=He,(Object.keys(Pr).length||fn(xe))&&(this._changes.push([xe,We,Pr]),this._triggerRenderFrame()),(Object.keys(He).length||fn(xe))&&this._map._stop(!0),this._updatingCamera=!1;var Hr=xe.cameraAnimation;Hr&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],Hr(this._map))},Gi.prototype.mergeHandlerResult=function(K,ye,te,xe,We){if(te){e.extend(K,te);var He={handlerName:xe,originalEvent:te.originalEvent||We};te.zoomDelta!==void 0&&(ye.zoom=He),te.panDelta!==void 0&&(ye.drag=He),te.pitchDelta!==void 0&&(ye.pitch=He),te.bearingDelta!==void 0&&(ye.rotate=He)}},Gi.prototype._applyChanges=function(){for(var K={},ye={},te={},xe=0,We=this._changes;xe<We.length;xe+=1){var He=We[xe],st=He[0],Et=He[1],Ht=He[2];st.panDelta&&(K.panDelta=(K.panDelta||new e.Point(0,0))._add(st.panDelta)),st.zoomDelta&&(K.zoomDelta=(K.zoomDelta||0)+st.zoomDelta),st.bearingDelta&&(K.bearingDelta=(K.bearingDelta||0)+st.bearingDelta),st.pitchDelta&&(K.pitchDelta=(K.pitchDelta||0)+st.pitchDelta),st.around!==void 0&&(K.around=st.around),st.pinchAround!==void 0&&(K.pinchAround=st.pinchAround),st.noInertia&&(K.noInertia=st.noInertia),e.extend(ye,Et),e.extend(te,Ht)}this._updateMapTransform(K,ye,te),this._changes=[]},Gi.prototype._updateMapTransform=function(K,ye,te){var xe=this._map,We=xe.transform;if(!fn(K))return this._fireEvents(ye,te,!0);var He=K.panDelta,st=K.zoomDelta,Et=K.bearingDelta,Ht=K.pitchDelta,yr=K.around,Ir=K.pinchAround;Ir!==void 0&&(yr=Ir),xe._stop(!0),yr=yr||xe.transform.centerPoint;var wr=We.pointLocation(He?yr.sub(He):yr);Et&&(We.bearing+=Et),Ht&&(We.pitch+=Ht),st&&(We.zoom+=st),We.setLocationAtPoint(wr,yr),this._map._update(),K.noInertia||this._inertia.record(K),this._fireEvents(ye,te,!0)},Gi.prototype._fireEvents=function(K,ye,te){var xe=this,We=Fi(this._eventsInProgress),He=Fi(K),st={};for(var Et in K){var Ht=K[Et],yr=Ht.originalEvent;this._eventsInProgress[Et]||(st[Et+"start"]=yr),this._eventsInProgress[Et]=K[Et]}!We&&He&&this._fireEvent("movestart",He.originalEvent);for(var Ir in st)this._fireEvent(Ir,st[Ir]);He&&this._fireEvent("move",He.originalEvent);for(var wr in K){var qt=K[wr],tr=qt.originalEvent;this._fireEvent(wr,tr)}var dr={},Pr;for(var Vr in this._eventsInProgress){var Hr=this._eventsInProgress[Vr],aa=Hr.handlerName,Qr=Hr.originalEvent;this._handlersById[aa].isActive()||(delete this._eventsInProgress[Vr],Pr=ye[aa]||Qr,dr[Vr+"end"]=Pr)}for(var Gr in dr)this._fireEvent(Gr,dr[Gr]);var ia=Fi(this._eventsInProgress);if(te&&(We||He)&&!ia){this._updatingCamera=!0;var Ur=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),wa=function(Oa){return Oa!==0&&-xe._bearingSnap<Oa&&Oa<xe._bearingSnap};Ur?(wa(Ur.bearing||this._map.getBearing())&&(Ur.bearing=0),this._map.easeTo(Ur,{originalEvent:Pr})):(this._map.fire(new e.Event("moveend",{originalEvent:Pr})),wa(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},Gi.prototype._fireEvent=function(K,ye){this._map.fire(new e.Event(K,ye?{originalEvent:ye}:{}))},Gi.prototype._requestFrame=function(){var K=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add(function(ye){delete K._frameId,K.handleEvent(new cn("renderFrame",{timeStamp:ye})),K._applyChanges()})},Gi.prototype._triggerRenderFrame=function(){this._frameId===void 0&&(this._frameId=this._requestFrame())};var Io=function(ve){function K(ye,te){ve.call(this),this._moving=!1,this._zooming=!1,this.transform=ye,this._bearingSnap=te.bearingSnap,e.bindAll(["_renderFrameCallback"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getCenter=function(){return new e.LngLat(this.transform.center.lng,this.transform.center.lat)},K.prototype.setCenter=function(te,xe){return this.jumpTo({center:te},xe)},K.prototype.panBy=function(te,xe,We){return te=e.Point.convert(te).mult(-1),this.panTo(this.transform.center,e.extend({offset:te},xe),We)},K.prototype.panTo=function(te,xe,We){return this.easeTo(e.extend({center:te},xe),We)},K.prototype.getZoom=function(){return this.transform.zoom},K.prototype.setZoom=function(te,xe){return this.jumpTo({zoom:te},xe),this},K.prototype.zoomTo=function(te,xe,We){return this.easeTo(e.extend({zoom:te},xe),We)},K.prototype.zoomIn=function(te,xe){return this.zoomTo(this.getZoom()+1,te,xe),this},K.prototype.zoomOut=function(te,xe){return this.zoomTo(this.getZoom()-1,te,xe),this},K.prototype.getBearing=function(){return this.transform.bearing},K.prototype.setBearing=function(te,xe){return this.jumpTo({bearing:te},xe),this},K.prototype.getPadding=function(){return this.transform.padding},K.prototype.setPadding=function(te,xe){return this.jumpTo({padding:te},xe),this},K.prototype.rotateTo=function(te,xe,We){return this.easeTo(e.extend({bearing:te},xe),We)},K.prototype.resetNorth=function(te,xe){return this.rotateTo(0,e.extend({duration:1e3},te),xe),this},K.prototype.resetNorthPitch=function(te,xe){return this.easeTo(e.extend({bearing:0,pitch:0,duration:1e3},te),xe),this},K.prototype.snapToNorth=function(te,xe){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(te,xe):this},K.prototype.getPitch=function(){return this.transform.pitch},K.prototype.setPitch=function(te,xe){return this.jumpTo({pitch:te},xe),this},K.prototype.cameraForBounds=function(te,xe){te=e.LngLatBounds.convert(te);var We=xe&&xe.bearing||0;return this._cameraForBoxAndBearing(te.getNorthWest(),te.getSouthEast(),We,xe)},K.prototype._cameraForBoxAndBearing=function(te,xe,We,He){var st={top:0,bottom:0,right:0,left:0};if(He=e.extend({padding:st,offset:[0,0],maxZoom:this.transform.maxZoom},He),typeof He.padding=="number"){var Et=He.padding;He.padding={top:Et,bottom:Et,right:Et,left:Et}}He.padding=e.extend(st,He.padding);var Ht=this.transform,yr=Ht.padding,Ir=Ht.project(e.LngLat.convert(te)),wr=Ht.project(e.LngLat.convert(xe)),qt=Ir.rotate(-We*Math.PI/180),tr=wr.rotate(-We*Math.PI/180),dr=new e.Point(Math.max(qt.x,tr.x),Math.max(qt.y,tr.y)),Pr=new e.Point(Math.min(qt.x,tr.x),Math.min(qt.y,tr.y)),Vr=dr.sub(Pr),Hr=(Ht.width-(yr.left+yr.right+He.padding.left+He.padding.right))/Vr.x,aa=(Ht.height-(yr.top+yr.bottom+He.padding.top+He.padding.bottom))/Vr.y;if(aa<0||Hr<0){e.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.");return}var Qr=Math.min(Ht.scaleZoom(Ht.scale*Math.min(Hr,aa)),He.maxZoom),Gr=typeof He.offset.x=="number"?new e.Point(He.offset.x,He.offset.y):e.Point.convert(He.offset),ia=(He.padding.left-He.padding.right)/2,Ur=(He.padding.top-He.padding.bottom)/2,wa=new e.Point(ia,Ur),Oa=wa.rotate(We*Math.PI/180),ri=Gr.add(Oa),Pi=ri.mult(Ht.scale/Ht.zoomScale(Qr)),mi=Ht.unproject(Ir.add(wr).div(2).sub(Pi));return{center:mi,zoom:Qr,bearing:We}},K.prototype.fitBounds=function(te,xe,We){return this._fitInternal(this.cameraForBounds(te,xe),xe,We)},K.prototype.fitScreenCoordinates=function(te,xe,We,He,st){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(e.Point.convert(te)),this.transform.pointLocation(e.Point.convert(xe)),We,He),He,st)},K.prototype._fitInternal=function(te,xe,We){return te?(xe=e.extend(te,xe),delete xe.padding,xe.linear?this.easeTo(xe,We):this.flyTo(xe,We)):this},K.prototype.jumpTo=function(te,xe){this.stop();var We=this.transform,He=!1,st=!1,Et=!1;return"zoom"in te&&We.zoom!==+te.zoom&&(He=!0,We.zoom=+te.zoom),te.center!==void 0&&(We.center=e.LngLat.convert(te.center)),"bearing"in te&&We.bearing!==+te.bearing&&(st=!0,We.bearing=+te.bearing),"pitch"in te&&We.pitch!==+te.pitch&&(Et=!0,We.pitch=+te.pitch),te.padding!=null&&!We.isPaddingEqual(te.padding)&&(We.padding=te.padding),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe)),He&&this.fire(new e.Event("zoomstart",xe)).fire(new e.Event("zoom",xe)).fire(new e.Event("zoomend",xe)),st&&this.fire(new e.Event("rotatestart",xe)).fire(new e.Event("rotate",xe)).fire(new e.Event("rotateend",xe)),Et&&this.fire(new e.Event("pitchstart",xe)).fire(new e.Event("pitch",xe)).fire(new e.Event("pitchend",xe)),this.fire(new e.Event("moveend",xe))},K.prototype.easeTo=function(te,xe){var We=this;this._stop(!1,te.easeId),te=e.extend({offset:[0,0],duration:500,easing:e.ease},te),(te.animate===!1||!te.essential&&e.browser.prefersReducedMotion)&&(te.duration=0);var He=this.transform,st=this.getZoom(),Et=this.getBearing(),Ht=this.getPitch(),yr=this.getPadding(),Ir="zoom"in te?+te.zoom:st,wr="bearing"in te?this._normalizeBearing(te.bearing,Et):Et,qt="pitch"in te?+te.pitch:Ht,tr="padding"in te?te.padding:He.padding,dr=e.Point.convert(te.offset),Pr=He.centerPoint.add(dr),Vr=He.pointLocation(Pr),Hr=e.LngLat.convert(te.center||Vr);this._normalizeCenter(Hr);var aa=He.project(Vr),Qr=He.project(Hr).sub(aa),Gr=He.zoomScale(Ir-st),ia,Ur;te.around&&(ia=e.LngLat.convert(te.around),Ur=He.locationPoint(ia));var wa={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||Ir!==st,this._rotating=this._rotating||Et!==wr,this._pitching=this._pitching||qt!==Ht,this._padding=!He.isPaddingEqual(tr),this._easeId=te.easeId,this._prepareEase(xe,te.noMoveStart,wa),this._ease(function(Oa){if(We._zooming&&(He.zoom=e.number(st,Ir,Oa)),We._rotating&&(He.bearing=e.number(Et,wr,Oa)),We._pitching&&(He.pitch=e.number(Ht,qt,Oa)),We._padding&&(He.interpolatePadding(yr,tr,Oa),Pr=He.centerPoint.add(dr)),ia)He.setLocationAtPoint(ia,Ur);else{var ri=He.zoomScale(He.zoom-st),Pi=Ir>st?Math.min(2,Gr):Math.max(.5,Gr),mi=Math.pow(Pi,1-Oa),Di=He.unproject(aa.add(Qr.mult(Oa*mi)).mult(ri));He.setLocationAtPoint(He.renderWorldCopies?Di.wrap():Di,Pr)}We._fireMoveEvents(xe)},function(Oa){We._afterEase(xe,Oa)},te),this},K.prototype._prepareEase=function(te,xe,We){We===void 0&&(We={}),this._moving=!0,!xe&&!We.moving&&this.fire(new e.Event("movestart",te)),this._zooming&&!We.zooming&&this.fire(new e.Event("zoomstart",te)),this._rotating&&!We.rotating&&this.fire(new e.Event("rotatestart",te)),this._pitching&&!We.pitching&&this.fire(new e.Event("pitchstart",te))},K.prototype._fireMoveEvents=function(te){this.fire(new e.Event("move",te)),this._zooming&&this.fire(new e.Event("zoom",te)),this._rotating&&this.fire(new e.Event("rotate",te)),this._pitching&&this.fire(new e.Event("pitch",te))},K.prototype._afterEase=function(te,xe){if(!(this._easeId&&xe&&this._easeId===xe)){delete this._easeId;var We=this._zooming,He=this._rotating,st=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,We&&this.fire(new e.Event("zoomend",te)),He&&this.fire(new e.Event("rotateend",te)),st&&this.fire(new e.Event("pitchend",te)),this.fire(new e.Event("moveend",te))}},K.prototype.flyTo=function(te,xe){var We=this;if(!te.essential&&e.browser.prefersReducedMotion){var He=e.pick(te,["center","zoom","bearing","pitch","around"]);return this.jumpTo(He,xe)}this.stop(),te=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},te);var st=this.transform,Et=this.getZoom(),Ht=this.getBearing(),yr=this.getPitch(),Ir=this.getPadding(),wr="zoom"in te?e.clamp(+te.zoom,st.minZoom,st.maxZoom):Et,qt="bearing"in te?this._normalizeBearing(te.bearing,Ht):Ht,tr="pitch"in te?+te.pitch:yr,dr="padding"in te?te.padding:st.padding,Pr=st.zoomScale(wr-Et),Vr=e.Point.convert(te.offset),Hr=st.centerPoint.add(Vr),aa=st.pointLocation(Hr),Qr=e.LngLat.convert(te.center||aa);this._normalizeCenter(Qr);var Gr=st.project(aa),ia=st.project(Qr).sub(Gr),Ur=te.curve,wa=Math.max(st.width,st.height),Oa=wa/Pr,ri=ia.mag();if("minZoom"in te){var Pi=e.clamp(Math.min(te.minZoom,Et,wr),st.minZoom,st.maxZoom),mi=wa/st.zoomScale(Pi-Et);Ur=Math.sqrt(mi/ri*2)}var Di=Ur*Ur;function An(qo){var Ls=(Oa*Oa-wa*wa+(qo?-1:1)*Di*Di*ri*ri)/(2*(qo?Oa:wa)*Di*ri);return Math.log(Math.sqrt(Ls*Ls+1)-Ls)}function ln(qo){return(Math.exp(qo)-Math.exp(-qo))/2}function Ii(qo){return(Math.exp(qo)+Math.exp(-qo))/2}function Wi(qo){return ln(qo)/Ii(qo)}var Hi=An(0),yn=function(qo){return Ii(Hi)/Ii(Hi+Ur*qo)},zn=function(qo){return wa*((Ii(Hi)*Wi(Hi+Ur*qo)-ln(Hi))/Di)/ri},ms=(An(1)-Hi)/Ur;if(Math.abs(ri)<1e-6||!isFinite(ms)){if(Math.abs(wa-Oa)<1e-6)return this.easeTo(te,xe);var us=Oa<wa?-1:1;ms=Math.abs(Math.log(Oa/wa))/Ur,zn=function(){return 0},yn=function(qo){return Math.exp(us*Ur*qo)}}if("duration"in te)te.duration=+te.duration;else{var Vs="screenSpeed"in te?+te.screenSpeed/Ur:+te.speed;te.duration=1e3*ms/Vs}return te.maxDuration&&te.duration>te.maxDuration&&(te.duration=0),this._zooming=!0,this._rotating=Ht!==qt,this._pitching=tr!==yr,this._padding=!st.isPaddingEqual(dr),this._prepareEase(xe,!1),this._ease(function(qo){var Ls=qo*ms,wl=1/yn(Ls);st.zoom=qo===1?wr:Et+st.scaleZoom(wl),We._rotating&&(st.bearing=e.number(Ht,qt,qo)),We._pitching&&(st.pitch=e.number(yr,tr,qo)),We._padding&&(st.interpolatePadding(Ir,dr,qo),Hr=st.centerPoint.add(Vr));var Ru=qo===1?Qr:st.unproject(Gr.add(ia.mult(zn(Ls))).mult(wl));st.setLocationAtPoint(st.renderWorldCopies?Ru.wrap():Ru,Hr),We._fireMoveEvents(xe)},function(){return We._afterEase(xe)},te),this},K.prototype.isEasing=function(){return!!this._easeFrameId},K.prototype.stop=function(){return this._stop()},K.prototype._stop=function(te,xe){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var We=this._onEaseEnd;delete this._onEaseEnd,We.call(this,xe)}if(!te){var He=this.handlers;He&&He.stop(!1)}return this},K.prototype._ease=function(te,xe,We){We.animate===!1||We.duration===0?(te(1),xe()):(this._easeStart=e.browser.now(),this._easeOptions=We,this._onEaseFrame=te,this._onEaseEnd=xe,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},K.prototype._renderFrameCallback=function(){var te=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(te)),te<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},K.prototype._normalizeBearing=function(te,xe){te=e.wrap(te,-180,180);var We=Math.abs(te-xe);return Math.abs(te-360-xe)<We&&(te-=360),Math.abs(te+360-xe)<We&&(te+=360),te},K.prototype._normalizeCenter=function(te){var xe=this.transform;if(!(!xe.renderWorldCopies||xe.lngRange)){var We=te.lng-xe.center.lng;te.lng+=We>180?-360:We<-180?360:0}},K}(e.Evented),nn=function(K){K===void 0&&(K={}),this.options=K,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};nn.prototype.getDefaultPosition=function(){return"bottom-right"},nn.prototype.onAdd=function(K){var ye=this.options&&this.options.compact;return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=r.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),ye&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),ye===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},nn.prototype.onRemove=function(){r.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},nn.prototype._setElementTitle=function(K,ye){var te=this._map._getUIString("AttributionControl."+ye);K.title=te,K.setAttribute("aria-label",te)},nn.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},nn.prototype._updateEditLink=function(){var K=this._editLink;K||(K=this._editLink=this._container.querySelector(".mapbox-improve-map"));var ye=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(K){var te=ye.reduce(function(xe,We,He){return We.value&&(xe+=We.key+"="+We.value+(He<ye.length-1?"&":"")),xe},"?");K.href=e.config.FEEDBACK_URL+"/"+te+(this._map._hash?this._map._hash.getHashString(!0):""),K.rel="noopener nofollow",this._setElementTitle(K,"MapFeedback")}},nn.prototype._updateData=function(K){K&&(K.sourceDataType==="metadata"||K.sourceDataType==="visibility"||K.dataType==="style")&&(this._updateAttributions(),this._updateEditLink())},nn.prototype._updateAttributions=function(){if(this._map.style){var K=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?K=K.concat(this.options.customAttribution.map(function(Et){return typeof Et!="string"?"":Et})):typeof this.options.customAttribution=="string"&&K.push(this.options.customAttribution)),this._map.style.stylesheet){var ye=this._map.style.stylesheet;this.styleOwner=ye.owner,this.styleId=ye.id}var te=this._map.style.sourceCaches;for(var xe in te){var We=te[xe];if(We.used){var He=We.getSource();He.attribution&&K.indexOf(He.attribution)<0&&K.push(He.attribution)}}K.sort(function(Et,Ht){return Et.length-Ht.length}),K=K.filter(function(Et,Ht){for(var yr=Ht+1;yr<K.length;yr++)if(K[yr].indexOf(Et)>=0)return!1;return!0});var st=K.join(" | ");st!==this._attribHTML&&(this._attribHTML=st,K.length?(this._innerContainer.innerHTML=st,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},nn.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var on=function(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};on.prototype.onAdd=function(K){this._map=K,this._container=r.create("div","mapboxgl-ctrl");var ye=r.create("a","mapboxgl-ctrl-logo");return ye.target="_blank",ye.rel="noopener nofollow",ye.href="https://www.mapbox.com/",ye.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ye.setAttribute("rel","noopener nofollow"),this._container.appendChild(ye),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},on.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},on.prototype.getDefaultPosition=function(){return"bottom-left"},on.prototype._updateLogo=function(K){(!K||K.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},on.prototype._logoRequired=function(){if(this._map.style){var K=this._map.style.sourceCaches;for(var ye in K){var te=K[ye].getSource();if(te.mapbox_logo)return!0}return!1}},on.prototype._updateCompact=function(){var K=this._container.children;if(K.length){var ye=K[0];this._map.getCanvasContainer().offsetWidth<250?ye.classList.add("mapboxgl-compact"):ye.classList.remove("mapboxgl-compact")}};var Oi=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Oi.prototype.add=function(K){var ye=++this._id,te=this._queue;return te.push({callback:K,id:ye,cancelled:!1}),ye},Oi.prototype.remove=function(K){for(var ye=this._currentlyRunning,te=ye?this._queue.concat(ye):this._queue,xe=0,We=te;xe<We.length;xe+=1){var He=We[xe];if(He.id===K){He.cancelled=!0;return}}},Oi.prototype.run=function(K){K===void 0&&(K=0);var ye=this._currentlyRunning=this._queue;this._queue=[];for(var te=0,xe=ye;te<xe.length;te+=1){var We=xe[te];if(!We.cancelled&&(We.callback(K),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},Oi.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var ui={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm"},Mi=e.window.HTMLImageElement,tn=e.window.HTMLElement,pn=e.window.ImageBitmap,qi=-2,Dn=22,bn=0,_o=60,Zi={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:qi,maxZoom:Dn,minPitch:bn,maxPitch:_o,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0},Ui=function(ve){function K(te){var xe=this;if(te=e.extend({},Zi,te),te.minZoom!=null&&te.maxZoom!=null&&te.minZoom>te.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(te.minPitch!=null&&te.maxPitch!=null&&te.minPitch>te.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(te.minPitch!=null&&te.minPitch<bn)throw new Error("minPitch must be greater than or equal to "+bn);if(te.maxPitch!=null&&te.maxPitch>_o)throw new Error("maxPitch must be less than or equal to "+_o);var We=new Zo(te.minZoom,te.maxZoom,te.minPitch,te.maxPitch,te.renderWorldCopies);if(ve.call(this,We,te),this._interactive=te.interactive,this._maxTileCacheSize=te.maxTileCacheSize,this._failIfMajorPerformanceCaveat=te.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=te.preserveDrawingBuffer,this._antialias=te.antialias,this._trackResize=te.trackResize,this._bearingSnap=te.bearingSnap,this._refreshExpiredTiles=te.refreshExpiredTiles,this._fadeDuration=te.fadeDuration,this._crossSourceCollisions=te.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=te.collectResourceTiming,this._renderTaskQueue=new Oi,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},ui,te.locale),this._clickTolerance=te.clickTolerance,this._requestManager=new e.RequestManager(te.transformRequest,te.accessToken),typeof te.container=="string"){if(this._container=e.window.document.getElementById(te.container),!this._container)throw new Error("Container '"+te.container+"' not found.")}else if(te.container instanceof tn)this._container=te.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(te.maxBounds&&this.setMaxBounds(te.maxBounds),e.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return xe._update(!1)}),this.on("moveend",function(){return xe._update(!1)}),this.on("zoom",function(){return xe._update(!0)}),typeof e.window<"u"&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Gi(this,te);var He=typeof te.hash=="string"&&te.hash||void 0;this._hash=te.hash&&new Xl(He).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:te.center,zoom:te.zoom,bearing:te.bearing,pitch:te.pitch}),te.bounds&&(this.resize(),this.fitBounds(te.bounds,e.extend({},te.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=te.localIdeographFontFamily,te.style&&this.setStyle(te.style,{localIdeographFontFamily:te.localIdeographFontFamily}),te.attributionControl&&this.addControl(new nn({customAttribution:te.customAttribution})),this.addControl(new on,te.logoPosition),this.on("style.load",function(){xe.transform.unmodified&&xe.jumpTo(xe.style.stylesheet)}),this.on("data",function(st){xe._update(st.dataType==="style"),xe.fire(new e.Event(st.dataType+"data",st))}),this.on("dataloading",function(st){xe.fire(new e.Event(st.dataType+"dataloading",st))})}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return K.prototype._getMapId=function(){return this._mapId},K.prototype.addControl=function(xe,We){if(We===void 0&&(xe.getDefaultPosition?We=xe.getDefaultPosition():We="top-right"),!xe||!xe.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var He=xe.onAdd(this);this._controls.push(xe);var st=this._controlPositions[We];return We.indexOf("bottom")!==-1?st.insertBefore(He,st.firstChild):st.appendChild(He),this},K.prototype.removeControl=function(xe){if(!xe||!xe.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var We=this._controls.indexOf(xe);return We>-1&&this._controls.splice(We,1),xe.onRemove(this),this},K.prototype.hasControl=function(xe){return this._controls.indexOf(xe)>-1},K.prototype.resize=function(xe){var We=this._containerDimensions(),He=We[0],st=We[1];this._resizeCanvas(He,st),this.transform.resize(He,st),this.painter.resize(He,st);var Et=!this._moving;return Et&&(this.stop(),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe))),this.fire(new e.Event("resize",xe)),Et&&this.fire(new e.Event("moveend",xe)),this},K.prototype.getBounds=function(){return this.transform.getBounds()},K.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},K.prototype.setMaxBounds=function(xe){return this.transform.setMaxBounds(e.LngLatBounds.convert(xe)),this._update()},K.prototype.setMinZoom=function(xe){if(xe=xe??qi,xe>=qi&&xe<=this.transform.maxZoom)return this.transform.minZoom=xe,this._update(),this.getZoom()<xe&&this.setZoom(xe),this;throw new Error("minZoom must be between "+qi+" and the current maxZoom, inclusive")},K.prototype.getMinZoom=function(){return this.transform.minZoom},K.prototype.setMaxZoom=function(xe){if(xe=xe??Dn,xe>=this.transform.minZoom)return this.transform.maxZoom=xe,this._update(),this.getZoom()>xe&&this.setZoom(xe),this;throw new Error("maxZoom must be greater than the current minZoom")},K.prototype.getMaxZoom=function(){return this.transform.maxZoom},K.prototype.setMinPitch=function(xe){if(xe=xe??bn,xe<bn)throw new Error("minPitch must be greater than or equal to "+bn);if(xe>=bn&&xe<=this.transform.maxPitch)return this.transform.minPitch=xe,this._update(),this.getPitch()<xe&&this.setPitch(xe),this;throw new Error("minPitch must be between "+bn+" and the current maxPitch, inclusive")},K.prototype.getMinPitch=function(){return this.transform.minPitch},K.prototype.setMaxPitch=function(xe){if(xe=xe??_o,xe>_o)throw new Error("maxPitch must be less than or equal to "+_o);if(xe>=this.transform.minPitch)return this.transform.maxPitch=xe,this._update(),this.getPitch()>xe&&this.setPitch(xe),this;throw new Error("maxPitch must be greater than the current minPitch")},K.prototype.getMaxPitch=function(){return this.transform.maxPitch},K.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},K.prototype.setRenderWorldCopies=function(xe){return this.transform.renderWorldCopies=xe,this._update()},K.prototype.project=function(xe){return this.transform.locationPoint(e.LngLat.convert(xe))},K.prototype.unproject=function(xe){return this.transform.pointLocation(e.Point.convert(xe))},K.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},K.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},K.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},K.prototype._createDelegatedListener=function(xe,We,He){var st=this,Et;if(xe==="mouseenter"||xe==="mouseover"){var Ht=!1,yr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?Ht||(Ht=!0,He.call(st,new Re(xe,st,Pr.originalEvent,{features:Vr}))):Ht=!1},Ir=function(){Ht=!1};return{layer:We,listener:He,delegates:{mousemove:yr,mouseout:Ir}}}else if(xe==="mouseleave"||xe==="mouseout"){var wr=!1,qt=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?wr=!0:wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))},tr=function(Pr){wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))};return{layer:We,listener:He,delegates:{mousemove:qt,mouseout:tr}}}else{var dr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length&&(Pr.features=Vr,He.call(st,Pr),delete Pr.features)};return{layer:We,listener:He,delegates:(Et={},Et[xe]=dr,Et)}}},K.prototype.on=function(xe,We,He){if(He===void 0)return ve.prototype.on.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[xe]=this._delegatedListeners[xe]||[],this._delegatedListeners[xe].push(st);for(var Et in st.delegates)this.on(Et,st.delegates[Et]);return this},K.prototype.once=function(xe,We,He){if(He===void 0)return ve.prototype.once.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);for(var Et in st.delegates)this.once(Et,st.delegates[Et]);return this},K.prototype.off=function(xe,We,He){var st=this;if(He===void 0)return ve.prototype.off.call(this,xe,We);var Et=function(Ht){for(var yr=Ht[xe],Ir=0;Ir<yr.length;Ir++){var wr=yr[Ir];if(wr.layer===We&&wr.listener===He){for(var qt in wr.delegates)st.off(qt,wr.delegates[qt]);return yr.splice(Ir,1),st}}};return this._delegatedListeners&&this._delegatedListeners[xe]&&Et(this._delegatedListeners),this},K.prototype.queryRenderedFeatures=function(xe,We){if(!this.style)return[];We===void 0&&xe!==void 0&&!(xe instanceof e.Point)&&!Array.isArray(xe)&&(We=xe,xe=void 0),We=We||{},xe=xe||[[0,0],[this.transform.width,this.transform.height]];var He;if(xe instanceof e.Point||typeof xe[0]=="number")He=[e.Point.convert(xe)];else{var st=e.Point.convert(xe[0]),Et=e.Point.convert(xe[1]);He=[st,new e.Point(Et.x,st.y),Et,new e.Point(st.x,Et.y),st]}return this.style.queryRenderedFeatures(He,We,this.transform)},K.prototype.querySourceFeatures=function(xe,We){return this.style.querySourceFeatures(xe,We)},K.prototype.setStyle=function(xe,We){return We=e.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},We),We.diff!==!1&&We.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&xe?(this._diffStyle(xe,We),this):(this._localIdeographFontFamily=We.localIdeographFontFamily,this._updateStyle(xe,We))},K.prototype._getUIString=function(xe){var We=this._locale[xe];if(We==null)throw new Error("Missing UI string '"+xe+"'");return We},K.prototype._updateStyle=function(xe,We){if(this.style&&(this.style.setEventedParent(null),this.style._remove()),xe)this.style=new Jl(this,We||{});else return delete this.style,this;return this.style.setEventedParent(this,{style:this.style}),typeof xe=="string"?this.style.loadURL(xe):this.style.loadJSON(xe),this},K.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new Jl(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},K.prototype._diffStyle=function(xe,We){var He=this;if(typeof xe=="string"){var st=this._requestManager.normalizeStyleURL(xe),Et=this._requestManager.transformRequest(st,e.ResourceType.Style);e.getJSON(Et,function(Ht,yr){Ht?He.fire(new e.ErrorEvent(Ht)):yr&&He._updateDiff(yr,We)})}else typeof xe=="object"&&this._updateDiff(xe,We)},K.prototype._updateDiff=function(xe,We){try{this.style.setState(xe)&&this._update(!0)}catch(He){e.warnOnce("Unable to perform style diff: "+(He.message||He.error||He)+". Rebuilding the style from scratch."),this._updateStyle(xe,We)}},K.prototype.getStyle=function(){if(this.style)return this.style.serialize()},K.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():e.warnOnce("There is no style added to the map.")},K.prototype.addSource=function(xe,We){return this._lazyInitEmptyStyle(),this.style.addSource(xe,We),this._update(!0)},K.prototype.isSourceLoaded=function(xe){var We=this.style&&this.style.sourceCaches[xe];if(We===void 0){this.fire(new e.ErrorEvent(new Error("There is no source with ID '"+xe+"'")));return}return We.loaded()},K.prototype.areTilesLoaded=function(){var xe=this.style&&this.style.sourceCaches;for(var We in xe){var He=xe[We],st=He._tiles;for(var Et in st){var Ht=st[Et];if(!(Ht.state==="loaded"||Ht.state==="errored"))return!1}}return!0},K.prototype.addSourceType=function(xe,We,He){return this._lazyInitEmptyStyle(),this.style.addSourceType(xe,We,He)},K.prototype.removeSource=function(xe){return this.style.removeSource(xe),this._update(!0)},K.prototype.getSource=function(xe){return this.style.getSource(xe)},K.prototype.addImage=function(xe,We,He){He===void 0&&(He={});var st=He.pixelRatio;st===void 0&&(st=1);var Et=He.sdf;Et===void 0&&(Et=!1);var Ht=He.stretchX,yr=He.stretchY,Ir=He.content;this._lazyInitEmptyStyle();var wr=0;if(We instanceof Mi||pn&&We instanceof pn){var qt=e.browser.getImageData(We),tr=qt.width,dr=qt.height,Pr=qt.data;this.style.addImage(xe,{data:new e.RGBAImage({width:tr,height:dr},Pr),pixelRatio:st,stretchX:Ht,stretchY:yr,content:Ir,sdf:Et,version:wr})}else{if(We.width===void 0||We.height===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var Vr=We.width,Hr=We.height,aa=We.data,Qr=We;this.style.addImage(xe,{data:new e.RGBAImage({width:Vr,height:Hr},new Uint8Array(aa)),pixelRatio:st,stretchX:Ht,stretchY:yr,content:Ir,sdf:Et,version:wr,userImage:Qr}),Qr.onAdd&&Qr.onAdd(this,xe)}},K.prototype.updateImage=function(xe,We){var He=this.style.getImage(xe);if(!He)return this.fire(new e.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));var st=We instanceof Mi||pn&&We instanceof pn?e.browser.getImageData(We):We,Et=st.width,Ht=st.height,yr=st.data;if(Et===void 0||Ht===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Et!==He.data.width||Ht!==He.data.height)return this.fire(new e.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));var Ir=!(We instanceof Mi||pn&&We instanceof pn);He.data.replace(yr,Ir),this.style.updateImage(xe,He)},K.prototype.hasImage=function(xe){return xe?!!this.style.getImage(xe):(this.fire(new e.ErrorEvent(new Error("Missing required image id"))),!1)},K.prototype.removeImage=function(xe){this.style.removeImage(xe)},K.prototype.loadImage=function(xe,We){e.getImage(this._requestManager.transformRequest(xe,e.ResourceType.Image),We)},K.prototype.listImages=function(){return this.style.listImages()},K.prototype.addLayer=function(xe,We){return this._lazyInitEmptyStyle(),this.style.addLayer(xe,We),this._update(!0)},K.prototype.moveLayer=function(xe,We){return this.style.moveLayer(xe,We),this._update(!0)},K.prototype.removeLayer=function(xe){return this.style.removeLayer(xe),this._update(!0)},K.prototype.getLayer=function(xe){return this.style.getLayer(xe)},K.prototype.setLayerZoomRange=function(xe,We,He){return this.style.setLayerZoomRange(xe,We,He),this._update(!0)},K.prototype.setFilter=function(xe,We,He){return He===void 0&&(He={}),this.style.setFilter(xe,We,He),this._update(!0)},K.prototype.getFilter=function(xe){return this.style.getFilter(xe)},K.prototype.setPaintProperty=function(xe,We,He,st){return st===void 0&&(st={}),this.style.setPaintProperty(xe,We,He,st),this._update(!0)},K.prototype.getPaintProperty=function(xe,We){return this.style.getPaintProperty(xe,We)},K.prototype.setLayoutProperty=function(xe,We,He,st){return st===void 0&&(st={}),this.style.setLayoutProperty(xe,We,He,st),this._update(!0)},K.prototype.getLayoutProperty=function(xe,We){return this.style.getLayoutProperty(xe,We)},K.prototype.setLight=function(xe,We){return We===void 0&&(We={}),this._lazyInitEmptyStyle(),this.style.setLight(xe,We),this._update(!0)},K.prototype.getLight=function(){return this.style.getLight()},K.prototype.setFeatureState=function(xe,We){return this.style.setFeatureState(xe,We),this._update()},K.prototype.removeFeatureState=function(xe,We){return this.style.removeFeatureState(xe,We),this._update()},K.prototype.getFeatureState=function(xe){return this.style.getFeatureState(xe)},K.prototype.getContainer=function(){return this._container},K.prototype.getCanvasContainer=function(){return this._canvasContainer},K.prototype.getCanvas=function(){return this._canvas},K.prototype._containerDimensions=function(){var xe=0,We=0;return this._container&&(xe=this._container.clientWidth||400,We=this._container.clientHeight||300),[xe,We]},K.prototype._detectMissingCSS=function(){var xe=e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color");xe!=="rgb(250, 128, 114)"&&e.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")},K.prototype._setupContainer=function(){var xe=this._container;xe.classList.add("mapboxgl-map");var We=this._missingCSSCanary=r.create("div","mapboxgl-canary",xe);We.style.visibility="hidden",this._detectMissingCSS();var He=this._canvasContainer=r.create("div","mapboxgl-canvas-container",xe);this._interactive&&He.classList.add("mapboxgl-interactive"),this._canvas=r.create("canvas","mapboxgl-canvas",He),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label","Map"),this._canvas.setAttribute("role","region");var st=this._containerDimensions();this._resizeCanvas(st[0],st[1]);var Et=this._controlContainer=r.create("div","mapboxgl-control-container",xe),Ht=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(yr){Ht[yr]=r.create("div","mapboxgl-ctrl-"+yr,Et)}),this._container.addEventListener("scroll",this._onMapScroll,!1)},K.prototype._resizeCanvas=function(xe,We){var He=e.browser.devicePixelRatio||1;this._canvas.width=He*xe,this._canvas.height=He*We,this._canvas.style.width=xe+"px",this._canvas.style.height=We+"px"},K.prototype._setupPainter=function(){var xe=e.extend({},t.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),We=this._canvas.getContext("webgl",xe)||this._canvas.getContext("experimental-webgl",xe);if(!We){this.fire(new e.ErrorEvent(new Error("Failed to initialize WebGL")));return}this.painter=new Vo(We,this.transform),e.webpSupported.testSupport(We)},K.prototype._contextLost=function(xe){xe.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event("webglcontextlost",{originalEvent:xe}))},K.prototype._contextRestored=function(xe){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event("webglcontextrestored",{originalEvent:xe}))},K.prototype._onMapScroll=function(xe){if(xe.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},K.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},K.prototype._update=function(xe){return this.style?(this._styleDirty=this._styleDirty||xe,this._sourcesDirty=!0,this.triggerRepaint(),this):this},K.prototype._requestRenderFrame=function(xe){return this._update(),this._renderTaskQueue.add(xe)},K.prototype._cancelRenderFrame=function(xe){this._renderTaskQueue.remove(xe)},K.prototype._render=function(xe){var We=this,He,st=0,Et=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(He=Et.createQueryEXT(),Et.beginQueryEXT(Et.TIME_ELAPSED_EXT,He),st=e.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(xe),!this._removed){var Ht=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var yr=this.transform.zoom,Ir=e.browser.now();this.style.zoomHistory.update(yr,Ir);var wr=new e.EvaluationParameters(yr,{now:Ir,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),qt=wr.crossFadingFactor();(qt!==1||qt!==this._crossFadingFactor)&&(Ht=!0,this._crossFadingFactor=qt),this.style.update(wr)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer")}),this.fire(new e.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event("load"))),this.style&&(this.style.hasTransitions()||Ht)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var tr=e.browser.now()-st;Et.endQueryEXT(Et.TIME_ELAPSED_EXT,He),setTimeout(function(){var Vr=Et.getQueryObjectEXT(He,Et.QUERY_RESULT_EXT)/1e6;Et.deleteQueryEXT(He),We.fire(new e.Event("gpu-timing-frame",{cpuTime:tr,gpuTime:Vr}))},50)}if(this.listens("gpu-timing-layer")){var dr=this.painter.collectGpuTimers();setTimeout(function(){var Vr=We.painter.queryGpuTimers(dr);We.fire(new e.Event("gpu-timing-layer",{layerTimes:Vr}))},50)}var Pr=this._sourcesDirty||this._styleDirty||this._placementDirty;return Pr||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.Event("idle")),this._loaded&&!this._fullyLoaded&&!Pr&&(this._fullyLoaded=!0),this}},K.prototype.remove=function(){this._hash&&this._hash.remove();for(var xe=0,We=this._controls;xe<We.length;xe+=1){var He=We[xe];He.onRemove(this)}this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof e.window<"u"&&(e.window.removeEventListener("resize",this._onWindowResize,!1),e.window.removeEventListener("orientationchange",this._onWindowResize,!1),e.window.removeEventListener("online",this._onWindowOnline,!1));var st=this.painter.context.gl.getExtension("WEBGL_lose_context");st&&st.loseContext&&st.loseContext(),Zn(this._canvasContainer),Zn(this._controlContainer),Zn(this._missingCSSCanary),this._container.classList.remove("mapboxgl-map"),this._removed=!0,this.fire(new e.Event("remove"))},K.prototype.triggerRepaint=function(){var xe=this;this.style&&!this._frame&&(this._frame=e.browser.frame(function(We){xe._frame=null,xe._render(We)}))},K.prototype._onWindowOnline=function(){this._update()},K.prototype._onWindowResize=function(xe){this._trackResize&&this.resize({originalEvent:xe})._update()},ye.showTileBoundaries.get=function(){return!!this._showTileBoundaries},ye.showTileBoundaries.set=function(te){this._showTileBoundaries!==te&&(this._showTileBoundaries=te,this._update())},ye.showPadding.get=function(){return!!this._showPadding},ye.showPadding.set=function(te){this._showPadding!==te&&(this._showPadding=te,this._update())},ye.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},ye.showCollisionBoxes.set=function(te){this._showCollisionBoxes!==te&&(this._showCollisionBoxes=te,te?this.style._generateCollisionBoxes():this._update())},ye.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},ye.showOverdrawInspector.set=function(te){this._showOverdrawInspector!==te&&(this._showOverdrawInspector=te,this._update())},ye.repaint.get=function(){return!!this._repaint},ye.repaint.set=function(te){this._repaint!==te&&(this._repaint=te,this.triggerRepaint())},ye.vertices.get=function(){return!!this._vertices},ye.vertices.set=function(te){this._vertices=te,this._update()},K.prototype._setCacheLimits=function(xe,We){e.setCacheLimits(xe,We)},ye.version.get=function(){return e.version},Object.defineProperties(K.prototype,ye),K}(Io);function Zn(ve){ve.parentNode&&ve.parentNode.removeChild(ve)}var Rn={showCompass:!0,showZoom:!0,visualizePitch:!1},xn=function(K){var ye=this;this.options=e.extend({},Rn,K),this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(te){return te.preventDefault()}),this.options.showZoom&&(e.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",function(te){return ye._map.zoomIn({},{originalEvent:te})}),r.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",function(te){return ye._map.zoomOut({},{originalEvent:te})}),r.create("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden",!0)),this.options.showCompass&&(e.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",function(te){ye.options.visualizePitch?ye._map.resetNorthPitch({},{originalEvent:te}):ye._map.resetNorth({},{originalEvent:te})}),this._compassIcon=r.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))};xn.prototype._updateZoomButtons=function(){var K=this._map.getZoom(),ye=K===this._map.getMaxZoom(),te=K===this._map.getMinZoom();this._zoomInButton.disabled=ye,this._zoomOutButton.disabled=te,this._zoomInButton.setAttribute("aria-disabled",ye.toString()),this._zoomOutButton.setAttribute("aria-disabled",te.toString())},xn.prototype._rotateCompassArrow=function(){var K=this.options.visualizePitch?"scale("+1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)+") rotateX("+this._map.transform.pitch+"deg) rotateZ("+this._map.transform.angle*(180/Math.PI)+"deg)":"rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassIcon.style.transform=K},xn.prototype.onAdd=function(K){return this._map=K,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new dn(this._map,this._compass,this.options.visualizePitch)),this._container},xn.prototype.onRemove=function(){r.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map},xn.prototype._createButton=function(K,ye){var te=r.create("button",K,this._container);return te.type="button",te.addEventListener("click",ye),te},xn.prototype._setButtonTitle=function(K,ye){var te=this._map._getUIString("NavigationControl."+ye);K.title=te,K.setAttribute("aria-label",te)};var dn=function(K,ye,te){te===void 0&&(te=!1),this._clickTolerance=10,this.element=ye,this.mouseRotate=new zi({clickTolerance:K.dragRotate._mouseRotate._clickTolerance}),this.map=K,te&&(this.mousePitch=new Ni({clickTolerance:K.dragRotate._mousePitch._clickTolerance})),e.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),r.addEventListener(ye,"mousedown",this.mousedown),r.addEventListener(ye,"touchstart",this.touchstart,{passive:!1}),r.addEventListener(ye,"touchmove",this.touchmove),r.addEventListener(ye,"touchend",this.touchend),r.addEventListener(ye,"touchcancel",this.reset)};dn.prototype.down=function(K,ye){this.mouseRotate.mousedown(K,ye),this.mousePitch&&this.mousePitch.mousedown(K,ye),r.disableDrag()},dn.prototype.move=function(K,ye){var te=this.map,xe=this.mouseRotate.mousemoveWindow(K,ye);if(xe&&xe.bearingDelta&&te.setBearing(te.getBearing()+xe.bearingDelta),this.mousePitch){var We=this.mousePitch.mousemoveWindow(K,ye);We&&We.pitchDelta&&te.setPitch(te.getPitch()+We.pitchDelta)}},dn.prototype.off=function(){var K=this.element;r.removeEventListener(K,"mousedown",this.mousedown),r.removeEventListener(K,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(K,"touchmove",this.touchmove),r.removeEventListener(K,"touchend",this.touchend),r.removeEventListener(K,"touchcancel",this.reset),this.offTemp()},dn.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(e.window,"mousemove",this.mousemove),r.removeEventListener(e.window,"mouseup",this.mouseup)},dn.prototype.mousedown=function(K){this.down(e.extend({},K,{ctrlKey:!0,preventDefault:function(){return K.preventDefault()}}),r.mousePos(this.element,K)),r.addEventListener(e.window,"mousemove",this.mousemove),r.addEventListener(e.window,"mouseup",this.mouseup)},dn.prototype.mousemove=function(K){this.move(K,r.mousePos(this.element,K))},dn.prototype.mouseup=function(K){this.mouseRotate.mouseupWindow(K),this.mousePitch&&this.mousePitch.mouseupWindow(K),this.offTemp()},dn.prototype.touchstart=function(K){K.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,K.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return K.preventDefault()}},this._startPos))},dn.prototype.touchmove=function(K){K.targetTouches.length!==1?this.reset():(this._lastPos=r.touchPos(this.element,K.targetTouches)[0],this.move({preventDefault:function(){return K.preventDefault()}},this._lastPos))},dn.prototype.touchend=function(K){K.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},dn.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};function jn(ve,K,ye){if(ve=new e.LngLat(ve.lng,ve.lat),K){var te=new e.LngLat(ve.lng-360,ve.lat),xe=new e.LngLat(ve.lng+360,ve.lat),We=ye.locationPoint(ve).distSqr(K);ye.locationPoint(te).distSqr(K)<We?ve=te:ye.locationPoint(xe).distSqr(K)<We&&(ve=xe)}for(;Math.abs(ve.lng-ye.center.lng)>180;){var He=ye.locationPoint(ve);if(He.x>=0&&He.y>=0&&He.x<=ye.width&&He.y<=ye.height)break;ve.lng>ye.center.lng?ve.lng-=360:ve.lng+=360}return ve}var Ro={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function rs(ve,K,ye){var te=ve.classList;for(var xe in Ro)te.remove("mapboxgl-"+ye+"-anchor-"+xe);te.add("mapboxgl-"+ye+"-anchor-"+K)}var wn=function(ve){function K(ye,te){if(ve.call(this),(ye instanceof e.window.HTMLElement||te)&&(ye=e.extend({element:ye},te)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=ye&&ye.anchor||"center",this._color=ye&&ye.color||"#3FB1CE",this._scale=ye&&ye.scale||1,this._draggable=ye&&ye.draggable||!1,this._clickTolerance=ye&&ye.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=ye&&ye.rotation||0,this._rotationAlignment=ye&&ye.rotationAlignment||"auto",this._pitchAlignment=ye&&ye.pitchAlignment&&ye.pitchAlignment!=="auto"?ye.pitchAlignment:this._rotationAlignment,!ye||!ye.element){this._defaultMarker=!0,this._element=r.create("div"),this._element.setAttribute("aria-label","Map marker");var xe=r.createNS("http://www.w3.org/2000/svg","svg"),We=41,He=27;xe.setAttributeNS(null,"display","block"),xe.setAttributeNS(null,"height",We+"px"),xe.setAttributeNS(null,"width",He+"px"),xe.setAttributeNS(null,"viewBox","0 0 "+He+" "+We);var st=r.createNS("http://www.w3.org/2000/svg","g");st.setAttributeNS(null,"stroke","none"),st.setAttributeNS(null,"stroke-width","1"),st.setAttributeNS(null,"fill","none"),st.setAttributeNS(null,"fill-rule","evenodd");var Et=r.createNS("http://www.w3.org/2000/svg","g");Et.setAttributeNS(null,"fill-rule","nonzero");var Ht=r.createNS("http://www.w3.org/2000/svg","g");Ht.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Ht.setAttributeNS(null,"fill","#000000");for(var yr=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Ir=0,wr=yr;Ir<wr.length;Ir+=1){var qt=wr[Ir],tr=r.createNS("http://www.w3.org/2000/svg","ellipse");tr.setAttributeNS(null,"opacity","0.04"),tr.setAttributeNS(null,"cx","10.5"),tr.setAttributeNS(null,"cy","5.80029008"),tr.setAttributeNS(null,"rx",qt.rx),tr.setAttributeNS(null,"ry",qt.ry),Ht.appendChild(tr)}var dr=r.createNS("http://www.w3.org/2000/svg","g");dr.setAttributeNS(null,"fill",this._color);var Pr=r.createNS("http://www.w3.org/2000/svg","path");Pr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),dr.appendChild(Pr);var Vr=r.createNS("http://www.w3.org/2000/svg","g");Vr.setAttributeNS(null,"opacity","0.25"),Vr.setAttributeNS(null,"fill","#000000");var Hr=r.createNS("http://www.w3.org/2000/svg","path");Hr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Vr.appendChild(Hr);var aa=r.createNS("http://www.w3.org/2000/svg","g");aa.setAttributeNS(null,"transform","translate(6.0, 7.0)"),aa.setAttributeNS(null,"fill","#FFFFFF");var Qr=r.createNS("http://www.w3.org/2000/svg","g");Qr.setAttributeNS(null,"transform","translate(8.0, 8.0)");var Gr=r.createNS("http://www.w3.org/2000/svg","circle");Gr.setAttributeNS(null,"fill","#000000"),Gr.setAttributeNS(null,"opacity","0.25"),Gr.setAttributeNS(null,"cx","5.5"),Gr.setAttributeNS(null,"cy","5.5"),Gr.setAttributeNS(null,"r","5.4999962");var ia=r.createNS("http://www.w3.org/2000/svg","circle");ia.setAttributeNS(null,"fill","#FFFFFF"),ia.setAttributeNS(null,"cx","5.5"),ia.setAttributeNS(null,"cy","5.5"),ia.setAttributeNS(null,"r","5.4999962"),Qr.appendChild(Gr),Qr.appendChild(ia),Et.appendChild(Ht),Et.appendChild(dr),Et.appendChild(Vr),Et.appendChild(aa),Et.appendChild(Qr),xe.appendChild(Et),xe.setAttributeNS(null,"height",We*this._scale+"px"),xe.setAttributeNS(null,"width",He*this._scale+"px"),this._element.appendChild(xe),this._offset=e.Point.convert(ye&&ye.offset||[0,-14])}else this._element=ye.element,this._offset=e.Point.convert(ye&&ye.offset||[0,0]);this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",function(Ur){Ur.preventDefault()}),this._element.addEventListener("mousedown",function(Ur){Ur.preventDefault()}),rs(this._element,this._anchor,"marker"),this._popup=null}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this.remove(),this._map=te,te.getCanvasContainer().appendChild(this._element),te.on("move",this._update),te.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},K.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),r.remove(this._element),this._popup&&this._popup.remove(),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},K.prototype.getElement=function(){return this._element},K.prototype.setPopup=function(te){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),te){if(!("offset"in te.options)){var xe=38.1,We=13.5,He=Math.sqrt(Math.pow(We,2)/2);te.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-xe],"bottom-left":[He,(xe-We+He)*-1],"bottom-right":[-He,(xe-We+He)*-1],left:[We,(xe-We)*-1],right:[-We,(xe-We)*-1]}:this._offset}this._popup=te,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this},K.prototype._onKeyPress=function(te){var xe=te.code,We=te.charCode||te.keyCode;(xe==="Space"||xe==="Enter"||We===32||We===13)&&this.togglePopup()},K.prototype._onMapClick=function(te){var xe=te.originalEvent.target,We=this._element;this._popup&&(xe===We||We.contains(xe))&&this.togglePopup()},K.prototype.getPopup=function(){return this._popup},K.prototype.togglePopup=function(){var te=this._popup;if(te)te.isOpen()?te.remove():te.addTo(this._map);else return this;return this},K.prototype._update=function(te){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=jn(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var xe="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?xe="rotateZ("+this._rotation+"deg)":this._rotationAlignment==="map"&&(xe="rotateZ("+(this._rotation-this._map.getBearing())+"deg)");var We="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?We="rotateX(0deg)":this._pitchAlignment==="map"&&(We="rotateX("+this._map.getPitch()+"deg)"),(!te||te.type==="moveend")&&(this._pos=this._pos.round()),r.setTransform(this._element,Ro[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px) "+We+" "+xe)}},K.prototype.getOffset=function(){return this._offset},K.prototype.setOffset=function(te){return this._offset=e.Point.convert(te),this._update(),this},K.prototype._onMove=function(te){if(!this._isDragging){var xe=this._clickTolerance||this._map._clickTolerance;this._isDragging=te.point.dist(this._pointerdownPos)>=xe}this._isDragging&&(this._pos=te.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new e.Event("dragstart"))),this.fire(new e.Event("drag")))},K.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new e.Event("dragend")),this._state="inactive"},K.prototype._addDragHandler=function(te){this._element.contains(te.originalEvent.target)&&(te.preventDefault(),this._positionDelta=te.point.sub(this._pos).add(this._offset),this._pointerdownPos=te.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},K.prototype.setDraggable=function(te){return this._draggable=!!te,this._map&&(te?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},K.prototype.isDraggable=function(){return this._draggable},K.prototype.setRotation=function(te){return this._rotation=te||0,this._update(),this},K.prototype.getRotation=function(){return this._rotation},K.prototype.setRotationAlignment=function(te){return this._rotationAlignment=te||"auto",this._update(),this},K.prototype.getRotationAlignment=function(){return this._rotationAlignment},K.prototype.setPitchAlignment=function(te){return this._pitchAlignment=te&&te!=="auto"?te:this._rotationAlignment,this._update(),this},K.prototype.getPitchAlignment=function(){return this._pitchAlignment},K}(e.Evented),oo={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Xo;function os(ve){Xo!==void 0?ve(Xo):e.window.navigator.permissions!==void 0?e.window.navigator.permissions.query({name:"geolocation"}).then(function(K){Xo=K.state!=="denied",ve(Xo)}):(Xo=!!e.window.navigator.geolocation,ve(Xo))}var As=0,$l=!1,Uc=function(ve){function K(ye){ve.call(this),this.options=e.extend({},oo,ye),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){return this._map=te,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),os(this._setupUI),this._container},K.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,As=0,$l=!1},K.prototype._isOutOfMapMaxBounds=function(te){var xe=this._map.getMaxBounds(),We=te.coords;return xe&&(We.longitude<xe.getWest()||We.longitude>xe.getEast()||We.latitude<xe.getSouth()||We.latitude>xe.getNorth())},K.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},K.prototype._onSuccess=function(te){if(this._map){if(this._isOutOfMapMaxBounds(te)){this._setErrorState(),this.fire(new e.Event("outofmaxbounds",te)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=te,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(te),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(te),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",te)),this._finish()}},K.prototype._updateCamera=function(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude),We=te.coords.accuracy,He=this._map.getBearing(),st=e.extend({bearing:He},this.options.fitBoundsOptions);this._map.fitBounds(xe.toBounds(We),st,{geolocateSource:!0})},K.prototype._updateMarker=function(te){if(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude);this._accuracyCircleMarker.setLngLat(xe).addTo(this._map),this._userLocationDotMarker.setLngLat(xe).addTo(this._map),this._accuracy=te.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},K.prototype._updateCircleRadius=function(){var te=this._map._container.clientHeight/2,xe=this._map.unproject([0,te]),We=this._map.unproject([1,te]),He=xe.distanceTo(We),st=Math.ceil(2*this._accuracy/He);this._circleElement.style.width=st+"px",this._circleElement.style.height=st+"px"},K.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},K.prototype._onError=function(te){if(this._map){if(this.options.trackUserLocation)if(te.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var xe=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=xe,this._geolocateButton.setAttribute("aria-label",xe),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(te.code===3&&$l)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",te)),this._finish()}},K.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},K.prototype._setupUI=function(te){var xe=this;if(this._container.addEventListener("contextmenu",function(st){return st.preventDefault()}),this._geolocateButton=r.create("button","mapboxgl-ctrl-geolocate",this._container),r.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",te===!1){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var We=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=We,this._geolocateButton.setAttribute("aria-label",We)}else{var He=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=He,this._geolocateButton.setAttribute("aria-label",He)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=r.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new wn(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new wn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(st){var Et=st.originalEvent&&st.originalEvent.type==="resize";!st.geolocateSource&&xe._watchState==="ACTIVE_LOCK"&&!Et&&(xe._watchState="BACKGROUND",xe._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),xe._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),xe.fire(new e.Event("trackuserlocationend")))})},K.prototype.trigger=function(){if(!this._setup)return e.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":As--,$l=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new e.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),As++;var te;As>1?(te={maximumAge:6e5,timeout:0},$l=!0):(te=this.options.positionOptions,$l=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,te)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},K.prototype._clearWatch=function(){e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},K}(e.Evented),Ws={maxWidth:100,unit:"metric"},jc=function(K){this.options=e.extend({},Ws,K),e.bindAll(["_onMove","setUnit"],this)};jc.prototype.getDefaultPosition=function(){return"bottom-left"},jc.prototype._onMove=function(){Ol(this._map,this._container,this.options)},jc.prototype.onAdd=function(K){return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",K.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},jc.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},jc.prototype.setUnit=function(K){this.options.unit=K,Ol(this._map,this._container,this.options)};function Ol(ve,K,ye){var te=ye&&ye.maxWidth||100,xe=ve._container.clientHeight/2,We=ve.unproject([0,xe]),He=ve.unproject([te,xe]),st=We.distanceTo(He);if(ye&&ye.unit==="imperial"){var Et=3.2808*st;if(Et>5280){var Ht=Et/5280;vc(K,te,Ht,ve._getUIString("ScaleControl.Miles"))}else vc(K,te,Et,ve._getUIString("ScaleControl.Feet"))}else if(ye&&ye.unit==="nautical"){var yr=st/1852;vc(K,te,yr,ve._getUIString("ScaleControl.NauticalMiles"))}else st>=1e3?vc(K,te,st/1e3,ve._getUIString("ScaleControl.Kilometers")):vc(K,te,st,ve._getUIString("ScaleControl.Meters"))}function vc(ve,K,ye,te){var xe=rf(ye),We=xe/ye;ve.style.width=K*We+"px",ve.innerHTML=xe+"&nbsp;"+te}function mc(ve){var K=Math.pow(10,Math.ceil(-Math.log(ve)/Math.LN10));return Math.round(ve*K)/K}function rf(ve){var K=Math.pow(10,(""+Math.floor(ve)).length-1),ye=ve/K;return ye=ye>=10?10:ye>=5?5:ye>=3?3:ye>=2?2:ye>=1?1:mc(ye),K*ye}var Yl=function(K){this._fullscreen=!1,K&&K.container&&(K.container instanceof e.window.HTMLElement?this._container=K.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};Yl.prototype.onAdd=function(K){return this._map=K,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Yl.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},Yl.prototype._setupUI=function(){var K=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",K).setAttribute("aria-hidden",!0),K.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._updateTitle=function(){var K=this._getTitle();this._fullscreenButton.setAttribute("aria-label",K),this._fullscreenButton.title=K},Yl.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Yl.prototype._isFullscreen=function(){return this._fullscreen},Yl.prototype._changeIcon=function(){var K=e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.window.document.msFullscreenElement;K===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Yl.prototype._onClickFullscreen=function(){this._isFullscreen()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Mc={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Ds=function(ve){function K(ye){ve.call(this),this.options=e.extend(Object.create(Mc),ye),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this._map&&this.remove(),this._map=te,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new e.Event("open")),this},K.prototype.isOpen=function(){return!!this._map},K.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new e.Event("close")),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},K.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},K.prototype.getElement=function(){return this._container},K.prototype.setText=function(te){return this.setDOMContent(e.window.document.createTextNode(te))},K.prototype.setHTML=function(te){var xe=e.window.document.createDocumentFragment(),We=e.window.document.createElement("body"),He;for(We.innerHTML=te;He=We.firstChild,!!He;)xe.appendChild(He);return this.setDOMContent(xe)},K.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},K.prototype.setMaxWidth=function(te){return this.options.maxWidth=te,this._update(),this},K.prototype.setDOMContent=function(te){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(te),this._createCloseButton(),this._update(),this._focusFirstElement(),this},K.prototype.addClassName=function(te){this._container&&this._container.classList.add(te)},K.prototype.removeClassName=function(te){this._container&&this._container.classList.remove(te)},K.prototype.setOffset=function(te){return this.options.offset=te,this._update(),this},K.prototype.toggleClassName=function(te){if(this._container)return this._container.classList.toggle(te)},K.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=r.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))},K.prototype._onMouseUp=function(te){this._update(te.point)},K.prototype._onMouseMove=function(te){this._update(te.point)},K.prototype._onDrag=function(te){this._update(te.point)},K.prototype._update=function(te){var xe=this,We=this._lngLat||this._trackPointer;if(!(!this._map||!We||!this._content)&&(this._container||(this._container=r.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=r.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(qt){return xe._container.classList.add(qt)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=jn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!te))){var He=this._pos=this._trackPointer&&te?te:this._map.project(this._lngLat),st=this.options.anchor,Et=af(this.options.offset);if(!st){var Ht=this._container.offsetWidth,yr=this._container.offsetHeight,Ir;He.y+Et.bottom.y<yr?Ir=["top"]:He.y>this._map.transform.height-yr?Ir=["bottom"]:Ir=[],He.x<Ht/2?Ir.push("left"):He.x>this._map.transform.width-Ht/2&&Ir.push("right"),Ir.length===0?st="bottom":st=Ir.join("-")}var wr=He.add(Et[st]).round();r.setTransform(this._container,Ro[st]+" translate("+wr.x+"px,"+wr.y+"px)"),rs(this._container,st,"popup")}},K.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var te=this._container.querySelector(Vc);te&&te.focus()}},K.prototype._onClose=function(){this.remove()},K}(e.Evented);function af(ve){if(ve)if(typeof ve=="number"){var K=Math.round(Math.sqrt(.5*Math.pow(ve,2)));return{center:new e.Point(0,0),top:new e.Point(0,ve),"top-left":new e.Point(K,K),"top-right":new e.Point(-K,K),bottom:new e.Point(0,-ve),"bottom-left":new e.Point(K,-K),"bottom-right":new e.Point(-K,-K),left:new e.Point(ve,0),right:new e.Point(-ve,0)}}else if(ve instanceof e.Point||Array.isArray(ve)){var ye=e.Point.convert(ve);return{center:ye,top:ye,"top-left":ye,"top-right":ye,bottom:ye,"bottom-left":ye,"bottom-right":ye,left:ye,right:ye}}else return{center:e.Point.convert(ve.center||[0,0]),top:e.Point.convert(ve.top||[0,0]),"top-left":e.Point.convert(ve["top-left"]||[0,0]),"top-right":e.Point.convert(ve["top-right"]||[0,0]),bottom:e.Point.convert(ve.bottom||[0,0]),"bottom-left":e.Point.convert(ve["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(ve["bottom-right"]||[0,0]),left:e.Point.convert(ve.left||[0,0]),right:e.Point.convert(ve.right||[0,0])};else return af(new e.Point(0,0))}var Cs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:Ui,NavigationControl:xn,GeolocateControl:Uc,AttributionControl:nn,ScaleControl:jc,FullscreenControl:Yl,Popup:Ds,Marker:wn,Style:Jl,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:Er,clearPrewarmedResources:kr,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(ve){e.config.ACCESS_TOKEN=ve},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(ve){e.config.API_URL=ve},get workerCount(){return ya.workerCount},set workerCount(ve){ya.workerCount=ve},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(ve){e.config.MAX_PARALLEL_IMAGE_REQUESTS=ve},clearStorage:function(K){e.clearTileCache(K)},workerUrl:""};return Cs}),A})}}),$V=Ye({"src/plots/mapbox/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=wk(),M=am();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapboxLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapboxLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s<n.length;s++){var c=n[s].id;if(typeof c=="string"&&c.indexOf(M.traceLayerPrefix)===0){i=c;break}}return i},t.updateLayer=function(i){var n=this.subplot,s=o(i),c=this.lookupBelow(),h=this.findFollowingMapboxLayerId(c);this.removeLayer(),r(i)&&n.addLayer({id:this.idLayer,source:this.idSource,"source-layer":i.sourcelayer||"",type:i.type,minzoom:i.minzoom,maxzoom:i.maxzoom,layout:s.layout,paint:s.paint},h),this.layerType=i.type,this.below=c},t.updateStyle=function(i){if(r(i)){var n=o(i);this.subplot.setOptions(this.idLayer,"setLayoutProperty",n.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",n.paint)}},t.removeLayer=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer)},t.dispose=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer),i.getSource(this.idSource)&&i.removeSource(this.idSource)};function r(i){if(!i.visible)return!1;var n=i.source;if(Array.isArray(n)&&n.length>0){for(var s=0;s<n.length;s++)if(typeof n[s]!="string"||n[s].length===0)return!1;return!0}return g.isPlainObject(n)||typeof n=="string"&&n.length>0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),QV=Ye({"src/plots/mapbox/mapbox.js"(X,H){"use strict";var g=Tk(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=am(),p=$V();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y=b[u.id];u.map&&y.accesstoken!==u.accessToken&&(u.map.remove(),u.map=null,u.styleObj=null,u.traceHash={},u.layerList=[]);var f;u.map?f=new Promise(function(P,L){u.updateMap(m,b,P,L)}):f=new Promise(function(P,L){u.createMap(m,b,P,L)}),d.push(f)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style,b);y.accessToken=f.accesstoken;var L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0}));F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var B=[];B.push(new Promise(function(O){F.once("load",O)})),B=B.concat(A.fetchTraceGeoData(m)),Promise.all(B).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style,b);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y<m.length;y++){var z=m[y][0].trace,F=z._module;typeof z.below=="string"?f=z.below:F.getBelow&&(f=F.getBelow(z,this)),f===""&&(L=!0),P["trace-"+z.uid]=f||""}for(y=0;y<u.length;y++){var B=u[y];typeof B.below=="string"?f=B.below:L?f="traces":f="",P["layout-"+y]=f}var O={},I,N;for(I in P)f=P[I],O[f]?O[f].push(I):O[f]=[I];for(f in O){var U=O[f];if(U.length>1)for(y=0;y<U.length;y++)I=U[y],I.indexOf("trace-")===0?(N=I.split("trace-")[1],this.traceHash[N]&&(this.traceHash[N].below=null)):I.indexOf("layout-")===0&&(N=I.split("layout-")[1],this.layerList[N]&&(this.layerList[N].below=null))}};var _={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};l.updateData=function(m){var b=this.traceHash,d,u,y,f,P=m.slice().sort(function(O,I){return _[O[0].trace.type]-_[I[0].trace.type]});for(y=0;y<P.length;y++){var L=P[y];u=L[0].trace,d=b[u.uid];var z=!1;d&&(d.type===u.type?(d.update(L),z=!0):d.dispose()),!z&&u._module&&(b[u.uid]=u._module.plot(this,L))}var F=Object.keys(b);e:for(y=0;y<F.length;y++){var B=F[y];for(f=0;f<m.length;f++)if(u=m[f][0].trace,B===u.uid)continue e;d=b[B],d.dispose(),delete b[B]}},l.updateLayout=function(m){var b=this.map,d=m[this.id];!this.dragging&&!this.wheeling&&(b.setCenter(E(d.center)),b.setZoom(d.zoom),b.setBearing(d.bearing),b.setPitch(d.pitch)),this.updateLayers(m),this.updateFramework(m),this.updateFx(m),this.map.resize(),this.gd._context._scrollZoom.mapbox?b.scrollZoom.enable():b.scrollZoom.disable()},l.resolveOnRender=function(m){var b=this.map;b.on("render",function d(){b.loaded()&&(b.off("render",d),setTimeout(m,10))})},l.rejectOnError=function(m){var b=this.map;function d(){m(new Error(v.mapOnErrorMsg))}b.once("error",d),b.once("style.error",d),b.once("source.error",d),b.once("tile.error",d),b.once("layer.error",d)},l.createFramework=function(m){var b=this,d=b.div=document.createElement("div");d.id=b.uid,d.style.position="absolute",b.container.appendChild(d),b.xaxis={_id:"x",c2p:function(u){return b.project(u).x}},b.yaxis={_id:"y",c2p:function(u){return b.project(u).y}},b.updateFramework(m),b.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},e.setConvert(b.mockAxis,m)},l.initFx=function(m,b){var d=this,u=d.gd,y=d.map;y.on("moveend",function(L){if(d.map){var z=u._fullLayout;if(L.originalEvent||d.wheeling){var F=z[d.id];M.call("_storeDirectGUIEdit",u.layout,z._preGUI,d.getViewEdits(F));var B=d.getView();F._input.center=F.center=B.center,F._input.zoom=F.zoom=B.zoom,F._input.bearing=F.bearing=B.bearing,F._input.pitch=F.pitch=B.pitch,u.emit("plotly_relayout",d.getViewEditsWithDerived(B))}L.originalEvent&&L.originalEvent.type==="mouseup"?d.dragging=!1:d.wheeling&&(d.wheeling=!1),z._rehover&&z._rehover()}}),y.on("wheel",function(){d.wheeling=!0}),y.on("mousemove",function(L){var z=d.div.getBoundingClientRect(),F=[L.originalEvent.offsetX,L.originalEvent.offsetY];L.target.getBoundingClientRect=function(){return z},d.xaxis.p2c=function(){return y.unproject(F).lng},d.yaxis.p2c=function(){return y.unproject(F).lat},u._fullLayout._rehover=function(){u._fullLayout._hoversubplot===d.id&&u._fullLayout[d.id]&&r.hover(u,L,d.id)},r.hover(u,L,d.id),u._fullLayout._hoversubplot=d.id});function f(){r.loneUnhover(b._hoverlayer)}y.on("dragstart",function(){d.dragging=!0,f()}),y.on("zoomstart",f),y.on("mouseout",function(){u._fullLayout._hoversubplot=null});function P(){var L=d.getView();u.emit("plotly_relayouting",d.getViewEditsWithDerived(L))}y.on("drag",P),y.on("zoom",P),y.on("dblclick",function(){var L=u._fullLayout[d.id];M.call("_storeDirectGUIEdit",u.layout,u._fullLayout._preGUI,d.getViewEdits(L));var z=d.viewInitial;y.setCenter(E(z.center)),y.setZoom(z.zoom),y.setBearing(z.bearing),y.setPitch(z.pitch);var F=d.getView();L._input.center=L.center=F.center,L._input.zoom=L.zoom=F.zoom,L._input.bearing=L.bearing=F.bearing,L._input.pitch=L.pitch=F.pitch,u.emit("plotly_doubleclick",null),u.emit("plotly_relayout",d.getViewEditsWithDerived(F))}),d.clearOutline=function(){c(d.dragOptions),s(d.dragOptions.gd)},d.onClickInPanFn=function(L){return function(z){var F=u._fullLayout.clickmode;F.indexOf("select")>-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;y<u.length;y++)u[y].dispose();for(u=this.layerList=[],y=0;y<d.length;y++)u.push(p(this,y,d[y]))}else for(y=0;y<d.length;y++)u[y].update(d[y])},l.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},l.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},l.setOptions=function(m,b,d){for(var u in d)this.map[b](m,u,d[u])},l.getMapLayers=function(){return this.map.getStyle().layers},l.addLayer=function(m,b){var d=this.map;if(typeof b=="string"){if(b===""){d.addLayer(m,b);return}for(var u=this.getMapLayers(),y=0;y<u.length;y++)if(b===u[y].id){d.addLayer(m,b);return}x.warn(["Trying to add layer with *below* value",b,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}d.addLayer(m)},l.project=function(m){return this.map.project(new g.LngLat(m[0],m[1]))},l.getView=function(){var m=this.map,b=m.getCenter(),d=b.lng,u=b.lat,y={lon:d,lat:u},f=m.getCanvas(),P=parseInt(f.style.width),L=parseInt(f.style.height);return{center:y,zoom:m.getZoom(),bearing:m.getBearing(),pitch:m.getPitch(),_derived:{coordinates:[m.unproject([0,0]).toArray(),m.unproject([P,0]).toArray(),m.unproject([P,L]).toArray(),m.unproject([0,L]).toArray()]}}},l.getViewEdits=function(m){for(var b=this.id,d=["center","zoom","bearing","pitch"],u={},y=0;y<d.length;y++){var f=d[y];u[b+"."+f]=m[f]}return u},l.getViewEditsWithDerived=function(m){var b=this.id,d=this.getViewEdits(m);return d[b+"._derived"]=m._derived,d};function w(m,b){var d={};if(x.isPlainObject(m))d.id=m.id,d.style=m;else if(typeof m=="string")if(d.id=m,v.styleValuesMapbox.indexOf(m)!==-1)d.style=S(m);else if(v.stylesNonMapbox[m]){d.style=v.stylesNonMapbox[m];var u=d.style.sources["plotly-"+m],y=u?u.tiles:void 0;y&&y[0]&&y[0].slice(-9)==="?api_key="&&(y[0]+=b._mapboxAccessToken)}else d.style=m;else d.id=v.styleValueDflt,d.style=S(v.styleValueDflt);return d.transition={duration:0,delay:0},d}function S(m){return v.styleUrlPrefix+m+"-"+v.styleUrlSuffix}function E(m){return[m.lon,m.lat]}H.exports=T}}),eq=Ye({"src/plots/mapbox/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=up(),M=Sx();H.exports=function(o,a,i){x(o,a,i,{type:"mapbox",attributes:M,handleDefaults:e,partition:"y",accessToken:a._mapboxAccessToken})};function e(r,o,a,i){a("accesstoken",i.accessToken),a("style"),a("center.lon"),a("center.lat"),a("zoom"),a("bearing"),a("pitch");var n=a("bounds.west"),s=a("bounds.east"),c=a("bounds.south"),h=a("bounds.north");(n===void 0||s===void 0||c===void 0||h===void 0)&&delete o.bounds,A(r,o,{name:"layers",handleItemDefaults:t}),o._input=r}function t(r,o){function a(v,p){return g.coerce(r,o,M.layers,v,p)}var i=a("visible");if(i){var n=a("sourcetype"),s=n==="raster"||n==="image";a("source"),a("sourceattribution"),n==="vector"&&a("sourcelayer"),n==="image"&&a("coordinates");var c;s&&(c="raster");var h=a("type",c);s&&h!=="raster"&&(h=o.type="raster",g.log("Source types *raster* and *image* must drawn *raster* layer type.")),a("below"),a("color"),a("opacity"),a("minzoom"),a("maxzoom"),h==="circle"&&a("circle.radius"),h==="line"&&(a("line.width"),a("line.dash")),h==="fill"&&a("fill.outlinecolor"),h==="symbol"&&(a("symbol.icon"),a("symbol.iconsize"),a("symbol.text"),g.coerceFont(a,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),a("symbol.textposition"),a("symbol.placement"))}}}}),ST=Ye({"src/plots/mapbox/index.js"(X){"use strict";var H=Tk(),g=ta(),x=g.strTranslate,A=g.strScale,M=jh().getSubplotCalcData,e=vd(),t=_n(),r=Bo(),o=jl(),a=QV(),i="mapbox",n=X.constants=am();X.name=i,X.attr="subplot",X.idRoot=i,X.idRegex=X.attrRegex=g.counterRegex(i);var s=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");X.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},X.layoutAttributes=Sx(),X.supplyLayoutDefaults=eq();var c=!0;X.plot=function(T){c&&(c=!1,g.warn(s));var l=T._fullLayout,_=T.calcdata,w=l._subplots[i];if(H.version!==n.requiredVersion)throw new Error(n.wrongVersionErrorMsg);var S=h(T,w);H.accessToken=S;for(var E=0;E<w.length;E++){var m=w[E],b=M(_,i,m),d=l[m],u=d._subplot;u||(u=new a(T,m),l[m]._subplot=u),u.viewInitial||(u.viewInitial={center:g.extendFlat({},d.center),zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),u.plot(b,l,T._promises)}},X.clean=function(p,T,l,_){for(var w=_._subplots[i]||[],S=0;S<w.length;S++){var E=w[S];!T[E]&&_[E]._subplot&&_[E]._subplot.destroy()}},X.toSVG=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=T._size,w=0;w<l.length;w++){var S=T[l[w]],E=S.domain,m=S._subplot,b=m.toImage("png"),d=T._glimages.append("svg:image");d.attr({xmlns:e.svg,"xlink:href":b,x:_.l+_.w*E.x[0],y:_.t+_.h*(1-E.y[1]),width:_.w*(E.x[1]-E.x[0]),height:_.h*(E.y[1]-E.y[0]),preserveAspectRatio:"none"});var u=t.select(S._subplot.div),y=u.select(".mapboxgl-ctrl-logo").node().offsetParent===null;if(!y){var f=T._glimages.append("g");f.attr("transform",x(_.l+_.w*E.x[0]+10,_.t+_.h*(1-E.y[0])-31)),f.append("path").attr("d",n.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),f.append("path").attr("d",n.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),f.append("path").attr("d",n.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),f.append("polygon").attr("points",n.mapboxLogo.polygon).style({opacity:.9,fill:"#ffffff","enable-background":"new"})}var P=u.select(".mapboxgl-ctrl-attrib").text().replace("Improve this map",""),L=T._glimages.append("g"),z=L.append("text");z.text(P).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":P});var F=r.bBox(z.node()),B=_.w*(E.x[1]-E.x[0]);if(F.width>B/2){var O=P.split("|").join("<br>");z.text(O).attr("data-unformatted",O).call(o.convertToTspans,p),F=r.bBox(z.node())}z.attr("transform",x(-3,-F.height+8)),L.insert("rect",".static-attribution").attr({x:-F.width-6,y:-F.height-3,width:F.width+6,height:F.height+3,fill:"rgba(255, 255, 255, 0.75)"});var I=1;F.width+6>B&&(I=B/(F.width+6));var N=[_.l+_.w*E.x[1],_.t+_.h*(1-E.y[0])];L.attr("transform",x(N[0],N[1])+A(I))}};function h(p,T){var l=p._fullLayout,_=p._context;if(_.mapboxAccessToken==="")return"";for(var w=[],S=[],E=!1,m=!1,b=0;b<T.length;b++){var d=l[T[b]],u=d.accesstoken;v(d.style)&&(u?g.pushUnique(w,u):(v(d._input.style)&&(g.error("Uses Mapbox map style, but did not set an access token."),E=!0),m=!0)),u&&g.pushUnique(S,u)}if(m){var y=E?n.noAccessTokenErrorMsg:n.missingStyleErrorMsg;throw g.error(y),new Error(y)}return w.length?(w.length>1&&g.warn(n.multipleTokensErrorMsg),w[0]):(S.length&&g.log(["Listed mapbox access token(s)",S.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function v(p){return typeof p=="string"&&(n.styleValuesMapbox.indexOf(p)!==-1||p.indexOf("mapbox://")===0||p.indexOf("stamen")===0)}X.updateFx=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=0;_<l.length;_++){var w=T[l[_]]._subplot;w.updateFx(T)}}}}),tq=Ye({"src/traces/scattermapbox/index.js"(X,H){"use strict";var g=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:TT(),supplyDefaults:ZV(),colorbar:cp(),formatLabels:bk(),calc:aT(),plot:YV(),hoverPoints:AT().hoverPoints,eventData:KV(),selectPoints:JV(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.update(A)}},moduleType:"trace",name:"scattermapbox",basePlotModule:ST(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}}}),rq=Ye({"lib/scattermapbox.js"(X,H){"use strict";H.exports=tq()}}),Ak=Ye({"src/traces/choroplethmapbox/attributes.js"(X,H){"use strict";var g=M1(),x=tu(),A=xs().hovertemplateAttrs,M=Pl(),e=Oo().extendFlat;H.exports=e({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:e({},g.featureidkey,{}),below:{valType:"string",editType:"plot"},text:g.text,hovertext:g.hovertext,marker:{line:{color:e({},g.marker.line.color,{editType:"plot"}),width:e({},g.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:e({},g.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:e({},g.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:e({},g.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:g.hoverinfo,hovertemplate:A({},{keys:["properties"]}),showlegend:e({},M.showlegend,{dflt:!1})},x("",{cLetter:"z",editTypeOverride:"calc"}))}}),aq=Ye({"src/traces/choroplethmapbox/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Ak();H.exports=function(e,t,r,o){function a(h,v){return g.coerce(e,t,A,h,v)}var i=a("locations"),n=a("z"),s=a("geojson");if(!g.isArrayOrTypedArray(i)||!i.length||!g.isArrayOrTypedArray(n)||!n.length||!(typeof s=="string"&&s!==""||g.isPlainObject(s))){t.visible=!1;return}a("featureidkey"),t._length=Math.min(i.length,n.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),Sk=Ye({"src/traces/choroplethmapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Su(),M=Bo(),e=dg().makeBlank,t=vg();function r(a){var i=a[0].trace,n=i.visible===!0&&i._length!==0,s={layout:{visibility:"none"},paint:{}},c={layout:{visibility:"none"},paint:{}},h=i._opts={fill:s,line:c,geojson:e()};if(!n)return h;var v=t.extractTraceFeature(a);if(!v)return h;var p=A.makeColorScaleFuncFromTrace(i),T=i.marker,l=T.line||{},_;x.isArrayOrTypedArray(T.opacity)&&(_=function(y){var f=y.mo;return g(f)?+x.constrain(f,0,1):0});var w;x.isArrayOrTypedArray(l.color)&&(w=function(y){return y.mlc});var S;x.isArrayOrTypedArray(l.width)&&(S=function(y){return y.mlw});for(var E=0;E<a.length;E++){var m=a[E],b=m.fOut;if(b){var d=b.properties;d.fc=p(m.z),_&&(d.mo=_(m)),w&&(d.mlc=w(m)),S&&(d.mlw=S(m)),m.ct=d.ct,m._polygons=t.feature2polygons(b)}}var u=_?{type:"identity",property:"mo"}:T.opacity;return x.extendFlat(s.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":u}),x.extendFlat(c.paint,{"line-color":w?{type:"identity",property:"mlc"}:l.color,"line-width":S?{type:"identity",property:"mlw"}:l.width,"line-opacity":u}),s.layout.visibility="visible",c.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:v},o(a),h}function o(a){var i=a[0].trace,n=i._opts,s;if(i.selectedpoints){for(var c=M.makeSelectedPointStyleFns(i),h=0;h<a.length;h++){var v=a[h];v.fOut&&(v.fOut.properties.mo2=c.selectedOpacityFn(v))}s={type:"identity",property:"mo2"}}else s=x.isArrayOrTypedArray(i.marker.opacity)?{type:"identity",property:"mo"}:i.marker.opacity;return x.extendFlat(n.fill.paint,{"fill-opacity":s}),x.extendFlat(n.line.paint,{"line-opacity":s}),n}H.exports={convert:r,convertOnSelect:o}}}),iq=Ye({"src/traces/choroplethmapbox/plot.js"(X,H){"use strict";var g=Sk().convert,x=Sk().convertOnSelect,A=am().traceLayerPrefix;function M(t,r){this.type="choroplethmapbox",this.subplot=t,this.uid=r,this.sourceId="source-"+r,this.layerList=[["fill",A+r+"-fill"],["line",A+r+"-line"]],this.below=null}var e=M.prototype;e.update=function(t){this._update(g(t)),t[0].trace._glTrace=this},e.updateOnSelect=function(t){this._update(x(t))},e._update=function(t){var r=this.subplot,o=this.layerList,a=r.belowLookup["trace-"+this.uid];r.map.getSource(this.sourceId).setData(t.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(t,a),this.below=a);for(var i=0;i<o.length;i++){var n=o[i],s=n[0],c=n[1],h=t[s];r.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&r.setOptions(c,"setPaintProperty",h.paint)}},e._addLayers=function(t,r){for(var o=this.subplot,a=this.layerList,i=this.sourceId,n=0;n<a.length;n++){var s=a[n],c=s[0],h=t[c];o.addLayer({type:c,id:s[1],source:i,layout:h.layout,paint:h.paint},r)}},e._removeLayers=function(){for(var t=this.subplot.map,r=this.layerList,o=r.length-1;o>=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),nq=Ye({"src/traces/choroplethmapbox/index.js"(X,H){"use strict";var g=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Ak(),supplyDefaults:aq(),colorbar:ag(),calc:sT(),plot:iq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.updateOnSelect(A)}},getBelow:function(x,A){for(var M=A.getMapLayers(),e=M.length-2;e>=0;e--){var t=M[e].id;if(typeof t=="string"&&t.indexOf("water")===0){for(var r=e+1;r<M.length;r++)if(t=M[r].id,typeof t=="string"&&t.indexOf("plotly-")===-1)return t}}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:ST(),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}}}),oq=Ye({"lib/choroplethmapbox.js"(X,H){"use strict";H.exports=nq()}}),Mk=Ye({"src/traces/densitymapbox/attributes.js"(X,H){"use strict";var g=tu(),x=xs().hovertemplateAttrs,A=Pl(),M=TT(),e=Oo().extendFlat;H.exports=e({lon:M.lon,lat:M.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:M.text,hovertext:M.hovertext,hoverinfo:e({},A.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:x(),showlegend:e({},A.showlegend,{dflt:!1})},g("",{cLetter:"z",editTypeOverride:"calc"}))}}),sq=Ye({"src/traces/densitymapbox/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Mk();H.exports=function(e,t,r,o){function a(c,h){return g.coerce(e,t,A,c,h)}var i=a("lon")||[],n=a("lat")||[],s=Math.min(i.length,n.length);if(!s){t.visible=!1;return}t._length=s,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),x(e,t,o,a,{prefix:"",cLetter:"z"})}}}),lq=Ye({"src/traces/densitymapbox/calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=jp(),e=ta()._;H.exports=function(r,o){for(var a=o._length,i=new Array(a),n=o.z,s=x(n)&&n.length,c=0;c<a;c++){var h=i[c]={},v=o.lon[c],p=o.lat[c];if(h.lonlat=g(v)&&g(p)?[+v,+p]:[A,A],s){var T=n[c];h.z=g(T)?T:A}}return M(r,o,{vals:s?n:[0,1],containerStr:"",cLetter:"z"}),a&&(i[0].t={labels:{lat:e(r,"lat:")+" ",lon:e(r,"lon:")+" "}}),i}}}),uq=Ye({"src/traces/densitymapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Su(),e=ks().BADNUM,t=dg().makeBlank;H.exports=function(o){var a=o[0].trace,i=a.visible===!0&&a._length!==0,n={layout:{visibility:"none"},paint:{}},s=a._opts={heatmap:n,geojson:t()};if(!i)return s;var c=[],h,v=a.z,p=a.radius,T=x.isArrayOrTypedArray(v)&&v.length,l=x.isArrayOrTypedArray(p);for(h=0;h<o.length;h++){var _=o[h],w=_.lonlat;if(w[0]!==e){var S={};if(T){var E=_.z;S.z=E!==e?E:0}l&&(S.r=g(p[h])&&p[h]>0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h<b.length;h++)y.push(b[h][0],b[h][1]);var f=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return x.extendFlat(s.heatmap.paint,{"heatmap-weight":T?f:1/(m.max-m.min),"heatmap-color":y,"heatmap-radius":l?{type:"identity",property:"r"}:a.radius,"heatmap-opacity":a.opacity}),s.geojson={type:"FeatureCollection",features:c},s.heatmap.layout.visibility="visible",s}}}),cq=Ye({"src/traces/densitymapbox/plot.js"(X,H){"use strict";var g=uq(),x=am().traceLayerPrefix;function A(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",x+t+"-heatmap"]],this.below=null}var M=A.prototype;M.update=function(e){var t=this.subplot,r=this.layerList,o=g(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(o.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(o,a),this.below=a);for(var i=0;i<r.length;i++){var n=r[i],s=n[0],c=n[1],h=o[s];t.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&t.setOptions(c,"setPaintProperty",h.paint)}},M._addLayers=function(e,t){for(var r=this.subplot,o=this.layerList,a=this.sourceId,i=0;i<o.length;i++){var n=o[i],s=n[0],c=e[s];r.addLayer({type:s,id:n[1],source:a,layout:c.layout,paint:c.paint},t)}},M._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),fq=Ye({"src/traces/densitymapbox/hover.js"(X,H){"use strict";var g=Co(),x=AT().hoverPoints,A=AT().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),hq=Ye({"src/traces/densitymapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),pq=Ye({"src/traces/densitymapbox/index.js"(X,H){"use strict";var g=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Mk(),supplyDefaults:sq(),colorbar:ag(),formatLabels:bk(),calc:lq(),plot:cq(),hoverPoints:fq(),eventData:hq(),getBelow:function(x,A){for(var M=A.getMapLayers(),e=0;e<M.length;e++){var t=M[e],r=t.id;if(t.type==="symbol"&&typeof r=="string"&&r.indexOf("plotly-")===-1)return r}},moduleType:"trace",name:"densitymapbox",basePlotModule:ST(),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}}}),dq=Ye({"lib/densitymapbox.js"(X,H){"use strict";H.exports=pq()}}),vq=Ye({"src/plots/map/styles/arcgis-sat-hybrid.js"(X,H){H.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin}
+{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}}}),mq=Ye({"src/plots/map/styles/arcgis-sat.js"(X,H){H.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}}}),_g=Ye({"src/plots/map/constants.js"(X,H){"use strict";var g=Km(),x=vq(),A=mq(),M='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',e="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",t="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",r="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",o="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",a="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",i="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",n={basic:r,streets:r,outdoors:r,light:e,dark:t,satellite:A,"satellite-streets":x,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:M,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":e,"carto-darkmatter":t,"carto-voyager":r,"carto-positron-nolabels":o,"carto-darkmatter-nolabels":a,"carto-voyager-nolabels":i},s=g(n);H.exports={styleValueDflt:"basic",stylesMap:n,styleValuesMap:s,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",s.join(", "),"or use a tile service."].join(`
+`),mapOnErrorMsg:"Map error."}}}),Mx=Ye({"src/plots/map/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=_g(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("map",".layers",!0)],domain:A({name:"map"}),style:{valType:"any",values:o.styleValuesMap,dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:x},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:x}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),MT=Ye({"src/traces/scattermap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Mx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Mx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),Ek=Ye({"src/traces/scattermap/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),gq=Ye({"src/traces/scattermap/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=MT(),o=Ek().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),kk=Ye({"src/traces/scattermap/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),Ck=Ye({"src/plots/map/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),yq=Ye({"src/traces/scattermap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=Ek().isSupportedFont,i=Ck(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P<E.length;P++){var N=E[P],U=N.lonlat;if(!_(U)){var W={};F&&(W.mcc=N.mcc=F(N.mc)),B&&(W.mrc=N.mrc=B(N.ms)),O&&(W.mo=O(N.mo)),d&&(W.selected=N.selected||0),I.push({type:"Feature",id:P+1,geometry:{type:"Point",coordinates:U},properties:W})}}var Q;if(d)for(Q=t.makeSelectedPointStyleFns(m),P=0;P<I.length;P++){var ue=I[P].properties;Q.selectedOpacityFn&&(ue.mo=L(Q.selectedOpacityFn(ue))),Q.selectedColorFn&&(ue.mcc=Q.selectedColorFn(ue)),Q.selectedSizeFn&&(ue.mrc=Q.selectedSizeFn(ue))}return{geojson:{type:"FeatureCollection",features:I},mcc:u||Q&&Q.selectedColorFn?{type:"identity",property:"mcc"}:b.color,mrc:y||Q&&Q.selectedSizeFn?{type:"identity",property:"mrc"}:z(b.size),mo:f||Q&&Q.selectedOpacityFn?{type:"identity",property:"mo"}:L(b.opacity)}}function p(E,m){for(var b=m._fullLayout,d=E[0].trace,u=d.marker||{},y=u.symbol,f=u.angle,P=y!=="circle"?T(y):l,L=f!=="auto"?T(f,!0):l,z=o.hasText(d)?T(d.text):l,F=[],B=0;B<E.length;B++){var O=E[B];if(!_(O.lonlat)){var I=d.texttemplate,N;if(I){var U=Array.isArray(I)?I[B]||"":I,W=d._module.formatLabels(O,d,b),Q={};n(Q,d,O.i);var ue=d._meta||{};N=x.texttemplateString(U,W,b._d3locale,Q,O,ue)}else N=z(B);N&&(N=N.replace(s,"").replace(c,`
+`)),F.push({type:"Feature",geometry:{type:"Point",coordinates:O.lonlat},properties:{symbol:P(B),angle:L(B),text:N}})}}return{type:"FeatureCollection",features:F}}function T(E,m){return x.isArrayOrTypedArray(E)?m?function(b){return g(E[b])?+E[b]:0}:function(b){return E[b]}:E?function(){return E}:l}function l(){return""}function _(E){return E[0]===A}function w(E,m){var b;if(x.isArrayOrTypedArray(E)&&x.isArrayOrTypedArray(m)){b=["step",["get","point_count"],E[0]];for(var d=1;d<E.length;d++)b.push(m[d-1],E[d])}else b=E;return b}function S(E){var m=E.textfont,b=m.family,d=m.style,u=m.weight,y=b.split(" "),f=y[y.length-1]==="Italic";f&&y.pop(),f=f||d==="italic";var P=y.join(" ");u==="bold"&&y.indexOf("Bold")===-1?P+=" Bold":u<=1e3&&(y[0]==="Metropolis"?(P="Metropolis",u>850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),_q=Ye({"src/traces/scattermap/plot.js"(X,H){"use strict";var g=ta(),x=yq(),A=_g().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermap",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h<c.length;h++)if(c[h].id===n){s=!0;break}s?(this.subplot.setOptions(n,"setLayoutProperty",i.layout),i.layout.visibility==="visible"&&this.subplot.setOptions(n,"setPaintProperty",i.paint)):this.subplot.addLayer(i,a)},t.update=function(o){var a=o[0].trace,i=this.subplot,n=i.map,s=x(i.gd,o),c=i.belowLookup["trace-"+this.uid],h=!!(a.cluster&&a.cluster.enabled),v=!!this.clusterEnabled,p=this;function T(u){u||p.addSource("circle",s.circle,a.cluster);for(var y=M.cluster,f=0;f<y.length;f++){var P=y[f],L=s[P];p.addLayer(P,L,c)}}function l(u){for(var y=M.cluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f<y.length;f++){var P=y[f],L=s[P];u||p.addSource(P,L),p.addLayer(P,L,c)}}function w(u){for(var y=M.nonCluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y<u.length;y++){var f=u[y],P=s[f];P&&(i.setOptions(p.layerIds[f],"setLayoutProperty",P.layout),P.layout.visibility==="visible"&&(f!=="cluster"&&p.setSourceData(f,P),i.setOptions(p.layerIds[f],"setPaintProperty",P.paint)))}}var b=this.isHidden,d=a.visible!==!0;d?b||S():b?d||E():v!==h?(S(),E()):(this.below!==c&&(S(!0),E(!0)),m()),this.clusterEnabled=h,this.isHidden=d,this.below=c,o[0].trace._glTrace=this},t.dispose=function(){for(var o=this.subplot.map,a=this.clusterEnabled?M.cluster:M.nonCluster,i=a.length-1;i>=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p<M.cluster.length;p++)T=M.cluster[p],l=h[T],c.addLayer(T,l,v);else for(p=0;p<M.nonCluster.length;p++)T=M.nonCluster[p],l=h[T],c.addSource(T,l,i.cluster),c.addLayer(T,l,v);return a[0].trace._glTrace=c,c}}}),ET=Ye({"src/traces/scattermap/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=s1(),M=x.fillText,e=ks().BADNUM,t=_g().traceLayerPrefix;function r(a,i,n){var s=a.cd,c=s[0].trace,h=a.xa,v=a.ya,p=a.subplot,T=[],l=t+c.uid+"-circle",_=c.cluster&&c.cluster.enabled;if(_){var w=p.map.queryRenderedFeatures(null,{layers:[l]});T=w.map(function(B){return B.id})}var S=i>=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("<br>")}H.exports={hoverPoints:r,getExtraText:o}}}),xq=Ye({"src/traces/scattermap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),bq=Ye({"src/traces/scattermap/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s<r.length;s++)r[s].selected=0;else for(s=0;s<r.length;s++){var c=r[s],h=c.lonlat;if(h[0]!==A){var v=[g.modHalf(h[0],360),h[1]],p=[o.c2p(v),a.c2p(v)];t.contains(p,null,s,e)?(i.push({pointNumber:s,lon:h[0],lat:h[1]}),c.selected=1):c.selected=0}}return i}}}),wq=Ye({"node_modules/maplibre-gl/dist/maplibre-gl.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():(g=typeof globalThis<"u"?globalThis:g||self,g.maplibregl=x())})(X,function(){"use strict";var g={},x={};function A(e,t,r){if(x[e]=r,e==="index"){var o="var sharedModule = {}; ("+x.shared+")(sharedModule); ("+x.worker+")(sharedModule);",a={};return x.shared(a),x.index(g,a),typeof window<"u"&&g.setWorkerUrl(window.URL.createObjectURL(new Blob([o],{type:"text/javascript"}))),g}}A("shared",["exports"],function(e){"use strict";function t(q,D,Y,pe){return new(Y||(Y=Promise))(function(Ce,Ue){function Ge(Ft){try{Tt(pe.next(Ft))}catch($t){Ue($t)}}function ut(Ft){try{Tt(pe.throw(Ft))}catch($t){Ue($t)}}function Tt(Ft){var $t;Ft.done?Ce(Ft.value):($t=Ft.value,$t instanceof Y?$t:new Y(function(lr){lr($t)})).then(Ge,ut)}Tt((pe=pe.apply(q,D||[])).next())})}function r(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}typeof SuppressedError=="function"&&SuppressedError;var o=a;function a(q,D){this.x=q,this.y=D}a.prototype={clone:function(){return new a(this.x,this.y)},add:function(q){return this.clone()._add(q)},sub:function(q){return this.clone()._sub(q)},multByPoint:function(q){return this.clone()._multByPoint(q)},divByPoint:function(q){return this.clone()._divByPoint(q)},mult:function(q){return this.clone()._mult(q)},div:function(q){return this.clone()._div(q)},rotate:function(q){return this.clone()._rotate(q)},rotateAround:function(q,D){return this.clone()._rotateAround(q,D)},matMult:function(q){return this.clone()._matMult(q)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(q){return this.x===q.x&&this.y===q.y},dist:function(q){return Math.sqrt(this.distSqr(q))},distSqr:function(q){var D=q.x-this.x,Y=q.y-this.y;return D*D+Y*Y},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(q){return Math.atan2(this.y-q.y,this.x-q.x)},angleWith:function(q){return this.angleWithSep(q.x,q.y)},angleWithSep:function(q,D){return Math.atan2(this.x*D-this.y*q,this.x*q+this.y*D)},_matMult:function(q){var D=q[2]*this.x+q[3]*this.y;return this.x=q[0]*this.x+q[1]*this.y,this.y=D,this},_add:function(q){return this.x+=q.x,this.y+=q.y,this},_sub:function(q){return this.x-=q.x,this.y-=q.y,this},_mult:function(q){return this.x*=q,this.y*=q,this},_div:function(q){return this.x/=q,this.y/=q,this},_multByPoint:function(q){return this.x*=q.x,this.y*=q.y,this},_divByPoint:function(q){return this.x/=q.x,this.y/=q.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var q=this.y;return this.y=this.x,this.x=-q,this},_rotate:function(q){var D=Math.cos(q),Y=Math.sin(q),pe=Y*this.x+D*this.y;return this.x=D*this.x-Y*this.y,this.y=pe,this},_rotateAround:function(q,D){var Y=Math.cos(q),pe=Math.sin(q),Ce=D.y+pe*(this.x-D.x)+Y*(this.y-D.y);return this.x=D.x+Y*(this.x-D.x)-pe*(this.y-D.y),this.y=Ce,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},a.convert=function(q){return q instanceof a?q:Array.isArray(q)?new a(q[0],q[1]):q};var i=r(o),n=s;function s(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}s.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)<D)return Y;var Ue=this.sampleCurveDerivativeX(Y);if(Math.abs(Ue)<1e-6)break;Y-=Ce/Ue}var Ge=0,ut=1;for(Y=q,pe=0;pe<20&&(Ce=this.sampleCurveX(Y),!(Math.abs(Ce-q)<D));pe++)q>Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var c=r(n);let h,v;function p(){return h==null&&(h=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),h}function T(){if(v==null&&(v=!1,p())){let D=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(D){for(let pe=0;pe<5*5;pe++){let Ce=4*pe;D.fillStyle=`rgb(${Ce},${Ce+1},${Ce+2})`,D.fillRect(pe%5,Math.floor(pe/5),1,1)}let Y=D.getImageData(0,0,5,5).data;for(let pe=0;pe<5*5*4;pe++)if(pe%4!=3&&Y[pe]!==pe){v=!0;break}}}return v||!1}function l(q,D,Y,pe){let Ce=new c(q,D,Y,pe);return Ue=>Ce.solve(Ue)}let _=l(.25,.1,.25,1);function w(q,D,Y){return Math.min(Y,Math.max(D,q))}function S(q,D,Y){let pe=Y-D,Ce=((q-D)%pe+pe)%pe+D;return Ce===D?Y:Ce}function E(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}let m=1;function b(q,D,Y){let pe={};for(let Ce in q)pe[Ce]=D.call(this,q[Ce],Ce,q);return pe}function d(q,D,Y){let pe={};for(let Ce in q)D.call(this,q[Ce],Ce,q)&&(pe[Ce]=q[Ce]);return pe}function u(q){return Array.isArray(q)?q.map(u):typeof q=="object"&&q?b(q,u):q}let y={};function f(q){y[q]||(typeof console<"u"&&console.warn(q),y[q]=!0)}function P(q,D,Y){return(Y.y-q.y)*(D.x-q.x)>(D.y-q.y)*(Y.x-q.x)}function L(q){return typeof WorkerGlobalScope<"u"&&q!==void 0&&q instanceof WorkerGlobalScope}let z=null;function F(q){return typeof ImageBitmap<"u"&&q instanceof ImageBitmap}let B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function O(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");let Ue=new VideoFrame(q,{timestamp:0});try{let Ge=Ue?.format;if(!Ge||!Ge.startsWith("BGR")&&!Ge.startsWith("RGB"))throw new Error(`Unrecognized format ${Ge}`);let ut=Ge.startsWith("BGR"),Tt=new Uint8ClampedArray(pe*Ce*4);if(yield Ue.copyTo(Tt,function(Ft,$t,lr,Ar,zr){let Kr=4*Math.max(-$t,0),la=(Math.max(0,lr)-lr)*Ar*4+Kr,za=4*Ar,ja=Math.max(0,$t),gi=Math.max(0,lr);return{rect:{x:ja,y:gi,width:Math.min(Ft.width,$t+Ar)-ja,height:Math.min(Ft.height,lr+zr)-gi},layout:[{offset:la,stride:za}]}}(q,D,Y,pe,Ce)),ut)for(let Ft=0;Ft<Tt.length;Ft+=4){let $t=Tt[Ft];Tt[Ft]=Tt[Ft+2],Tt[Ft+2]=$t}return Tt}finally{Ue.close()}})}let I,N,U="AbortError";function W(){return new Error(U)}let Q={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:""};function ue(q){return Q.REGISTERED_PROTOCOLS[q.substring(0,q.indexOf("://"))]}let se="global-dispatcher";class he extends Error{constructor(D,Y,pe,Ce){super(`AJAXError: ${Y} (${D}): ${pe}`),this.status=D,this.statusText=Y,this.url=pe,this.body=Ce}}let G=()=>L(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,$=function(q,D){if(/:\/\//.test(q.url)&&!/^https?:|^file:/.test(q.url)){let pe=ue(q.url);if(pe)return pe(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,targetMapId:se},D)}if(!(/^file:/.test(Y=q.url)||/^file:/.test(G())&&!/^\w+:/.test(Y))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(pe,Ce){return t(this,void 0,void 0,function*(){let Ue=new Request(pe.url,{method:pe.method||"GET",body:pe.body,credentials:pe.credentials,headers:pe.headers,cache:pe.cache,referrer:G(),signal:Ce.signal});pe.type!=="json"||Ue.headers.has("Accept")||Ue.headers.set("Accept","application/json");let Ge=yield fetch(Ue);if(!Ge.ok){let Ft=yield Ge.blob();throw new he(Ge.status,Ge.statusText,pe.url,Ft)}let ut;ut=pe.type==="arrayBuffer"||pe.type==="image"?Ge.arrayBuffer():pe.type==="json"?Ge.json():Ge.text();let Tt=yield ut;if(Ce.signal.aborted)throw W();return{data:Tt,cacheControl:Ge.headers.get("Cache-Control"),expires:Ge.headers.get("Expires")}})}(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,mustQueue:!0,targetMapId:se},D)}var Y;return function(pe,Ce){return new Promise((Ue,Ge)=>{var ut;let Tt=new XMLHttpRequest;Tt.open(pe.method||"GET",pe.url,!0),pe.type!=="arrayBuffer"&&pe.type!=="image"||(Tt.responseType="arraybuffer");for(let Ft in pe.headers)Tt.setRequestHeader(Ft,pe.headers[Ft]);pe.type==="json"&&(Tt.responseType="text",!((ut=pe.headers)===null||ut===void 0)&&ut.Accept||Tt.setRequestHeader("Accept","application/json")),Tt.withCredentials=pe.credentials==="include",Tt.onerror=()=>{Ge(new Error(Tt.statusText))},Tt.onload=()=>{if(!Ce.signal.aborted)if((Tt.status>=200&&Tt.status<300||Tt.status===0)&&Tt.response!==null){let Ft=Tt.response;if(pe.type==="json")try{Ft=JSON.parse(Tt.response)}catch($t){return void Ge($t)}Ue({data:Ft,cacheControl:Tt.getResponseHeader("Cache-Control"),expires:Tt.getResponseHeader("Expires")})}else{let Ft=new Blob([Tt.response],{type:Tt.getResponseHeader("Content-Type")});Ge(new he(Tt.status,Tt.statusText,pe.url,Ft))}},Ce.signal.addEventListener("abort",()=>{Tt.abort(),Ge(W())}),Tt.send(pe.body)})}(q,D)};function J(q){if(!q||q.indexOf("://")<=0||q.indexOf("data:image/")===0||q.indexOf("blob:")===0)return!0;let D=new URL(q),Y=window.location;return D.protocol===Y.protocol&&D.host===Y.host}function Z(q,D,Y){Y[q]&&Y[q].indexOf(D)!==-1||(Y[q]=Y[q]||[],Y[q].push(D))}function re(q,D,Y){if(Y&&Y[q]){let pe=Y[q].indexOf(D);pe!==-1&&Y[q].splice(pe,1)}}class ne{constructor(D,Y={}){E(this,Y),this.type=D}}class j extends ne{constructor(D,Y={}){super("error",E({error:D},Y))}}class ee{on(D,Y){return this._listeners=this._listeners||{},Z(D,Y,this._listeners),this}off(D,Y){return re(D,Y,this._listeners),re(D,Y,this._oneTimeListeners),this}once(D,Y){return Y?(this._oneTimeListeners=this._oneTimeListeners||{},Z(D,Y,this._oneTimeListeners),this):new Promise(pe=>this.once(D,pe))}fire(D,Y){typeof D=="string"&&(D=new ne(D,Y||{}));let pe=D.type;if(this.listens(pe)){D.target=this;let Ce=this._listeners&&this._listeners[pe]?this._listeners[pe].slice():[];for(let ut of Ce)ut.call(this,D);let Ue=this._oneTimeListeners&&this._oneTimeListeners[pe]?this._oneTimeListeners[pe].slice():[];for(let ut of Ue)re(pe,ut,this._oneTimeListeners),ut.call(this,D);let Ge=this._eventedParent;Ge&&(E(D,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Ge.fire(D))}else D instanceof j&&console.error(D.error);return this}listens(D){return this._listeners&&this._listeners[D]&&this._listeners[D].length>0||this._oneTimeListeners&&this._oneTimeListeners[D]&&this._oneTimeListeners[D].length>0||this._eventedParent&&this._eventedParent.listens(D)}setEventedParent(D,Y){return this._eventedParent=D,this._eventedParentData=Y,this}}var ie={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let fe=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function be(q,D){let Y={};for(let pe in q)pe!=="ref"&&(Y[pe]=q[pe]);return fe.forEach(pe=>{pe in D&&(Y[pe]=D[pe])}),Y}function Ae(q,D){if(Array.isArray(q)){if(!Array.isArray(D)||q.length!==D.length)return!1;for(let Y=0;Y<q.length;Y++)if(!Ae(q[Y],D[Y]))return!1;return!0}if(typeof q=="object"&&q!==null&&D!==null){if(typeof D!="object"||Object.keys(q).length!==Object.keys(D).length)return!1;for(let Y in q)if(!Ae(q[Y],D[Y]))return!1;return!0}return q===D}function Be(q,D){q.push(D)}function Ie(q,D,Y){Be(Y,{command:"addSource",args:[q,D[q]]})}function Ze(q,D,Y){Be(D,{command:"removeSource",args:[q]}),Y[q]=!0}function at(q,D,Y,pe){Ze(q,Y,pe),Ie(q,D,Y)}function it(q,D,Y){let pe;for(pe in q[Y])if(Object.prototype.hasOwnProperty.call(q[Y],pe)&&pe!=="data"&&!Ae(q[Y][pe],D[Y][pe]))return!1;for(pe in D[Y])if(Object.prototype.hasOwnProperty.call(D[Y],pe)&&pe!=="data"&&!Ae(q[Y][pe],D[Y][pe]))return!1;return!0}function et(q,D,Y,pe,Ce,Ue){q=q||{},D=D||{};for(let Ge in q)Object.prototype.hasOwnProperty.call(q,Ge)&&(Ae(q[Ge],D[Ge])||Y.push({command:Ue,args:[pe,Ge,D[Ge],Ce]}));for(let Ge in D)Object.prototype.hasOwnProperty.call(D,Ge)&&!Object.prototype.hasOwnProperty.call(q,Ge)&&(Ae(q[Ge],D[Ge])||Y.push({command:Ue,args:[pe,Ge,D[Ge],Ce]}))}function lt(q){return q.id}function Me(q,D){return q[D.id]=D,q}class ge{constructor(D,Y,pe,Ce){this.message=(D?`${D}: `:"")+pe,Ce&&(this.identifier=Ce),Y!=null&&Y.__line__&&(this.line=Y.__line__)}}function ce(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}class ze extends Error{constructor(D,Y){super(Y),this.message=Y,this.key=D}}class tt{constructor(D,Y=[]){this.parent=D,this.bindings={};for(let[pe,Ce]of Y)this.bindings[pe]=Ce}concat(D){return new tt(this,D)}get(D){if(this.bindings[D])return this.bindings[D];if(this.parent)return this.parent.get(D);throw new Error(`${D} not found in scope.`)}has(D){return!!this.bindings[D]||!!this.parent&&this.parent.has(D)}}let nt={kind:"null"},Qe={kind:"number"},Ct={kind:"string"},St={kind:"boolean"},Ot={kind:"color"},jt={kind:"object"},ur={kind:"value"},ar={kind:"collator"},Cr={kind:"formatted"},vr={kind:"padding"},_r={kind:"resolvedImage"},yt={kind:"variableAnchorOffsetCollection"};function Fe(q,D){return{kind:"array",itemType:q,N:D}}function Ke(q){if(q.kind==="array"){let D=Ke(q.itemType);return typeof q.N=="number"?`array<${D}, ${q.N}>`:q.itemType.kind==="value"?"array":`array<${D}>`}return q.kind}let Ne=[nt,Qe,Ct,St,Ot,Cr,jt,Fe(ur),vr,_r,yt];function Ee(q,D){if(D.kind==="error")return null;if(q.kind==="array"){if(D.kind==="array"&&(D.N===0&&D.itemType.kind==="value"||!Ee(q.itemType,D.itemType))&&(typeof q.N!="number"||q.N===D.N))return null}else{if(q.kind===D.kind)return null;if(q.kind==="value"){for(let Y of Ne)if(!Ee(Y,D))return null}}return`Expected ${Ke(q)} but found ${Ke(D)} instead.`}function Ve(q,D){return D.some(Y=>Y.kind===q.kind)}function ke(q,D){return D.some(Y=>Y==="null"?q===null:Y==="array"?Array.isArray(q):Y==="object"?q&&!Array.isArray(q)&&typeof q=="object":Y===typeof q)}function Te(q,D){return q.kind==="array"&&D.kind==="array"?q.itemType.kind===D.itemType.kind&&typeof q.N=="number":q.kind===D.kind}let Le=.96422,rt=.82521,dt=4/29,xt=6/29,It=3*xt*xt,Bt=xt*xt*xt,Gt=Math.PI/180,Kt=180/Math.PI;function sr(q){return(q%=360)<0&&(q+=360),q}function sa([q,D,Y,pe]){let Ce,Ue,Ge=La((.2225045*(q=Aa(q))+.7168786*(D=Aa(D))+.0606169*(Y=Aa(Y)))/1);q===D&&D===Y?Ce=Ue=Ge:(Ce=La((.4360747*q+.3850649*D+.1430804*Y)/Le),Ue=La((.0139322*q+.0971045*D+.7141733*Y)/rt));let ut=116*Ge-16;return[ut<0?0:ut,500*(Ce-Ge),200*(Ge-Ue),pe]}function Aa(q){return q<=.04045?q/12.92:Math.pow((q+.055)/1.055,2.4)}function La(q){return q>Bt?Math.pow(q,1/3):q/It+dt}function ka([q,D,Y,pe]){let Ce=(q+16)/116,Ue=isNaN(D)?Ce:Ce+D/500,Ge=isNaN(Y)?Ce:Ce-Y/200;return Ce=1*Ma(Ce),Ue=Le*Ma(Ue),Ge=rt*Ma(Ge),[Ga(3.1338561*Ue-1.6168667*Ce-.4906146*Ge),Ga(-.9787684*Ue+1.9161415*Ce+.033454*Ge),Ga(.0719453*Ue-.2289914*Ce+1.4052427*Ge),pe]}function Ga(q){return(q=q<=.00304?12.92*q:1.055*Math.pow(q,1/2.4)-.055)<0?0:q>1?1:q}function Ma(q){return q>xt?q*q*q:It*(q-dt)}function Ua(q){return parseInt(q.padEnd(2,q),16)/255}function ni(q,D){return Wt(D?q/100:q,0,1)}function Wt(q,D,Y){return Math.min(Math.max(D,q),Y)}function zt(q){return!q.some(Number.isNaN)}let Vt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Ut{constructor(D,Y,pe,Ce=1,Ue=!0){this.r=D,this.g=Y,this.b=pe,this.a=Ce,Ue||(this.r*=Ce,this.g*=Ce,this.b*=Ce,Ce||this.overwriteGetter("rgb",[D,Y,pe,Ce]))}static parse(D){if(D instanceof Ut)return D;if(typeof D!="string")return;let Y=function(pe){if((pe=pe.toLowerCase().trim())==="transparent")return[0,0,0,0];let Ce=Vt[pe];if(Ce){let[Ge,ut,Tt]=Ce;return[Ge/255,ut/255,Tt/255,1]}if(pe.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(pe)){let Ge=pe.length<6?1:2,ut=1;return[Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+Ge)||"ff")]}if(pe.startsWith("rgb")){let Ge=pe.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ge){let[ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi]=Ge,ei=[$t||" ",zr||" ",za].join("");if(ei===" "||ei===" /"||ei===",,"||ei===",,,"){let hi=[Ft,Ar,la].join(""),Ei=hi==="%%%"?100:hi===""?255:0;if(Ei){let En=[Wt(+Tt/Ei,0,1),Wt(+lr/Ei,0,1),Wt(+Kr/Ei,0,1),ja?ni(+ja,gi):1];if(zt(En))return En}}return}}let Ue=pe.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ue){let[Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr]=Ue,la=[Tt||" ",$t||" ",Ar].join("");if(la===" "||la===" /"||la===",,"||la===",,,"){let za=[+ut,Wt(+Ft,0,100),Wt(+lr,0,100),zr?ni(+zr,Kr):1];if(zt(za))return function([ja,gi,ei,hi]){function Ei(En){let fo=(En+ja/30)%12,ss=gi*Math.min(ei,1-ei);return ei-ss*Math.max(-1,Math.min(fo-3,9-fo,1))}return ja=sr(ja),gi/=100,ei/=100,[Ei(0),Ei(8),Ei(4),hi]}(za)}}}(D);return Y?new Ut(...Y,!1):void 0}get rgb(){let{r:D,g:Y,b:pe,a:Ce}=this,Ue=Ce||1/0;return this.overwriteGetter("rgb",[D/Ue,Y/Ue,pe/Ue,Ce])}get hcl(){return this.overwriteGetter("hcl",function(D){let[Y,pe,Ce,Ue]=sa(D),Ge=Math.sqrt(pe*pe+Ce*Ce);return[Math.round(1e4*Ge)?sr(Math.atan2(Ce,pe)*Kt):NaN,Ge,Y,Ue]}(this.rgb))}get lab(){return this.overwriteGetter("lab",sa(this.rgb))}overwriteGetter(D,Y){return Object.defineProperty(this,D,{value:Y}),Y}toString(){let[D,Y,pe,Ce]=this.rgb;return`rgba(${[D,Y,pe].map(Ue=>Math.round(255*Ue)).join(",")},${Ce})`}}Ut.black=new Ut(0,0,0,1),Ut.white=new Ut(1,1,1,1),Ut.transparent=new Ut(0,0,0,0),Ut.red=new Ut(1,0,0,1);class xr{constructor(D,Y,pe){this.sensitivity=D?Y?"variant":"case":Y?"accent":"base",this.locale=pe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(D,Y){return this.collator.compare(D,Y)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Zr{constructor(D,Y,pe,Ce,Ue){this.text=D,this.image=Y,this.scale=pe,this.fontStack=Ce,this.textColor=Ue}}class pa{constructor(D){this.sections=D}static fromString(D){return new pa([new Zr(D,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(D=>D.text.length!==0||D.image&&D.image.name.length!==0)}static factory(D){return D instanceof pa?D:pa.fromString(D)}toString(){return this.sections.length===0?"":this.sections.map(D=>D.text).join("")}}class Xr{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Xr)return D;if(typeof D=="number")return new Xr([D,D,D,D]);if(Array.isArray(D)&&!(D.length<1||D.length>4)){for(let Y of D)if(typeof Y!="number")return;switch(D.length){case 1:D=[D[0],D[0],D[0],D[0]];break;case 2:D=[D[0],D[1],D[0],D[1]];break;case 3:D=[D[0],D[1],D[2],D[1]]}return new Xr(D)}}toString(){return JSON.stringify(this.values)}}let Ea=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Fa{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Fa)return D;if(Array.isArray(D)&&!(D.length<1)&&D.length%2==0){for(let Y=0;Y<D.length;Y+=2){let pe=D[Y],Ce=D[Y+1];if(typeof pe!="string"||!Ea.has(pe)||!Array.isArray(Ce)||Ce.length!==2||typeof Ce[0]!="number"||typeof Ce[1]!="number")return}return new Fa(D)}}toString(){return JSON.stringify(this.values)}}class qa{constructor(D){this.name=D.name,this.available=D.available}toString(){return this.name}static fromString(D){return D?new qa({name:D,available:!1}):null}}function ya(q,D,Y,pe){return typeof q=="number"&&q>=0&&q<=255&&typeof D=="number"&&D>=0&&D<=255&&typeof Y=="number"&&Y>=0&&Y<=255?pe===void 0||typeof pe=="number"&&pe>=0&&pe<=1?null:`Invalid rgba value [${[q,D,Y,pe].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof pe=="number"?[q,D,Y,pe]:[q,D,Y]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function $a(q){if(q===null||typeof q=="string"||typeof q=="boolean"||typeof q=="number"||q instanceof Ut||q instanceof xr||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa)return!0;if(Array.isArray(q)){for(let D of q)if(!$a(D))return!1;return!0}if(typeof q=="object"){for(let D in q)if(!$a(q[D]))return!1;return!0}return!1}function mt(q){if(q===null)return nt;if(typeof q=="string")return Ct;if(typeof q=="boolean")return St;if(typeof q=="number")return Qe;if(q instanceof Ut)return Ot;if(q instanceof xr)return ar;if(q instanceof pa)return Cr;if(q instanceof Xr)return vr;if(q instanceof Fa)return yt;if(q instanceof qa)return _r;if(Array.isArray(q)){let D=q.length,Y;for(let pe of q){let Ce=mt(pe);if(Y){if(Y===Ce)continue;Y=ur;break}Y=Ce}return Fe(Y||ur,D)}return jt}function gt(q){let D=typeof q;return q===null?"":D==="string"||D==="number"||D==="boolean"?String(q):q instanceof Ut||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa?q.toString():JSON.stringify(q)}class Er{constructor(D,Y){this.type=D,this.value=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'literal' expression requires exactly one argument, but found ${D.length-1} instead.`);if(!$a(D[1]))return Y.error("invalid value");let pe=D[1],Ce=mt(pe),Ue=Y.expectedType;return Ce.kind!=="array"||Ce.N!==0||!Ue||Ue.kind!=="array"||typeof Ue.N=="number"&&Ue.N!==0||(Ce=Ue),new Er(Ce,pe)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class kr{constructor(D){this.name="ExpressionEvaluationError",this.message=D}toJSON(){return this.message}}let br={string:Ct,number:Qe,boolean:St,object:jt};class Tr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe,Ce=1,Ue=D[0];if(Ue==="array"){let ut,Tt;if(D.length>2){let Ft=D[1];if(typeof Ft!="string"||!(Ft in br)||Ft==="object")return Y.error('The item type argument of "array" must be one of string, number, boolean',1);ut=br[Ft],Ce++}else ut=ur;if(D.length>3){if(D[2]!==null&&(typeof D[2]!="number"||D[2]<0||D[2]!==Math.floor(D[2])))return Y.error('The length argument to "array" must be a positive integer literal',2);Tt=D[2],Ce++}pe=Fe(ut,Tt)}else{if(!br[Ue])throw new Error(`Types doesn't contain name = ${Ue}`);pe=br[Ue]}let Ge=[];for(;Ce<D.length;Ce++){let ut=Y.parse(D[Ce],Ce,ur);if(!ut)return null;Ge.push(ut)}return new Tr(pe,Ge)}evaluate(D){for(let Y=0;Y<this.args.length;Y++){let pe=this.args[Y].evaluate(D);if(!Ee(this.type,mt(pe)))return pe;if(Y===this.args.length-1)throw new kr(`Expected value to be of type ${Ke(this.type)}, but found ${Ke(mt(pe))} instead.`)}throw new Error}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Mr={"to-boolean":St,"to-color":Ot,"to-number":Qe,"to-string":Ct};class Fr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[0];if(!Mr[pe])throw new Error(`Can't parse ${pe} as it is not part of the known types`);if((pe==="to-boolean"||pe==="to-string")&&D.length!==2)return Y.error("Expected one argument.");let Ce=Mr[pe],Ue=[];for(let Ge=1;Ge<D.length;Ge++){let ut=Y.parse(D[Ge],Ge,ur);if(!ut)return null;Ue.push(ut)}return new Fr(Ce,Ue)}evaluate(D){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(D);case"color":{let Y,pe;for(let Ce of this.args){if(Y=Ce.evaluate(D),pe=null,Y instanceof Ut)return Y;if(typeof Y=="string"){let Ue=D.parseColor(Y);if(Ue)return Ue}else if(Array.isArray(Y)&&(pe=Y.length<3||Y.length>4?`Invalid rbga value ${JSON.stringify(Y)}: expected an array containing either three or four numeric values.`:ya(Y[0],Y[1],Y[2],Y[3]),!pe))return new Ut(Y[0]/255,Y[1]/255,Y[2]/255,Y[3])}throw new kr(pe||`Could not parse color from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"padding":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Xr.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse padding from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"variableAnchorOffsetCollection":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Fa.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse variableAnchorOffsetCollection from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"number":{let Y=null;for(let pe of this.args){if(Y=pe.evaluate(D),Y===null)return 0;let Ce=Number(Y);if(!isNaN(Ce))return Ce}throw new kr(`Could not convert ${JSON.stringify(Y)} to number.`)}case"formatted":return pa.fromString(gt(this.args[0].evaluate(D)));case"resolvedImage":return qa.fromString(gt(this.args[0].evaluate(D)));default:return gt(this.args[0].evaluate(D))}}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Lr=["Unknown","Point","LineString","Polygon"];class Jr{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Lr[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(D){let Y=this._parseColorCache[D];return Y||(Y=this._parseColorCache[D]=Ut.parse(D)),Y}}class oa{constructor(D,Y,pe=[],Ce,Ue=new tt,Ge=[]){this.registry=D,this.path=pe,this.key=pe.map(ut=>`[${ut}]`).join(""),this.scope=Ue,this.errors=Ge,this.expectedType=Ce,this._isConstant=Y}parse(D,Y,pe,Ce,Ue={}){return Y?this.concat(Y,pe,Ce)._parse(D,Ue):this._parse(D,Ue)}_parse(D,Y){function pe(Ce,Ue,Ge){return Ge==="assert"?new Tr(Ue,[Ce]):Ge==="coerce"?new Fr(Ue,[Ce]):Ce}if(D!==null&&typeof D!="string"&&typeof D!="boolean"&&typeof D!="number"||(D=["literal",D]),Array.isArray(D)){if(D.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let Ce=D[0];if(typeof Ce!="string")return this.error(`Expression name must be a string, but found ${typeof Ce} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let Ue=this.registry[Ce];if(Ue){let Ge=Ue.parse(D,this);if(!Ge)return null;if(this.expectedType){let ut=this.expectedType,Tt=Ge.type;if(ut.kind!=="string"&&ut.kind!=="number"&&ut.kind!=="boolean"&&ut.kind!=="object"&&ut.kind!=="array"||Tt.kind!=="value")if(ut.kind!=="color"&&ut.kind!=="formatted"&&ut.kind!=="resolvedImage"||Tt.kind!=="value"&&Tt.kind!=="string")if(ut.kind!=="padding"||Tt.kind!=="value"&&Tt.kind!=="number"&&Tt.kind!=="array")if(ut.kind!=="variableAnchorOffsetCollection"||Tt.kind!=="value"&&Tt.kind!=="array"){if(this.checkSubtype(ut,Tt))return null}else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"assert")}if(!(Ge instanceof Er)&&Ge.type.kind!=="resolvedImage"&&this._isConstant(Ge)){let ut=new Jr;try{Ge=new Er(Ge.type,Ge.evaluate(ut))}catch(Tt){return this.error(Tt.message),null}}return Ge}return this.error(`Unknown expression "${Ce}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(D===void 0?"'undefined' value invalid. Use null instead.":typeof D=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof D} instead.`)}concat(D,Y,pe){let Ce=typeof D=="number"?this.path.concat(D):this.path,Ue=pe?this.scope.concat(pe):this.scope;return new oa(this.registry,this._isConstant,Ce,Y||null,Ue,this.errors)}error(D,...Y){let pe=`${this.key}${Y.map(Ce=>`[${Ce}]`).join("")}`;this.errors.push(new ze(pe,D))}checkSubtype(D,Y){let pe=Ee(D,Y);return pe&&this.error(pe),pe}}class ca{constructor(D,Y){this.type=Y.type,this.bindings=[].concat(D),this.result=Y}evaluate(D){return this.result.evaluate(D)}eachChild(D){for(let Y of this.bindings)D(Y[1]);D(this.result)}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found ${D.length-1} instead.`);let pe=[];for(let Ue=1;Ue<D.length-1;Ue+=2){let Ge=D[Ue];if(typeof Ge!="string")return Y.error(`Expected string, but found ${typeof Ge} instead.`,Ue);if(/[^a-zA-Z0-9_]/.test(Ge))return Y.error("Variable names must contain only alphanumeric characters or '_'.",Ue);let ut=Y.parse(D[Ue+1],Ue+1);if(!ut)return null;pe.push([Ge,ut])}let Ce=Y.parse(D[D.length-1],D.length-1,Y.expectedType,pe);return Ce?new ca(pe,Ce):null}outputDefined(){return this.result.outputDefined()}}class kt{constructor(D,Y){this.type=Y.type,this.name=D,this.boundExpression=Y}static parse(D,Y){if(D.length!==2||typeof D[1]!="string")return Y.error("'var' expression requires exactly one string literal argument.");let pe=D[1];return Y.scope.has(pe)?new kt(pe,Y.scope.get(pe)):Y.error(`Unknown variable "${pe}". Make sure "${pe}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(D){return this.boundExpression.evaluate(D)}eachChild(){}outputDefined(){return!1}}class ir{constructor(D,Y,pe){this.type=D,this.index=Y,this.input=pe}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,Qe),Ce=Y.parse(D[2],2,Fe(Y.expectedType||ur));return pe&&Ce?new ir(Ce.type.itemType,pe,Ce):null}evaluate(D){let Y=this.index.evaluate(D),pe=this.input.evaluate(D);if(Y<0)throw new kr(`Array index out of bounds: ${Y} < 0.`);if(Y>=pe.length)throw new kr(`Array index out of bounds: ${Y} > ${pe.length-1}.`);if(Y!==Math.floor(Y))throw new kr(`Array index must be an integer, but found ${Y} instead.`);return pe[Y]}eachChild(D){D(this.index),D(this.input)}outputDefined(){return!1}}class mr{constructor(D,Y){this.type=St,this.needle=D,this.haystack=Y}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);return pe&&Ce?Ve(pe.type,[St,Ct,Qe,nt,ur])?new mr(pe,Ce):Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`):null}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!pe)return!1;if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);if(!ke(pe,["string","array"]))throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`);return pe.indexOf(Y)>=0}eachChild(D){D(this.needle),D(this.haystack)}outputDefined(){return!0}}class $r{constructor(D,Y,pe){this.type=Qe,this.needle=D,this.haystack=Y,this.fromIndex=pe}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);if(!pe||!Ce)return null;if(!Ve(pe.type,[St,Ct,Qe,nt,ur]))return Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new $r(pe,Ce,Ue):null}return new $r(pe,Ce)}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);let Ce;if(this.fromIndex&&(Ce=this.fromIndex.evaluate(D)),ke(pe,["string"])){let Ue=pe.indexOf(Y,Ce);return Ue===-1?-1:[...pe.slice(0,Ue)].length}if(ke(pe,["array"]))return pe.indexOf(Y,Ce);throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`)}eachChild(D){D(this.needle),D(this.haystack),this.fromIndex&&D(this.fromIndex)}outputDefined(){return!1}}class ma{constructor(D,Y,pe,Ce,Ue,Ge){this.inputType=D,this.type=Y,this.input=pe,this.cases=Ce,this.outputs=Ue,this.otherwise=Ge}static parse(D,Y){if(D.length<5)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if(D.length%2!=1)return Y.error("Expected an even number of arguments.");let pe,Ce;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ce=Y.expectedType);let Ue={},Ge=[];for(let Ft=2;Ft<D.length-1;Ft+=2){let $t=D[Ft],lr=D[Ft+1];Array.isArray($t)||($t=[$t]);let Ar=Y.concat(Ft);if($t.length===0)return Ar.error("Expected at least one branch label.");for(let Kr of $t){if(typeof Kr!="number"&&typeof Kr!="string")return Ar.error("Branch labels must be numbers or strings.");if(typeof Kr=="number"&&Math.abs(Kr)>Number.MAX_SAFE_INTEGER)return Ar.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Kr=="number"&&Math.floor(Kr)!==Kr)return Ar.error("Numeric branch labels must be integer values.");if(pe){if(Ar.checkSubtype(pe,mt(Kr)))return null}else pe=mt(Kr);if(Ue[String(Kr)]!==void 0)return Ar.error("Branch labels must be unique.");Ue[String(Kr)]=Ge.length}let zr=Y.parse(lr,Ft,Ce);if(!zr)return null;Ce=Ce||zr.type,Ge.push(zr)}let ut=Y.parse(D[1],1,ur);if(!ut)return null;let Tt=Y.parse(D[D.length-1],D.length-1,Ce);return Tt?ut.type.kind!=="value"&&Y.concat(1).checkSubtype(pe,ut.type)?null:new ma(pe,Ce,ut,Ue,Ge,Tt):null}evaluate(D){let Y=this.input.evaluate(D);return(mt(Y)===this.inputType&&this.outputs[this.cases[Y]]||this.otherwise).evaluate(D)}eachChild(D){D(this.input),this.outputs.forEach(D),D(this.otherwise)}outputDefined(){return this.outputs.every(D=>D.outputDefined())&&this.otherwise.outputDefined()}}class Ba{constructor(D,Y,pe){this.type=D,this.branches=Y,this.otherwise=pe}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found only ${D.length-1}.`);if(D.length%2!=0)return Y.error("Expected an odd number of arguments.");let pe;Y.expectedType&&Y.expectedType.kind!=="value"&&(pe=Y.expectedType);let Ce=[];for(let Ge=1;Ge<D.length-1;Ge+=2){let ut=Y.parse(D[Ge],Ge,St);if(!ut)return null;let Tt=Y.parse(D[Ge+1],Ge+1,pe);if(!Tt)return null;Ce.push([ut,Tt]),pe=pe||Tt.type}let Ue=Y.parse(D[D.length-1],D.length-1,pe);if(!Ue)return null;if(!pe)throw new Error("Can't infer output type");return new Ba(pe,Ce,Ue)}evaluate(D){for(let[Y,pe]of this.branches)if(Y.evaluate(D))return pe.evaluate(D);return this.otherwise.evaluate(D)}eachChild(D){for(let[Y,pe]of this.branches)D(Y),D(pe);D(this.otherwise)}outputDefined(){return this.branches.every(([D,Y])=>Y.outputDefined())&&this.otherwise.outputDefined()}}class Ca{constructor(D,Y,pe,Ce){this.type=D,this.input=Y,this.beginIndex=pe,this.endIndex=Ce}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,Qe);if(!pe||!Ce)return null;if(!Ve(pe.type,[Fe(ur),Ct,ur]))return Y.error(`Expected first argument to be of type array or string, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new Ca(pe.type,pe,Ce,Ue):null}return new Ca(pe.type,pe,Ce)}evaluate(D){let Y=this.input.evaluate(D),pe=this.beginIndex.evaluate(D),Ce;if(this.endIndex&&(Ce=this.endIndex.evaluate(D)),ke(Y,["string"]))return[...Y].slice(pe,Ce).join("");if(ke(Y,["array"]))return Y.slice(pe,Ce);throw new kr(`Expected first argument to be of type array or string, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input),D(this.beginIndex),this.endIndex&&D(this.endIndex)}outputDefined(){return!1}}function da(q,D){let Y=q.length-1,pe,Ce,Ue=0,Ge=Y,ut=0;for(;Ue<=Ge;)if(ut=Math.floor((Ue+Ge)/2),pe=q[ut],Ce=q[ut+1],pe<=D){if(ut===Y||D<Ce)return ut;Ue=ut+1}else{if(!(pe>D))throw new kr("Input is not a number.");Ge=ut-1}return 0}class Sa{constructor(D,Y,pe){this.type=D,this.input=Y,this.labels=[],this.outputs=[];for(let[Ce,Ue]of pe)this.labels.push(Ce),this.outputs.push(Ue)}static parse(D,Y){if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=[],Ue=null;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ue=Y.expectedType);for(let Ge=1;Ge<D.length;Ge+=2){let ut=Ge===1?-1/0:D[Ge],Tt=D[Ge+1],Ft=Ge,$t=Ge+1;if(typeof ut!="number")return Y.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Ft);if(Ce.length&&Ce[Ce.length-1][0]>=ut)return Y.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Ft);let lr=Y.parse(Tt,$t,Ue);if(!lr)return null;Ue=Ue||lr.type,Ce.push([ut,lr])}return new Sa(Ue,pe,Ce)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;return Ce>=Y[Ue-1]?pe[Ue-1].evaluate(D):pe[da(Y,Ce)].evaluate(D)}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Ti(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}var ai=an;function an(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}an.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)<D)return Y;var Ue=this.sampleCurveDerivativeX(Y);if(Math.abs(Ue)<1e-6)break;Y-=Ce/Ue}var Ge=0,ut=1;for(Y=q,pe=0;pe<20&&(Ce=this.sampleCurveX(Y),!(Math.abs(Ce-q)<D));pe++)q>Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var sn=Ti(ai);function Mn(q,D,Y){return q+Y*(D-q)}function On(q,D,Y){return q.map((pe,Ce)=>Mn(pe,D[Ce],Y))}let $n={number:Mn,color:function(q,D,Y,pe="rgb"){switch(pe){case"rgb":{let[Ce,Ue,Ge,ut]=On(q.rgb,D.rgb,Y);return new Ut(Ce,Ue,Ge,ut,!1)}case"hcl":{let[Ce,Ue,Ge,ut]=q.hcl,[Tt,Ft,$t,lr]=D.hcl,Ar,zr;if(isNaN(Ce)||isNaN(Tt))isNaN(Ce)?isNaN(Tt)?Ar=NaN:(Ar=Tt,Ge!==1&&Ge!==0||(zr=Ft)):(Ar=Ce,$t!==1&&$t!==0||(zr=Ue));else{let gi=Tt-Ce;Tt>Ce&&gi>180?gi-=360:Tt<Ce&&Ce-Tt>180&&(gi+=360),Ar=Ce+Y*gi}let[Kr,la,za,ja]=function([gi,ei,hi,Ei]){return gi=isNaN(gi)?0:gi*Gt,ka([hi,Math.cos(gi)*ei,Math.sin(gi)*ei,Ei])}([Ar,zr??Mn(Ue,Ft,Y),Mn(Ge,$t,Y),Mn(ut,lr,Y)]);return new Ut(Kr,la,za,ja,!1)}case"lab":{let[Ce,Ue,Ge,ut]=ka(On(q.lab,D.lab,Y));return new Ut(Ce,Ue,Ge,ut,!1)}}},array:On,padding:function(q,D,Y){return new Xr(On(q.values,D.values,Y))},variableAnchorOffsetCollection:function(q,D,Y){let pe=q.values,Ce=D.values;if(pe.length!==Ce.length)throw new kr(`Cannot interpolate values of different length. from: ${q.toString()}, to: ${D.toString()}`);let Ue=[];for(let Ge=0;Ge<pe.length;Ge+=2){if(pe[Ge]!==Ce[Ge])throw new kr(`Cannot interpolate values containing mismatched anchors. from[${Ge}]: ${pe[Ge]}, to[${Ge}]: ${Ce[Ge]}`);Ue.push(pe[Ge]);let[ut,Tt]=pe[Ge+1],[Ft,$t]=Ce[Ge+1];Ue.push([Mn(ut,Ft,Y),Mn(Tt,$t,Y)])}return new Fa(Ue)}};class Cn{constructor(D,Y,pe,Ce,Ue){this.type=D,this.operator=Y,this.interpolation=pe,this.input=Ce,this.labels=[],this.outputs=[];for(let[Ge,ut]of Ue)this.labels.push(Ge),this.outputs.push(ut)}static interpolationFactor(D,Y,pe,Ce){let Ue=0;if(D.name==="exponential")Ue=Lo(Y,D.base,pe,Ce);else if(D.name==="linear")Ue=Lo(Y,1,pe,Ce);else if(D.name==="cubic-bezier"){let Ge=D.controlPoints;Ue=new sn(Ge[0],Ge[1],Ge[2],Ge[3]).solve(Lo(Y,1,pe,Ce))}return Ue}static parse(D,Y){let[pe,Ce,Ue,...Ge]=D;if(!Array.isArray(Ce)||Ce.length===0)return Y.error("Expected an interpolation type expression.",1);if(Ce[0]==="linear")Ce={name:"linear"};else if(Ce[0]==="exponential"){let Ft=Ce[1];if(typeof Ft!="number")return Y.error("Exponential interpolation requires a numeric base.",1,1);Ce={name:"exponential",base:Ft}}else{if(Ce[0]!=="cubic-bezier")return Y.error(`Unknown interpolation type ${String(Ce[0])}`,1,0);{let Ft=Ce.slice(1);if(Ft.length!==4||Ft.some($t=>typeof $t!="number"||$t<0||$t>1))return Y.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);Ce={name:"cubic-bezier",controlPoints:Ft}}}if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");if(Ue=Y.parse(Ue,2,Qe),!Ue)return null;let ut=[],Tt=null;pe==="interpolate-hcl"||pe==="interpolate-lab"?Tt=Ot:Y.expectedType&&Y.expectedType.kind!=="value"&&(Tt=Y.expectedType);for(let Ft=0;Ft<Ge.length;Ft+=2){let $t=Ge[Ft],lr=Ge[Ft+1],Ar=Ft+3,zr=Ft+4;if(typeof $t!="number")return Y.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Ar);if(ut.length&&ut[ut.length-1][0]>=$t)return Y.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Ar);let Kr=Y.parse(lr,zr,Tt);if(!Kr)return null;Tt=Tt||Kr.type,ut.push([$t,Kr])}return Te(Tt,Qe)||Te(Tt,Ot)||Te(Tt,vr)||Te(Tt,yt)||Te(Tt,Fe(Qe))?new Cn(Tt,pe,Ce,Ue,ut):Y.error(`Type ${Ke(Tt)} is not interpolatable.`)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;if(Ce>=Y[Ue-1])return pe[Ue-1].evaluate(D);let Ge=da(Y,Ce),ut=Cn.interpolationFactor(this.interpolation,Ce,Y[Ge],Y[Ge+1]),Tt=pe[Ge].evaluate(D),Ft=pe[Ge+1].evaluate(D);switch(this.operator){case"interpolate":return $n[this.type.kind](Tt,Ft,ut);case"interpolate-hcl":return $n.color(Tt,Ft,ut,"hcl");case"interpolate-lab":return $n.color(Tt,Ft,ut,"lab")}}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Lo(q,D,Y,pe){let Ce=pe-Y,Ue=q-Y;return Ce===0?0:D===1?Ue/Ce:(Math.pow(D,Ue)-1)/(Math.pow(D,Ce)-1)}class Xi{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expectected at least one argument.");let pe=null,Ce=Y.expectedType;Ce&&Ce.kind!=="value"&&(pe=Ce);let Ue=[];for(let ut of D.slice(1)){let Tt=Y.parse(ut,1+Ue.length,pe,void 0,{typeAnnotation:"omit"});if(!Tt)return null;pe=pe||Tt.type,Ue.push(Tt)}if(!pe)throw new Error("No output type");let Ge=Ce&&Ue.some(ut=>Ee(Ce,ut.type));return new Xi(Ge?ur:pe,Ue)}evaluate(D){let Y,pe=null,Ce=0;for(let Ue of this.args)if(Ce++,pe=Ue.evaluate(D),pe&&pe instanceof qa&&!pe.available&&(Y||(Y=pe.name),pe=null,Ce===this.args.length&&(pe=Y)),pe!==null)break;return pe}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}function Jo(q,D){return q==="=="||q==="!="?D.kind==="boolean"||D.kind==="string"||D.kind==="number"||D.kind==="null"||D.kind==="value":D.kind==="string"||D.kind==="number"||D.kind==="value"}function zo(q,D,Y,pe){return pe.compare(D,Y)===0}function as(q,D,Y){let pe=q!=="=="&&q!=="!=";return class K8{constructor(Ue,Ge,ut){this.type=St,this.lhs=Ue,this.rhs=Ge,this.collator=ut,this.hasUntypedArgument=Ue.type.kind==="value"||Ge.type.kind==="value"}static parse(Ue,Ge){if(Ue.length!==3&&Ue.length!==4)return Ge.error("Expected two or three arguments.");let ut=Ue[0],Tt=Ge.parse(Ue[1],1,ur);if(!Tt)return null;if(!Jo(ut,Tt.type))return Ge.concat(1).error(`"${ut}" comparisons are not supported for type '${Ke(Tt.type)}'.`);let Ft=Ge.parse(Ue[2],2,ur);if(!Ft)return null;if(!Jo(ut,Ft.type))return Ge.concat(2).error(`"${ut}" comparisons are not supported for type '${Ke(Ft.type)}'.`);if(Tt.type.kind!==Ft.type.kind&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error(`Cannot compare types '${Ke(Tt.type)}' and '${Ke(Ft.type)}'.`);pe&&(Tt.type.kind==="value"&&Ft.type.kind!=="value"?Tt=new Tr(Ft.type,[Tt]):Tt.type.kind!=="value"&&Ft.type.kind==="value"&&(Ft=new Tr(Tt.type,[Ft])));let $t=null;if(Ue.length===4){if(Tt.type.kind!=="string"&&Ft.type.kind!=="string"&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error("Cannot use collator to compare non-string types.");if($t=Ge.parse(Ue[3],3,ar),!$t)return null}return new K8(Tt,Ft,$t)}evaluate(Ue){let Ge=this.lhs.evaluate(Ue),ut=this.rhs.evaluate(Ue);if(pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!==Ft.kind||Tt.kind!=="string"&&Tt.kind!=="number")throw new kr(`Expected arguments for "${q}" to be (string, string) or (number, number), but found (${Tt.kind}, ${Ft.kind}) instead.`)}if(this.collator&&!pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!=="string"||Ft.kind!=="string")return D(Ue,Ge,ut)}return this.collator?Y(Ue,Ge,ut,this.collator.evaluate(Ue)):D(Ue,Ge,ut)}eachChild(Ue){Ue(this.lhs),Ue(this.rhs),this.collator&&Ue(this.collator)}outputDefined(){return!0}}}let Pn=as("==",function(q,D,Y){return D===Y},zo),go=as("!=",function(q,D,Y){return D!==Y},function(q,D,Y,pe){return!zo(0,D,Y,pe)}),In=as("<",function(q,D,Y){return D<Y},function(q,D,Y,pe){return pe.compare(D,Y)<0}),Do=as(">",function(q,D,Y){return D>Y},function(q,D,Y,pe){return pe.compare(D,Y)>0}),Ho=as("<=",function(q,D,Y){return D<=Y},function(q,D,Y,pe){return pe.compare(D,Y)<=0}),Qo=as(">=",function(q,D,Y){return D>=Y},function(q,D,Y,pe){return pe.compare(D,Y)>=0});class Xn{constructor(D,Y,pe){this.type=ar,this.locale=pe,this.caseSensitive=D,this.diacriticSensitive=Y}static parse(D,Y){if(D.length!==2)return Y.error("Expected one argument.");let pe=D[1];if(typeof pe!="object"||Array.isArray(pe))return Y.error("Collator options argument must be an object.");let Ce=Y.parse(pe["case-sensitive"]!==void 0&&pe["case-sensitive"],1,St);if(!Ce)return null;let Ue=Y.parse(pe["diacritic-sensitive"]!==void 0&&pe["diacritic-sensitive"],1,St);if(!Ue)return null;let Ge=null;return pe.locale&&(Ge=Y.parse(pe.locale,1,Ct),!Ge)?null:new Xn(Ce,Ue,Ge)}evaluate(D){return new xr(this.caseSensitive.evaluate(D),this.diacriticSensitive.evaluate(D),this.locale?this.locale.evaluate(D):null)}eachChild(D){D(this.caseSensitive),D(this.diacriticSensitive),this.locale&&D(this.locale)}outputDefined(){return!1}}class po{constructor(D,Y,pe,Ce,Ue){this.type=Ct,this.number=D,this.locale=Y,this.currency=pe,this.minFractionDigits=Ce,this.maxFractionDigits=Ue}static parse(D,Y){if(D.length!==3)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=D[2];if(typeof Ce!="object"||Array.isArray(Ce))return Y.error("NumberFormat options argument must be an object.");let Ue=null;if(Ce.locale&&(Ue=Y.parse(Ce.locale,1,Ct),!Ue))return null;let Ge=null;if(Ce.currency&&(Ge=Y.parse(Ce.currency,1,Ct),!Ge))return null;let ut=null;if(Ce["min-fraction-digits"]&&(ut=Y.parse(Ce["min-fraction-digits"],1,Qe),!ut))return null;let Tt=null;return Ce["max-fraction-digits"]&&(Tt=Y.parse(Ce["max-fraction-digits"],1,Qe),!Tt)?null:new po(pe,Ue,Ge,ut,Tt)}evaluate(D){return new Intl.NumberFormat(this.locale?this.locale.evaluate(D):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(D):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(D):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(D):void 0}).format(this.number.evaluate(D))}eachChild(D){D(this.number),this.locale&&D(this.locale),this.currency&&D(this.currency),this.minFractionDigits&&D(this.minFractionDigits),this.maxFractionDigits&&D(this.maxFractionDigits)}outputDefined(){return!1}}class ys{constructor(D){this.type=Cr,this.sections=D}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[1];if(!Array.isArray(pe)&&typeof pe=="object")return Y.error("First argument must be an image or text section.");let Ce=[],Ue=!1;for(let Ge=1;Ge<=D.length-1;++Ge){let ut=D[Ge];if(Ue&&typeof ut=="object"&&!Array.isArray(ut)){Ue=!1;let Tt=null;if(ut["font-scale"]&&(Tt=Y.parse(ut["font-scale"],1,Qe),!Tt))return null;let Ft=null;if(ut["text-font"]&&(Ft=Y.parse(ut["text-font"],1,Fe(Ct)),!Ft))return null;let $t=null;if(ut["text-color"]&&($t=Y.parse(ut["text-color"],1,Ot),!$t))return null;let lr=Ce[Ce.length-1];lr.scale=Tt,lr.font=Ft,lr.textColor=$t}else{let Tt=Y.parse(D[Ge],1,ur);if(!Tt)return null;let Ft=Tt.type.kind;if(Ft!=="string"&&Ft!=="value"&&Ft!=="null"&&Ft!=="resolvedImage")return Y.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Ue=!0,Ce.push({content:Tt,scale:null,font:null,textColor:null})}}return new ys(Ce)}evaluate(D){return new pa(this.sections.map(Y=>{let pe=Y.content.evaluate(D);return mt(pe)===_r?new Zr("",pe,null,null,null):new Zr(gt(pe),null,Y.scale?Y.scale.evaluate(D):null,Y.font?Y.font.evaluate(D).join(","):null,Y.textColor?Y.textColor.evaluate(D):null)}))}eachChild(D){for(let Y of this.sections)D(Y.content),Y.scale&&D(Y.scale),Y.font&&D(Y.font),Y.textColor&&D(Y.textColor)}outputDefined(){return!1}}class Is{constructor(D){this.type=_r,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Ct);return pe?new Is(pe):Y.error("No image name provided.")}evaluate(D){let Y=this.input.evaluate(D),pe=qa.fromString(Y);return pe&&D.availableImages&&(pe.available=D.availableImages.indexOf(Y)>-1),pe}eachChild(D){D(this.input)}outputDefined(){return!1}}class Fs{constructor(D){this.type=Qe,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error(`Expected 1 argument, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1);return pe?pe.type.kind!=="array"&&pe.type.kind!=="string"&&pe.type.kind!=="value"?Y.error(`Expected argument of type string or array, but found ${Ke(pe.type)} instead.`):new Fs(pe):null}evaluate(D){let Y=this.input.evaluate(D);if(typeof Y=="string")return[...Y].length;if(Array.isArray(Y))return Y.length;throw new kr(`Expected value to be of type string or array, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input)}outputDefined(){return!1}}let $o=8192;function fi(q,D){let Y=(180+q[0])/360,pe=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q[1]*Math.PI/360)))/360,Ce=Math.pow(2,D.z);return[Math.round(Y*Ce*$o),Math.round(pe*Ce*$o)]}function mn(q,D){let Y=Math.pow(2,D.z);return[(Ce=(q[0]/$o+D.x)/Y,360*Ce-180),(pe=(q[1]/$o+D.y)/Y,360/Math.PI*Math.atan(Math.exp((180-360*pe)*Math.PI/180))-90)];var pe,Ce}function ol(q,D){q[0]=Math.min(q[0],D[0]),q[1]=Math.min(q[1],D[1]),q[2]=Math.max(q[2],D[0]),q[3]=Math.max(q[3],D[1])}function Os(q,D){return!(q[0]<=D[0]||q[2]>=D[2]||q[1]<=D[1]||q[3]>=D[3])}function so(q,D,Y){let pe=q[0]-D[0],Ce=q[1]-D[1],Ue=q[0]-Y[0],Ge=q[1]-Y[1];return pe*Ge-Ue*Ce==0&&pe*Ue<=0&&Ce*Ge<=0}function Ns(q,D,Y,pe){return(Ce=[pe[0]-Y[0],pe[1]-Y[1]])[0]*(Ue=[D[0]-q[0],D[1]-q[1]])[1]-Ce[1]*Ue[0]!=0&&!(!Yn(q,D,Y,pe)||!Yn(Y,pe,q,D));var Ce,Ue}function fs(q,D,Y){for(let pe of Y)for(let Ce=0;Ce<pe.length-1;++Ce)if(Ns(q,D,pe[Ce],pe[Ce+1]))return!0;return!1}function al(q,D,Y=!1){let pe=!1;for(let ut of D)for(let Tt=0;Tt<ut.length-1;Tt++){if(so(q,ut[Tt],ut[Tt+1]))return Y;(Ue=ut[Tt])[1]>(Ce=q)[1]!=(Ge=ut[Tt+1])[1]>Ce[1]&&Ce[0]<(Ge[0]-Ue[0])*(Ce[1]-Ue[1])/(Ge[1]-Ue[1])+Ue[0]&&(pe=!pe)}var Ce,Ue,Ge;return pe}function vl(q,D){for(let Y of D)if(al(q,Y))return!0;return!1}function ji(q,D){for(let Y of q)if(!al(Y,D))return!1;for(let Y=0;Y<q.length-1;++Y)if(fs(q[Y],q[Y+1],D))return!1;return!0}function To(q,D){for(let Y of D)if(ji(q,Y))return!0;return!1}function Yn(q,D,Y,pe){let Ce=pe[0]-Y[0],Ue=pe[1]-Y[1],Ge=(q[0]-Y[0])*Ue-Ce*(q[1]-Y[1]),ut=(D[0]-Y[0])*Ue-Ce*(D[1]-Y[1]);return Ge>0&&ut<0||Ge<0&&ut>0}function _s(q,D,Y){let pe=[];for(let Ce=0;Ce<q.length;Ce++){let Ue=[];for(let Ge=0;Ge<q[Ce].length;Ge++){let ut=fi(q[Ce][Ge],Y);ol(D,ut),Ue.push(ut)}pe.push(Ue)}return pe}function Yo(q,D,Y){let pe=[];for(let Ce=0;Ce<q.length;Ce++){let Ue=_s(q[Ce],D,Y);pe.push(Ue)}return pe}function Nn(q,D,Y,pe){if(q[0]<Y[0]||q[0]>Y[2]){let Ce=.5*pe,Ue=q[0]-Y[0]>Ce?-pe:Y[0]-q[0]>Ce?pe:0;Ue===0&&(Ue=q[0]-Y[2]>Ce?-pe:Y[2]-q[0]>Ce?pe:0),q[0]+=Ue}ol(D,q)}function Wl(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let ut of q)for(let Tt of ut){let Ft=[Tt.x+Ue[0],Tt.y+Ue[1]];Nn(Ft,D,Y,Ce),Ge.push(Ft)}return Ge}function Zu(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let Tt of q){let Ft=[];for(let $t of Tt){let lr=[$t.x+Ue[0],$t.y+Ue[1]];ol(D,lr),Ft.push(lr)}Ge.push(Ft)}if(D[2]-D[0]<=Ce/2){(ut=D)[0]=ut[1]=1/0,ut[2]=ut[3]=-1/0;for(let Tt of Ge)for(let Ft of Tt)Nn(Ft,D,Y,Ce)}var ut;return Ge}class ml{constructor(D,Y){this.type=St,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'within' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection"){let Ce=[];for(let Ue of pe.features){let{type:Ge,coordinates:ut}=Ue.geometry;Ge==="Polygon"&&Ce.push(ut),Ge==="MultiPolygon"&&Ce.push(...ut)}if(Ce.length)return new ml(pe,{type:"MultiPolygon",coordinates:Ce})}else if(pe.type==="Feature"){let Ce=pe.geometry.type;if(Ce==="Polygon"||Ce==="MultiPolygon")return new ml(pe,pe.geometry)}else if(pe.type==="Polygon"||pe.type==="MultiPolygon")return new ml(pe,pe)}return Y.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!al(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!vl(Ft,ut))return!1}return!0}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!ji(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!To(Ft,ut))return!1}return!0}(D,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Bu=class{constructor(q=[],D=(Y,pe)=>Y<pe?-1:Y>pe?1:0){if(this.data=q,this.length=this.data.length,this.compare=D,this.length>0)for(let Y=(this.length>>1)-1;Y>=0;Y--)this._down(Y)}push(q){this.data.push(q),this._up(this.length++)}pop(){if(this.length===0)return;let q=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),q}peek(){return this.data[0]}_up(q){let{data:D,compare:Y}=this,pe=D[q];for(;q>0;){let Ce=q-1>>1,Ue=D[Ce];if(Y(pe,Ue)>=0)break;D[q]=Ue,q=Ce}D[q]=pe}_down(q){let{data:D,compare:Y}=this,pe=this.length>>1,Ce=D[q];for(;q<pe;){let Ue=1+(q<<1),Ge=Ue+1;if(Ge<this.length&&Y(D[Ge],D[Ue])<0&&(Ue=Ge),Y(D[Ue],Ce)>=0)break;D[q]=D[Ue],q=Ue}D[q]=Ce}};function El(q,D,Y,pe,Ce){qs(q,D,Y,pe||q.length-1,Ce||Nu)}function qs(q,D,Y,pe,Ce){for(;pe>Y;){if(pe-Y>600){var Ue=pe-Y+1,Ge=D-Y+1,ut=Math.log(Ue),Tt=.5*Math.exp(2*ut/3),Ft=.5*Math.sqrt(ut*Tt*(Ue-Tt)/Ue)*(Ge-Ue/2<0?-1:1);qs(q,D,Math.max(Y,Math.floor(D-Ge*Tt/Ue+Ft)),Math.min(pe,Math.floor(D+(Ue-Ge)*Tt/Ue+Ft)),Ce)}var $t=q[D],lr=Y,Ar=pe;for(Jl(q,Y,D),Ce(q[pe],$t)>0&&Jl(q,Y,pe);lr<Ar;){for(Jl(q,lr,Ar),lr++,Ar--;Ce(q[lr],$t)<0;)lr++;for(;Ce(q[Ar],$t)>0;)Ar--}Ce(q[Y],$t)===0?Jl(q,Y,Ar):Jl(q,++Ar,pe),Ar<=D&&(Y=Ar+1),D<=Ar&&(pe=Ar-1)}}function Jl(q,D,Y){var pe=q[D];q[D]=q[Y],q[Y]=pe}function Nu(q,D){return q<D?-1:q>D?1:0}function Ic(q,D){if(q.length<=1)return[q];let Y=[],pe,Ce;for(let Ue of q){let Ge=Th(Ue);Ge!==0&&(Ue.area=Math.abs(Ge),Ce===void 0&&(Ce=Ge<0),Ce===Ge<0?(pe&&Y.push(pe),pe=[Ue]):pe.push(Ue))}if(pe&&Y.push(pe),D>1)for(let Ue=0;Ue<Y.length;Ue++)Y[Ue].length<=D||(El(Y[Ue],D,1,Y[Ue].length-1,Xu),Y[Ue]=Y[Ue].slice(0,D));return Y}function Xu(q,D){return D.area-q.area}function Th(q){let D=0;for(let Y,pe,Ce=0,Ue=q.length,Ge=Ue-1;Ce<Ue;Ge=Ce++)Y=q[Ce],pe=q[Ge],D+=(pe.x-Y.x)*(Y.y+pe.y);return D}let bf=1/298.257223563,Rs=bf*(2-bf),Yc=Math.PI/180;class If{constructor(D){let Y=6378.137*Yc*1e3,pe=Math.cos(D*Yc),Ce=1/(1-Rs*(1-pe*pe)),Ue=Math.sqrt(Ce);this.kx=Y*Ue*pe,this.ky=Y*Ue*Ce*(1-Rs)}distance(D,Y){let pe=this.wrap(D[0]-Y[0])*this.kx,Ce=(D[1]-Y[1])*this.ky;return Math.sqrt(pe*pe+Ce*Ce)}pointOnLine(D,Y){let pe,Ce,Ue,Ge,ut=1/0;for(let Tt=0;Tt<D.length-1;Tt++){let Ft=D[Tt][0],$t=D[Tt][1],lr=this.wrap(D[Tt+1][0]-Ft)*this.kx,Ar=(D[Tt+1][1]-$t)*this.ky,zr=0;lr===0&&Ar===0||(zr=(this.wrap(Y[0]-Ft)*this.kx*lr+(Y[1]-$t)*this.ky*Ar)/(lr*lr+Ar*Ar),zr>1?(Ft=D[Tt+1][0],$t=D[Tt+1][1]):zr>0&&(Ft+=lr/this.kx*zr,$t+=Ar/this.ky*zr)),lr=this.wrap(Y[0]-Ft)*this.kx,Ar=(Y[1]-$t)*this.ky;let Kr=lr*lr+Ar*Ar;Kr<ut&&(ut=Kr,pe=Ft,Ce=$t,Ue=Tt,Ge=zr)}return{point:[pe,Ce],index:Ue,t:Math.max(0,Math.min(1,Ge))}}wrap(D){for(;D<-180;)D+=360;for(;D>180;)D-=360;return D}}function Zl(q,D){return D[0]-q[0]}function yl(q){return q[1]-q[0]+1}function oc(q,D){return q[1]>=q[0]&&q[1]<D}function _c(q,D){if(q[0]>q[1])return[null,null];let Y=yl(q);if(D){if(Y===2)return[q,null];let Ce=Math.floor(Y/2);return[[q[0],q[0]+Ce],[q[0]+Ce,q[1]]]}if(Y===1)return[q,null];let pe=Math.floor(Y/2)-1;return[[q[0],q[0]+pe],[q[0]+pe+1,q[1]]]}function Zs(q,D){if(!oc(D,q.length))return[1/0,1/0,-1/0,-1/0];let Y=[1/0,1/0,-1/0,-1/0];for(let pe=D[0];pe<=D[1];++pe)ol(Y,q[pe]);return Y}function _l(q){let D=[1/0,1/0,-1/0,-1/0];for(let Y of q)for(let pe of Y)ol(D,pe);return D}function Bs(q){return q[0]!==-1/0&&q[1]!==-1/0&&q[2]!==1/0&&q[3]!==1/0}function $s(q,D,Y){if(!Bs(q)||!Bs(D))return NaN;let pe=0,Ce=0;return q[2]<D[0]&&(pe=D[0]-q[2]),q[0]>D[2]&&(pe=q[0]-D[2]),q[1]>D[3]&&(Ce=q[1]-D[3]),q[3]<D[1]&&(Ce=D[1]-q[3]),Y.distance([0,0],[pe,Ce])}function sc(q,D,Y){let pe=Y.pointOnLine(D,q);return Y.distance(q,pe.point)}function zl(q,D,Y,pe,Ce){let Ue=Math.min(sc(q,[Y,pe],Ce),sc(D,[Y,pe],Ce)),Ge=Math.min(sc(Y,[q,D],Ce),sc(pe,[q,D],Ce));return Math.min(Ue,Ge)}function Yu(q,D,Y,pe,Ce){if(!oc(D,q.length)||!oc(pe,Y.length))return 1/0;let Ue=1/0;for(let Ge=D[0];Ge<D[1];++Ge){let ut=q[Ge],Tt=q[Ge+1];for(let Ft=pe[0];Ft<pe[1];++Ft){let $t=Y[Ft],lr=Y[Ft+1];if(Ns(ut,Tt,$t,lr))return 0;Ue=Math.min(Ue,zl(ut,Tt,$t,lr,Ce))}}return Ue}function Qs(q,D,Y,pe,Ce){if(!oc(D,q.length)||!oc(pe,Y.length))return NaN;let Ue=1/0;for(let Ge=D[0];Ge<=D[1];++Ge)for(let ut=pe[0];ut<=pe[1];++ut)if(Ue=Math.min(Ue,Ce.distance(q[Ge],Y[ut])),Ue===0)return Ue;return Ue}function fp(q,D,Y){if(al(q,D,!0))return 0;let pe=1/0;for(let Ce of D){let Ue=Ce[0],Ge=Ce[Ce.length-1];if(Ue!==Ge&&(pe=Math.min(pe,sc(q,[Ge,Ue],Y)),pe===0))return pe;let ut=Y.pointOnLine(Ce,q);if(pe=Math.min(pe,Y.distance(q,ut.point)),pe===0)return pe}return pe}function es(q,D,Y,pe){if(!oc(D,q.length))return NaN;for(let Ue=D[0];Ue<=D[1];++Ue)if(al(q[Ue],Y,!0))return 0;let Ce=1/0;for(let Ue=D[0];Ue<D[1];++Ue){let Ge=q[Ue],ut=q[Ue+1];for(let Tt of Y)for(let Ft=0,$t=Tt.length,lr=$t-1;Ft<$t;lr=Ft++){let Ar=Tt[lr],zr=Tt[Ft];if(Ns(Ge,ut,Ar,zr))return 0;Ce=Math.min(Ce,zl(Ge,ut,Ar,zr,pe))}}return Ce}function Wh(q,D){for(let Y of q)for(let pe of Y)if(al(pe,D,!0))return!0;return!1}function Ss(q,D,Y,pe=1/0){let Ce=_l(q),Ue=_l(D);if(pe!==1/0&&$s(Ce,Ue,Y)>=pe)return pe;if(Os(Ce,Ue)){if(Wh(q,D))return 0}else if(Wh(D,q))return 0;let Ge=1/0;for(let ut of q)for(let Tt=0,Ft=ut.length,$t=Ft-1;Tt<Ft;$t=Tt++){let lr=ut[$t],Ar=ut[Tt];for(let zr of D)for(let Kr=0,la=zr.length,za=la-1;Kr<la;za=Kr++){let ja=zr[za],gi=zr[Kr];if(Ns(lr,Ar,ja,gi))return 0;Ge=Math.min(Ge,zl(lr,Ar,ja,gi,Y))}}return Ge}function So(q,D,Y,pe,Ce,Ue){if(!Ue)return;let Ge=$s(Zs(pe,Ue),Ce,Y);Ge<D&&q.push([Ge,Ue,[0,0]])}function hf(q,D,Y,pe,Ce,Ue,Ge){if(!Ue||!Ge)return;let ut=$s(Zs(pe,Ue),Zs(Ce,Ge),Y);ut<D&&q.push([ut,Ue,Ge])}function Ku(q,D,Y,pe,Ce=1/0){let Ue=Math.min(pe.distance(q[0],Y[0][0]),Ce);if(Ue===0)return Ue;let Ge=new Bu([[0,[0,q.length-1],[0,0]]],Zl),ut=_l(Y);for(;Ge.length>0;){let Tt=Ge.pop();if(Tt[0]>=Ue)continue;let Ft=Tt[1],$t=D?50:100;if(yl(Ft)<=$t){if(!oc(Ft,q.length))return NaN;if(D){let lr=es(q,Ft,Y,pe);if(isNaN(lr)||lr===0)return lr;Ue=Math.min(Ue,lr)}else for(let lr=Ft[0];lr<=Ft[1];++lr){let Ar=fp(q[lr],Y,pe);if(Ue=Math.min(Ue,Ar),Ue===0)return 0}}else{let lr=_c(Ft,D);So(Ge,Ue,pe,q,ut,lr[0]),So(Ge,Ue,pe,q,ut,lr[1])}}return Ue}function cu(q,D,Y,pe,Ce,Ue=1/0){let Ge=Math.min(Ue,Ce.distance(q[0],Y[0]));if(Ge===0)return Ge;let ut=new Bu([[0,[0,q.length-1],[0,Y.length-1]]],Zl);for(;ut.length>0;){let Tt=ut.pop();if(Tt[0]>=Ge)continue;let Ft=Tt[1],$t=Tt[2],lr=D?50:100,Ar=pe?50:100;if(yl(Ft)<=lr&&yl($t)<=Ar){if(!oc(Ft,q.length)&&oc($t,Y.length))return NaN;let zr;if(D&&pe)zr=Yu(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr);else if(D&&!pe){let Kr=q.slice(Ft[0],Ft[1]+1);for(let la=$t[0];la<=$t[1];++la)if(zr=sc(Y[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else if(!D&&pe){let Kr=Y.slice($t[0],$t[1]+1);for(let la=Ft[0];la<=Ft[1];++la)if(zr=sc(q[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else zr=Qs(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr)}else{let zr=_c(Ft,D),Kr=_c($t,pe);hf(ut,Ge,Ce,q,Y,zr[0],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[0],Kr[1]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[1])}}return Ge}function Zf(q){return q.type==="MultiPolygon"?q.coordinates.map(D=>({type:"Polygon",coordinates:D})):q.type==="MultiLineString"?q.coordinates.map(D=>({type:"LineString",coordinates:D})):q.type==="MultiPoint"?q.coordinates.map(D=>({type:"Point",coordinates:D})):[q]}class Rc{constructor(D,Y){this.type=Qe,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'distance' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection")return new Rc(pe,pe.features.map(Ce=>Zf(Ce.geometry)).flat());if(pe.type==="Feature")return new Rc(pe,Zf(pe.geometry));if("type"in pe&&"coordinates"in pe)return new Rc(pe,Zf(pe))}return Y.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!1,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!1,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!1,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!0,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!0,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!0,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="Polygon")return function(Y,pe){let Ce=Y.geometry();if(Ce.length===0||Ce[0].length===0)return NaN;let Ue=Ic(Ce,0).map(Tt=>Tt.map(Ft=>Ft.map($t=>mn([$t.x,$t.y],Y.canonical)))),Ge=new If(Ue[0][0][0][1]),ut=1/0;for(let Tt of pe)for(let Ft of Ue){switch(Tt.type){case"Point":ut=Math.min(ut,Ku([Tt.coordinates],!1,Ft,Ge,ut));break;case"LineString":ut=Math.min(ut,Ku(Tt.coordinates,!0,Ft,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ss(Ft,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let pf={"==":Pn,"!=":go,">":Do,"<":In,">=":Qo,"<=":Ho,array:Tr,at:ir,boolean:Tr,case:Ba,coalesce:Xi,collator:Xn,format:ys,image:Is,in:mr,"index-of":$r,interpolate:Cn,"interpolate-hcl":Cn,"interpolate-lab":Cn,length:Fs,let:ca,literal:Er,match:ma,number:Tr,"number-format":po,object:Tr,slice:Ca,step:Sa,string:Tr,"to-boolean":Fr,"to-color":Fr,"to-number":Fr,"to-string":Fr,var:kt,within:ml,distance:Rc};class Fl{constructor(D,Y,pe,Ce){this.name=D,this.type=Y,this._evaluate=pe,this.args=Ce}evaluate(D){return this._evaluate(D,this.args)}eachChild(D){this.args.forEach(D)}outputDefined(){return!1}static parse(D,Y){let pe=D[0],Ce=Fl.definitions[pe];if(!Ce)return Y.error(`Unknown expression "${pe}". If you wanted a literal array, use ["literal", [...]].`,0);let Ue=Array.isArray(Ce)?Ce[0]:Ce.type,Ge=Array.isArray(Ce)?[[Ce[1],Ce[2]]]:Ce.overloads,ut=Ge.filter(([Ft])=>!Array.isArray(Ft)||Ft.length===D.length-1),Tt=null;for(let[Ft,$t]of ut){Tt=new oa(Y.registry,Yf,Y.path,null,Y.scope);let lr=[],Ar=!1;for(let zr=1;zr<D.length;zr++){let Kr=D[zr],la=Array.isArray(Ft)?Ft[zr-1]:Ft.type,za=Tt.parse(Kr,1+lr.length,la);if(!za){Ar=!0;break}lr.push(za)}if(!Ar)if(Array.isArray(Ft)&&Ft.length!==lr.length)Tt.error(`Expected ${Ft.length} arguments, but found ${lr.length} instead.`);else{for(let zr=0;zr<lr.length;zr++){let Kr=Array.isArray(Ft)?Ft[zr]:Ft.type,la=lr[zr];Tt.concat(zr+1).checkSubtype(Kr,la.type)}if(Tt.errors.length===0)return new Fl(pe,Ue,$t,lr)}}if(ut.length===1)Y.errors.push(...Tt.errors);else{let Ft=(ut.length?ut:Ge).map(([lr])=>{return Ar=lr,Array.isArray(Ar)?`(${Ar.map(Ke).join(", ")})`:`(${Ke(Ar.type)}...)`;var Ar}).join(" | "),$t=[];for(let lr=1;lr<D.length;lr++){let Ar=Y.parse(D[lr],1+$t.length);if(!Ar)return null;$t.push(Ke(Ar.type))}Y.error(`Expected arguments of type ${Ft}, but found (${$t.join(", ")}) instead.`)}return null}static register(D,Y){Fl.definitions=Y;for(let pe in Y)D[pe]=Fl}}function lh(q,[D,Y,pe,Ce]){D=D.evaluate(q),Y=Y.evaluate(q),pe=pe.evaluate(q);let Ue=Ce?Ce.evaluate(q):1,Ge=ya(D,Y,pe,Ue);if(Ge)throw new kr(Ge);return new Ut(D/255,Y/255,pe/255,Ue,!1)}function Xf(q,D){return q in D}function Rf(q,D){let Y=D[q];return Y===void 0?null:Y}function Kc(q){return{type:q}}function Yf(q){if(q instanceof kt)return Yf(q.boundExpression);if(q instanceof Fl&&q.name==="error"||q instanceof Xn||q instanceof ml||q instanceof Rc)return!1;let D=q instanceof Fr||q instanceof Tr,Y=!0;return q.eachChild(pe=>{Y=D?Y&&Yf(pe):Y&&pe instanceof Er}),!!Y&&uh(q)&&Df(q,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function uh(q){if(q instanceof Fl&&(q.name==="get"&&q.args.length===1||q.name==="feature-state"||q.name==="has"&&q.args.length===1||q.name==="properties"||q.name==="geometry-type"||q.name==="id"||/^filter-/.test(q.name))||q instanceof ml||q instanceof Rc)return!1;let D=!0;return q.eachChild(Y=>{D&&!uh(Y)&&(D=!1)}),D}function Ju(q){if(q instanceof Fl&&q.name==="feature-state")return!1;let D=!0;return q.eachChild(Y=>{D&&!Ju(Y)&&(D=!1)}),D}function Df(q,D){if(q instanceof Fl&&D.indexOf(q.name)>=0)return!1;let Y=!0;return q.eachChild(pe=>{Y&&!Df(pe,D)&&(Y=!1)}),Y}function Dc(q){return{result:"success",value:q}}function Jc(q){return{result:"error",value:q}}function Eu(q){return q["property-type"]==="data-driven"||q["property-type"]==="cross-faded-data-driven"}function wf(q){return!!q.expression&&q.expression.parameters.indexOf("zoom")>-1}function zc(q){return!!q.expression&&q.expression.interpolated}function Us(q){return q instanceof Number?"number":q instanceof String?"string":q instanceof Boolean?"boolean":Array.isArray(q)?"array":q===null?"null":typeof q}function Kf(q){return typeof q=="object"&&q!==null&&!Array.isArray(q)}function Zh(q){return q}function ch(q,D){let Y=D.type==="color",pe=q.stops&&typeof q.stops[0][0]=="object",Ce=pe||!(pe||q.property!==void 0),Ue=q.type||(zc(D)?"exponential":"interval");if(Y||D.type==="padding"){let $t=Y?Ut.parse:Xr.parse;(q=ce({},q)).stops&&(q.stops=q.stops.map(lr=>[lr[0],$t(lr[1])])),q.default=$t(q.default?q.default:D.default)}if(q.colorSpace&&(Ge=q.colorSpace)!=="rgb"&&Ge!=="hcl"&&Ge!=="lab")throw new Error(`Unknown color space: "${q.colorSpace}"`);var Ge;let ut,Tt,Ft;if(Ue==="exponential")ut=fh;else if(Ue==="interval")ut=ku;else if(Ue==="categorical"){ut=Ah,Tt=Object.create(null);for(let $t of q.stops)Tt[$t[0]]=$t[1];Ft=typeof q.stops[0][0]}else{if(Ue!=="identity")throw new Error(`Unknown function type "${Ue}"`);ut=ru}if(pe){let $t={},lr=[];for(let Kr=0;Kr<q.stops.length;Kr++){let la=q.stops[Kr],za=la[0].zoom;$t[za]===void 0&&($t[za]={zoom:za,type:q.type,property:q.property,default:q.default,stops:[]},lr.push(za)),$t[za].stops.push([la[0].value,la[1]])}let Ar=[];for(let Kr of lr)Ar.push([$t[Kr].zoom,ch($t[Kr],D)]);let zr={name:"linear"};return{kind:"composite",interpolationType:zr,interpolationFactor:Cn.interpolationFactor.bind(void 0,zr),zoomStops:Ar.map(Kr=>Kr[0]),evaluate:({zoom:Kr},la)=>fh({stops:Ar,base:q.base},D,Kr).evaluate(Kr,la)}}if(Ce){let $t=Ue==="exponential"?{name:"exponential",base:q.base!==void 0?q.base:1}:null;return{kind:"camera",interpolationType:$t,interpolationFactor:Cn.interpolationFactor.bind(void 0,$t),zoomStops:q.stops.map(lr=>lr[0]),evaluate:({zoom:lr})=>ut(q,D,lr,Tt,Ft)}}return{kind:"source",evaluate($t,lr){let Ar=lr&&lr.properties?lr.properties[q.property]:void 0;return Ar===void 0?df(q.default,D.default):ut(q,D,Ar,Tt,Ft)}}}function df(q,D,Y){return q!==void 0?q:D!==void 0?D:Y!==void 0?Y:void 0}function Ah(q,D,Y,pe,Ce){return df(typeof Y===Ce?pe[Y]:void 0,q.default,D.default)}function ku(q,D,Y){if(Us(Y)!=="number")return df(q.default,D.default);let pe=q.stops.length;if(pe===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[pe-1][0])return q.stops[pe-1][1];let Ce=da(q.stops.map(Ue=>Ue[0]),Y);return q.stops[Ce][1]}function fh(q,D,Y){let pe=q.base!==void 0?q.base:1;if(Us(Y)!=="number")return df(q.default,D.default);let Ce=q.stops.length;if(Ce===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[Ce-1][0])return q.stops[Ce-1][1];let Ue=da(q.stops.map($t=>$t[0]),Y),Ge=function($t,lr,Ar,zr){let Kr=zr-Ar,la=$t-Ar;return Kr===0?0:lr===1?la/Kr:(Math.pow(lr,la)-1)/(Math.pow(lr,Kr)-1)}(Y,pe,q.stops[Ue][0],q.stops[Ue+1][0]),ut=q.stops[Ue][1],Tt=q.stops[Ue+1][1],Ft=$n[D.type]||Zh;return typeof ut.evaluate=="function"?{evaluate(...$t){let lr=ut.evaluate.apply(void 0,$t),Ar=Tt.evaluate.apply(void 0,$t);if(lr!==void 0&&Ar!==void 0)return Ft(lr,Ar,Ge,q.colorSpace)}}:Ft(ut,Tt,Ge,q.colorSpace)}function ru(q,D,Y){switch(D.type){case"color":Y=Ut.parse(Y);break;case"formatted":Y=pa.fromString(Y.toString());break;case"resolvedImage":Y=qa.fromString(Y.toString());break;case"padding":Y=Xr.parse(Y);break;default:Us(Y)===D.type||D.type==="enum"&&D.values[Y]||(Y=void 0)}return df(Y,q.default,D.default)}Fl.register(pf,{error:[{kind:"error"},[Ct],(q,[D])=>{throw new kr(D.evaluate(q))}],typeof:[Ct,[ur],(q,[D])=>Ke(mt(D.evaluate(q)))],"to-rgba":[Fe(Qe,4),[Ot],(q,[D])=>{let[Y,pe,Ce,Ue]=D.evaluate(q).rgb;return[255*Y,255*pe,255*Ce,Ue]}],rgb:[Ot,[Qe,Qe,Qe],lh],rgba:[Ot,[Qe,Qe,Qe,Qe],lh],has:{type:St,overloads:[[[Ct],(q,[D])=>Xf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Xf(D.evaluate(q),Y.evaluate(q))]]},get:{type:ur,overloads:[[[Ct],(q,[D])=>Rf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Rf(D.evaluate(q),Y.evaluate(q))]]},"feature-state":[ur,[Ct],(q,[D])=>Rf(D.evaluate(q),q.featureState||{})],properties:[jt,[],q=>q.properties()],"geometry-type":[Ct,[],q=>q.geometryType()],id:[ur,[],q=>q.id()],zoom:[Qe,[],q=>q.globals.zoom],"heatmap-density":[Qe,[],q=>q.globals.heatmapDensity||0],"line-progress":[Qe,[],q=>q.globals.lineProgress||0],accumulated:[ur,[],q=>q.globals.accumulated===void 0?null:q.globals.accumulated],"+":[Qe,Kc(Qe),(q,D)=>{let Y=0;for(let pe of D)Y+=pe.evaluate(q);return Y}],"*":[Qe,Kc(Qe),(q,D)=>{let Y=1;for(let pe of D)Y*=pe.evaluate(q);return Y}],"-":{type:Qe,overloads:[[[Qe,Qe],(q,[D,Y])=>D.evaluate(q)-Y.evaluate(q)],[[Qe],(q,[D])=>-D.evaluate(q)]]},"/":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)/Y.evaluate(q)],"%":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)%Y.evaluate(q)],ln2:[Qe,[],()=>Math.LN2],pi:[Qe,[],()=>Math.PI],e:[Qe,[],()=>Math.E],"^":[Qe,[Qe,Qe],(q,[D,Y])=>Math.pow(D.evaluate(q),Y.evaluate(q))],sqrt:[Qe,[Qe],(q,[D])=>Math.sqrt(D.evaluate(q))],log10:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN10],ln:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))],log2:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN2],sin:[Qe,[Qe],(q,[D])=>Math.sin(D.evaluate(q))],cos:[Qe,[Qe],(q,[D])=>Math.cos(D.evaluate(q))],tan:[Qe,[Qe],(q,[D])=>Math.tan(D.evaluate(q))],asin:[Qe,[Qe],(q,[D])=>Math.asin(D.evaluate(q))],acos:[Qe,[Qe],(q,[D])=>Math.acos(D.evaluate(q))],atan:[Qe,[Qe],(q,[D])=>Math.atan(D.evaluate(q))],min:[Qe,Kc(Qe),(q,D)=>Math.min(...D.map(Y=>Y.evaluate(q)))],max:[Qe,Kc(Qe),(q,D)=>Math.max(...D.map(Y=>Y.evaluate(q)))],abs:[Qe,[Qe],(q,[D])=>Math.abs(D.evaluate(q))],round:[Qe,[Qe],(q,[D])=>{let Y=D.evaluate(q);return Y<0?-Math.round(-Y):Math.round(Y)}],floor:[Qe,[Qe],(q,[D])=>Math.floor(D.evaluate(q))],ceil:[Qe,[Qe],(q,[D])=>Math.ceil(D.evaluate(q))],"filter-==":[St,[Ct,ur],(q,[D,Y])=>q.properties()[D.value]===Y.value],"filter-id-==":[St,[ur],(q,[D])=>q.id()===D.value],"filter-type-==":[St,[Ct],(q,[D])=>q.geometryType()===D.value],"filter-<":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<Ce}],"filter-id-<":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<pe}],"filter->":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>Ce}],"filter-id->":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>pe}],"filter-<=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<=Ce}],"filter-id-<=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<=pe}],"filter->=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>=Ce}],"filter-id->=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>=pe}],"filter-has":[St,[ur],(q,[D])=>D.value in q.properties()],"filter-has-id":[St,[],q=>q.id()!==null&&q.id()!==void 0],"filter-type-in":[St,[Fe(Ct)],(q,[D])=>D.value.indexOf(q.geometryType())>=0],"filter-id-in":[St,[Fe(ur)],(q,[D])=>D.value.indexOf(q.id())>=0],"filter-in-small":[St,[Ct,Fe(ur)],(q,[D,Y])=>Y.value.indexOf(q.properties()[D.value])>=0],"filter-in-large":[St,[Ct,Fe(ur)],(q,[D,Y])=>function(pe,Ce,Ue,Ge){for(;Ue<=Ge;){let ut=Ue+Ge>>1;if(Ce[ut]===pe)return!0;Ce[ut]>pe?Ge=ut-1:Ue=ut+1}return!1}(q.properties()[D.value],Y.value,0,Y.value.length-1)],all:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)&&Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(!Y.evaluate(q))return!1;return!0}]]},any:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)||Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(Y.evaluate(q))return!0;return!1}]]},"!":[St,[St],(q,[D])=>!D.evaluate(q)],"is-supported-script":[St,[Ct],(q,[D])=>{let Y=q.globals&&q.globals.isSupportedScript;return!Y||Y(D.evaluate(q))}],upcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toUpperCase()],downcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toLowerCase()],concat:[Ct,Kc(ur),(q,D)=>D.map(Y=>gt(Y.evaluate(q))).join("")],"resolved-locale":[Ct,[ar],(q,[D])=>D.evaluate(q).resolvedLocale()]});class Cu{constructor(D,Y){var pe;this.expression=D,this._warningHistory={},this._evaluator=new Jr,this._defaultValue=Y?(pe=Y).type==="color"&&Kf(pe.default)?new Ut(0,0,0,0):pe.type==="color"?Ut.parse(pe.default)||null:pe.type==="padding"?Xr.parse(pe.default)||null:pe.type==="variableAnchorOffsetCollection"?Fa.parse(pe.default)||null:pe.default===void 0?null:pe.default:null,this._enumValues=Y&&Y.type==="enum"?Y.values:null}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._evaluator.globals=D,this._evaluator.feature=Y,this._evaluator.featureState=pe,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge,this.expression.evaluate(this._evaluator)}evaluate(D,Y,pe,Ce,Ue,Ge){this._evaluator.globals=D,this._evaluator.feature=Y||null,this._evaluator.featureState=pe||null,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge||null;try{let ut=this.expression.evaluate(this._evaluator);if(ut==null||typeof ut=="number"&&ut!=ut)return this._defaultValue;if(this._enumValues&&!(ut in this._enumValues))throw new kr(`Expected value to be one of ${Object.keys(this._enumValues).map(Tt=>JSON.stringify(Tt)).join(", ")}, but found ${JSON.stringify(ut)} instead.`);return ut}catch(ut){return this._warningHistory[ut.message]||(this._warningHistory[ut.message]=!0,typeof console<"u"&&console.warn(ut.message)),this._defaultValue}}}function xc(q){return Array.isArray(q)&&q.length>0&&typeof q[0]=="string"&&q[0]in pf}function kl(q,D){let Y=new oa(pf,Yf,[],D?function(Ce){let Ue={color:Ot,string:Ct,number:Qe,enum:Ct,boolean:St,formatted:Cr,padding:vr,resolvedImage:_r,variableAnchorOffsetCollection:yt};return Ce.type==="array"?Fe(Ue[Ce.value]||ur,Ce.length):Ue[Ce.type]}(D):void 0),pe=Y.parse(q,void 0,void 0,void 0,D&&D.type==="string"?{typeAnnotation:"coerce"}:void 0);return pe?Dc(new Cu(pe,D)):Jc(Y.errors)}class Fc{constructor(D,Y){this.kind=D,this._styleExpression=Y,this.isStateDependent=D!=="constant"&&!Ju(Y.expression)}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}}class $u{constructor(D,Y,pe,Ce){this.kind=D,this.zoomStops=pe,this._styleExpression=Y,this.isStateDependent=D!=="camera"&&!Ju(Y.expression),this.interpolationType=Ce}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}interpolationFactor(D,Y,pe){return this.interpolationType?Cn.interpolationFactor(this.interpolationType,D,Y,pe):0}}function vu(q,D){let Y=kl(q,D);if(Y.result==="error")return Y;let pe=Y.value.expression,Ce=uh(pe);if(!Ce&&!Eu(D))return Jc([new ze("","data expressions not supported")]);let Ue=Df(pe,["zoom"]);if(!Ue&&!wf(D))return Jc([new ze("","zoom expressions not supported")]);let Ge=hh(pe);return Ge||Ue?Ge instanceof ze?Jc([Ge]):Ge instanceof Cn&&!zc(D)?Jc([new ze("",'"interpolate" expressions cannot be used with this property')]):Dc(Ge?new $u(Ce?"camera":"composite",Y.value,Ge.labels,Ge instanceof Cn?Ge.interpolation:void 0):new Fc(Ce?"constant":"source",Y.value)):Jc([new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class xl{constructor(D,Y){this._parameters=D,this._specification=Y,ce(this,ch(this._parameters,this._specification))}static deserialize(D){return new xl(D._parameters,D._specification)}static serialize(D){return{_parameters:D._parameters,_specification:D._specification}}}function hh(q){let D=null;if(q instanceof ca)D=hh(q.result);else if(q instanceof Xi){for(let Y of q.args)if(D=hh(Y),D)break}else(q instanceof Sa||q instanceof Cn)&&q.input instanceof Fl&&q.input.name==="zoom"&&(D=q);return D instanceof ze||q.eachChild(Y=>{let pe=hh(Y);pe instanceof ze?D=pe:!D&&pe?D=new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):D&&pe&&D!==pe&&(D=new ze("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),D}function Sh(q){if(q===!0||q===!1)return!0;if(!Array.isArray(q)||q.length===0)return!1;switch(q[0]){case"has":return q.length>=2&&q[1]!=="$id"&&q[1]!=="$type";case"in":return q.length>=3&&(typeof q[1]!="string"||Array.isArray(q[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return q.length!==3||Array.isArray(q[1])||Array.isArray(q[2]);case"any":case"all":for(let D of q.slice(1))if(!Sh(D)&&typeof D!="boolean")return!1;return!0;default:return!0}}let Uu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function bc(q){if(q==null)return{filter:()=>!0,needGeometry:!1};Sh(q)||(q=vf(q));let D=kl(q,Uu);if(D.result==="error")throw new Error(D.value.map(Y=>`${Y.key}: ${Y.message}`).join(", "));return{filter:(Y,pe,Ce)=>D.value.evaluate(Y,pe,{},Ce),needGeometry:hp(q)}}function lc(q,D){return q<D?-1:q>D?1:0}function hp(q){if(!Array.isArray(q))return!1;if(q[0]==="within"||q[0]==="distance")return!0;for(let D=1;D<q.length;D++)if(hp(q[D]))return!0;return!1}function vf(q){if(!q)return!0;let D=q[0];return q.length<=1?D!=="any":D==="=="?Tf(q[1],q[2],"=="):D==="!="?au(Tf(q[1],q[2],"==")):D==="<"||D===">"||D==="<="||D===">="?Tf(q[1],q[2],D):D==="any"?(Y=q.slice(1),["any"].concat(Y.map(vf))):D==="all"?["all"].concat(q.slice(1).map(vf)):D==="none"?["all"].concat(q.slice(1).map(vf).map(au)):D==="in"?Lu(q[1],q.slice(2)):D==="!in"?au(Lu(q[1],q.slice(2))):D==="has"?zf(q[1]):D!=="!has"||au(zf(q[1]));var Y}function Tf(q,D,Y){switch(q){case"$type":return[`filter-type-${Y}`,D];case"$id":return[`filter-id-${Y}`,D];default:return[`filter-${Y}`,q,D]}}function Lu(q,D){if(D.length===0)return!1;switch(q){case"$type":return["filter-type-in",["literal",D]];case"$id":return["filter-id-in",["literal",D]];default:return D.length>200&&!D.some(Y=>typeof Y!=typeof D[0])?["filter-in-large",q,["literal",D.sort(lc)]]:["filter-in-small",q,["literal",D]]}}function zf(q){switch(q){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",q]}}function au(q){return["!",q]}function $c(q){let D=typeof q;if(D==="number"||D==="boolean"||D==="string"||q==null)return JSON.stringify(q);if(Array.isArray(q)){let Ce="[";for(let Ue of q)Ce+=`${$c(Ue)},`;return`${Ce}]`}let Y=Object.keys(q).sort(),pe="{";for(let Ce=0;Ce<Y.length;Ce++)pe+=`${JSON.stringify(Y[Ce])}:${$c(q[Y[Ce]])},`;return`${pe}}`}function Mh(q){let D="";for(let Y of fe)D+=`/${$c(q[Y])}`;return D}function Ff(q){let D=q.value;return D?[new ge(q.key,D,"constants have been deprecated as of v8")]:[]}function il(q){return q instanceof Number||q instanceof String||q instanceof Boolean?q.valueOf():q}function mu(q){if(Array.isArray(q))return q.map(mu);if(q instanceof Object&&!(q instanceof Number||q instanceof String||q instanceof Boolean)){let D={};for(let Y in q)D[Y]=mu(q[Y]);return D}return il(q)}function gu(q){let D=q.key,Y=q.value,pe=q.valueSpec||{},Ce=q.objectElementValidators||{},Ue=q.style,Ge=q.styleSpec,ut=q.validateSpec,Tt=[],Ft=Us(Y);if(Ft!=="object")return[new ge(D,Y,`object expected, ${Ft} found`)];for(let $t in Y){let lr=$t.split(".")[0],Ar=pe[lr]||pe["*"],zr;if(Ce[lr])zr=Ce[lr];else if(pe[lr])zr=ut;else if(Ce["*"])zr=Ce["*"];else{if(!pe["*"]){Tt.push(new ge(D,Y[$t],`unknown property "${$t}"`));continue}zr=ut}Tt=Tt.concat(zr({key:(D&&`${D}.`)+$t,value:Y[$t],valueSpec:Ar,style:Ue,styleSpec:Ge,object:Y,objectKey:$t,validateSpec:ut},Y))}for(let $t in pe)Ce[$t]||pe[$t].required&&pe[$t].default===void 0&&Y[$t]===void 0&&Tt.push(new ge(D,Y,`missing required property "${$t}"`));return Tt}function Jf(q){let D=q.value,Y=q.valueSpec,pe=q.style,Ce=q.styleSpec,Ue=q.key,Ge=q.arrayElementValidator||q.validateSpec;if(Us(D)!=="array")return[new ge(Ue,D,`array expected, ${Us(D)} found`)];if(Y.length&&D.length!==Y.length)return[new ge(Ue,D,`array length ${Y.length} expected, length ${D.length} found`)];if(Y["min-length"]&&D.length<Y["min-length"])return[new ge(Ue,D,`array length at least ${Y["min-length"]} expected, length ${D.length} found`)];let ut={type:Y.value,values:Y.values};Ce.$version<7&&(ut.function=Y.function),Us(Y.value)==="object"&&(ut=Y.value);let Tt=[];for(let Ft=0;Ft<D.length;Ft++)Tt=Tt.concat(Ge({array:D,arrayIndex:Ft,value:D[Ft],valueSpec:ut,validateSpec:q.validateSpec,style:pe,styleSpec:Ce,key:`${Ue}[${Ft}]`}));return Tt}function el(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=Us(Y);return Ce==="number"&&Y!=Y&&(Ce="NaN"),Ce!=="number"?[new ge(D,Y,`number expected, ${Ce} found`)]:"minimum"in pe&&Y<pe.minimum?[new ge(D,Y,`${Y} is less than the minimum value ${pe.minimum}`)]:"maximum"in pe&&Y>pe.maximum?[new ge(D,Y,`${Y} is greater than the maximum value ${pe.maximum}`)]:[]}function mf(q){let D=q.valueSpec,Y=il(q.value.type),pe,Ce,Ue,Ge={},ut=Y!=="categorical"&&q.value.property===void 0,Tt=!ut,Ft=Us(q.value.stops)==="array"&&Us(q.value.stops[0])==="array"&&Us(q.value.stops[0][0])==="object",$t=gu({key:q.key,value:q.value,valueSpec:q.styleSpec.function,validateSpec:q.validateSpec,style:q.style,styleSpec:q.styleSpec,objectElementValidators:{stops:function(zr){if(Y==="identity")return[new ge(zr.key,zr.value,'identity function may not have a "stops" property')];let Kr=[],la=zr.value;return Kr=Kr.concat(Jf({key:zr.key,value:la,valueSpec:zr.valueSpec,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,arrayElementValidator:lr})),Us(la)==="array"&&la.length===0&&Kr.push(new ge(zr.key,la,"array must have at least one stop")),Kr},default:function(zr){return zr.validateSpec({key:zr.key,value:zr.value,valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec})}}});return Y==="identity"&&ut&&$t.push(new ge(q.key,q.value,'missing required property "property"')),Y==="identity"||q.value.stops||$t.push(new ge(q.key,q.value,'missing required property "stops"')),Y==="exponential"&&q.valueSpec.expression&&!zc(q.valueSpec)&&$t.push(new ge(q.key,q.value,"exponential functions not supported")),q.styleSpec.$version>=8&&(Tt&&!Eu(q.valueSpec)?$t.push(new ge(q.key,q.value,"property functions not supported")):ut&&!wf(q.valueSpec)&&$t.push(new ge(q.key,q.value,"zoom functions not supported"))),Y!=="categorical"&&!Ft||q.value.property!==void 0||$t.push(new ge(q.key,q.value,'"property" property is required')),$t;function lr(zr){let Kr=[],la=zr.value,za=zr.key;if(Us(la)!=="array")return[new ge(za,la,`array expected, ${Us(la)} found`)];if(la.length!==2)return[new ge(za,la,`array length 2 expected, length ${la.length} found`)];if(Ft){if(Us(la[0])!=="object")return[new ge(za,la,`object expected, ${Us(la[0])} found`)];if(la[0].zoom===void 0)return[new ge(za,la,"object stop key must have zoom")];if(la[0].value===void 0)return[new ge(za,la,"object stop key must have value")];if(Ue&&Ue>il(la[0].zoom))return[new ge(za,la[0].zoom,"stop zoom values must appear in ascending order")];il(la[0].zoom)!==Ue&&(Ue=il(la[0].zoom),Ce=void 0,Ge={}),Kr=Kr.concat(gu({key:`${za}[0]`,value:la[0],valueSpec:{zoom:{}},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,objectElementValidators:{zoom:el,value:Ar}}))}else Kr=Kr.concat(Ar({key:`${za}[0]`,value:la[0],valueSpec:{},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec},la));return xc(mu(la[1]))?Kr.concat([new ge(`${za}[1]`,la[1],"expressions are not allowed in function stops.")]):Kr.concat(zr.validateSpec({key:`${za}[1]`,value:la[1],valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec}))}function Ar(zr,Kr){let la=Us(zr.value),za=il(zr.value),ja=zr.value!==null?zr.value:Kr;if(pe){if(la!==pe)return[new ge(zr.key,ja,`${la} stop domain type must match previous stop domain type ${pe}`)]}else pe=la;if(la!=="number"&&la!=="string"&&la!=="boolean")return[new ge(zr.key,ja,"stop domain value must be a number, string, or boolean")];if(la!=="number"&&Y!=="categorical"){let gi=`number expected, ${la} found`;return Eu(D)&&Y===void 0&&(gi+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ge(zr.key,ja,gi)]}return Y!=="categorical"||la!=="number"||isFinite(za)&&Math.floor(za)===za?Y!=="categorical"&&la==="number"&&Ce!==void 0&&za<Ce?[new ge(zr.key,ja,"stop domain values must appear in ascending order")]:(Ce=za,Y==="categorical"&&za in Ge?[new ge(zr.key,ja,"stop domain values must be unique")]:(Ge[za]=!0,[])):[new ge(zr.key,ja,`integer expected, found ${za}`)]}}function wc(q){let D=(q.expressionContext==="property"?vu:kl)(mu(q.value),q.valueSpec);if(D.result==="error")return D.value.map(pe=>new ge(`${q.key}${pe.key}`,q.value,pe.message));let Y=D.value.expression||D.value._styleExpression.expression;if(q.expressionContext==="property"&&q.propertyKey==="text-font"&&!Y.outputDefined())return[new ge(q.key,q.value,`Invalid data expression for "${q.propertyKey}". Output values must be contained as literals within the expression.`)];if(q.expressionContext==="property"&&q.propertyType==="layout"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with layout properties.')];if(q.expressionContext==="filter"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with filters.')];if(q.expressionContext&&q.expressionContext.indexOf("cluster")===0){if(!Df(Y,["zoom","feature-state"]))return[new ge(q.key,q.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(q.expressionContext==="cluster-initial"&&!uh(Y))return[new ge(q.key,q.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function ju(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=[];return Array.isArray(pe.values)?pe.values.indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${pe.values.join(", ")}], ${JSON.stringify(Y)} found`)):Object.keys(pe.values).indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${Object.keys(pe.values).join(", ")}], ${JSON.stringify(Y)} found`)),Ce}function Af(q){return Sh(mu(q.value))?wc(ce({},q,{expressionContext:"filter",valueSpec:{value:"boolean"}})):uc(q)}function uc(q){let D=q.value,Y=q.key;if(Us(D)!=="array")return[new ge(Y,D,`array expected, ${Us(D)} found`)];let pe=q.styleSpec,Ce,Ue=[];if(D.length<1)return[new ge(Y,D,"filter array must have at least 1 element")];switch(Ue=Ue.concat(ju({key:`${Y}[0]`,value:D[0],valueSpec:pe.filter_operator,style:q.style,styleSpec:q.styleSpec})),il(D[0])){case"<":case"<=":case">":case">=":D.length>=2&&il(D[1])==="$type"&&Ue.push(new ge(Y,D,`"$type" cannot be use with operator "${D[0]}"`));case"==":case"!=":D.length!==3&&Ue.push(new ge(Y,D,`filter array for operator "${D[0]}" must have 3 elements`));case"in":case"!in":D.length>=2&&(Ce=Us(D[1]),Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`)));for(let Ge=2;Ge<D.length;Ge++)Ce=Us(D[Ge]),il(D[1])==="$type"?Ue=Ue.concat(ju({key:`${Y}[${Ge}]`,value:D[Ge],valueSpec:pe.geometry_type,style:q.style,styleSpec:q.styleSpec})):Ce!=="string"&&Ce!=="number"&&Ce!=="boolean"&&Ue.push(new ge(`${Y}[${Ge}]`,D[Ge],`string, number, or boolean expected, ${Ce} found`));break;case"any":case"all":case"none":for(let Ge=1;Ge<D.length;Ge++)Ue=Ue.concat(uc({key:`${Y}[${Ge}]`,value:D[Ge],style:q.style,styleSpec:q.styleSpec}));break;case"has":case"!has":Ce=Us(D[1]),D.length!==2?Ue.push(new ge(Y,D,`filter array for "${D[0]}" operator must have 2 elements`)):Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`))}return Ue}function Qc(q,D){let Y=q.key,pe=q.validateSpec,Ce=q.style,Ue=q.styleSpec,Ge=q.value,ut=q.objectKey,Tt=Ue[`${D}_${q.layerType}`];if(!Tt)return[];let Ft=ut.match(/^(.*)-transition$/);if(D==="paint"&&Ft&&Tt[Ft[1]]&&Tt[Ft[1]].transition)return pe({key:Y,value:Ge,valueSpec:Ue.transition,style:Ce,styleSpec:Ue});let $t=q.valueSpec||Tt[ut];if(!$t)return[new ge(Y,Ge,`unknown property "${ut}"`)];let lr;if(Us(Ge)==="string"&&Eu($t)&&!$t.tokens&&(lr=/^{([^}]+)}$/.exec(Ge)))return[new ge(Y,Ge,`"${ut}" does not support interpolation syntax
+Use an identity property function instead: \`{ "type": "identity", "property": ${JSON.stringify(lr[1])} }\`.`)];let Ar=[];return q.layerType==="symbol"&&(ut==="text-field"&&Ce&&!Ce.glyphs&&Ar.push(new ge(Y,Ge,'use of "text-field" requires a style "glyphs" property')),ut==="text-font"&&Kf(mu(Ge))&&il(Ge.type)==="identity"&&Ar.push(new ge(Y,Ge,'"text-font" does not support identity functions'))),Ar.concat(pe({key:q.key,value:Ge,valueSpec:$t,style:Ce,styleSpec:Ue,expressionContext:"property",propertyType:D,propertyKey:ut}))}function $f(q){return Qc(q,"paint")}function Vl(q){return Qc(q,"layout")}function Qf(q){let D=[],Y=q.value,pe=q.key,Ce=q.style,Ue=q.styleSpec;Y.type||Y.ref||D.push(new ge(pe,Y,'either "type" or "ref" is required'));let Ge=il(Y.type),ut=il(Y.ref);if(Y.id){let Tt=il(Y.id);for(let Ft=0;Ft<q.arrayIndex;Ft++){let $t=Ce.layers[Ft];il($t.id)===Tt&&D.push(new ge(pe,Y.id,`duplicate layer id "${Y.id}", previously used at line ${$t.id.__line__}`))}}if("ref"in Y){let Tt;["type","source","source-layer","filter","layout"].forEach(Ft=>{Ft in Y&&D.push(new ge(pe,Y[Ft],`"${Ft}" is prohibited for ref layers`))}),Ce.layers.forEach(Ft=>{il(Ft.id)===ut&&(Tt=Ft)}),Tt?Tt.ref?D.push(new ge(pe,Y.ref,"ref cannot reference another ref layer")):Ge=il(Tt.type):D.push(new ge(pe,Y.ref,`ref layer "${ut}" not found`))}else if(Ge!=="background")if(Y.source){let Tt=Ce.sources&&Ce.sources[Y.source],Ft=Tt&&il(Tt.type);Tt?Ft==="vector"&&Ge==="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster source`)):Ft!=="raster-dem"&&Ge==="hillshade"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster-dem source`)):Ft==="raster"&&Ge!=="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a vector source`)):Ft!=="vector"||Y["source-layer"]?Ft==="raster-dem"&&Ge!=="hillshade"?D.push(new ge(pe,Y.source,"raster-dem source can only be used with layer type 'hillshade'.")):Ge!=="line"||!Y.paint||!Y.paint["line-gradient"]||Ft==="geojson"&&Tt.lineMetrics||D.push(new ge(pe,Y,`layer "${Y.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):D.push(new ge(pe,Y,`layer "${Y.id}" must specify a "source-layer"`)):D.push(new ge(pe,Y.source,`source "${Y.source}" not found`))}else D.push(new ge(pe,Y,'missing required property "source"'));return D=D.concat(gu({key:pe,value:Y,valueSpec:Ue.layer,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,objectElementValidators:{"*":()=>[],type:()=>q.validateSpec({key:`${pe}.type`,value:Y.type,valueSpec:Ue.layer.type,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,object:Y,objectKey:"type"}),filter:Af,layout:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>Vl(ce({layerType:Ge},Ft))}}),paint:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>$f(ce({layerType:Ge},Ft))}})}})),D}function Vu(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="string"?[new ge(Y,D,`string expected, ${pe} found`)]:[]}let Tc={promoteId:function({key:q,value:D}){if(Us(D)==="string")return Vu({key:q,value:D});{let Y=[];for(let pe in D)Y.push(...Vu({key:`${q}.${pe}`,value:D[pe]}));return Y}}};function cc(q){let D=q.value,Y=q.key,pe=q.styleSpec,Ce=q.style,Ue=q.validateSpec;if(!D.type)return[new ge(Y,D,'"type" is required')];let Ge=il(D.type),ut;switch(Ge){case"vector":case"raster":return ut=gu({key:Y,value:D,valueSpec:pe[`source_${Ge.replace("-","_")}`],style:q.style,styleSpec:pe,objectElementValidators:Tc,validateSpec:Ue}),ut;case"raster-dem":return ut=function(Tt){var Ft;let $t=(Ft=Tt.sourceName)!==null&&Ft!==void 0?Ft:"",lr=Tt.value,Ar=Tt.styleSpec,zr=Ar.source_raster_dem,Kr=Tt.style,la=[],za=Us(lr);if(lr===void 0)return la;if(za!=="object")return la.push(new ge("source_raster_dem",lr,`object expected, ${za} found`)),la;let ja=il(lr.encoding)==="custom",gi=["redFactor","greenFactor","blueFactor","baseShift"],ei=Tt.value.encoding?`"${Tt.value.encoding}"`:"Default";for(let hi in lr)!ja&&gi.includes(hi)?la.push(new ge(hi,lr[hi],`In "${$t}": "${hi}" is only valid when "encoding" is set to "custom". ${ei} encoding found`)):zr[hi]?la=la.concat(Tt.validateSpec({key:hi,value:lr[hi],valueSpec:zr[hi],validateSpec:Tt.validateSpec,style:Kr,styleSpec:Ar})):la.push(new ge(hi,lr[hi],`unknown property "${hi}"`));return la}({sourceName:Y,value:D,style:q.style,styleSpec:pe,validateSpec:Ue}),ut;case"geojson":if(ut=gu({key:Y,value:D,valueSpec:pe.source_geojson,style:Ce,styleSpec:pe,validateSpec:Ue,objectElementValidators:Tc}),D.cluster)for(let Tt in D.clusterProperties){let[Ft,$t]=D.clusterProperties[Tt],lr=typeof Ft=="string"?[Ft,["accumulated"],["get",Tt]]:Ft;ut.push(...wc({key:`${Y}.${Tt}.map`,value:$t,validateSpec:Ue,expressionContext:"cluster-map"})),ut.push(...wc({key:`${Y}.${Tt}.reduce`,value:lr,validateSpec:Ue,expressionContext:"cluster-reduce"}))}return ut;case"video":return gu({key:Y,value:D,valueSpec:pe.source_video,style:Ce,validateSpec:Ue,styleSpec:pe});case"image":return gu({key:Y,value:D,valueSpec:pe.source_image,style:Ce,validateSpec:Ue,styleSpec:pe});case"canvas":return[new ge(Y,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return ju({key:`${Y}.type`,value:D.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:Ce,validateSpec:Ue,styleSpec:pe})}}function Cl(q){let D=q.value,Y=q.styleSpec,pe=Y.light,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("light",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D){let Tt=ut.match(/^(.*)-transition$/);Ue=Ue.concat(Tt&&pe[Tt[1]]&&pe[Tt[1]].transition?q.validateSpec({key:ut,value:D[ut],valueSpec:Y.transition,validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)])}return Ue}function iu(q){let D=q.value,Y=q.styleSpec,pe=Y.sky,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("sky",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge}function fc(q){let D=q.value,Y=q.styleSpec,pe=Y.terrain,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("terrain",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D)Ue=Ue.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ue}function Oc(q){let D=[],Y=q.value,pe=q.key;if(Array.isArray(Y)){let Ce=[],Ue=[];for(let Ge in Y)Y[Ge].id&&Ce.includes(Y[Ge].id)&&D.push(new ge(pe,Y,`all the sprites' ids must be unique, but ${Y[Ge].id} is duplicated`)),Ce.push(Y[Ge].id),Y[Ge].url&&Ue.includes(Y[Ge].url)&&D.push(new ge(pe,Y,`all the sprites' URLs must be unique, but ${Y[Ge].url} is duplicated`)),Ue.push(Y[Ge].url),D=D.concat(gu({key:`${pe}[${Ge}]`,value:Y[Ge],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:q.validateSpec}));return D}return Vu({key:pe,value:Y})}let Qu={"*":()=>[],array:Jf,boolean:function(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="boolean"?[new ge(Y,D,`boolean expected, ${pe} found`)]:[]},number:el,color:function(q){let D=q.key,Y=q.value,pe=Us(Y);return pe!=="string"?[new ge(D,Y,`color expected, ${pe} found`)]:Ut.parse(String(Y))?[]:[new ge(D,Y,`color expected, "${Y}" found`)]},constants:Ff,enum:ju,filter:Af,function:mf,layer:Qf,object:gu,source:cc,light:Cl,sky:iu,terrain:fc,projection:function(q){let D=q.value,Y=q.styleSpec,pe=Y.projection,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("projection",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge},string:Vu,formatted:function(q){return Vu(q).length===0?[]:wc(q)},resolvedImage:function(q){return Vu(q).length===0?[]:wc(q)},padding:function(q){let D=q.key,Y=q.value;if(Us(Y)==="array"){if(Y.length<1||Y.length>4)return[new ge(D,Y,`padding requires 1 to 4 values; ${Y.length} values found`)];let pe={type:"number"},Ce=[];for(let Ue=0;Ue<Y.length;Ue++)Ce=Ce.concat(q.validateSpec({key:`${D}[${Ue}]`,value:Y[Ue],validateSpec:q.validateSpec,valueSpec:pe}));return Ce}return el({key:D,value:Y,valueSpec:{}})},variableAnchorOffsetCollection:function(q){let D=q.key,Y=q.value,pe=Us(Y),Ce=q.styleSpec;if(pe!=="array"||Y.length<1||Y.length%2!=0)return[new ge(D,Y,"variableAnchorOffsetCollection requires a non-empty array of even length")];let Ue=[];for(let Ge=0;Ge<Y.length;Ge+=2)Ue=Ue.concat(ju({key:`${D}[${Ge}]`,value:Y[Ge],valueSpec:Ce.layout_symbol["text-anchor"]})),Ue=Ue.concat(Jf({key:`${D}[${Ge+1}]`,value:Y[Ge+1],valueSpec:{length:2,value:"number"},validateSpec:q.validateSpec,style:q.style,styleSpec:Ce}));return Ue},sprite:Oc};function ef(q){let D=q.value,Y=q.valueSpec,pe=q.styleSpec;return q.validateSpec=ef,Y.expression&&Kf(il(D))?mf(q):Y.expression&&xc(mu(D))?wc(q):Y.type&&Qu[Y.type]?Qu[Y.type](q):gu(ce({},q,{valueSpec:Y.type?pe[Y.type]:Y}))}function Zt(q){let D=q.value,Y=q.key,pe=Vu(q);return pe.length||(D.indexOf("{fontstack}")===-1&&pe.push(new ge(Y,D,'"glyphs" url must include a "{fontstack}" token')),D.indexOf("{range}")===-1&&pe.push(new ge(Y,D,'"glyphs" url must include a "{range}" token'))),pe}function fr(q,D=ie){let Y=[];return Y=Y.concat(ef({key:"",value:q,valueSpec:D.$root,styleSpec:D,style:q,validateSpec:ef,objectElementValidators:{glyphs:Zt,"*":()=>[]}})),q.constants&&(Y=Y.concat(Ff({key:"constants",value:q.constants,style:q,styleSpec:D,validateSpec:ef}))),qr(Y)}function Yr(q){return function(D){return q(ps(wo({},D),{validateSpec:ef}))}}function qr(q){return[].concat(q).sort((D,Y)=>D.line-Y.line)}function ba(q){return function(...D){return qr(q.apply(this,D))}}fr.source=ba(Yr(cc)),fr.sprite=ba(Yr(Oc)),fr.glyphs=ba(Yr(Zt)),fr.light=ba(Yr(Cl)),fr.sky=ba(Yr(iu)),fr.terrain=ba(Yr(fc)),fr.layer=ba(Yr(Qf)),fr.filter=ba(Yr(Af)),fr.paintProperty=ba(Yr($f)),fr.layoutProperty=ba(Yr(Vl));let Ka=fr,oi=Ka.light,yi=Ka.sky,ki=Ka.paintProperty,Bi=Ka.layoutProperty;function li(q,D){let Y=!1;if(D&&D.length)for(let pe of D)q.fire(new j(new Error(pe.message))),Y=!0;return Y}class _i{constructor(D,Y,pe){let Ce=this.cells=[];if(D instanceof ArrayBuffer){this.arrayBuffer=D;let Ge=new Int32Array(this.arrayBuffer);D=Ge[0],this.d=(Y=Ge[1])+2*(pe=Ge[2]);for(let Tt=0;Tt<this.d*this.d;Tt++){let Ft=Ge[3+Tt],$t=Ge[3+Tt+1];Ce.push(Ft===$t?null:Ge.subarray(Ft,$t))}let ut=Ge[3+Ce.length+1];this.keys=Ge.subarray(Ge[3+Ce.length],ut),this.bboxes=Ge.subarray(ut),this.insert=this._insertReadonly}else{this.d=Y+2*pe;for(let Ge=0;Ge<this.d*this.d;Ge++)Ce.push([]);this.keys=[],this.bboxes=[]}this.n=Y,this.extent=D,this.padding=pe,this.scale=Y/D,this.uid=0;let Ue=pe/Y*D;this.min=-Ue,this.max=D+Ue}insert(D,Y,pe,Ce,Ue){this._forEachCell(Y,pe,Ce,Ue,this._insertCell,this.uid++,void 0,void 0),this.keys.push(D),this.bboxes.push(Y),this.bboxes.push(pe),this.bboxes.push(Ce),this.bboxes.push(Ue)}_insertReadonly(){throw new Error("Cannot insert into a GridIndex created from an ArrayBuffer.")}_insertCell(D,Y,pe,Ce,Ue,Ge){this.cells[Ue].push(Ge)}query(D,Y,pe,Ce,Ue){let Ge=this.min,ut=this.max;if(D<=Ge&&Y<=Ge&&ut<=pe&&ut<=Ce&&!Ue)return Array.prototype.slice.call(this.keys);{let Tt=[];return this._forEachCell(D,Y,pe,Ce,this._queryCell,Tt,{},Ue),Tt}}_queryCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this.cells[Ue];if(Ft!==null){let $t=this.keys,lr=this.bboxes;for(let Ar=0;Ar<Ft.length;Ar++){let zr=Ft[Ar];if(ut[zr]===void 0){let Kr=4*zr;(Tt?Tt(lr[Kr+0],lr[Kr+1],lr[Kr+2],lr[Kr+3]):D<=lr[Kr+2]&&Y<=lr[Kr+3]&&pe>=lr[Kr+0]&&Ce>=lr[Kr+1])?(ut[zr]=!0,Ge.push($t[zr])):ut[zr]=!1}}}}_forEachCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this._convertToCellCoord(D),$t=this._convertToCellCoord(Y),lr=this._convertToCellCoord(pe),Ar=this._convertToCellCoord(Ce);for(let zr=Ft;zr<=lr;zr++)for(let Kr=$t;Kr<=Ar;Kr++){let la=this.d*Kr+zr;if((!Tt||Tt(this._convertFromCellCoord(zr),this._convertFromCellCoord(Kr),this._convertFromCellCoord(zr+1),this._convertFromCellCoord(Kr+1)))&&Ue.call(this,D,Y,pe,Ce,la,Ge,ut,Tt))return}}_convertFromCellCoord(D){return(D-this.padding)/this.scale}_convertToCellCoord(D){return Math.max(0,Math.min(this.d-1,Math.floor(D*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let D=this.cells,Y=3+this.cells.length+1+1,pe=0;for(let Ge=0;Ge<this.cells.length;Ge++)pe+=this.cells[Ge].length;let Ce=new Int32Array(Y+pe+this.keys.length+this.bboxes.length);Ce[0]=this.extent,Ce[1]=this.n,Ce[2]=this.padding;let Ue=Y;for(let Ge=0;Ge<D.length;Ge++){let ut=D[Ge];Ce[3+Ge]=Ue,Ce.set(ut,Ue),Ue+=ut.length}return Ce[3+D.length]=Ue,Ce.set(this.keys,Ue),Ue+=this.keys.length,Ce[3+D.length+1]=Ue,Ce.set(this.bboxes,Ue),Ue+=this.bboxes.length,Ce.buffer}static serialize(D,Y){let pe=D.toArrayBuffer();return Y&&Y.push(pe),{buffer:pe}}static deserialize(D){return new _i(D.buffer)}}let vi={};function ti(q,D,Y={}){if(vi[q])throw new Error(`${q} is already registered.`);Object.defineProperty(D,"_classRegistryKey",{value:q,writeable:!1}),vi[q]={klass:D,omit:Y.omit||[],shallow:Y.shallow||[]}}ti("Object",Object),ti("TransferableGridIndex",_i),ti("Color",Ut),ti("Error",Error),ti("AJAXError",he),ti("ResolvedImage",qa),ti("StylePropertyFunction",xl),ti("StyleExpression",Cu,{omit:["_evaluator"]}),ti("ZoomDependentExpression",$u),ti("ZoomConstantExpression",Fc),ti("CompoundExpression",Fl,{omit:["_evaluate"]});for(let q in pf)pf[q]._classRegistryKey||ti(`Expression_${q}`,pf[q]);function rn(q){return q&&typeof ArrayBuffer<"u"&&(q instanceof ArrayBuffer||q.constructor&&q.constructor.name==="ArrayBuffer")}function Kn(q){return q.$name||q.constructor._classRegistryKey}function Wn(q){return!function(D){if(D===null||typeof D!="object")return!1;let Y=Kn(D);return!(!Y||Y==="Object")}(q)&&(q==null||typeof q=="boolean"||typeof q=="number"||typeof q=="string"||q instanceof Boolean||q instanceof Number||q instanceof String||q instanceof Date||q instanceof RegExp||q instanceof Blob||q instanceof Error||rn(q)||F(q)||ArrayBuffer.isView(q)||q instanceof ImageData)}function Jn(q,D){if(Wn(q))return(rn(q)||F(q))&&D&&D.push(q),ArrayBuffer.isView(q)&&D&&D.push(q.buffer),q instanceof ImageData&&D&&D.push(q.data.buffer),q;if(Array.isArray(q)){let Ue=[];for(let Ge of q)Ue.push(Jn(Ge,D));return Ue}if(typeof q!="object")throw new Error("can't serialize object of type "+typeof q);let Y=Kn(q);if(!Y)throw new Error(`can't serialize object of unregistered class ${q.constructor.name}`);if(!vi[Y])throw new Error(`${Y} is not registered.`);let{klass:pe}=vi[Y],Ce=pe.serialize?pe.serialize(q,D):{};if(pe.serialize){if(D&&Ce===D[D.length-1])throw new Error("statically serialized object won't survive transfer of $name property")}else{for(let Ue in q){if(!q.hasOwnProperty(Ue)||vi[Y].omit.indexOf(Ue)>=0)continue;let Ge=q[Ue];Ce[Ue]=vi[Y].shallow.indexOf(Ue)>=0?Ge:Jn(Ge,D)}q instanceof Error&&(Ce.message=q.message)}if(Ce.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(Ce.$name=Y),Ce}function no(q){if(Wn(q))return q;if(Array.isArray(q))return q.map(no);if(typeof q!="object")throw new Error("can't deserialize object of type "+typeof q);let D=Kn(q)||"Object";if(!vi[D])throw new Error(`can't deserialize unregistered class ${D}`);let{klass:Y}=vi[D];if(!Y)throw new Error(`can't deserialize unregistered class ${D}`);if(Y.deserialize)return Y.deserialize(q);let pe=Object.create(Y.prototype);for(let Ce of Object.keys(q)){if(Ce==="$name")continue;let Ue=q[Ce];pe[Ce]=vi[D].shallow.indexOf(Ce)>=0?Ue:no(Ue)}return pe}class en{constructor(){this.first=!0}update(D,Y){let pe=Math.floor(D);return this.first?(this.first=!1,this.lastIntegerZoom=pe,this.lastIntegerZoomTime=0,this.lastZoom=D,this.lastFloorZoom=pe,!0):(this.lastFloorZoom>pe?(this.lastIntegerZoom=pe+1,this.lastIntegerZoomTime=Y):this.lastFloorZoom<pe&&(this.lastIntegerZoom=pe,this.lastIntegerZoomTime=Y),D!==this.lastZoom&&(this.lastZoom=D,this.lastFloorZoom=pe,!0))}}let Ri={"Latin-1 Supplement":q=>q>=128&&q<=255,"Hangul Jamo":q=>q>=4352&&q<=4607,Khmer:q=>q>=6016&&q<=6143,"General Punctuation":q=>q>=8192&&q<=8303,"Letterlike Symbols":q=>q>=8448&&q<=8527,"Number Forms":q=>q>=8528&&q<=8591,"Miscellaneous Technical":q=>q>=8960&&q<=9215,"Control Pictures":q=>q>=9216&&q<=9279,"Optical Character Recognition":q=>q>=9280&&q<=9311,"Enclosed Alphanumerics":q=>q>=9312&&q<=9471,"Geometric Shapes":q=>q>=9632&&q<=9727,"Miscellaneous Symbols":q=>q>=9728&&q<=9983,"Miscellaneous Symbols and Arrows":q=>q>=11008&&q<=11263,"Ideographic Description Characters":q=>q>=12272&&q<=12287,"CJK Symbols and Punctuation":q=>q>=12288&&q<=12351,Katakana:q=>q>=12448&&q<=12543,Kanbun:q=>q>=12688&&q<=12703,"CJK Strokes":q=>q>=12736&&q<=12783,"Enclosed CJK Letters and Months":q=>q>=12800&&q<=13055,"CJK Compatibility":q=>q>=13056&&q<=13311,"Yijing Hexagram Symbols":q=>q>=19904&&q<=19967,"Private Use Area":q=>q>=57344&&q<=63743,"Vertical Forms":q=>q>=65040&&q<=65055,"CJK Compatibility Forms":q=>q>=65072&&q<=65103,"Small Form Variants":q=>q>=65104&&q<=65135,"Halfwidth and Fullwidth Forms":q=>q>=65280&&q<=65519};function co(q){for(let D of q)if(vs(D.charCodeAt(0)))return!0;return!1}function Wo(q){for(let D of q)if(!Ms(D.charCodeAt(0)))return!1;return!0}function bs(q){let D=q.map(Y=>{try{return new RegExp(`\\p{sc=${Y}}`,"u").source}catch{return null}}).filter(Y=>Y);return new RegExp(D.join("|"),"u")}let Xs=bs(["Arab","Dupl","Mong","Ougr","Syrc"]);function Ms(q){return!Xs.test(String.fromCodePoint(q))}let Hs=bs(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function vs(q){return!(q!==746&&q!==747&&(q<4352||!(Ri["CJK Compatibility Forms"](q)&&!(q>=65097&&q<=65103)||Ri["CJK Compatibility"](q)||Ri["CJK Strokes"](q)||!(!Ri["CJK Symbols and Punctuation"](q)||q>=12296&&q<=12305||q>=12308&&q<=12319||q===12336)||Ri["Enclosed CJK Letters and Months"](q)||Ri["Ideographic Description Characters"](q)||Ri.Kanbun(q)||Ri.Katakana(q)&&q!==12540||!(!Ri["Halfwidth and Fullwidth Forms"](q)||q===65288||q===65289||q===65293||q>=65306&&q<=65310||q===65339||q===65341||q===65343||q>=65371&&q<=65503||q===65507||q>=65512&&q<=65519)||!(!Ri["Small Form Variants"](q)||q>=65112&&q<=65118||q>=65123&&q<=65126)||Ri["Vertical Forms"](q)||Ri["Yijing Hexagram Symbols"](q)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(q))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(q))||Hs.test(String.fromCodePoint(q)))))}function Il(q){return!(vs(q)||function(D){return!!(Ri["Latin-1 Supplement"](D)&&(D===167||D===169||D===174||D===177||D===188||D===189||D===190||D===215||D===247)||Ri["General Punctuation"](D)&&(D===8214||D===8224||D===8225||D===8240||D===8241||D===8251||D===8252||D===8258||D===8263||D===8264||D===8265||D===8273)||Ri["Letterlike Symbols"](D)||Ri["Number Forms"](D)||Ri["Miscellaneous Technical"](D)&&(D>=8960&&D<=8967||D>=8972&&D<=8991||D>=8996&&D<=9e3||D===9003||D>=9085&&D<=9114||D>=9150&&D<=9165||D===9167||D>=9169&&D<=9179||D>=9186&&D<=9215)||Ri["Control Pictures"](D)&&D!==9251||Ri["Optical Character Recognition"](D)||Ri["Enclosed Alphanumerics"](D)||Ri["Geometric Shapes"](D)||Ri["Miscellaneous Symbols"](D)&&!(D>=9754&&D<=9759)||Ri["Miscellaneous Symbols and Arrows"](D)&&(D>=11026&&D<=11055||D>=11088&&D<=11097||D>=11192&&D<=11243)||Ri["CJK Symbols and Punctuation"](D)||Ri.Katakana(D)||Ri["Private Use Area"](D)||Ri["CJK Compatibility Forms"](D)||Ri["Small Form Variants"](D)||Ri["Halfwidth and Fullwidth Forms"](D)||D===8734||D===8756||D===8757||D>=9984&&D<=10087||D>=10102&&D<=10131||D===65532||D===65533)}(q))}let fl=bs(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function tl(q){return fl.test(String.fromCodePoint(q))}function Ln(q,D){return!(!D&&tl(q)||q>=2304&&q<=3583||q>=3840&&q<=4255||Ri.Khmer(q))}function Ao(q){for(let D of q)if(tl(D.charCodeAt(0)))return!0;return!1}let js=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(q){this.pluginStatus=q.pluginStatus,this.pluginURL=q.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(q){this.applyArabicShaping=q.applyArabicShaping,this.processBidirectionalText=q.processBidirectionalText,this.processStyledBidirectionalText=q.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Ts{constructor(D,Y){this.zoom=D,Y?(this.now=Y.now,this.fadeDuration=Y.fadeDuration,this.zoomHistory=Y.zoomHistory,this.transition=Y.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new en,this.transition={})}isSupportedScript(D){return function(Y,pe){for(let Ce of Y)if(!Ln(Ce.charCodeAt(0),pe))return!1;return!0}(D,js.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let D=this.zoom,Y=D-Math.floor(D),pe=this.crossFadingFactor();return D>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:Y+(1-Y)*pe}:{fromScale:.5,toScale:1,t:1-(1-pe)*Y}}}class nu{constructor(D,Y){this.property=D,this.value=Y,this.expression=function(pe,Ce){if(Kf(pe))return new xl(pe,Ce);if(xc(pe)){let Ue=vu(pe,Ce);if(Ue.result==="error")throw new Error(Ue.value.map(Ge=>`${Ge.key}: ${Ge.message}`).join(", "));return Ue.value}{let Ue=pe;return Ce.type==="color"&&typeof pe=="string"?Ue=Ut.parse(pe):Ce.type!=="padding"||typeof pe!="number"&&!Array.isArray(pe)?Ce.type==="variableAnchorOffsetCollection"&&Array.isArray(pe)&&(Ue=Fa.parse(pe)):Ue=Xr.parse(pe),{kind:"constant",evaluate:()=>Ue}}}(Y===void 0?D.specification.default:Y,D.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(D,Y,pe){return this.property.possiblyEvaluate(this,D,Y,pe)}}class Pu{constructor(D){this.property=D,this.value=new nu(D,void 0)}transitioned(D,Y){return new tf(this.property,this.value,Y,E({},D.transition,this.transition),D.now)}untransitioned(){return new tf(this.property,this.value,null,{},0)}}class ec{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitionablePropertyValues)}getValue(D){return u(this._values[D].value.value)}setValue(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].value=new nu(this._values[D].property,Y===null?void 0:u(Y))}getTransition(D){return u(this._values[D].transition)}setTransition(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].transition=u(Y)||void 0}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe);let Ce=this.getTransition(Y);Ce!==void 0&&(D[`${Y}-transition`]=Ce)}return D}transitioned(D,Y){let pe=new yu(this._properties);for(let Ce of Object.keys(this._values))pe._values[Ce]=this._values[Ce].transitioned(D,Y._values[Ce]);return pe}untransitioned(){let D=new yu(this._properties);for(let Y of Object.keys(this._values))D._values[Y]=this._values[Y].untransitioned();return D}}class tf{constructor(D,Y,pe,Ce,Ue){this.property=D,this.value=Y,this.begin=Ue+Ce.delay||0,this.end=this.begin+Ce.duration||0,D.specification.transition&&(Ce.delay||Ce.duration)&&(this.prior=pe)}possiblyEvaluate(D,Y,pe){let Ce=D.now||0,Ue=this.value.possiblyEvaluate(D,Y,pe),Ge=this.prior;if(Ge){if(Ce>this.end)return this.prior=null,Ue;if(this.value.isDataDriven())return this.prior=null,Ue;if(Ce<this.begin)return Ge.possiblyEvaluate(D,Y,pe);{let ut=(Ce-this.begin)/(this.end-this.begin);return this.property.interpolate(Ge.possiblyEvaluate(D,Y,pe),Ue,function(Tt){if(Tt<=0)return 0;if(Tt>=1)return 1;let Ft=Tt*Tt,$t=Ft*Tt;return 4*(Tt<.5?$t:3*(Tt-Ft)+$t-.75)}(ut))}}return Ue}}class yu{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitioningPropertyValues)}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}hasTransition(){for(let D of Object.keys(this._values))if(this._values[D].prior)return!0;return!1}}class Bc{constructor(D){this._properties=D,this._values=Object.create(D.defaultPropertyValues)}hasValue(D){return this._values[D].value!==void 0}getValue(D){return u(this._values[D].value)}setValue(D,Y){this._values[D]=new nu(this._values[D].property,Y===null?void 0:u(Y))}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe)}return D}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}}class Iu{constructor(D,Y,pe){this.property=D,this.value=Y,this.parameters=pe}isConstant(){return this.value.kind==="constant"}constantOr(D){return this.value.kind==="constant"?this.value.value:D}evaluate(D,Y,pe,Ce){return this.property.evaluate(this.value,this.parameters,D,Y,pe,Ce)}}class Ac{constructor(D){this._properties=D,this._values=Object.create(D.defaultPossiblyEvaluatedValues)}get(D){return this._values[D]}}class ro{constructor(D){this.specification=D}possiblyEvaluate(D,Y){if(D.isDataDriven())throw new Error("Value should not be data driven");return D.expression.evaluate(Y)}interpolate(D,Y,pe){let Ce=$n[this.specification.type];return Ce?Ce(D,Y,pe):D}}class Po{constructor(D,Y){this.specification=D,this.overrides=Y}possiblyEvaluate(D,Y,pe,Ce){return new Iu(this,D.expression.kind==="constant"||D.expression.kind==="camera"?{kind:"constant",value:D.expression.evaluate(Y,null,{},pe,Ce)}:D.expression,Y)}interpolate(D,Y,pe){if(D.value.kind!=="constant"||Y.value.kind!=="constant")return D;if(D.value.value===void 0||Y.value.value===void 0)return new Iu(this,{kind:"constant",value:void 0},D.parameters);let Ce=$n[this.specification.type];if(Ce){let Ue=Ce(D.value.value,Y.value.value,pe);return new Iu(this,{kind:"constant",value:Ue},D.parameters)}return D}evaluate(D,Y,pe,Ce,Ue,Ge){return D.kind==="constant"?D.value:D.evaluate(Y,pe,Ce,Ue,Ge)}}class Nc extends Po{possiblyEvaluate(D,Y,pe,Ce){if(D.value===void 0)return new Iu(this,{kind:"constant",value:void 0},Y);if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce),Ge=D.property.specification.type==="resolvedImage"&&typeof Ue!="string"?Ue.name:Ue,ut=this._calculate(Ge,Ge,Ge,Y);return new Iu(this,{kind:"constant",value:ut},Y)}if(D.expression.kind==="camera"){let Ue=this._calculate(D.expression.evaluate({zoom:Y.zoom-1}),D.expression.evaluate({zoom:Y.zoom}),D.expression.evaluate({zoom:Y.zoom+1}),Y);return new Iu(this,{kind:"constant",value:Ue},Y)}return new Iu(this,D.expression,Y)}evaluate(D,Y,pe,Ce,Ue,Ge){if(D.kind==="source"){let ut=D.evaluate(Y,pe,Ce,Ue,Ge);return this._calculate(ut,ut,ut,Y)}return D.kind==="composite"?this._calculate(D.evaluate({zoom:Math.floor(Y.zoom)-1},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)+1},pe,Ce),Y):D.value}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class hc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){if(D.value!==void 0){if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce);return this._calculate(Ue,Ue,Ue,Y)}return this._calculate(D.expression.evaluate(new Ts(Math.floor(Y.zoom-1),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom+1),Y)),Y)}}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class pc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){return!!D.expression.evaluate(Y,null,{},pe,Ce)}interpolate(){return!1}}class Oe{constructor(D){this.properties=D,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let Y in D){let pe=D[Y];pe.specification.overridable&&this.overridableProperties.push(Y);let Ce=this.defaultPropertyValues[Y]=new nu(pe,void 0),Ue=this.defaultTransitionablePropertyValues[Y]=new Pu(pe);this.defaultTransitioningPropertyValues[Y]=Ue.untransitioned(),this.defaultPossiblyEvaluatedValues[Y]=Ce.possiblyEvaluate({})}}}ti("DataDrivenProperty",Po),ti("DataConstantProperty",ro),ti("CrossFadedDataDrivenProperty",Nc),ti("CrossFadedProperty",hc),ti("ColorRampProperty",pc);let R="-transition";class ae extends ee{constructor(D,Y){if(super(),this.id=D.id,this.type=D.type,this._featureFilter={filter:()=>!0,needGeometry:!1},D.type!=="custom"&&(this.metadata=D.metadata,this.minzoom=D.minzoom,this.maxzoom=D.maxzoom,D.type!=="background"&&(this.source=D.source,this.sourceLayer=D["source-layer"],this.filter=D.filter),Y.layout&&(this._unevaluatedLayout=new Bc(Y.layout)),Y.paint)){this._transitionablePaint=new ec(Y.paint);for(let pe in D.paint)this.setPaintProperty(pe,D.paint[pe],{validate:!1});for(let pe in D.layout)this.setLayoutProperty(pe,D.layout[pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(Y.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(D){return D==="visibility"?this.visibility:this._unevaluatedLayout.getValue(D)}setLayoutProperty(D,Y,pe={}){Y!=null&&this._validate(Bi,`layers.${this.id}.layout.${D}`,D,Y,pe)||(D!=="visibility"?this._unevaluatedLayout.setValue(D,Y):this.visibility=Y)}getPaintProperty(D){return D.endsWith(R)?this._transitionablePaint.getTransition(D.slice(0,-11)):this._transitionablePaint.getValue(D)}setPaintProperty(D,Y,pe={}){if(Y!=null&&this._validate(ki,`layers.${this.id}.paint.${D}`,D,Y,pe))return!1;if(D.endsWith(R))return this._transitionablePaint.setTransition(D.slice(0,-11),Y||void 0),!1;{let Ce=this._transitionablePaint._values[D],Ue=Ce.property.specification["property-type"]==="cross-faded-data-driven",Ge=Ce.value.isDataDriven(),ut=Ce.value;this._transitionablePaint.setValue(D,Y),this._handleSpecialPaintPropertyUpdate(D);let Tt=this._transitionablePaint._values[D].value;return Tt.isDataDriven()||Ge||Ue||this._handleOverridablePaintPropertyUpdate(D,ut,Tt)}}_handleSpecialPaintPropertyUpdate(D){}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!1}isHidden(D){return!!(this.minzoom&&D<this.minzoom)||!!(this.maxzoom&&D>=this.maxzoom)||this.visibility==="none"}updateTransitions(D){this._transitioningPaint=this._transitionablePaint.transitioned(D,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(D,Y){D.getCrossfadeParameters&&(this._crossfadeParameters=D.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(D,void 0,Y)),this.paint=this._transitioningPaint.possiblyEvaluate(D,void 0,Y)}serialize(){let D={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(D.layout=D.layout||{},D.layout.visibility=this.visibility),d(D,(Y,pe)=>!(Y===void 0||pe==="layout"&&!Object.keys(Y).length||pe==="paint"&&!Object.keys(Y).length))}_validate(D,Y,pe,Ce,Ue={}){return(!Ue||Ue.validate!==!1)&&li(this,D.call(Ka,{key:Y,layerType:this.type,objectKey:pe,value:Ce,styleSpec:ie,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let D in this.paint._values){let Y=this.paint.get(D);if(Y instanceof Iu&&Eu(Y.property.specification)&&(Y.value.kind==="source"||Y.value.kind==="composite")&&Y.value.isStateDependent)return!0}return!1}}let we={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Se{constructor(D,Y){this._structArray=D,this._pos1=Y*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class De{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(D,Y){return D._trim(),Y&&(D.isTransferred=!0,Y.push(D.arrayBuffer)),{length:D.length,arrayBuffer:D.arrayBuffer}}static deserialize(D){let Y=Object.create(this.prototype);return Y.arrayBuffer=D.arrayBuffer,Y.length=D.length,Y.capacity=D.arrayBuffer.byteLength/Y.bytesPerElement,Y._refreshViews(),Y}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(D){this.reserve(D),this.length=D}reserve(D){if(D>this.capacity){this.capacity=Math.max(D,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let Y=this.uint8;this._refreshViews(),Y&&this.uint8.set(Y)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function ft(q,D=1){let Y=0,pe=0;return{members:q.map(Ce=>{let Ue=we[Ce.type].BYTES_PER_ELEMENT,Ge=Y=bt(Y,Math.max(D,Ue)),ut=Ce.components||1;return pe=Math.max(pe,Ue),Y+=Ue*ut,{name:Ce.name,type:Ce.type,components:ut,offset:Ge}}),size:bt(Y,Math.max(pe,D)),alignment:D}}function bt(q,D){return Math.ceil(q/D)*D}class Dt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.int16[Ce+0]=Y,this.int16[Ce+1]=pe,D}}Dt.prototype.bytesPerElement=4,ti("StructArrayLayout2i4",Dt);class Yt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.int16[Ue+0]=Y,this.int16[Ue+1]=pe,this.int16[Ue+2]=Ce,D}}Yt.prototype.bytesPerElement=6,ti("StructArrayLayout3i6",Yt);class cr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.int16[Ge+0]=Y,this.int16[Ge+1]=pe,this.int16[Ge+2]=Ce,this.int16[Ge+3]=Ue,D}}cr.prototype.bytesPerElement=8,ti("StructArrayLayout4i8",cr);class hr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}hr.prototype.bytesPerElement=12,ti("StructArrayLayout2i4i12",hr);class jr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=4*D,Ft=8*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.uint8[Ft+4]=Ce,this.uint8[Ft+5]=Ue,this.uint8[Ft+6]=Ge,this.uint8[Ft+7]=ut,D}}jr.prototype.bytesPerElement=8,ti("StructArrayLayout2i4ub8",jr);class ea extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.float32[Ce+0]=Y,this.float32[Ce+1]=pe,D}}ea.prototype.bytesPerElement=8,ti("StructArrayLayout2f8",ea);class qe extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=this.length;return this.resize(lr+1),this.emplace(lr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=10*D;return this.uint16[Ar+0]=Y,this.uint16[Ar+1]=pe,this.uint16[Ar+2]=Ce,this.uint16[Ar+3]=Ue,this.uint16[Ar+4]=Ge,this.uint16[Ar+5]=ut,this.uint16[Ar+6]=Tt,this.uint16[Ar+7]=Ft,this.uint16[Ar+8]=$t,this.uint16[Ar+9]=lr,D}}qe.prototype.bytesPerElement=20,ti("StructArrayLayout10ui20",qe);class Je extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=this.length;return this.resize(zr+1),this.emplace(zr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr){let Kr=12*D;return this.int16[Kr+0]=Y,this.int16[Kr+1]=pe,this.int16[Kr+2]=Ce,this.int16[Kr+3]=Ue,this.uint16[Kr+4]=Ge,this.uint16[Kr+5]=ut,this.uint16[Kr+6]=Tt,this.uint16[Kr+7]=Ft,this.int16[Kr+8]=$t,this.int16[Kr+9]=lr,this.int16[Kr+10]=Ar,this.int16[Kr+11]=zr,D}}Je.prototype.bytesPerElement=24,ti("StructArrayLayout4i4ui4i24",Je);class ot extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.float32[Ue+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ot.prototype.bytesPerElement=12,ti("StructArrayLayout3f12",ot);class ht extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint32[1*D+0]=Y,D}}ht.prototype.bytesPerElement=4,ti("StructArrayLayout1ul4",ht);class At extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t=this.length;return this.resize($t+1),this.emplace($t,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=10*D,Ar=5*D;return this.int16[lr+0]=Y,this.int16[lr+1]=pe,this.int16[lr+2]=Ce,this.int16[lr+3]=Ue,this.int16[lr+4]=Ge,this.int16[lr+5]=ut,this.uint32[Ar+3]=Tt,this.uint16[lr+8]=Ft,this.uint16[lr+9]=$t,D}}At.prototype.bytesPerElement=20,ti("StructArrayLayout6i1ul2ui20",At);class _t extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}_t.prototype.bytesPerElement=12,ti("StructArrayLayout2i2i2i12",_t);class Pt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue){let Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,D,Y,pe,Ce,Ue)}emplace(D,Y,pe,Ce,Ue,Ge){let ut=4*D,Tt=8*D;return this.float32[ut+0]=Y,this.float32[ut+1]=pe,this.float32[ut+2]=Ce,this.int16[Tt+6]=Ue,this.int16[Tt+7]=Ge,D}}Pt.prototype.bytesPerElement=16,ti("StructArrayLayout2f1f2i16",Pt);class er extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=16*D,Ft=4*D,$t=8*D;return this.uint8[Tt+0]=Y,this.uint8[Tt+1]=pe,this.float32[Ft+1]=Ce,this.float32[Ft+2]=Ue,this.int16[$t+6]=Ge,this.int16[$t+7]=ut,D}}er.prototype.bytesPerElement=16,ti("StructArrayLayout2ub2f2i16",er);class nr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[Ue+0]=Y,this.uint16[Ue+1]=pe,this.uint16[Ue+2]=Ce,D}}nr.prototype.bytesPerElement=6,ti("StructArrayLayout3ui6",nr);class pr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja){let gi=this.length;return this.resize(gi+1),this.emplace(gi,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi){let ei=24*D,hi=12*D,Ei=48*D;return this.int16[ei+0]=Y,this.int16[ei+1]=pe,this.uint16[ei+2]=Ce,this.uint16[ei+3]=Ue,this.uint32[hi+2]=Ge,this.uint32[hi+3]=ut,this.uint32[hi+4]=Tt,this.uint16[ei+10]=Ft,this.uint16[ei+11]=$t,this.uint16[ei+12]=lr,this.float32[hi+7]=Ar,this.float32[hi+8]=zr,this.uint8[Ei+36]=Kr,this.uint8[Ei+37]=la,this.uint8[Ei+38]=za,this.uint32[hi+10]=ja,this.int16[ei+22]=gi,D}}pr.prototype.bytesPerElement=48,ti("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",pr);class Sr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo){let xo=this.length;return this.resize(xo+1),this.emplace(xo,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo,xo){let Yi=32*D,Ko=16*D;return this.int16[Yi+0]=Y,this.int16[Yi+1]=pe,this.int16[Yi+2]=Ce,this.int16[Yi+3]=Ue,this.int16[Yi+4]=Ge,this.int16[Yi+5]=ut,this.int16[Yi+6]=Tt,this.int16[Yi+7]=Ft,this.uint16[Yi+8]=$t,this.uint16[Yi+9]=lr,this.uint16[Yi+10]=Ar,this.uint16[Yi+11]=zr,this.uint16[Yi+12]=Kr,this.uint16[Yi+13]=la,this.uint16[Yi+14]=za,this.uint16[Yi+15]=ja,this.uint16[Yi+16]=gi,this.uint16[Yi+17]=ei,this.uint16[Yi+18]=hi,this.uint16[Yi+19]=Ei,this.uint16[Yi+20]=En,this.uint16[Yi+21]=fo,this.uint16[Yi+22]=ss,this.uint32[Ko+12]=eo,this.float32[Ko+13]=vn,this.float32[Ko+14]=Uo,this.uint16[Yi+30]=Mo,this.uint16[Yi+31]=xo,D}}Sr.prototype.bytesPerElement=64,ti("StructArrayLayout8i15ui1ul2f2ui64",Sr);class Wr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.float32[1*D+0]=Y,D}}Wr.prototype.bytesPerElement=4,ti("StructArrayLayout1f4",Wr);class ha extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[6*D+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ha.prototype.bytesPerElement=12,ti("StructArrayLayout1ui2f12",ha);class ga extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=4*D;return this.uint32[2*D+0]=Y,this.uint16[Ue+2]=pe,this.uint16[Ue+3]=Ce,D}}ga.prototype.bytesPerElement=8,ti("StructArrayLayout1ul2ui8",ga);class Pa extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.uint16[Ce+0]=Y,this.uint16[Ce+1]=pe,D}}Pa.prototype.bytesPerElement=4,ti("StructArrayLayout2ui4",Pa);class Ja extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint16[1*D+0]=Y,D}}Ja.prototype.bytesPerElement=2,ti("StructArrayLayout1ui2",Ja);class di extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.float32[Ge+0]=Y,this.float32[Ge+1]=pe,this.float32[Ge+2]=Ce,this.float32[Ge+3]=Ue,D}}di.prototype.bytesPerElement=16,ti("StructArrayLayout4f16",di);class pi extends Se{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new i(this.anchorPointX,this.anchorPointY)}}pi.prototype.size=20;class Ci extends At{get(D){return new pi(this,D)}}ti("CollisionBoxArray",Ci);class $i extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(D){this._structArray.uint8[this._pos1+37]=D}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(D){this._structArray.uint8[this._pos1+38]=D}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(D){this._structArray.uint32[this._pos4+10]=D}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}$i.prototype.size=48;class Bn extends pr{get(D){return new $i(this,D)}}ti("PlacedSymbolArray",Bn);class Sn extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(D){this._structArray.uint32[this._pos4+12]=D}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Sn.prototype.size=64;class ho extends Sr{get(D){return new Sn(this,D)}}ti("SymbolInstanceArray",ho);class ts extends Wr{getoffsetX(D){return this.float32[1*D+0]}}ti("GlyphOffsetArray",ts);class yo extends Yt{getx(D){return this.int16[3*D+0]}gety(D){return this.int16[3*D+1]}gettileUnitDistanceFromAnchor(D){return this.int16[3*D+2]}}ti("SymbolLineVertexArray",yo);class Vo extends Se{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Vo.prototype.size=12;class ls extends ha{get(D){return new Vo(this,D)}}ti("TextAnchorOffsetArray",ls);class rl extends Se{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}rl.prototype.size=8;class Ys extends ga{get(D){return new rl(this,D)}}ti("FeatureIndexArray",Ys);class Zo extends Dt{}class Go extends Dt{}class Rl extends Dt{}class Xl extends hr{}class qu extends jr{}class fu extends ea{}class bl extends qe{}class ou extends Je{}class Sc extends ot{}class ql extends ht{}class Hl extends _t{}class de extends er{}class Re extends nr{}class $e extends Pa{}let pt=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:vt}=pt;class wt{constructor(D=[]){this.segments=D}prepareSegment(D,Y,pe,Ce){let Ue=this.segments[this.segments.length-1];return D>wt.MAX_VERTEX_ARRAY_LENGTH&&f(`Max vertices per segment is ${wt.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${D}`),(!Ue||Ue.vertexLength+D>wt.MAX_VERTEX_ARRAY_LENGTH||Ue.sortKey!==Ce)&&(Ue={vertexOffset:Y.length,primitiveOffset:pe.length,vertexLength:0,primitiveLength:0},Ce!==void 0&&(Ue.sortKey=Ce),this.segments.push(Ue)),Ue}get(){return this.segments}destroy(){for(let D of this.segments)for(let Y in D.vaos)D.vaos[Y].destroy()}static simpleSegment(D,Y,pe,Ce){return new wt([{vertexOffset:D,primitiveOffset:Y,vertexLength:pe,primitiveLength:Ce,vaos:{},sortKey:0}])}}function Jt(q,D){return 256*(q=w(Math.floor(q),0,255))+w(Math.floor(D),0,255)}wt.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,ti("SegmentVector",wt);let Rt=ft([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var or={exports:{}},Dr={exports:{}};Dr.exports=function(q,D){var Y,pe,Ce,Ue,Ge,ut,Tt,Ft;for(pe=q.length-(Y=3&q.length),Ce=D,Ge=3432918353,ut=461845907,Ft=0;Ft<pe;)Tt=255&q.charCodeAt(Ft)|(255&q.charCodeAt(++Ft))<<8|(255&q.charCodeAt(++Ft))<<16|(255&q.charCodeAt(++Ft))<<24,++Ft,Ce=27492+(65535&(Ue=5*(65535&(Ce=(Ce^=Tt=(65535&(Tt=(Tt=(65535&Tt)*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295)<<13|Ce>>>19))+((5*(Ce>>>16)&65535)<<16)&4294967295))+((58964+(Ue>>>16)&65535)<<16);switch(Tt=0,Y){case 3:Tt^=(255&q.charCodeAt(Ft+2))<<16;case 2:Tt^=(255&q.charCodeAt(Ft+1))<<8;case 1:Ce^=Tt=(65535&(Tt=(Tt=(65535&(Tt^=255&q.charCodeAt(Ft)))*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295}return Ce^=q.length,Ce=2246822507*(65535&(Ce^=Ce>>>16))+((2246822507*(Ce>>>16)&65535)<<16)&4294967295,Ce=3266489909*(65535&(Ce^=Ce>>>13))+((3266489909*(Ce>>>16)&65535)<<16)&4294967295,(Ce^=Ce>>>16)>>>0};var Or=Dr.exports,va={exports:{}};va.exports=function(q,D){for(var Y,pe=q.length,Ce=D^pe,Ue=0;pe>=4;)Y=1540483477*(65535&(Y=255&q.charCodeAt(Ue)|(255&q.charCodeAt(++Ue))<<8|(255&q.charCodeAt(++Ue))<<16|(255&q.charCodeAt(++Ue))<<24))+((1540483477*(Y>>>16)&65535)<<16),Ce=1540483477*(65535&Ce)+((1540483477*(Ce>>>16)&65535)<<16)^(Y=1540483477*(65535&(Y^=Y>>>24))+((1540483477*(Y>>>16)&65535)<<16)),pe-=4,++Ue;switch(pe){case 3:Ce^=(255&q.charCodeAt(Ue+2))<<16;case 2:Ce^=(255&q.charCodeAt(Ue+1))<<8;case 1:Ce=1540483477*(65535&(Ce^=255&q.charCodeAt(Ue)))+((1540483477*(Ce>>>16)&65535)<<16)}return Ce=1540483477*(65535&(Ce^=Ce>>>13))+((1540483477*(Ce>>>16)&65535)<<16),(Ce^=Ce>>>15)>>>0};var fa=Or,Va=va.exports;or.exports=fa,or.exports.murmur3=fa,or.exports.murmur2=Va;var Xa=r(or.exports);class _a{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(D,Y,pe,Ce){this.ids.push(Ra(D)),this.positions.push(Y,pe,Ce)}getPositions(D){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let Y=Ra(D),pe=0,Ce=this.ids.length-1;for(;pe<Ce;){let Ge=pe+Ce>>1;this.ids[Ge]>=Y?Ce=Ge:pe=Ge+1}let Ue=[];for(;this.ids[pe]===Y;)Ue.push({index:this.positions[3*pe],start:this.positions[3*pe+1],end:this.positions[3*pe+2]}),pe++;return Ue}static serialize(D,Y){let pe=new Float64Array(D.ids),Ce=new Uint32Array(D.positions);return Na(pe,Ce,0,pe.length-1),Y&&Y.push(pe.buffer,Ce.buffer),{ids:pe,positions:Ce}}static deserialize(D){let Y=new _a;return Y.ids=D.ids,Y.positions=D.positions,Y.indexed=!0,Y}}function Ra(q){let D=+q;return!isNaN(D)&&D<=Number.MAX_SAFE_INTEGER?D:Xa(String(q))}function Na(q,D,Y,pe){for(;Y<pe;){let Ce=q[Y+pe>>1],Ue=Y-1,Ge=pe+1;for(;;){do Ue++;while(q[Ue]<Ce);do Ge--;while(q[Ge]>Ce);if(Ue>=Ge)break;Qa(q,Ue,Ge),Qa(D,3*Ue,3*Ge),Qa(D,3*Ue+1,3*Ge+1),Qa(D,3*Ue+2,3*Ge+2)}Ge-Y<pe-Ge?(Na(q,D,Y,Ge),Y=Ge+1):(Na(q,D,Ge+1,pe),pe=Ge)}}function Qa(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}ti("FeaturePositionMap",_a);class Ya{constructor(D,Y){this.gl=D.gl,this.location=Y}}class Da extends Ya{constructor(D,Y){super(D,Y),this.current=0}set(D){this.current!==D&&(this.current=D,this.gl.uniform1f(this.location,D))}}class zi extends Ya{constructor(D,Y){super(D,Y),this.current=[0,0,0,0]}set(D){D[0]===this.current[0]&&D[1]===this.current[1]&&D[2]===this.current[2]&&D[3]===this.current[3]||(this.current=D,this.gl.uniform4f(this.location,D[0],D[1],D[2],D[3]))}}class Ni extends Ya{constructor(D,Y){super(D,Y),this.current=Ut.transparent}set(D){D.r===this.current.r&&D.g===this.current.g&&D.b===this.current.b&&D.a===this.current.a||(this.current=D,this.gl.uniform4f(this.location,D.r,D.g,D.b,D.a))}}let Qi=new Float32Array(16);function hn(q){return[Jt(255*q.r,255*q.g),Jt(255*q.b,255*q.a)]}class Un{constructor(D,Y,pe){this.value=D,this.uniformNames=Y.map(Ce=>`u_${Ce}`),this.type=pe}setUniform(D,Y,pe){D.set(pe.constantOr(this.value))}getBinding(D,Y,pe){return this.type==="color"?new Ni(D,Y):new Da(D,Y)}}class Vn{constructor(D,Y){this.uniformNames=Y.map(pe=>`u_${pe}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(D,Y){this.pixelRatioFrom=Y.pixelRatio,this.pixelRatioTo=D.pixelRatio,this.patternFrom=Y.tlbr,this.patternTo=D.tlbr}setUniform(D,Y,pe,Ce){let Ue=Ce==="u_pattern_to"?this.patternTo:Ce==="u_pattern_from"?this.patternFrom:Ce==="u_pixel_ratio_to"?this.pixelRatioTo:Ce==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Ue&&D.set(Ue)}getBinding(D,Y,pe){return pe.substr(0,9)==="u_pattern"?new zi(D,Y):new Da(D,Y)}}class No{constructor(D,Y,pe,Ce){this.expression=D,this.type=pe,this.maxValue=0,this.paintVertexAttributes=Y.map(Ue=>({name:`a_${Ue}`,type:"Float32",components:pe==="color"?2:1,offset:0})),this.paintVertexArray=new Ce}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.paintVertexArray.length,ut=this.expression.evaluate(new Ts(0),Y,{},Ce,[],Ue);this.paintVertexArray.resize(D),this._setPaintValue(Ge,D,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:0},pe,Ce);this._setPaintValue(D,Y,Ue)}_setPaintValue(D,Y,pe){if(this.type==="color"){let Ce=hn(pe);for(let Ue=D;Ue<Y;Ue++)this.paintVertexArray.emplace(Ue,Ce[0],Ce[1])}else{for(let Ce=D;Ce<Y;Ce++)this.paintVertexArray.emplace(Ce,pe);this.maxValue=Math.max(this.maxValue,Math.abs(pe))}}upload(D){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=D.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}}class Gn{constructor(D,Y,pe,Ce,Ue,Ge){this.expression=D,this.uniformNames=Y.map(ut=>`u_${ut}_t`),this.type=pe,this.useIntegerZoom=Ce,this.zoom=Ue,this.maxValue=0,this.paintVertexAttributes=Y.map(ut=>({name:`a_${ut}`,type:"Float32",components:pe==="color"?4:2,offset:0})),this.paintVertexArray=new Ge}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.expression.evaluate(new Ts(this.zoom),Y,{},Ce,[],Ue),ut=this.expression.evaluate(new Ts(this.zoom+1),Y,{},Ce,[],Ue),Tt=this.paintVertexArray.length;this.paintVertexArray.resize(D),this._setPaintValue(Tt,D,Ge,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:this.zoom},pe,Ce),Ge=this.expression.evaluate({zoom:this.zoom+1},pe,Ce);this._setPaintValue(D,Y,Ue,Ge)}_setPaintValue(D,Y,pe,Ce){if(this.type==="color"){let Ue=hn(pe),Ge=hn(Ce);for(let ut=D;ut<Y;ut++)this.paintVertexArray.emplace(ut,Ue[0],Ue[1],Ge[0],Ge[1])}else{for(let Ue=D;Ue<Y;Ue++)this.paintVertexArray.emplace(Ue,pe,Ce);this.maxValue=Math.max(this.maxValue,Math.abs(pe),Math.abs(Ce))}}upload(D){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=D.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}setUniform(D,Y){let pe=this.useIntegerZoom?Math.floor(Y.zoom):Y.zoom,Ce=w(this.expression.interpolationFactor(pe,this.zoom,this.zoom+1),0,1);D.set(Ce)}getBinding(D,Y,pe){return new Da(D,Y)}}class Fo{constructor(D,Y,pe,Ce,Ue,Ge){this.expression=D,this.type=Y,this.useIntegerZoom=pe,this.zoom=Ce,this.layerId=Ge,this.zoomInPaintVertexArray=new Ue,this.zoomOutPaintVertexArray=new Ue}populatePaintArray(D,Y,pe){let Ce=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(D),this.zoomOutPaintVertexArray.resize(D),this._setPaintValues(Ce,D,Y.patterns&&Y.patterns[this.layerId],pe)}updatePaintArray(D,Y,pe,Ce,Ue){this._setPaintValues(D,Y,pe.patterns&&pe.patterns[this.layerId],Ue)}_setPaintValues(D,Y,pe,Ce){if(!Ce||!pe)return;let{min:Ue,mid:Ge,max:ut}=pe,Tt=Ce[Ue],Ft=Ce[Ge],$t=Ce[ut];if(Tt&&Ft&&$t)for(let lr=D;lr<Y;lr++)this.zoomInPaintVertexArray.emplace(lr,Ft.tl[0],Ft.tl[1],Ft.br[0],Ft.br[1],Tt.tl[0],Tt.tl[1],Tt.br[0],Tt.br[1],Ft.pixelRatio,Tt.pixelRatio),this.zoomOutPaintVertexArray.emplace(lr,Ft.tl[0],Ft.tl[1],Ft.br[0],Ft.br[1],$t.tl[0],$t.tl[1],$t.br[0],$t.br[1],Ft.pixelRatio,$t.pixelRatio)}upload(D){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=D.createVertexBuffer(this.zoomInPaintVertexArray,Rt.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=D.createVertexBuffer(this.zoomOutPaintVertexArray,Rt.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Ks{constructor(D,Y,pe){this.binders={},this._buffers=[];let Ce=[];for(let Ue in D.paint._values){if(!pe(Ue))continue;let Ge=D.paint.get(Ue);if(!(Ge instanceof Iu&&Eu(Ge.property.specification)))continue;let ut=sl(Ue,D.type),Tt=Ge.value,Ft=Ge.property.specification.type,$t=Ge.property.useIntegerZoom,lr=Ge.property.specification["property-type"],Ar=lr==="cross-faded"||lr==="cross-faded-data-driven";if(Tt.kind==="constant")this.binders[Ue]=Ar?new Vn(Tt.value,ut):new Un(Tt.value,ut,Ft),Ce.push(`/u_${Ue}`);else if(Tt.kind==="source"||Ar){let zr=Vi(Ue,Ft,"source");this.binders[Ue]=Ar?new Fo(Tt,Ft,$t,Y,zr,D.id):new No(Tt,ut,Ft,zr),Ce.push(`/a_${Ue}`)}else{let zr=Vi(Ue,Ft,"composite");this.binders[Ue]=new Gn(Tt,ut,Ft,$t,Y,zr),Ce.push(`/z_${Ue}`)}}this.cacheKey=Ce.sort().join("")}getMaxValue(D){let Y=this.binders[D];return Y instanceof No||Y instanceof Gn?Y.maxValue:0}populatePaintArrays(D,Y,pe,Ce,Ue){for(let Ge in this.binders){let ut=this.binders[Ge];(ut instanceof No||ut instanceof Gn||ut instanceof Fo)&&ut.populatePaintArray(D,Y,pe,Ce,Ue)}}setConstantPatternPositions(D,Y){for(let pe in this.binders){let Ce=this.binders[pe];Ce instanceof Vn&&Ce.setConstantPatternPositions(D,Y)}}updatePaintArrays(D,Y,pe,Ce,Ue){let Ge=!1;for(let ut in D){let Tt=Y.getPositions(ut);for(let Ft of Tt){let $t=pe.feature(Ft.index);for(let lr in this.binders){let Ar=this.binders[lr];if((Ar instanceof No||Ar instanceof Gn||Ar instanceof Fo)&&Ar.expression.isStateDependent===!0){let zr=Ce.paint.get(lr);Ar.expression=zr.value,Ar.updatePaintArray(Ft.start,Ft.end,$t,D[ut],Ue),Ge=!0}}}}return Ge}defines(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];(pe instanceof Un||pe instanceof Vn)&&D.push(...pe.uniformNames.map(Ce=>`#define HAS_UNIFORM_${Ce}`))}return D}getBinderAttributes(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof No||pe instanceof Gn)for(let Ce=0;Ce<pe.paintVertexAttributes.length;Ce++)D.push(pe.paintVertexAttributes[Ce].name);else if(pe instanceof Fo)for(let Ce=0;Ce<Rt.members.length;Ce++)D.push(Rt.members[Ce].name)}return D}getBinderUniforms(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof Un||pe instanceof Vn||pe instanceof Gn)for(let Ce of pe.uniformNames)D.push(Ce)}return D}getPaintVertexBuffers(){return this._buffers}getUniforms(D,Y){let pe=[];for(let Ce in this.binders){let Ue=this.binders[Ce];if(Ue instanceof Un||Ue instanceof Vn||Ue instanceof Gn){for(let Ge of Ue.uniformNames)if(Y[Ge]){let ut=Ue.getBinding(D,Y[Ge],Ge);pe.push({name:Ge,property:Ce,binding:ut})}}}return pe}setUniforms(D,Y,pe,Ce){for(let{name:Ue,property:Ge,binding:ut}of Y)this.binders[Ge].setUniform(ut,Ce,pe.get(Ge),Ue)}updatePaintBuffers(D){this._buffers=[];for(let Y in this.binders){let pe=this.binders[Y];if(D&&pe instanceof Fo){let Ce=D.fromScale===2?pe.zoomInPaintVertexBuffer:pe.zoomOutPaintVertexBuffer;Ce&&this._buffers.push(Ce)}else(pe instanceof No||pe instanceof Gn)&&pe.paintVertexBuffer&&this._buffers.push(pe.paintVertexBuffer)}}upload(D){for(let Y in this.binders){let pe=this.binders[Y];(pe instanceof No||pe instanceof Gn||pe instanceof Fo)&&pe.upload(D)}this.updatePaintBuffers()}destroy(){for(let D in this.binders){let Y=this.binders[D];(Y instanceof No||Y instanceof Gn||Y instanceof Fo)&&Y.destroy()}}}class Gs{constructor(D,Y,pe=()=>!0){this.programConfigurations={};for(let Ce of D)this.programConfigurations[Ce.id]=new Ks(Ce,Y,pe);this.needsUpload=!1,this._featureMap=new _a,this._bufferOffset=0}populatePaintArrays(D,Y,pe,Ce,Ue,Ge){for(let ut in this.programConfigurations)this.programConfigurations[ut].populatePaintArrays(D,Y,Ce,Ue,Ge);Y.id!==void 0&&this._featureMap.add(Y.id,pe,this._bufferOffset,D),this._bufferOffset=D,this.needsUpload=!0}updatePaintArrays(D,Y,pe,Ce){for(let Ue of pe)this.needsUpload=this.programConfigurations[Ue.id].updatePaintArrays(D,this._featureMap,Y,Ue,Ce)||this.needsUpload}get(D){return this.programConfigurations[D]}upload(D){if(this.needsUpload){for(let Y in this.programConfigurations)this.programConfigurations[Y].upload(D);this.needsUpload=!1}}destroy(){for(let D in this.programConfigurations)this.programConfigurations[D].destroy()}}function sl(q,D){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[q]||[q.replace(`${D}-`,"").replace(/-/g,"_")]}function Vi(q,D,Y){let pe={color:{source:ea,composite:di},number:{source:Wr,composite:ea}},Ce=function(Ue){return{"line-pattern":{source:bl,composite:bl},"fill-pattern":{source:bl,composite:bl},"fill-extrusion-pattern":{source:bl,composite:bl}}[Ue]}(q);return Ce&&Ce[Y]||pe[D][Y]}ti("ConstantBinder",Un),ti("CrossFadedConstantBinder",Vn),ti("SourceExpressionBinder",No),ti("CrossFadedCompositeBinder",Fo),ti("CompositeExpressionBinder",Gn),ti("ProgramConfiguration",Ks,{omit:["_buffers"]}),ti("ProgramConfigurationSet",Gs);let ao=8192,ns=Math.pow(2,14)-1,hs=-ns-1;function hl(q){let D=ao/q.extent,Y=q.loadGeometry();for(let pe=0;pe<Y.length;pe++){let Ce=Y[pe];for(let Ue=0;Ue<Ce.length;Ue++){let Ge=Ce[Ue],ut=Math.round(Ge.x*D),Tt=Math.round(Ge.y*D);Ge.x=w(ut,hs,ns),Ge.y=w(Tt,hs,ns),(ut<Ge.x||ut>Ge.x+1||Tt<Ge.y||Tt>Ge.y+1)&&f("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return Y}function Dl(q,D){return{type:q.type,id:q.id,properties:q.properties,geometry:D?hl(q):[]}}function hu(q,D,Y,pe,Ce){q.emplaceBack(2*D+(pe+1)/2,2*Y+(Ce+1)/2)}class Ll{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Go,this.indexArray=new Re,this.segments=new wt,this.programConfigurations=new Gs(D.layers,D.zoom),this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){let Ce=this.layers[0],Ue=[],Ge=null,ut=!1;Ce.type==="circle"&&(Ge=Ce.layout.get("circle-sort-key"),ut=!Ge.isConstant());for(let{feature:Tt,id:Ft,index:$t,sourceLayerIndex:lr}of D){let Ar=this.layers[0]._featureFilter.needGeometry,zr=Dl(Tt,Ar);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),zr,pe))continue;let Kr=ut?Ge.evaluate(zr,{},pe):void 0,la={id:Ft,properties:Tt.properties,type:Tt.type,sourceLayerIndex:lr,index:$t,geometry:Ar?zr.geometry:hl(Tt),patterns:{},sortKey:Kr};Ue.push(la)}ut&&Ue.sort((Tt,Ft)=>Tt.sortKey-Ft.sortKey);for(let Tt of Ue){let{geometry:Ft,index:$t,sourceLayerIndex:lr}=Tt,Ar=D[$t].feature;this.addFeature(Tt,Ft,$t,pe),Y.featureIndex.insert(Ar,Ft,$t,lr,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,vt),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(D,Y,pe,Ce){for(let Ue of Y)for(let Ge of Ue){let ut=Ge.x,Tt=Ge.y;if(ut<0||ut>=ao||Tt<0||Tt>=ao)continue;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,D.sortKey),$t=Ft.vertexLength;hu(this.layoutVertexArray,ut,Tt,-1,-1),hu(this.layoutVertexArray,ut,Tt,1,-1),hu(this.layoutVertexArray,ut,Tt,1,1),hu(this.layoutVertexArray,ut,Tt,-1,1),this.indexArray.emplaceBack($t,$t+1,$t+2),this.indexArray.emplaceBack($t,$t+3,$t+2),Ft.vertexLength+=4,Ft.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,{},Ce)}}function dc(q,D){for(let Y=0;Y<q.length;Y++)if(cn(D,q[Y]))return!0;for(let Y=0;Y<D.length;Y++)if(cn(q,D[Y]))return!0;return!!si(q,D)}function Qt(q,D,Y){return!!cn(q,D)||!!xi(D,q,Y)}function ra(q,D){if(q.length===1)return Fi(D,q[0]);for(let Y=0;Y<D.length;Y++){let pe=D[Y];for(let Ce=0;Ce<pe.length;Ce++)if(cn(q,pe[Ce]))return!0}for(let Y=0;Y<q.length;Y++)if(Fi(D,q[Y]))return!0;for(let Y=0;Y<D.length;Y++)if(si(q,D[Y]))return!0;return!1}function Ta(q,D,Y){if(q.length>1){if(si(q,D))return!0;for(let pe=0;pe<D.length;pe++)if(xi(D[pe],q,Y))return!0}for(let pe=0;pe<q.length;pe++)if(xi(q[pe],D,Y))return!0;return!1}function si(q,D){if(q.length===0||D.length===0)return!1;for(let Y=0;Y<q.length-1;Y++){let pe=q[Y],Ce=q[Y+1];for(let Ue=0;Ue<D.length-1;Ue++)if(wi(pe,Ce,D[Ue],D[Ue+1]))return!0}return!1}function wi(q,D,Y,pe){return P(q,Y,pe)!==P(D,Y,pe)&&P(q,D,Y)!==P(q,D,pe)}function xi(q,D,Y){let pe=Y*Y;if(D.length===1)return q.distSqr(D[0])<pe;for(let Ce=1;Ce<D.length;Ce++)if(bi(q,D[Ce-1],D[Ce])<pe)return!0;return!1}function bi(q,D,Y){let pe=D.distSqr(Y);if(pe===0)return q.distSqr(D);let Ce=((q.x-D.x)*(Y.x-D.x)+(q.y-D.y)*(Y.y-D.y))/pe;return q.distSqr(Ce<0?D:Ce>1?Y:Y.sub(D)._mult(Ce)._add(D))}function Fi(q,D){let Y,pe,Ce,Ue=!1;for(let Ge=0;Ge<q.length;Ge++){Y=q[Ge];for(let ut=0,Tt=Y.length-1;ut<Y.length;Tt=ut++)pe=Y[ut],Ce=Y[Tt],pe.y>D.y!=Ce.y>D.y&&D.x<(Ce.x-pe.x)*(D.y-pe.y)/(Ce.y-pe.y)+pe.x&&(Ue=!Ue)}return Ue}function cn(q,D){let Y=!1;for(let pe=0,Ce=q.length-1;pe<q.length;Ce=pe++){let Ue=q[pe],Ge=q[Ce];Ue.y>D.y!=Ge.y>D.y&&D.x<(Ge.x-Ue.x)*(D.y-Ue.y)/(Ge.y-Ue.y)+Ue.x&&(Y=!Y)}return Y}function fn(q,D,Y){let pe=Y[0],Ce=Y[2];if(q.x<pe.x&&D.x<pe.x||q.x>Ce.x&&D.x>Ce.x||q.y<pe.y&&D.y<pe.y||q.y>Ce.y&&D.y>Ce.y)return!1;let Ue=P(q,D,Y[0]);return Ue!==P(q,D,Y[1])||Ue!==P(q,D,Y[2])||Ue!==P(q,D,Y[3])}function Gi(q,D,Y){let pe=D.paint.get(q).value;return pe.kind==="constant"?pe.value:Y.programConfigurations.get(D.id).getMaxValue(q)}function Io(q){return Math.sqrt(q[0]*q[0]+q[1]*q[1])}function nn(q,D,Y,pe,Ce){if(!D[0]&&!D[1])return q;let Ue=i.convert(D)._mult(Ce);Y==="viewport"&&Ue._rotate(-pe);let Ge=[];for(let ut=0;ut<q.length;ut++)Ge.push(q[ut].sub(Ue));return Ge}let on,Oi;ti("CircleBucket",Ll,{omit:["layers"]});var ui={get paint(){return Oi=Oi||new Oe({"circle-radius":new Po(ie.paint_circle["circle-radius"]),"circle-color":new Po(ie.paint_circle["circle-color"]),"circle-blur":new Po(ie.paint_circle["circle-blur"]),"circle-opacity":new Po(ie.paint_circle["circle-opacity"]),"circle-translate":new ro(ie.paint_circle["circle-translate"]),"circle-translate-anchor":new ro(ie.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new ro(ie.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new ro(ie.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new Po(ie.paint_circle["circle-stroke-width"]),"circle-stroke-color":new Po(ie.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new Po(ie.paint_circle["circle-stroke-opacity"])})},get layout(){return on=on||new Oe({"circle-sort-key":new Po(ie.layout_circle["circle-sort-key"])})}},Mi=1e-6,tn=typeof Float32Array<"u"?Float32Array:Array;function pn(q){return q[0]=1,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=1,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=1,q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q}function qi(q,D,Y){var pe=D[0],Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],la=D[12],za=D[13],ja=D[14],gi=D[15],ei=Y[0],hi=Y[1],Ei=Y[2],En=Y[3];return q[0]=ei*pe+hi*ut+Ei*lr+En*la,q[1]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[2]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[3]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[4]=(ei=Y[4])*pe+(hi=Y[5])*ut+(Ei=Y[6])*lr+(En=Y[7])*la,q[5]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[6]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[7]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[8]=(ei=Y[8])*pe+(hi=Y[9])*ut+(Ei=Y[10])*lr+(En=Y[11])*la,q[9]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[10]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[11]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[12]=(ei=Y[12])*pe+(hi=Y[13])*ut+(Ei=Y[14])*lr+(En=Y[15])*la,q[13]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[14]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[15]=ei*Ge+hi*$t+Ei*Kr+En*gi,q}Math.hypot||(Math.hypot=function(){for(var q=0,D=arguments.length;D--;)q+=arguments[D]*arguments[D];return Math.sqrt(q)});var Dn,bn=qi;function _o(q,D,Y){var pe=D[0],Ce=D[1],Ue=D[2],Ge=D[3];return q[0]=Y[0]*pe+Y[4]*Ce+Y[8]*Ue+Y[12]*Ge,q[1]=Y[1]*pe+Y[5]*Ce+Y[9]*Ue+Y[13]*Ge,q[2]=Y[2]*pe+Y[6]*Ce+Y[10]*Ue+Y[14]*Ge,q[3]=Y[3]*pe+Y[7]*Ce+Y[11]*Ue+Y[15]*Ge,q}Dn=new tn(4),tn!=Float32Array&&(Dn[0]=0,Dn[1]=0,Dn[2]=0,Dn[3]=0);class Zi extends ae{constructor(D){super(D,ui)}createBucket(D){return new Ll(D)}queryRadius(D){let Y=D;return Gi("circle-radius",this,Y)+Gi("circle-stroke-width",this,Y)+Io(this.paint.get("circle-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Ge.angle,ut),$t=this.paint.get("circle-radius").evaluate(Y,pe)+this.paint.get("circle-stroke-width").evaluate(Y,pe),lr=this.paint.get("circle-pitch-alignment")==="map",Ar=lr?Ft:function(Kr,la){return Kr.map(za=>Ui(za,la))}(Ft,Tt),zr=lr?$t*ut:$t;for(let Kr of Ce)for(let la of Kr){let za=lr?la:Ui(la,Tt),ja=zr,gi=_o([],[la.x,la.y,0,1],Tt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?ja*=gi[3]/Ge.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(ja*=Ge.cameraToCenterDistance/gi[3]),Qt(Ar,za,ja))return!0}return!1}}function Ui(q,D){let Y=_o([],[q.x,q.y,0,1],D);return new i(Y[0]/Y[3],Y[1]/Y[3])}class Zn extends Ll{}let Rn;ti("HeatmapBucket",Zn,{omit:["layers"]});var xn={get paint(){return Rn=Rn||new Oe({"heatmap-radius":new Po(ie.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Po(ie.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new ro(ie.paint_heatmap["heatmap-intensity"]),"heatmap-color":new pc(ie.paint_heatmap["heatmap-color"]),"heatmap-opacity":new ro(ie.paint_heatmap["heatmap-opacity"])})}};function dn(q,{width:D,height:Y},pe,Ce){if(Ce){if(Ce instanceof Uint8ClampedArray)Ce=new Uint8Array(Ce.buffer);else if(Ce.length!==D*Y*pe)throw new RangeError(`mismatched image size. expected: ${Ce.length} but got: ${D*Y*pe}`)}else Ce=new Uint8Array(D*Y*pe);return q.width=D,q.height=Y,q.data=Ce,q}function jn(q,{width:D,height:Y},pe){if(D===q.width&&Y===q.height)return;let Ce=dn({},{width:D,height:Y},pe);Ro(q,Ce,{x:0,y:0},{x:0,y:0},{width:Math.min(q.width,D),height:Math.min(q.height,Y)},pe),q.width=D,q.height=Y,q.data=Ce.data}function Ro(q,D,Y,pe,Ce,Ue){if(Ce.width===0||Ce.height===0)return D;if(Ce.width>q.width||Ce.height>q.height||Y.x>q.width-Ce.width||Y.y>q.height-Ce.height)throw new RangeError("out of range source coordinates for image copy");if(Ce.width>D.width||Ce.height>D.height||pe.x>D.width-Ce.width||pe.y>D.height-Ce.height)throw new RangeError("out of range destination coordinates for image copy");let Ge=q.data,ut=D.data;if(Ge===ut)throw new Error("srcData equals dstData, so image is already copied");for(let Tt=0;Tt<Ce.height;Tt++){let Ft=((Y.y+Tt)*q.width+Y.x)*Ue,$t=((pe.y+Tt)*D.width+pe.x)*Ue;for(let lr=0;lr<Ce.width*Ue;lr++)ut[$t+lr]=Ge[Ft+lr]}return D}class rs{constructor(D,Y){dn(this,D,1,Y)}resize(D){jn(this,D,1)}clone(){return new rs({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(D,Y,pe,Ce,Ue){Ro(D,Y,pe,Ce,Ue,1)}}class wn{constructor(D,Y){dn(this,D,4,Y)}resize(D){jn(this,D,4)}replace(D,Y){Y?this.data.set(D):this.data=D instanceof Uint8ClampedArray?new Uint8Array(D.buffer):D}clone(){return new wn({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(D,Y,pe,Ce,Ue){Ro(D,Y,pe,Ce,Ue,4)}}function oo(q){let D={},Y=q.resolution||256,pe=q.clips?q.clips.length:1,Ce=q.image||new wn({width:Y,height:pe});if(Math.log(Y)/Math.LN2%1!=0)throw new Error(`width is not a power of 2 - ${Y}`);let Ue=(Ge,ut,Tt)=>{D[q.evaluationKey]=Tt;let Ft=q.expression.evaluate(D);Ce.data[Ge+ut+0]=Math.floor(255*Ft.r/Ft.a),Ce.data[Ge+ut+1]=Math.floor(255*Ft.g/Ft.a),Ce.data[Ge+ut+2]=Math.floor(255*Ft.b/Ft.a),Ce.data[Ge+ut+3]=Math.floor(255*Ft.a)};if(q.clips)for(let Ge=0,ut=0;Ge<pe;++Ge,ut+=4*Y)for(let Tt=0,Ft=0;Tt<Y;Tt++,Ft+=4){let $t=Tt/(Y-1),{start:lr,end:Ar}=q.clips[Ge];Ue(ut,Ft,lr*(1-$t)+Ar*$t)}else for(let Ge=0,ut=0;Ge<Y;Ge++,ut+=4)Ue(0,ut,Ge/(Y-1));return Ce}ti("AlphaImage",rs),ti("RGBAImage",wn);let Xo="big-fb";class os extends ae{createBucket(D){return new Zn(D)}constructor(D){super(D,xn),this.heatmapFbos=new Map,this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(D){D==="heatmap-color"&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=oo({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbos.has(Xo)&&this.heatmapFbos.delete(Xo)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"}}let As;var $l={get paint(){return As=As||new Oe({"hillshade-illumination-direction":new ro(ie.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new ro(ie.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new ro(ie.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new ro(ie.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new ro(ie.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new ro(ie.paint_hillshade["hillshade-accent-color"])})}};class Uc extends ae{constructor(D){super(D,$l)}hasOffscreenPass(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"}}let Ws=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:jc}=Ws;function Ol(q,D,Y=2){let pe=D&&D.length,Ce=pe?D[0]*Y:q.length,Ue=vc(q,0,Ce,Y,!0),Ge=[];if(!Ue||Ue.next===Ue.prev)return Ge;let ut,Tt,Ft;if(pe&&(Ue=function($t,lr,Ar,zr){let Kr=[];for(let la=0,za=lr.length;la<za;la++){let ja=vc($t,lr[la]*zr,la<za-1?lr[la+1]*zr:$t.length,zr,!1);ja===ja.next&&(ja.steiner=!0),Kr.push(ye(ja))}Kr.sort(af);for(let la=0;la<Kr.length;la++)Ar=Cs(Kr[la],Ar);return Ar}(q,D,Ue,Y)),q.length>80*Y){ut=1/0,Tt=1/0;let $t=-1/0,lr=-1/0;for(let Ar=Y;Ar<Ce;Ar+=Y){let zr=q[Ar],Kr=q[Ar+1];zr<ut&&(ut=zr),Kr<Tt&&(Tt=Kr),zr>$t&&($t=zr),Kr>lr&&(lr=Kr)}Ft=Math.max($t-ut,lr-Tt),Ft=Ft!==0?32767/Ft:0}return rf(Ue,Ge,Y,ut,Tt,Ft,0),Ge}function vc(q,D,Y,pe,Ce){let Ue;if(Ce===function(Ge,ut,Tt,Ft){let $t=0;for(let lr=ut,Ar=Tt-Ft;lr<Tt;lr+=Ft)$t+=(Ge[Ar]-Ge[lr])*(Ge[lr+1]+Ge[Ar+1]),Ar=lr;return $t}(q,D,Y,pe)>0)for(let Ge=D;Ge<Y;Ge+=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);else for(let Ge=Y-pe;Ge>=D;Ge-=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);return Ue&&He(Ue,Ue.next)&&(qt(Ue),Ue=Ue.next),Ue}function mc(q,D){if(!q)return q;D||(D=q);let Y,pe=q;do if(Y=!1,pe.steiner||!He(pe,pe.next)&&We(pe.prev,pe,pe.next)!==0)pe=pe.next;else{if(qt(pe),pe=D=pe.prev,pe===pe.next)break;Y=!0}while(Y||pe!==D);return D}function rf(q,D,Y,pe,Ce,Ue,Ge){if(!q)return;!Ge&&Ue&&function(Tt,Ft,$t,lr){let Ar=Tt;do Ar.z===0&&(Ar.z=K(Ar.x,Ar.y,Ft,$t,lr)),Ar.prevZ=Ar.prev,Ar.nextZ=Ar.next,Ar=Ar.next;while(Ar!==Tt);Ar.prevZ.nextZ=null,Ar.prevZ=null,function(zr){let Kr,la=1;do{let za,ja=zr;zr=null;let gi=null;for(Kr=0;ja;){Kr++;let ei=ja,hi=0;for(let En=0;En<la&&(hi++,ei=ei.nextZ,ei);En++);let Ei=la;for(;hi>0||Ei>0&&ei;)hi!==0&&(Ei===0||!ei||ja.z<=ei.z)?(za=ja,ja=ja.nextZ,hi--):(za=ei,ei=ei.nextZ,Ei--),gi?gi.nextZ=za:zr=za,za.prevZ=gi,gi=za;ja=ei}gi.nextZ=null,la*=2}while(Kr>1)}(Ar)}(q,pe,Ce,Ue);let ut=q;for(;q.prev!==q.next;){let Tt=q.prev,Ft=q.next;if(Ue?Mc(q,pe,Ce,Ue):Yl(q))D.push(Tt.i,q.i,Ft.i),qt(q),q=Ft.next,ut=Ft.next;else if((q=Ft)===ut){Ge?Ge===1?rf(q=Vc(mc(q),D),D,Y,pe,Ce,Ue,2):Ge===2&&Ds(q,D,Y,pe,Ce,Ue):rf(mc(q),D,Y,pe,Ce,Ue,1);break}}}function Yl(q){let D=q.prev,Y=q,pe=q.next;if(We(D,Y,pe)>=0)return!1;let Ce=D.x,Ue=Y.x,Ge=pe.x,ut=D.y,Tt=Y.y,Ft=pe.y,$t=Ce<Ue?Ce<Ge?Ce:Ge:Ue<Ge?Ue:Ge,lr=ut<Tt?ut<Ft?ut:Ft:Tt<Ft?Tt:Ft,Ar=Ce>Ue?Ce>Ge?Ce:Ge:Ue>Ge?Ue:Ge,zr=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,Kr=pe.next;for(;Kr!==D;){if(Kr.x>=$t&&Kr.x<=Ar&&Kr.y>=lr&&Kr.y<=zr&&te(Ce,ut,Ue,Tt,Ge,Ft,Kr.x,Kr.y)&&We(Kr.prev,Kr,Kr.next)>=0)return!1;Kr=Kr.next}return!0}function Mc(q,D,Y,pe){let Ce=q.prev,Ue=q,Ge=q.next;if(We(Ce,Ue,Ge)>=0)return!1;let ut=Ce.x,Tt=Ue.x,Ft=Ge.x,$t=Ce.y,lr=Ue.y,Ar=Ge.y,zr=ut<Tt?ut<Ft?ut:Ft:Tt<Ft?Tt:Ft,Kr=$t<lr?$t<Ar?$t:Ar:lr<Ar?lr:Ar,la=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,za=$t>lr?$t>Ar?$t:Ar:lr>Ar?lr:Ar,ja=K(zr,Kr,D,Y,pe),gi=K(la,za,D,Y,pe),ei=q.prevZ,hi=q.nextZ;for(;ei&&ei.z>=ja&&hi&&hi.z<=gi;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0||(ei=ei.prevZ,hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0))return!1;hi=hi.nextZ}for(;ei&&ei.z>=ja;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0)return!1;ei=ei.prevZ}for(;hi&&hi.z<=gi;){if(hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0)return!1;hi=hi.nextZ}return!0}function Vc(q,D){let Y=q;do{let pe=Y.prev,Ce=Y.next.next;!He(pe,Ce)&&st(pe,Y,Y.next,Ce)&&yr(pe,Ce)&&yr(Ce,pe)&&(D.push(pe.i,Y.i,Ce.i),qt(Y),qt(Y.next),Y=q=Ce),Y=Y.next}while(Y!==q);return mc(Y)}function Ds(q,D,Y,pe,Ce,Ue){let Ge=q;do{let ut=Ge.next.next;for(;ut!==Ge.prev;){if(Ge.i!==ut.i&&xe(Ge,ut)){let Tt=Ir(Ge,ut);return Ge=mc(Ge,Ge.next),Tt=mc(Tt,Tt.next),rf(Ge,D,Y,pe,Ce,Ue,0),void rf(Tt,D,Y,pe,Ce,Ue,0)}ut=ut.next}Ge=Ge.next}while(Ge!==q)}function af(q,D){return q.x-D.x}function Cs(q,D){let Y=function(Ce,Ue){let Ge=Ue,ut=Ce.x,Tt=Ce.y,Ft,$t=-1/0;do{if(Tt<=Ge.y&&Tt>=Ge.next.y&&Ge.next.y!==Ge.y){let la=Ge.x+(Tt-Ge.y)*(Ge.next.x-Ge.x)/(Ge.next.y-Ge.y);if(la<=ut&&la>$t&&($t=la,Ft=Ge.x<Ge.next.x?Ge:Ge.next,la===ut))return Ft}Ge=Ge.next}while(Ge!==Ue);if(!Ft)return null;let lr=Ft,Ar=Ft.x,zr=Ft.y,Kr=1/0;Ge=Ft;do{if(ut>=Ge.x&&Ge.x>=Ar&&ut!==Ge.x&&te(Tt<zr?ut:$t,Tt,Ar,zr,Tt<zr?$t:ut,Tt,Ge.x,Ge.y)){let la=Math.abs(Tt-Ge.y)/(ut-Ge.x);yr(Ge,Ce)&&(la<Kr||la===Kr&&(Ge.x>Ft.x||Ge.x===Ft.x&&ve(Ft,Ge)))&&(Ft=Ge,Kr=la)}Ge=Ge.next}while(Ge!==lr);return Ft}(q,D);if(!Y)return D;let pe=Ir(Y,q);return mc(pe,pe.next),mc(Y,Y.next)}function ve(q,D){return We(q.prev,q,D.prev)<0&&We(D.next,q,q.next)<0}function K(q,D,Y,pe,Ce){return(q=1431655765&((q=858993459&((q=252645135&((q=16711935&((q=(q-Y)*Ce|0)|q<<8))|q<<4))|q<<2))|q<<1))|(D=1431655765&((D=858993459&((D=252645135&((D=16711935&((D=(D-pe)*Ce|0)|D<<8))|D<<4))|D<<2))|D<<1))<<1}function ye(q){let D=q,Y=q;do(D.x<Y.x||D.x===Y.x&&D.y<Y.y)&&(Y=D),D=D.next;while(D!==q);return Y}function te(q,D,Y,pe,Ce,Ue,Ge,ut){return(Ce-Ge)*(D-ut)>=(q-Ge)*(Ue-ut)&&(q-Ge)*(pe-ut)>=(Y-Ge)*(D-ut)&&(Y-Ge)*(Ue-ut)>=(Ce-Ge)*(pe-ut)}function xe(q,D){return q.next.i!==D.i&&q.prev.i!==D.i&&!function(Y,pe){let Ce=Y;do{if(Ce.i!==Y.i&&Ce.next.i!==Y.i&&Ce.i!==pe.i&&Ce.next.i!==pe.i&&st(Ce,Ce.next,Y,pe))return!0;Ce=Ce.next}while(Ce!==Y);return!1}(q,D)&&(yr(q,D)&&yr(D,q)&&function(Y,pe){let Ce=Y,Ue=!1,Ge=(Y.x+pe.x)/2,ut=(Y.y+pe.y)/2;do Ce.y>ut!=Ce.next.y>ut&&Ce.next.y!==Ce.y&&Ge<(Ce.next.x-Ce.x)*(ut-Ce.y)/(Ce.next.y-Ce.y)+Ce.x&&(Ue=!Ue),Ce=Ce.next;while(Ce!==Y);return Ue}(q,D)&&(We(q.prev,q,D.prev)||We(q,D.prev,D))||He(q,D)&&We(q.prev,q,q.next)>0&&We(D.prev,D,D.next)>0)}function We(q,D,Y){return(D.y-q.y)*(Y.x-D.x)-(D.x-q.x)*(Y.y-D.y)}function He(q,D){return q.x===D.x&&q.y===D.y}function st(q,D,Y,pe){let Ce=Ht(We(q,D,Y)),Ue=Ht(We(q,D,pe)),Ge=Ht(We(Y,pe,q)),ut=Ht(We(Y,pe,D));return Ce!==Ue&&Ge!==ut||!(Ce!==0||!Et(q,Y,D))||!(Ue!==0||!Et(q,pe,D))||!(Ge!==0||!Et(Y,q,pe))||!(ut!==0||!Et(Y,D,pe))}function Et(q,D,Y){return D.x<=Math.max(q.x,Y.x)&&D.x>=Math.min(q.x,Y.x)&&D.y<=Math.max(q.y,Y.y)&&D.y>=Math.min(q.y,Y.y)}function Ht(q){return q>0?1:q<0?-1:0}function yr(q,D){return We(q.prev,q,q.next)<0?We(q,D,q.next)>=0&&We(q,q.prev,D)>=0:We(q,D,q.prev)<0||We(q,q.next,D)<0}function Ir(q,D){let Y=tr(q.i,q.x,q.y),pe=tr(D.i,D.x,D.y),Ce=q.next,Ue=D.prev;return q.next=D,D.prev=q,Y.next=Ce,Ce.prev=Y,pe.next=Y,Y.prev=pe,Ue.next=pe,pe.prev=Ue,pe}function wr(q,D,Y,pe){let Ce=tr(q,D,Y);return pe?(Ce.next=pe.next,Ce.prev=pe,pe.next.prev=Ce,pe.next=Ce):(Ce.prev=Ce,Ce.next=Ce),Ce}function qt(q){q.next.prev=q.prev,q.prev.next=q.next,q.prevZ&&(q.prevZ.nextZ=q.nextZ),q.nextZ&&(q.nextZ.prevZ=q.prevZ)}function tr(q,D,Y){return{i:q,x:D,y:Y,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function dr(q,D,Y){let pe=Y.patternDependencies,Ce=!1;for(let Ue of D){let Ge=Ue.paint.get(`${q}-pattern`);Ge.isConstant()||(Ce=!0);let ut=Ge.constantOr(null);ut&&(Ce=!0,pe[ut.to]=!0,pe[ut.from]=!0)}return Ce}function Pr(q,D,Y,pe,Ce){let Ue=Ce.patternDependencies;for(let Ge of D){let ut=Ge.paint.get(`${q}-pattern`).value;if(ut.kind!=="constant"){let Tt=ut.evaluate({zoom:pe-1},Y,{},Ce.availableImages),Ft=ut.evaluate({zoom:pe},Y,{},Ce.availableImages),$t=ut.evaluate({zoom:pe+1},Y,{},Ce.availableImages);Tt=Tt&&Tt.name?Tt.name:Tt,Ft=Ft&&Ft.name?Ft.name:Ft,$t=$t&&$t.name?$t.name:$t,Ue[Tt]=!0,Ue[Ft]=!0,Ue[$t]=!0,Y.patterns[Ge.id]={min:Tt,mid:Ft,max:$t}}}return Y}class Vr{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Rl,this.indexArray=new Re,this.indexArray2=new $e,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.segments2=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("fill",this.layers,Y);let Ce=this.layers[0].layout.get("fill-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe,Y.availableImages):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("fill",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,jc),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.indexBuffer2=D.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut=0;for(let zr of Ge)ut+=zr.length;let Tt=this.segments.prepareSegment(ut,this.layoutVertexArray,this.indexArray),Ft=Tt.vertexLength,$t=[],lr=[];for(let zr of Ge){if(zr.length===0)continue;zr!==Ge[0]&&lr.push($t.length/2);let Kr=this.segments2.prepareSegment(zr.length,this.layoutVertexArray,this.indexArray2),la=Kr.vertexLength;this.layoutVertexArray.emplaceBack(zr[0].x,zr[0].y),this.indexArray2.emplaceBack(la+zr.length-1,la),$t.push(zr[0].x),$t.push(zr[0].y);for(let za=1;za<zr.length;za++)this.layoutVertexArray.emplaceBack(zr[za].x,zr[za].y),this.indexArray2.emplaceBack(la+za-1,la+za),$t.push(zr[za].x),$t.push(zr[za].y);Kr.vertexLength+=zr.length,Kr.primitiveLength+=zr.length}let Ar=Ol($t,lr);for(let zr=0;zr<Ar.length;zr+=3)this.indexArray.emplaceBack(Ft+Ar[zr],Ft+Ar[zr+1],Ft+Ar[zr+2]);Tt.vertexLength+=ut,Tt.primitiveLength+=Ar.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}}let Hr,aa;ti("FillBucket",Vr,{omit:["layers","patternFeatures"]});var Qr={get paint(){return aa=aa||new Oe({"fill-antialias":new ro(ie.paint_fill["fill-antialias"]),"fill-opacity":new Po(ie.paint_fill["fill-opacity"]),"fill-color":new Po(ie.paint_fill["fill-color"]),"fill-outline-color":new Po(ie.paint_fill["fill-outline-color"]),"fill-translate":new ro(ie.paint_fill["fill-translate"]),"fill-translate-anchor":new ro(ie.paint_fill["fill-translate-anchor"]),"fill-pattern":new Nc(ie.paint_fill["fill-pattern"])})},get layout(){return Hr=Hr||new Oe({"fill-sort-key":new Po(ie.layout_fill["fill-sort-key"])})}};class Gr extends ae{constructor(D){super(D,Qr)}recalculate(D,Y){super.recalculate(D,Y);let pe=this.paint._values["fill-outline-color"];pe.value.kind==="constant"&&pe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(D){return new Vr(D)}queryRadius(){return Io(this.paint.get("fill-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){return ra(nn(D,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Ge.angle,ut),Ce)}isTileClipped(){return!0}}let ia=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),Ur=ft([{name:"a_centroid",components:2,type:"Int16"}],4),{members:wa}=ia;var Oa={},ri=o,Pi=mi;function mi(q,D,Y,pe,Ce){this.properties={},this.extent=Y,this.type=0,this._pbf=q,this._geometry=-1,this._keys=pe,this._values=Ce,q.readFields(Di,this,D)}function Di(q,D,Y){q==1?D.id=Y.readVarint():q==2?function(pe,Ce){for(var Ue=pe.readVarint()+pe.pos;pe.pos<Ue;){var Ge=Ce._keys[pe.readVarint()],ut=Ce._values[pe.readVarint()];Ce.properties[Ge]=ut}}(Y,D):q==3?D.type=Y.readVarint():q==4&&(D._geometry=Y.pos)}function An(q){for(var D,Y,pe=0,Ce=0,Ue=q.length,Ge=Ue-1;Ce<Ue;Ge=Ce++)pe+=((Y=q[Ge]).x-(D=q[Ce]).x)*(D.y+Y.y);return pe}mi.types=["Unknown","Point","LineString","Polygon"],mi.prototype.loadGeometry=function(){var q=this._pbf;q.pos=this._geometry;for(var D,Y=q.readVarint()+q.pos,pe=1,Ce=0,Ue=0,Ge=0,ut=[];q.pos<Y;){if(Ce<=0){var Tt=q.readVarint();pe=7&Tt,Ce=Tt>>3}if(Ce--,pe===1||pe===2)Ue+=q.readSVarint(),Ge+=q.readSVarint(),pe===1&&(D&&ut.push(D),D=[]),D.push(new ri(Ue,Ge));else{if(pe!==7)throw new Error("unknown command "+pe);D&&D.push(D[0].clone())}}return D&&ut.push(D),ut},mi.prototype.bbox=function(){var q=this._pbf;q.pos=this._geometry;for(var D=q.readVarint()+q.pos,Y=1,pe=0,Ce=0,Ue=0,Ge=1/0,ut=-1/0,Tt=1/0,Ft=-1/0;q.pos<D;){if(pe<=0){var $t=q.readVarint();Y=7&$t,pe=$t>>3}if(pe--,Y===1||Y===2)(Ce+=q.readSVarint())<Ge&&(Ge=Ce),Ce>ut&&(ut=Ce),(Ue+=q.readSVarint())<Tt&&(Tt=Ue),Ue>Ft&&(Ft=Ue);else if(Y!==7)throw new Error("unknown command "+Y)}return[Ge,Tt,ut,Ft]},mi.prototype.toGeoJSON=function(q,D,Y){var pe,Ce,Ue=this.extent*Math.pow(2,Y),Ge=this.extent*q,ut=this.extent*D,Tt=this.loadGeometry(),Ft=mi.types[this.type];function $t(zr){for(var Kr=0;Kr<zr.length;Kr++){var la=zr[Kr];zr[Kr]=[360*(la.x+Ge)/Ue-180,360/Math.PI*Math.atan(Math.exp((180-360*(la.y+ut)/Ue)*Math.PI/180))-90]}}switch(this.type){case 1:var lr=[];for(pe=0;pe<Tt.length;pe++)lr[pe]=Tt[pe][0];$t(Tt=lr);break;case 2:for(pe=0;pe<Tt.length;pe++)$t(Tt[pe]);break;case 3:for(Tt=function(zr){var Kr=zr.length;if(Kr<=1)return[zr];for(var la,za,ja=[],gi=0;gi<Kr;gi++){var ei=An(zr[gi]);ei!==0&&(za===void 0&&(za=ei<0),za===ei<0?(la&&ja.push(la),la=[zr[gi]]):la.push(zr[gi]))}return la&&ja.push(la),ja}(Tt),pe=0;pe<Tt.length;pe++)for(Ce=0;Ce<Tt[pe].length;Ce++)$t(Tt[pe][Ce])}Tt.length===1?Tt=Tt[0]:Ft="Multi"+Ft;var Ar={type:"Feature",geometry:{type:Ft,coordinates:Tt},properties:this.properties};return"id"in this&&(Ar.id=this.id),Ar};var ln=Pi,Ii=Wi;function Wi(q,D){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=q,this._keys=[],this._values=[],this._features=[],q.readFields(Hi,this,D),this.length=this._features.length}function Hi(q,D,Y){q===15?D.version=Y.readVarint():q===1?D.name=Y.readString():q===5?D.extent=Y.readVarint():q===2?D._features.push(Y.pos):q===3?D._keys.push(Y.readString()):q===4&&D._values.push(function(pe){for(var Ce=null,Ue=pe.readVarint()+pe.pos;pe.pos<Ue;){var Ge=pe.readVarint()>>3;Ce=Ge===1?pe.readString():Ge===2?pe.readFloat():Ge===3?pe.readDouble():Ge===4?pe.readVarint64():Ge===5?pe.readVarint():Ge===6?pe.readSVarint():Ge===7?pe.readBoolean():null}return Ce}(Y))}Wi.prototype.feature=function(q){if(q<0||q>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[q];var D=this._pbf.readVarint()+this._pbf.pos;return new ln(this._pbf,D,this.extent,this._keys,this._values)};var yn=Ii;function zn(q,D,Y){if(q===3){var pe=new yn(Y,Y.readVarint()+Y.pos);pe.length&&(D[pe.name]=pe)}}Oa.VectorTile=function(q,D){this.layers=q.readFields(zn,{},D)},Oa.VectorTileFeature=Pi,Oa.VectorTileLayer=Ii;let ms=Oa.VectorTileFeature.types,us=Math.pow(2,13);function Vs(q,D,Y,pe,Ce,Ue,Ge,ut){q.emplaceBack(D,Y,2*Math.floor(pe*us)+Ge,Ce*us*2,Ue*us*2,Math.round(ut))}class qo{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Xl,this.centroidVertexArray=new Zo,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.features=[],this.hasPattern=dr("fill-extrusion",this.layers,Y);for(let{feature:Ce,id:Ue,index:Ge,sourceLayerIndex:ut}of D){let Tt=this.layers[0]._featureFilter.needGeometry,Ft=Dl(Ce,Tt);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ft,pe))continue;let $t={id:Ue,sourceLayerIndex:ut,index:Ge,geometry:Tt?Ft.geometry:hl(Ce),properties:Ce.properties,type:Ce.type,patterns:{}};this.hasPattern?this.features.push(Pr("fill-extrusion",this.layers,$t,this.zoom,Y)):this.addFeature($t,$t.geometry,Ge,pe,{}),Y.featureIndex.insert(Ce,$t.geometry,Ge,ut,this.index,!0)}}addFeatures(D,Y,pe){for(let Ce of this.features){let{geometry:Ue}=Ce;this.addFeature(Ce,Ue,Ce.index,Y,pe)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,wa),this.centroidVertexBuffer=D.createVertexBuffer(this.centroidVertexArray,Ur.members,!0),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut={x:0,y:0,vertexCount:0},Tt=0;for(let Kr of Ge)Tt+=Kr.length;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Kr of Ge){if(Kr.length===0||wl(Kr))continue;let la=0;for(let za=0;za<Kr.length;za++){let ja=Kr[za];if(za>=1){let gi=Kr[za-1];if(!Ls(ja,gi)){Ft.vertexLength+4>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let ei=ja.sub(gi)._perp()._unit(),hi=gi.dist(ja);la+hi>32768&&(la=0),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,1,la),ut.x+=2*ja.x,ut.y+=2*ja.y,ut.vertexCount+=2,la+=hi,Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,1,la),ut.x+=2*gi.x,ut.y+=2*gi.y,ut.vertexCount+=2;let Ei=Ft.vertexLength;this.indexArray.emplaceBack(Ei,Ei+2,Ei+1),this.indexArray.emplaceBack(Ei+1,Ei+2,Ei+3),Ft.vertexLength+=4,Ft.primitiveLength+=2}}}}if(Ft.vertexLength+Tt>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(Tt,this.layoutVertexArray,this.indexArray)),ms[D.type]!=="Polygon")continue;let $t=[],lr=[],Ar=Ft.vertexLength;for(let Kr of Ge)if(Kr.length!==0){Kr!==Ge[0]&&lr.push($t.length/2);for(let la=0;la<Kr.length;la++){let za=Kr[la];Vs(this.layoutVertexArray,za.x,za.y,0,0,1,1,0),ut.x+=za.x,ut.y+=za.y,ut.vertexCount+=1,$t.push(za.x),$t.push(za.y)}}let zr=Ol($t,lr);for(let Kr=0;Kr<zr.length;Kr+=3)this.indexArray.emplaceBack(Ar+zr[Kr],Ar+zr[Kr+2],Ar+zr[Kr+1]);Ft.primitiveLength+=zr.length/3,Ft.vertexLength+=Tt;for(let Kr=0;Kr<ut.vertexCount;Kr++){let la=Math.floor(ut.x/ut.vertexCount),za=Math.floor(ut.y/ut.vertexCount);this.centroidVertexArray.emplaceBack(la,za)}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}}function Ls(q,D){return q.x===D.x&&(q.x<0||q.x>ao)||q.y===D.y&&(q.y<0||q.y>ao)}function wl(q){return q.every(D=>D.x<0)||q.every(D=>D.x>ao)||q.every(D=>D.y<0)||q.every(D=>D.y>ao)}let Ru;ti("FillExtrusionBucket",qo,{omit:["layers","features"]});var Ap={get paint(){return Ru=Ru||new Oe({"fill-extrusion-opacity":new ro(ie["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Po(ie["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Nc(ie["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Po(ie["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Po(ie["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ro(ie["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Sp extends ae{constructor(D){super(D,Ap)}createBucket(D){return new qo(D)}queryRadius(){return Io(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Ge.angle,ut),$t=this.paint.get("fill-extrusion-height").evaluate(Y,pe),lr=this.paint.get("fill-extrusion-base").evaluate(Y,pe),Ar=function(Kr,la,za,ja){let gi=[];for(let ei of Kr){let hi=[ei.x,ei.y,0,1];_o(hi,hi,la),gi.push(new i(hi[0]/hi[3],hi[1]/hi[3]))}return gi}(Ft,Tt),zr=function(Kr,la,za,ja){let gi=[],ei=[],hi=ja[8]*la,Ei=ja[9]*la,En=ja[10]*la,fo=ja[11]*la,ss=ja[8]*za,eo=ja[9]*za,vn=ja[10]*za,Uo=ja[11]*za;for(let Mo of Kr){let xo=[],Yi=[];for(let Ko of Mo){let bo=Ko.x,gs=Ko.y,_u=ja[0]*bo+ja[4]*gs+ja[12],pu=ja[1]*bo+ja[5]*gs+ja[13],Bf=ja[2]*bo+ja[6]*gs+ja[14],Gp=ja[3]*bo+ja[7]*gs+ja[15],dh=Bf+En,Nf=Gp+fo,Yh=_u+ss,Kh=pu+eo,Jh=Bf+vn,Hc=Gp+Uo,Uf=new i((_u+hi)/Nf,(pu+Ei)/Nf);Uf.z=dh/Nf,xo.push(Uf);let Ih=new i(Yh/Hc,Kh/Hc);Ih.z=Jh/Hc,Yi.push(Ih)}gi.push(xo),ei.push(Yi)}return[gi,ei]}(Ce,lr,$t,Tt);return function(Kr,la,za){let ja=1/0;ra(za,la)&&(ja=Vp(za,la[0]));for(let gi=0;gi<la.length;gi++){let ei=la[gi],hi=Kr[gi];for(let Ei=0;Ei<ei.length-1;Ei++){let En=ei[Ei],fo=[En,ei[Ei+1],hi[Ei+1],hi[Ei],En];dc(za,fo)&&(ja=Math.min(ja,Vp(za,fo)))}}return ja!==1/0&&ja}(zr[0],zr[1],Ar)}}function Eh(q,D){return q.x*D.x+q.y*D.y}function Vp(q,D){if(q.length===1){let Y=0,pe=D[Y++],Ce;for(;!Ce||pe.equals(Ce);)if(Ce=D[Y++],!Ce)return 1/0;for(;Y<D.length;Y++){let Ue=D[Y],Ge=q[0],ut=Ce.sub(pe),Tt=Ue.sub(pe),Ft=Ge.sub(pe),$t=Eh(ut,ut),lr=Eh(ut,Tt),Ar=Eh(Tt,Tt),zr=Eh(Ft,ut),Kr=Eh(Ft,Tt),la=$t*Ar-lr*lr,za=(Ar*zr-lr*Kr)/la,ja=($t*Kr-lr*zr)/la,gi=pe.z*(1-za-ja)+Ce.z*za+Ue.z*ja;if(isFinite(gi))return gi}return 1/0}{let Y=1/0;for(let pe of D)Y=Math.min(Y,pe.z);return Y}}let Vd=ft([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),{members:td}=Vd,kh=ft([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),{members:rd}=kh,Xh=Oa.VectorTileFeature.types,Ch=Math.cos(Math.PI/180*37.5),Mp=Math.pow(2,14)/.5;class qp{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(Y=>{this.gradients[Y.id]={}}),this.layoutVertexArray=new qu,this.layoutVertexArray2=new fu,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("line",this.layers,Y);let Ce=this.layers[0].layout.get("line-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("line",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=D.createVertexBuffer(this.layoutVertexArray2,rd)),this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,td),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(D){if(D.properties&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_end"))return{start:+D.properties.mapbox_clip_start,end:+D.properties.mapbox_clip_end}}addFeature(D,Y,pe,Ce,Ue){let Ge=this.layers[0].layout,ut=Ge.get("line-join").evaluate(D,{}),Tt=Ge.get("line-cap"),Ft=Ge.get("line-miter-limit"),$t=Ge.get("line-round-limit");this.lineClips=this.lineFeatureClips(D);for(let lr of Y)this.addLine(lr,D,ut,Tt,Ft,$t);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}addLine(D,Y,pe,Ce,Ue,Ge){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let ja=0;ja<D.length-1;ja++)this.totalDistance+=D[ja].dist(D[ja+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}let ut=Xh[Y.type]==="Polygon",Tt=D.length;for(;Tt>=2&&D[Tt-1].equals(D[Tt-2]);)Tt--;let Ft=0;for(;Ft<Tt-1&&D[Ft].equals(D[Ft+1]);)Ft++;if(Tt<(ut?3:2))return;pe==="bevel"&&(Ue=1.05);let $t=this.overscaling<=16?15*ao/(512*this.overscaling):0,lr=this.segments.prepareSegment(10*Tt,this.layoutVertexArray,this.indexArray),Ar,zr,Kr,la,za;this.e1=this.e2=-1,ut&&(Ar=D[Tt-2],za=D[Ft].sub(Ar)._unit()._perp());for(let ja=Ft;ja<Tt;ja++){if(Kr=ja===Tt-1?ut?D[Ft+1]:void 0:D[ja+1],Kr&&D[ja].equals(Kr))continue;za&&(la=za),Ar&&(zr=Ar),Ar=D[ja],za=Kr?Kr.sub(Ar)._unit()._perp():la,la=la||za;let gi=la.add(za);gi.x===0&&gi.y===0||gi._unit();let ei=la.x*za.x+la.y*za.y,hi=gi.x*za.x+gi.y*za.y,Ei=hi!==0?1/hi:1/0,En=2*Math.sqrt(2-2*hi),fo=hi<Ch&&zr&&Kr,ss=la.x*za.y-la.y*za.x>0;if(fo&&ja>Ft){let Uo=Ar.dist(zr);if(Uo>2*$t){let Mo=Ar.sub(Ar.sub(zr)._mult($t/Uo)._round());this.updateDistance(zr,Mo),this.addCurrentVertex(Mo,la,0,0,lr),zr=Mo}}let eo=zr&&Kr,vn=eo?pe:ut?"butt":Ce;if(eo&&vn==="round"&&(Ei<Ge?vn="miter":Ei<=2&&(vn="fakeround")),vn==="miter"&&Ei>Ue&&(vn="bevel"),vn==="bevel"&&(Ei>2&&(vn="flipbevel"),Ei<Ue&&(vn="miter")),zr&&this.updateDistance(zr,Ar),vn==="miter")gi._mult(Ei),this.addCurrentVertex(Ar,gi,0,0,lr);else if(vn==="flipbevel"){if(Ei>100)gi=za.mult(-1);else{let Uo=Ei*la.add(za).mag()/la.sub(za).mag();gi._perp()._mult(Uo*(ss?-1:1))}this.addCurrentVertex(Ar,gi,0,0,lr),this.addCurrentVertex(Ar,gi.mult(-1),0,0,lr)}else if(vn==="bevel"||vn==="fakeround"){let Uo=-Math.sqrt(Ei*Ei-1),Mo=ss?Uo:0,xo=ss?0:Uo;if(zr&&this.addCurrentVertex(Ar,la,Mo,xo,lr),vn==="fakeround"){let Yi=Math.round(180*En/Math.PI/20);for(let Ko=1;Ko<Yi;Ko++){let bo=Ko/Yi;if(bo!==.5){let _u=bo-.5;bo+=bo*_u*(bo-1)*((1.0904+ei*(ei*(3.55645-1.43519*ei)-3.2452))*_u*_u+(.848013+ei*(.215638*ei-1.06021)))}let gs=za.sub(la)._mult(bo)._add(la)._unit()._mult(ss?-1:1);this.addHalfVertex(Ar,gs.x,gs.y,!1,ss,0,lr)}}Kr&&this.addCurrentVertex(Ar,za,-Mo,-xo,lr)}else if(vn==="butt")this.addCurrentVertex(Ar,gi,0,0,lr);else if(vn==="square"){let Uo=zr?1:-1;this.addCurrentVertex(Ar,gi,Uo,Uo,lr)}else vn==="round"&&(zr&&(this.addCurrentVertex(Ar,la,0,0,lr),this.addCurrentVertex(Ar,la,1,1,lr,!0)),Kr&&(this.addCurrentVertex(Ar,za,-1,-1,lr,!0),this.addCurrentVertex(Ar,za,0,0,lr)));if(fo&&ja<Tt-1){let Uo=Ar.dist(Kr);if(Uo>2*$t){let Mo=Ar.add(Kr.sub(Ar)._mult($t/Uo)._round());this.updateDistance(Ar,Mo),this.addCurrentVertex(Mo,za,0,0,lr),Ar=Mo}}}}addCurrentVertex(D,Y,pe,Ce,Ue,Ge=!1){let ut=Y.y*Ce-Y.x,Tt=-Y.y-Y.x*Ce;this.addHalfVertex(D,Y.x+Y.y*pe,Y.y-Y.x*pe,Ge,!1,pe,Ue),this.addHalfVertex(D,ut,Tt,Ge,!0,-Ce,Ue),this.distance>Mp/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(D,Y,pe,Ce,Ue,Ge))}addHalfVertex({x:D,y:Y},pe,Ce,Ue,Ge,ut,Tt){let Ft=.5*(this.lineClips?this.scaledDistance*(Mp-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((D<<1)+(Ue?1:0),(Y<<1)+(Ge?1:0),Math.round(63*pe)+128,Math.round(63*Ce)+128,1+(ut===0?0:ut<0?-1:1)|(63&Ft)<<2,Ft>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let $t=Tt.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,$t),Tt.primitiveLength++),Ge?this.e2=$t:this.e1=$t}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(D,Y){this.distance+=D.dist(Y),this.updateScaledDistance()}}let Ep,Cv;ti("LineBucket",qp,{omit:["layers","patternFeatures"]});var qd={get paint(){return Cv=Cv||new Oe({"line-opacity":new Po(ie.paint_line["line-opacity"]),"line-color":new Po(ie.paint_line["line-color"]),"line-translate":new ro(ie.paint_line["line-translate"]),"line-translate-anchor":new ro(ie.paint_line["line-translate-anchor"]),"line-width":new Po(ie.paint_line["line-width"]),"line-gap-width":new Po(ie.paint_line["line-gap-width"]),"line-offset":new Po(ie.paint_line["line-offset"]),"line-blur":new Po(ie.paint_line["line-blur"]),"line-dasharray":new hc(ie.paint_line["line-dasharray"]),"line-pattern":new Nc(ie.paint_line["line-pattern"]),"line-gradient":new pc(ie.paint_line["line-gradient"])})},get layout(){return Ep=Ep||new Oe({"line-cap":new ro(ie.layout_line["line-cap"]),"line-join":new Po(ie.layout_line["line-join"]),"line-miter-limit":new ro(ie.layout_line["line-miter-limit"]),"line-round-limit":new ro(ie.layout_line["line-round-limit"]),"line-sort-key":new Po(ie.layout_line["line-sort-key"])})}};class Sf extends Po{possiblyEvaluate(D,Y){return Y=new Ts(Math.floor(Y.zoom),{now:Y.now,fadeDuration:Y.fadeDuration,zoomHistory:Y.zoomHistory,transition:Y.transition}),super.possiblyEvaluate(D,Y)}evaluate(D,Y,pe,Ce){return Y=E({},Y,{zoom:Math.floor(Y.zoom)}),super.evaluate(D,Y,pe,Ce)}}let Hd;class Lv extends ae{constructor(D){super(D,qd),this.gradientVersion=0,Hd||(Hd=new Sf(qd.paint.properties["line-width"].specification),Hd.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(D){if(D==="line-gradient"){let Y=this.gradientExpression();this.stepInterpolant=!!function(pe){return pe._styleExpression!==void 0}(Y)&&Y._styleExpression.expression instanceof Sa,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(D,Y){super.recalculate(D,Y),this.paint._values["line-floorwidth"]=Hd.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,D)}createBucket(D){return new qp(D)}queryRadius(D){let Y=D,pe=eh(Gi("line-width",this,Y),Gi("line-gap-width",this,Y)),Ce=Gi("line-offset",this,Y);return pe/2+Math.abs(Ce)+Io(this.paint.get("line-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){let Tt=nn(D,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Ge.angle,ut),Ft=ut/2*eh(this.paint.get("line-width").evaluate(Y,pe),this.paint.get("line-gap-width").evaluate(Y,pe)),$t=this.paint.get("line-offset").evaluate(Y,pe);return $t&&(Ce=function(lr,Ar){let zr=[];for(let Kr=0;Kr<lr.length;Kr++){let la=lr[Kr],za=[];for(let ja=0;ja<la.length;ja++){let gi=la[ja-1],ei=la[ja],hi=la[ja+1],Ei=ja===0?new i(0,0):ei.sub(gi)._unit()._perp(),En=ja===la.length-1?new i(0,0):hi.sub(ei)._unit()._perp(),fo=Ei._add(En)._unit(),ss=fo.x*En.x+fo.y*En.y;ss!==0&&fo._mult(1/ss),za.push(fo._mult(Ar)._add(ei))}zr.push(za)}return zr}(Ce,$t*ut)),function(lr,Ar,zr){for(let Kr=0;Kr<Ar.length;Kr++){let la=Ar[Kr];if(lr.length>=3){for(let za=0;za<la.length;za++)if(cn(lr,la[za]))return!0}if(Ta(lr,la,zr))return!0}return!1}(Tt,Ce,Ft)}isTileClipped(){return!0}}function eh(q,D){return D>0?D+2*q:q}let iv=ft([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),im=ft([{name:"a_projected_pos",components:3,type:"Float32"}],4);ft([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let nm=ft([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);ft([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let Pv=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),nv=ft([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ov(q,D,Y){return q.sections.forEach(pe=>{pe.text=function(Ce,Ue,Ge){let ut=Ue.layout.get("text-transform").evaluate(Ge,{});return ut==="uppercase"?Ce=Ce.toLocaleUpperCase():ut==="lowercase"&&(Ce=Ce.toLocaleLowerCase()),js.applyArabicShaping&&(Ce=js.applyArabicShaping(Ce)),Ce}(pe.text,D,Y)}),q}ft([{name:"triangle",components:3,type:"Uint16"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),ft([{type:"Float32",name:"offsetX"}]),ft([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),ft([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let Du={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Bl=24,Lh=Ql,Iv=function(q,D,Y,pe,Ce){var Ue,Ge,ut=8*Ce-pe-1,Tt=(1<<ut)-1,Ft=Tt>>1,$t=-7,lr=Y?Ce-1:0,Ar=Y?-1:1,zr=q[D+lr];for(lr+=Ar,Ue=zr&(1<<-$t)-1,zr>>=-$t,$t+=ut;$t>0;Ue=256*Ue+q[D+lr],lr+=Ar,$t-=8);for(Ge=Ue&(1<<-$t)-1,Ue>>=-$t,$t+=pe;$t>0;Ge=256*Ge+q[D+lr],lr+=Ar,$t-=8);if(Ue===0)Ue=1-Ft;else{if(Ue===Tt)return Ge?NaN:1/0*(zr?-1:1);Ge+=Math.pow(2,pe),Ue-=Ft}return(zr?-1:1)*Ge*Math.pow(2,Ue-pe)},om=function(q,D,Y,pe,Ce,Ue){var Ge,ut,Tt,Ft=8*Ue-Ce-1,$t=(1<<Ft)-1,lr=$t>>1,Ar=Ce===23?Math.pow(2,-24)-Math.pow(2,-77):0,zr=pe?0:Ue-1,Kr=pe?1:-1,la=D<0||D===0&&1/D<0?1:0;for(D=Math.abs(D),isNaN(D)||D===1/0?(ut=isNaN(D)?1:0,Ge=$t):(Ge=Math.floor(Math.log(D)/Math.LN2),D*(Tt=Math.pow(2,-Ge))<1&&(Ge--,Tt*=2),(D+=Ge+lr>=1?Ar/Tt:Ar*Math.pow(2,1-lr))*Tt>=2&&(Ge++,Tt/=2),Ge+lr>=$t?(ut=0,Ge=$t):Ge+lr>=1?(ut=(D*Tt-1)*Math.pow(2,Ce),Ge+=lr):(ut=D*Math.pow(2,lr-1)*Math.pow(2,Ce),Ge=0));Ce>=8;q[Y+zr]=255&ut,zr+=Kr,ut/=256,Ce-=8);for(Ge=Ge<<Ce|ut,Ft+=Ce;Ft>0;q[Y+zr]=255&Ge,zr+=Kr,Ge/=256,Ft-=8);q[Y+zr-Kr]|=128*la};function Ql(q){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(q)?q:new Uint8Array(q||0),this.pos=0,this.type=0,this.length=this.buf.length}Ql.Varint=0,Ql.Fixed64=1,Ql.Bytes=2,Ql.Fixed32=5;var xg=4294967296,sv=1/xg,y0=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");function kp(q){return q.type===Ql.Bytes?q.readVarint()+q.pos:q.pos+1}function lv(q,D,Y){return Y?4294967296*D+(q>>>0):4294967296*(D>>>0)+(q>>>0)}function _0(q,D,Y){var pe=D<=16383?1:D<=2097151?2:D<=268435455?3:Math.floor(Math.log(D)/(7*Math.LN2));Y.realloc(pe);for(var Ce=Y.pos-1;Ce>=q;Ce--)Y.buf[Ce+pe]=Y.buf[Ce]}function bg(q,D){for(var Y=0;Y<q.length;Y++)D.writeVarint(q[Y])}function NT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSVarint(q[Y])}function UT(q,D){for(var Y=0;Y<q.length;Y++)D.writeFloat(q[Y])}function jT(q,D){for(var Y=0;Y<q.length;Y++)D.writeDouble(q[Y])}function VT(q,D){for(var Y=0;Y<q.length;Y++)D.writeBoolean(q[Y])}function cC(q,D){for(var Y=0;Y<q.length;Y++)D.writeFixed32(q[Y])}function qT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSFixed32(q[Y])}function HT(q,D){for(var Y=0;Y<q.length;Y++)D.writeFixed64(q[Y])}function GT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSFixed64(q[Y])}function Rv(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+16777216*q[D+3]}function wg(q,D,Y){q[Y]=D,q[Y+1]=D>>>8,q[Y+2]=D>>>16,q[Y+3]=D>>>24}function kx(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+(q[D+3]<<24)}Ql.prototype={destroy:function(){this.buf=null},readFields:function(q,D,Y){for(Y=Y||this.length;this.pos<Y;){var pe=this.readVarint(),Ce=pe>>3,Ue=this.pos;this.type=7&pe,q(Ce,D,this),this.pos===Ue&&this.skip(pe)}return D},readMessage:function(q,D){return this.readFields(q,D,this.readVarint()+this.pos)},readFixed32:function(){var q=Rv(this.buf,this.pos);return this.pos+=4,q},readSFixed32:function(){var q=kx(this.buf,this.pos);return this.pos+=4,q},readFixed64:function(){var q=Rv(this.buf,this.pos)+Rv(this.buf,this.pos+4)*xg;return this.pos+=8,q},readSFixed64:function(){var q=Rv(this.buf,this.pos)+kx(this.buf,this.pos+4)*xg;return this.pos+=8,q},readFloat:function(){var q=Iv(this.buf,this.pos,!0,23,4);return this.pos+=4,q},readDouble:function(){var q=Iv(this.buf,this.pos,!0,52,8);return this.pos+=8,q},readVarint:function(q){var D,Y,pe=this.buf;return D=127&(Y=pe[this.pos++]),Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<7,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<14,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<21,Y<128?D:function(Ce,Ue,Ge){var ut,Tt,Ft=Ge.buf;if(ut=(112&(Tt=Ft[Ge.pos++]))>>4,Tt<128||(ut|=(127&(Tt=Ft[Ge.pos++]))<<3,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<10,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<17,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<24,Tt<128)||(ut|=(1&(Tt=Ft[Ge.pos++]))<<31,Tt<128))return lv(Ce,ut,Ue);throw new Error("Expected varint not more than 10 bytes")}(D|=(15&(Y=pe[this.pos]))<<28,q,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var q=this.readVarint();return q%2==1?(q+1)/-2:q/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var q=this.readVarint()+this.pos,D=this.pos;return this.pos=q,q-D>=12&&y0?function(Y,pe,Ce){return y0.decode(Y.subarray(pe,Ce))}(this.buf,D,q):function(Y,pe,Ce){for(var Ue="",Ge=pe;Ge<Ce;){var ut,Tt,Ft,$t=Y[Ge],lr=null,Ar=$t>239?4:$t>223?3:$t>191?2:1;if(Ge+Ar>Ce)break;Ar===1?$t<128&&(lr=$t):Ar===2?(192&(ut=Y[Ge+1]))==128&&(lr=(31&$t)<<6|63&ut)<=127&&(lr=null):Ar===3?(Tt=Y[Ge+2],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&((lr=(15&$t)<<12|(63&ut)<<6|63&Tt)<=2047||lr>=55296&&lr<=57343)&&(lr=null)):Ar===4&&(Tt=Y[Ge+2],Ft=Y[Ge+3],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&(192&Ft)==128&&((lr=(15&$t)<<18|(63&ut)<<12|(63&Tt)<<6|63&Ft)<=65535||lr>=1114112)&&(lr=null)),lr===null?(lr=65533,Ar=1):lr>65535&&(lr-=65536,Ue+=String.fromCharCode(lr>>>10&1023|55296),lr=56320|1023&lr),Ue+=String.fromCharCode(lr),Ge+=Ar}return Ue}(this.buf,D,q)},readBytes:function(){var q=this.readVarint()+this.pos,D=this.buf.subarray(this.pos,q);return this.pos=q,D},readPackedVarint:function(q,D){if(this.type!==Ql.Bytes)return q.push(this.readVarint(D));var Y=kp(this);for(q=q||[];this.pos<Y;)q.push(this.readVarint(D));return q},readPackedSVarint:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSVarint());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSVarint());return q},readPackedBoolean:function(q){if(this.type!==Ql.Bytes)return q.push(this.readBoolean());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readBoolean());return q},readPackedFloat:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFloat());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFloat());return q},readPackedDouble:function(q){if(this.type!==Ql.Bytes)return q.push(this.readDouble());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readDouble());return q},readPackedFixed32:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFixed32());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFixed32());return q},readPackedSFixed32:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSFixed32());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSFixed32());return q},readPackedFixed64:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFixed64());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFixed64());return q},readPackedSFixed64:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSFixed64());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSFixed64());return q},skip:function(q){var D=7&q;if(D===Ql.Varint)for(;this.buf[this.pos++]>127;);else if(D===Ql.Bytes)this.pos=this.readVarint()+this.pos;else if(D===Ql.Fixed32)this.pos+=4;else{if(D!==Ql.Fixed64)throw new Error("Unimplemented type: "+D);this.pos+=8}},writeTag:function(q,D){this.writeVarint(q<<3|D)},realloc:function(q){for(var D=this.length||16;D<this.pos+q;)D*=2;if(D!==this.length){var Y=new Uint8Array(D);Y.set(this.buf),this.buf=Y,this.length=D}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(q){this.realloc(4),wg(this.buf,q,this.pos),this.pos+=4},writeSFixed32:function(q){this.realloc(4),wg(this.buf,q,this.pos),this.pos+=4},writeFixed64:function(q){this.realloc(8),wg(this.buf,-1&q,this.pos),wg(this.buf,Math.floor(q*sv),this.pos+4),this.pos+=8},writeSFixed64:function(q){this.realloc(8),wg(this.buf,-1&q,this.pos),wg(this.buf,Math.floor(q*sv),this.pos+4),this.pos+=8},writeVarint:function(q){(q=+q||0)>268435455||q<0?function(D,Y){var pe,Ce;if(D>=0?(pe=D%4294967296|0,Ce=D/4294967296|0):(Ce=~(-D/4294967296),4294967295^(pe=~(-D%4294967296))?pe=pe+1|0:(pe=0,Ce=Ce+1|0)),D>=18446744073709552e3||D<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");Y.realloc(10),function(Ue,Ge,ut){ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,ut.buf[ut.pos]=127&(Ue>>>=7)}(pe,0,Y),function(Ue,Ge){var ut=(7&Ue)<<4;Ge.buf[Ge.pos++]|=ut|((Ue>>>=3)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue)))))}(Ce,Y)}(q,this):(this.realloc(4),this.buf[this.pos++]=127&q|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=q>>>7&127))))},writeSVarint:function(q){this.writeVarint(q<0?2*-q-1:2*q)},writeBoolean:function(q){this.writeVarint(!!q)},writeString:function(q){q=String(q),this.realloc(4*q.length),this.pos++;var D=this.pos;this.pos=function(pe,Ce,Ue){for(var Ge,ut,Tt=0;Tt<Ce.length;Tt++){if((Ge=Ce.charCodeAt(Tt))>55295&&Ge<57344){if(!ut){Ge>56319||Tt+1===Ce.length?(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189):ut=Ge;continue}if(Ge<56320){pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=Ge;continue}Ge=ut-55296<<10|Ge-56320|65536,ut=null}else ut&&(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=null);Ge<128?pe[Ue++]=Ge:(Ge<2048?pe[Ue++]=Ge>>6|192:(Ge<65536?pe[Ue++]=Ge>>12|224:(pe[Ue++]=Ge>>18|240,pe[Ue++]=Ge>>12&63|128),pe[Ue++]=Ge>>6&63|128),pe[Ue++]=63&Ge|128)}return Ue}(this.buf,q,this.pos);var Y=this.pos-D;Y>=128&&_0(D,Y,this),this.pos=D-1,this.writeVarint(Y),this.pos+=Y},writeFloat:function(q){this.realloc(4),om(this.buf,q,this.pos,!0,23,4),this.pos+=4},writeDouble:function(q){this.realloc(8),om(this.buf,q,this.pos,!0,52,8),this.pos+=8},writeBytes:function(q){var D=q.length;this.writeVarint(D),this.realloc(D);for(var Y=0;Y<D;Y++)this.buf[this.pos++]=q[Y]},writeRawMessage:function(q,D){this.pos++;var Y=this.pos;q(D,this);var pe=this.pos-Y;pe>=128&&_0(Y,pe,this),this.pos=Y-1,this.writeVarint(pe),this.pos+=pe},writeMessage:function(q,D,Y){this.writeTag(q,Ql.Bytes),this.writeRawMessage(D,Y)},writePackedVarint:function(q,D){D.length&&this.writeMessage(q,bg,D)},writePackedSVarint:function(q,D){D.length&&this.writeMessage(q,NT,D)},writePackedBoolean:function(q,D){D.length&&this.writeMessage(q,VT,D)},writePackedFloat:function(q,D){D.length&&this.writeMessage(q,UT,D)},writePackedDouble:function(q,D){D.length&&this.writeMessage(q,jT,D)},writePackedFixed32:function(q,D){D.length&&this.writeMessage(q,cC,D)},writePackedSFixed32:function(q,D){D.length&&this.writeMessage(q,qT,D)},writePackedFixed64:function(q,D){D.length&&this.writeMessage(q,HT,D)},writePackedSFixed64:function(q,D){D.length&&this.writeMessage(q,GT,D)},writeBytesField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeBytes(D)},writeFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFixed32(D)},writeSFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeSFixed32(D)},writeFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeFixed64(D)},writeSFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeSFixed64(D)},writeVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeVarint(D)},writeSVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeSVarint(D)},writeStringField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeString(D)},writeFloatField:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFloat(D)},writeDoubleField:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeDouble(D)},writeBooleanField:function(q,D){this.writeVarintField(q,!!D)}};var C1=r(Lh);let L1=3;function fC(q,D,Y){q===1&&Y.readMessage(WT,D)}function WT(q,D,Y){if(q===3){let{id:pe,bitmap:Ce,width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}=Y.readMessage(Cx,{});D.push({id:pe,bitmap:new rs({width:Ue+2*L1,height:Ge+2*L1},Ce),metrics:{width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}})}}function Cx(q,D,Y){q===1?D.id=Y.readVarint():q===2?D.bitmap=Y.readBytes():q===3?D.width=Y.readVarint():q===4?D.height=Y.readVarint():q===5?D.left=Y.readSVarint():q===6?D.top=Y.readSVarint():q===7&&(D.advance=Y.readVarint())}let Lx=L1;function P1(q){let D=0,Y=0;for(let Ge of q)D+=Ge.w*Ge.h,Y=Math.max(Y,Ge.w);q.sort((Ge,ut)=>ut.h-Ge.h);let pe=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(D/.95)),Y),h:1/0}],Ce=0,Ue=0;for(let Ge of q)for(let ut=pe.length-1;ut>=0;ut--){let Tt=pe[ut];if(!(Ge.w>Tt.w||Ge.h>Tt.h)){if(Ge.x=Tt.x,Ge.y=Tt.y,Ue=Math.max(Ue,Ge.y+Ge.h),Ce=Math.max(Ce,Ge.x+Ge.w),Ge.w===Tt.w&&Ge.h===Tt.h){let Ft=pe.pop();ut<pe.length&&(pe[ut]=Ft)}else Ge.h===Tt.h?(Tt.x+=Ge.w,Tt.w-=Ge.w):Ge.w===Tt.w?(Tt.y+=Ge.h,Tt.h-=Ge.h):(pe.push({x:Tt.x+Ge.w,y:Tt.y,w:Tt.w-Ge.w,h:Ge.h}),Tt.y+=Ge.h,Tt.h-=Ge.h);break}}return{w:Ce,h:Ue,fill:D/(Ce*Ue)||0}}let Ph=1;class x0{constructor(D,{pixelRatio:Y,version:pe,stretchX:Ce,stretchY:Ue,content:Ge,textFitWidth:ut,textFitHeight:Tt}){this.paddedRect=D,this.pixelRatio=Y,this.stretchX=Ce,this.stretchY=Ue,this.content=Ge,this.version=pe,this.textFitWidth=ut,this.textFitHeight=Tt}get tl(){return[this.paddedRect.x+Ph,this.paddedRect.y+Ph]}get br(){return[this.paddedRect.x+this.paddedRect.w-Ph,this.paddedRect.y+this.paddedRect.h-Ph]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2*Ph)/this.pixelRatio,(this.paddedRect.h-2*Ph)/this.pixelRatio]}}class b0{constructor(D,Y){let pe={},Ce={};this.haveRenderCallbacks=[];let Ue=[];this.addImages(D,pe,Ue),this.addImages(Y,Ce,Ue);let{w:Ge,h:ut}=P1(Ue),Tt=new wn({width:Ge||1,height:ut||1});for(let Ft in D){let $t=D[Ft],lr=pe[Ft].paddedRect;wn.copy($t.data,Tt,{x:0,y:0},{x:lr.x+Ph,y:lr.y+Ph},$t.data)}for(let Ft in Y){let $t=Y[Ft],lr=Ce[Ft].paddedRect,Ar=lr.x+Ph,zr=lr.y+Ph,Kr=$t.data.width,la=$t.data.height;wn.copy($t.data,Tt,{x:0,y:0},{x:Ar,y:zr},$t.data),wn.copy($t.data,Tt,{x:0,y:la-1},{x:Ar,y:zr-1},{width:Kr,height:1}),wn.copy($t.data,Tt,{x:0,y:0},{x:Ar,y:zr+la},{width:Kr,height:1}),wn.copy($t.data,Tt,{x:Kr-1,y:0},{x:Ar-1,y:zr},{width:1,height:la}),wn.copy($t.data,Tt,{x:0,y:0},{x:Ar+Kr,y:zr},{width:1,height:la})}this.image=Tt,this.iconPositions=pe,this.patternPositions=Ce}addImages(D,Y,pe){for(let Ce in D){let Ue=D[Ce],Ge={x:0,y:0,w:Ue.data.width+2*Ph,h:Ue.data.height+2*Ph};pe.push(Ge),Y[Ce]=new x0(Ge,Ue),Ue.hasRenderCallback&&this.haveRenderCallbacks.push(Ce)}}patchUpdatedImages(D,Y){D.dispatchRenderCallbacks(this.haveRenderCallbacks);for(let pe in D.updatedImages)this.patchUpdatedImage(this.iconPositions[pe],D.getImage(pe),Y),this.patchUpdatedImage(this.patternPositions[pe],D.getImage(pe),Y)}patchUpdatedImage(D,Y,pe){if(!D||!Y||D.version===Y.version)return;D.version=Y.version;let[Ce,Ue]=D.tl;pe.update(Y.data,void 0,{x:Ce,y:Ue})}}var Cp;ti("ImagePosition",x0),ti("ImageAtlas",b0),e.ah=void 0,(Cp=e.ah||(e.ah={}))[Cp.none=0]="none",Cp[Cp.horizontal=1]="horizontal",Cp[Cp.vertical=2]="vertical",Cp[Cp.horizontalOnly=3]="horizontalOnly";let Of=-17;class Tg{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(D,Y){let pe=new Tg;return pe.scale=D||1,pe.fontStack=Y,pe}static forImage(D){let Y=new Tg;return Y.imageName=D,Y}}class sm{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(D,Y){let pe=new sm;for(let Ce=0;Ce<D.sections.length;Ce++){let Ue=D.sections[Ce];Ue.image?pe.addImageSection(Ue):pe.addTextSection(Ue,Y)}return pe}length(){return this.text.length}getSection(D){return this.sections[this.sectionIndex[D]]}getSectionIndex(D){return this.sectionIndex[D]}getCharCode(D){return this.text.charCodeAt(D)}verticalizePunctuation(){this.text=function(D){let Y="";for(let pe=0;pe<D.length;pe++){let Ce=D.charCodeAt(pe+1)||null,Ue=D.charCodeAt(pe-1)||null;Y+=Ce&&Il(Ce)&&!Du[D[pe+1]]||Ue&&Il(Ue)&&!Du[D[pe-1]]||!Du[D[pe]]?D[pe]:Du[D[pe]]}return Y}(this.text)}trim(){let D=0;for(let pe=0;pe<this.text.length&&w0[this.text.charCodeAt(pe)];pe++)D++;let Y=this.text.length;for(let pe=this.text.length-1;pe>=0&&pe>=D&&w0[this.text.charCodeAt(pe)];pe--)Y--;this.text=this.text.substring(D,Y),this.sectionIndex=this.sectionIndex.slice(D,Y)}substring(D,Y){let pe=new sm;return pe.text=this.text.substring(D,Y),pe.sectionIndex=this.sectionIndex.slice(D,Y),pe.sections=this.sections,pe}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((D,Y)=>Math.max(D,this.sections[Y].scale),0)}addTextSection(D,Y){this.text+=D.text,this.sections.push(Tg.forText(D.scale,D.fontStack||Y));let pe=this.sections.length-1;for(let Ce=0;Ce<D.text.length;++Ce)this.sectionIndex.push(pe)}addImageSection(D){let Y=D.image?D.image.name:"";if(Y.length===0)return void f("Can't add FormattedSection with an empty image.");let pe=this.getNextImageSectionCharCode();pe?(this.text+=String.fromCharCode(pe),this.sections.push(Tg.forImage(Y)),this.sectionIndex.push(this.sections.length-1)):f("Reached maximum number of images 6401")}getNextImageSectionCharCode(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Ag(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=sm.fromFeature(q,Ce),za;lr===e.ah.vertical&&la.verticalizePunctuation();let{processBidirectionalText:ja,processStyledBidirectionalText:gi}=js;if(ja&&la.sections.length===1){za=[];let Ei=ja(la.toString(),lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En,fo.sections=la.sections;for(let ss=0;ss<En.length;ss++)fo.sectionIndex.push(0);za.push(fo)}}else if(gi){za=[];let Ei=gi(la.text,la.sectionIndex,lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En[0],fo.sectionIndex=En[1],fo.sections=la.sections,za.push(fo)}}else za=function(Ei,En){let fo=[],ss=Ei.text,eo=0;for(let vn of En)fo.push(Ei.substring(eo,vn)),eo=vn;return eo<ss.length&&fo.push(Ei.substring(eo,ss.length)),fo}(la,lm(la,Ft,Ue,D,pe,zr));let ei=[],hi={positionedLines:ei,text:la.toString(),top:$t[1],bottom:$t[1],left:$t[0],right:$t[0],writingMode:lr,iconsInText:!1,verticalizable:!1};return function(Ei,En,fo,ss,eo,vn,Uo,Mo,xo,Yi,Ko,bo){let gs=0,_u=Of,pu=0,Bf=0,Gp=Mo==="right"?1:Mo==="left"?0:.5,dh=0;for(let Hc of eo){Hc.trim();let Uf=Hc.getMaxScale(),Ih=(Uf-1)*Bl,vh={positionedGlyphs:[],lineOffset:0};Ei.positionedLines[dh]=vh;let th=vh.positionedGlyphs,nf=0;if(!Hc.length()){_u+=vn,++dh;continue}for(let pp=0;pp<Hc.length();pp++){let Nl=Hc.getSection(pp),zu=Hc.getSectionIndex(pp),xu=Hc.getCharCode(pp),Pp=0,Ec=null,dm=null,_d=null,hd=Bl,Wp=!(xo===e.ah.horizontal||!Ko&&!vs(xu)||Ko&&(w0[xu]||(Nf=xu,new RegExp("\\p{sc=Arab}","u").test(String.fromCodePoint(Nf)))));if(Nl.imageName){let tc=ss[Nl.imageName];if(!tc)continue;_d=Nl.imageName,Ei.iconsInText=Ei.iconsInText||!0,dm=tc.paddedRect;let gf=tc.displaySize;Nl.scale=Nl.scale*Bl/bo,Ec={width:gf[0],height:gf[1],left:Ph,top:-Lx,advance:Wp?gf[1]:gf[0]},Pp=Ih+(Bl-gf[1]*Nl.scale),hd=Ec.advance;let Zp=Wp?gf[0]*Nl.scale-Bl*Uf:gf[1]*Nl.scale-Bl*Uf;Zp>0&&Zp>nf&&(nf=Zp)}else{let tc=fo[Nl.fontStack],gf=tc&&tc[xu];if(gf&&gf.rect)dm=gf.rect,Ec=gf.metrics;else{let Zp=En[Nl.fontStack],Xd=Zp&&Zp[xu];if(!Xd)continue;Ec=Xd.metrics}Pp=(Uf-Nl.scale)*Bl}Wp?(Ei.verticalizable=!0,th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=hd*Nl.scale+Yi):(th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=Ec.advance*Nl.scale+Yi)}th.length!==0&&(pu=Math.max(gs-Yi,pu),uv(th,0,th.length-1,Gp,nf)),gs=0;let Lp=vn*Uf+nf;vh.lineOffset=Math.max(nf,Ih),_u+=Lp,Bf=Math.max(Lp,Bf),++dh}var Nf;let Yh=_u-Of,{horizontalAlign:Kh,verticalAlign:Jh}=A0(Uo);(function(Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl){let zu=(Uf-Ih)*th,xu=0;xu=nf!==Lp?-pp*vh-Of:(-vh*Nl+.5)*Lp;for(let Pp of Hc)for(let Ec of Pp.positionedGlyphs)Ec.x+=zu,Ec.y+=xu})(Ei.positionedLines,Gp,Kh,Jh,pu,Bf,vn,Yh,eo.length),Ei.top+=-Jh*Yh,Ei.bottom=Ei.top+Yh,Ei.left+=-Kh*pu,Ei.right=Ei.left+pu}(hi,D,Y,pe,za,Ge,ut,Tt,lr,Ft,Ar,Kr),!function(Ei){for(let En of Ei)if(En.positionedGlyphs.length!==0)return!1;return!0}(ei)&&hi}let w0={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},ZT={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},XT={40:!0};function Px(q,D,Y,pe,Ce,Ue){if(D.imageName){let Ge=pe[D.imageName];return Ge?Ge.displaySize[0]*D.scale*Bl/Ue+Ce:0}{let Ge=Y[D.fontStack],ut=Ge&&Ge[q];return ut?ut.metrics.advance*D.scale+Ce:0}}function Ix(q,D,Y,pe){let Ce=Math.pow(q-D,2);return pe?q<D?Ce/2:2*Ce:Ce+Math.abs(Y)*Y}function YT(q,D,Y){let pe=0;return q===10&&(pe-=1e4),Y&&(pe+=150),q!==40&&q!==65288||(pe+=50),D!==41&&D!==65289||(pe+=50),pe}function T0(q,D,Y,pe,Ce,Ue){let Ge=null,ut=Ix(D,Y,Ce,Ue);for(let Tt of pe){let Ft=Ix(D-Tt.x,Y,Ce,Ue)+Tt.badness;Ft<=ut&&(Ge=Tt,ut=Ft)}return{index:q,x:D,priorBreak:Ge,badness:ut}}function Rx(q){return q?Rx(q.priorBreak).concat(q.index):[]}function lm(q,D,Y,pe,Ce,Ue){if(!q)return[];let Ge=[],ut=function(lr,Ar,zr,Kr,la,za){let ja=0;for(let gi=0;gi<lr.length();gi++){let ei=lr.getSection(gi);ja+=Px(lr.getCharCode(gi),ei,Kr,la,Ar,za)}return ja/Math.max(1,Math.ceil(ja/zr))}(q,D,Y,pe,Ce,Ue),Tt=q.text.indexOf("\u200B")>=0,Ft=0;for(let lr=0;lr<q.length();lr++){let Ar=q.getSection(lr),zr=q.getCharCode(lr);if(w0[zr]||(Ft+=Px(zr,Ar,pe,Ce,D,Ue)),lr<q.length()-1){let Kr=!(($t=zr)<11904)&&(!!Ri["CJK Compatibility Forms"]($t)||!!Ri["CJK Compatibility"]($t)||!!Ri["CJK Strokes"]($t)||!!Ri["CJK Symbols and Punctuation"]($t)||!!Ri["Enclosed CJK Letters and Months"]($t)||!!Ri["Halfwidth and Fullwidth Forms"]($t)||!!Ri["Ideographic Description Characters"]($t)||!!Ri["Vertical Forms"]($t)||Hs.test(String.fromCodePoint($t)));(ZT[zr]||Kr||Ar.imageName||lr!==q.length()-2&&XT[q.getCharCode(lr+1)])&&Ge.push(T0(lr+1,Ft,ut,Ge,YT(zr,q.getCharCode(lr+1),Kr&&Tt),!1))}}var $t;return Rx(T0(q.length(),Ft,ut,Ge,0,!0))}function A0(q){let D=.5,Y=.5;switch(q){case"right":case"top-right":case"bottom-right":D=1;break;case"left":case"top-left":case"bottom-left":D=0}switch(q){case"bottom":case"bottom-right":case"bottom-left":Y=1;break;case"top":case"top-right":case"top-left":Y=0}return{horizontalAlign:D,verticalAlign:Y}}function uv(q,D,Y,pe,Ce){if(!pe&&!Ce)return;let Ue=q[Y],Ge=(q[Y].x+Ue.metrics.advance*Ue.scale)*pe;for(let ut=D;ut<=Y;ut++)q[ut].x-=Ge,q[ut].y+=Ce}function Sg(q,D,Y){let{horizontalAlign:pe,verticalAlign:Ce}=A0(Y),Ue=D[0]-q.displaySize[0]*pe,Ge=D[1]-q.displaySize[1]*Ce;return{image:q,top:Ge,bottom:Ge+q.displaySize[1],left:Ue,right:Ue+q.displaySize[0]}}function Dx(q){var D,Y;let pe=q.left,Ce=q.top,Ue=q.right-pe,Ge=q.bottom-Ce,ut=(D=q.image.textFitWidth)!==null&&D!==void 0?D:"stretchOrShrink",Tt=(Y=q.image.textFitHeight)!==null&&Y!==void 0?Y:"stretchOrShrink",Ft=(q.image.content[2]-q.image.content[0])/(q.image.content[3]-q.image.content[1]);if(Tt==="proportional"){if(ut==="stretchOnly"&&Ue/Ge<Ft||ut==="proportional"){let $t=Math.ceil(Ge*Ft);pe*=$t/Ue,Ue=$t}}else if(ut==="proportional"&&Tt==="stretchOnly"&&Ft!==0&&Ue/Ge>Ft){let $t=Math.ceil(Ue/Ft);Ce*=$t/Ge,Ge=$t}return{x1:pe,y1:Ce,x2:pe+Ue,y2:Ce+Ge}}function zx(q,D,Y,pe,Ce,Ue){let Ge=q.image,ut;if(Ge.content){let za=Ge.content,ja=Ge.pixelRatio||1;ut=[za[0]/ja,za[1]/ja,Ge.displaySize[0]-za[2]/ja,Ge.displaySize[1]-za[3]/ja]}let Tt=D.left*Ue,Ft=D.right*Ue,$t,lr,Ar,zr;Y==="width"||Y==="both"?(zr=Ce[0]+Tt-pe[3],lr=Ce[0]+Ft+pe[1]):(zr=Ce[0]+(Tt+Ft-Ge.displaySize[0])/2,lr=zr+Ge.displaySize[0]);let Kr=D.top*Ue,la=D.bottom*Ue;return Y==="height"||Y==="both"?($t=Ce[1]+Kr-pe[0],Ar=Ce[1]+la+pe[2]):($t=Ce[1]+(Kr+la-Ge.displaySize[1])/2,Ar=$t+Ge.displaySize[1]),{image:Ge,top:$t,right:lr,bottom:Ar,left:zr,collisionPadding:ut}}let Mg=255,yd=128,cv=Mg*yd;function Fx(q,D){let{expression:Y}=D;if(Y.kind==="constant")return{kind:"constant",layoutSize:Y.evaluate(new Ts(q+1))};if(Y.kind==="source")return{kind:"source"};{let{zoomStops:pe,interpolationType:Ce}=Y,Ue=0;for(;Ue<pe.length&&pe[Ue]<=q;)Ue++;Ue=Math.max(0,Ue-1);let Ge=Ue;for(;Ge<pe.length&&pe[Ge]<q+1;)Ge++;Ge=Math.min(pe.length-1,Ge);let ut=pe[Ue],Tt=pe[Ge];return Y.kind==="composite"?{kind:"composite",minZoom:ut,maxZoom:Tt,interpolationType:Ce}:{kind:"camera",minZoom:ut,maxZoom:Tt,minSize:Y.evaluate(new Ts(ut)),maxSize:Y.evaluate(new Ts(Tt)),interpolationType:Ce}}}function I1(q,D,Y){let pe="never",Ce=q.get(D);return Ce?pe=Ce:q.get(Y)&&(pe="always"),pe}let KT=Oa.VectorTileFeature.types,JT=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function S0(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=ut?Math.min(cv,Math.round(ut[0])):0,Kr=ut?Math.min(cv,Math.round(ut[1])):0;q.emplaceBack(D,Y,Math.round(32*pe),Math.round(32*Ce),Ue,Ge,(zr<<1)+(Tt?1:0),Kr,16*Ft,16*$t,256*lr,256*Ar)}function R1(q,D,Y){q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y)}function D1(q){for(let D of q.sections)if(Ao(D.text))return!0;return!1}class z1{constructor(D){this.layoutVertexArray=new ou,this.indexArray=new Re,this.programConfigurations=D,this.segments=new wt,this.dynamicLayoutVertexArray=new Sc,this.opacityVertexArray=new ql,this.hasVisibleVertices=!1,this.placedSymbolArray=new Bn}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0}upload(D,Y,pe,Ce){this.isEmpty()||(pe&&(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,iv.members),this.indexBuffer=D.createIndexBuffer(this.indexArray,Y),this.dynamicLayoutVertexBuffer=D.createVertexBuffer(this.dynamicLayoutVertexArray,im.members,!0),this.opacityVertexBuffer=D.createVertexBuffer(this.opacityVertexArray,JT,!0),this.opacityVertexBuffer.itemSize=1),(pe||Ce)&&this.programConfigurations.upload(D))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())}}ti("SymbolBuffers",z1);class fv{constructor(D,Y,pe){this.layoutVertexArray=new D,this.layoutAttributes=Y,this.indexArray=new pe,this.segments=new wt,this.collisionVertexArray=new de}upload(D){this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=D.createVertexBuffer(this.collisionVertexArray,nm.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())}}ti("CollisionBuffers",fv);class um{constructor(D){this.collisionBoxArray=D.collisionBoxArray,this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Ge=>Ge.id),this.index=D.index,this.pixelRatio=D.pixelRatio,this.sourceLayerIndex=D.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=pn([]),this.placementViewportMatrix=pn([]);let Y=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Fx(this.zoom,Y["text-size"]),this.iconSizeData=Fx(this.zoom,Y["icon-size"]);let pe=this.layers[0].layout,Ce=pe.get("symbol-sort-key"),Ue=pe.get("symbol-z-order");this.canOverlap=I1(pe,"text-overlap","text-allow-overlap")!=="never"||I1(pe,"icon-overlap","icon-allow-overlap")!=="never"||pe.get("text-ignore-placement")||pe.get("icon-ignore-placement"),this.sortFeaturesByKey=Ue!=="viewport-y"&&!Ce.isConstant(),this.sortFeaturesByY=(Ue==="viewport-y"||Ue==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,pe.get("symbol-placement")==="point"&&(this.writingModes=pe.get("text-writing-mode").map(Ge=>e.ah[Ge])),this.stateDependentLayerIds=this.layers.filter(Ge=>Ge.isStateDependent()).map(Ge=>Ge.id),this.sourceID=D.sourceID}createArrays(){this.text=new z1(new Gs(this.layers,this.zoom,D=>/^text/.test(D))),this.icon=new z1(new Gs(this.layers,this.zoom,D=>/^icon/.test(D))),this.glyphOffsetArray=new ts,this.lineVertexArray=new yo,this.symbolInstances=new ho,this.textAnchorOffsets=new ls}calculateGlyphDependencies(D,Y,pe,Ce,Ue){for(let Ge=0;Ge<D.length;Ge++)if(Y[D.charCodeAt(Ge)]=!0,(pe||Ce)&&Ue){let ut=Du[D.charAt(Ge)];ut&&(Y[ut.charCodeAt(0)]=!0)}}populate(D,Y,pe){let Ce=this.layers[0],Ue=Ce.layout,Ge=Ue.get("text-font"),ut=Ue.get("text-field"),Tt=Ue.get("icon-image"),Ft=(ut.value.kind!=="constant"||ut.value.value instanceof pa&&!ut.value.value.isEmpty()||ut.value.value.toString().length>0)&&(Ge.value.kind!=="constant"||Ge.value.value.length>0),$t=Tt.value.kind!=="constant"||!!Tt.value.value||Object.keys(Tt.parameters).length>0,lr=Ue.get("symbol-sort-key");if(this.features=[],!Ft&&!$t)return;let Ar=Y.iconDependencies,zr=Y.glyphDependencies,Kr=Y.availableImages,la=new Ts(this.zoom);for(let{feature:za,id:ja,index:gi,sourceLayerIndex:ei}of D){let hi=Ce._featureFilter.needGeometry,Ei=Dl(za,hi);if(!Ce._featureFilter.filter(la,Ei,pe))continue;let En,fo;if(hi||(Ei.geometry=hl(za)),Ft){let eo=Ce.getValueAndResolveTokens("text-field",Ei,pe,Kr),vn=pa.factory(eo),Uo=this.hasRTLText=this.hasRTLText||D1(vn);(!Uo||js.getRTLTextPluginStatus()==="unavailable"||Uo&&js.isParsed())&&(En=ov(vn,Ce,Ei))}if($t){let eo=Ce.getValueAndResolveTokens("icon-image",Ei,pe,Kr);fo=eo instanceof qa?eo:qa.fromString(eo)}if(!En&&!fo)continue;let ss=this.sortFeaturesByKey?lr.evaluate(Ei,{},pe):void 0;if(this.features.push({id:ja,text:En,icon:fo,index:gi,sourceLayerIndex:ei,geometry:Ei.geometry,properties:za.properties,type:KT[za.type],sortKey:ss}),fo&&(Ar[fo.name]=!0),En){let eo=Ge.evaluate(Ei,{},pe).join(","),vn=Ue.get("text-rotation-alignment")!=="viewport"&&Ue.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(e.ah.vertical)>=0;for(let Uo of En.sections)if(Uo.image)Ar[Uo.image.name]=!0;else{let Mo=co(En.toString()),xo=Uo.fontStack||eo,Yi=zr[xo]=zr[xo]||{};this.calculateGlyphDependencies(Uo.text,Yi,vn,this.allowVerticalPlacement,Mo)}}}Ue.get("symbol-placement")==="line"&&(this.features=function(za){let ja={},gi={},ei=[],hi=0;function Ei(eo){ei.push(za[eo]),hi++}function En(eo,vn,Uo){let Mo=gi[eo];return delete gi[eo],gi[vn]=Mo,ei[Mo].geometry[0].pop(),ei[Mo].geometry[0]=ei[Mo].geometry[0].concat(Uo[0]),Mo}function fo(eo,vn,Uo){let Mo=ja[vn];return delete ja[vn],ja[eo]=Mo,ei[Mo].geometry[0].shift(),ei[Mo].geometry[0]=Uo[0].concat(ei[Mo].geometry[0]),Mo}function ss(eo,vn,Uo){let Mo=Uo?vn[0][vn[0].length-1]:vn[0][0];return`${eo}:${Mo.x}:${Mo.y}`}for(let eo=0;eo<za.length;eo++){let vn=za[eo],Uo=vn.geometry,Mo=vn.text?vn.text.toString():null;if(!Mo){Ei(eo);continue}let xo=ss(Mo,Uo),Yi=ss(Mo,Uo,!0);if(xo in gi&&Yi in ja&&gi[xo]!==ja[Yi]){let Ko=fo(xo,Yi,Uo),bo=En(xo,Yi,ei[Ko].geometry);delete ja[xo],delete gi[Yi],gi[ss(Mo,ei[bo].geometry,!0)]=bo,ei[Ko].geometry=null}else xo in gi?En(xo,Yi,Uo):Yi in ja?fo(xo,Yi,Uo):(Ei(eo),ja[xo]=hi-1,gi[Yi]=hi-1)}return ei.filter(eo=>eo.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((za,ja)=>za.sortKey-ja.sortKey)}update(D,Y,pe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(D,Y,this.layers,pe),this.icon.programConfigurations.updatePaintArrays(D,Y,this.layers,pe))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(D){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(D),this.iconCollisionBox.upload(D)),this.text.upload(D,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(D,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(D,Y){let pe=this.lineVertexArray.length;if(D.segment!==void 0){let Ce=D.dist(Y[D.segment+1]),Ue=D.dist(Y[D.segment]),Ge={};for(let ut=D.segment+1;ut<Y.length;ut++)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ce},ut<Y.length-1&&(Ce+=Y[ut+1].dist(Y[ut]));for(let ut=D.segment||0;ut>=0;ut--)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ue},ut>0&&(Ue+=Y[ut-1].dist(Y[ut]));for(let ut=0;ut<Y.length;ut++){let Tt=Ge[ut];this.lineVertexArray.emplaceBack(Tt.x,Tt.y,Tt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:pe,lineLength:this.lineVertexArray.length-pe}}addSymbols(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=D.indexArray,Kr=D.layoutVertexArray,la=D.segments.prepareSegment(4*Y.length,Kr,zr,this.canOverlap?Ge.sortKey:void 0),za=this.glyphOffsetArray.length,ja=la.vertexLength,gi=this.allowVerticalPlacement&&ut===e.ah.vertical?Math.PI/2:0,ei=Ge.text&&Ge.text.sections;for(let hi=0;hi<Y.length;hi++){let{tl:Ei,tr:En,bl:fo,br:ss,tex:eo,pixelOffsetTL:vn,pixelOffsetBR:Uo,minFontScaleX:Mo,minFontScaleY:xo,glyphOffset:Yi,isSDF:Ko,sectionIndex:bo}=Y[hi],gs=la.vertexLength,_u=Yi[1];S0(Kr,Tt.x,Tt.y,Ei.x,_u+Ei.y,eo.x,eo.y,pe,Ko,vn.x,vn.y,Mo,xo),S0(Kr,Tt.x,Tt.y,En.x,_u+En.y,eo.x+eo.w,eo.y,pe,Ko,Uo.x,vn.y,Mo,xo),S0(Kr,Tt.x,Tt.y,fo.x,_u+fo.y,eo.x,eo.y+eo.h,pe,Ko,vn.x,Uo.y,Mo,xo),S0(Kr,Tt.x,Tt.y,ss.x,_u+ss.y,eo.x+eo.w,eo.y+eo.h,pe,Ko,Uo.x,Uo.y,Mo,xo),R1(D.dynamicLayoutVertexArray,Tt,gi),zr.emplaceBack(gs,gs+1,gs+2),zr.emplaceBack(gs+1,gs+2,gs+3),la.vertexLength+=4,la.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(Yi[0]),hi!==Y.length-1&&bo===Y[hi+1].sectionIndex||D.programConfigurations.populatePaintArrays(Kr.length,Ge,Ge.index,{},Ar,ei&&ei[bo])}D.placedSymbolArray.emplaceBack(Tt.x,Tt.y,za,this.glyphOffsetArray.length-za,ja,Ft,$t,Tt.segment,pe?pe[0]:0,pe?pe[1]:0,Ce[0],Ce[1],ut,0,!1,0,lr)}_addCollisionDebugVertex(D,Y,pe,Ce,Ue,Ge){return Y.emplaceBack(0,0),D.emplaceBack(pe.x,pe.y,Ce,Ue,Math.round(Ge.x),Math.round(Ge.y))}addCollisionDebugVertices(D,Y,pe,Ce,Ue,Ge,ut){let Tt=Ue.segments.prepareSegment(4,Ue.layoutVertexArray,Ue.indexArray),Ft=Tt.vertexLength,$t=Ue.layoutVertexArray,lr=Ue.collisionVertexArray,Ar=ut.anchorX,zr=ut.anchorY;this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(D,Y)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(pe,Y)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(pe,Ce)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(D,Ce)),Tt.vertexLength+=4;let Kr=Ue.indexArray;Kr.emplaceBack(Ft,Ft+1),Kr.emplaceBack(Ft+1,Ft+2),Kr.emplaceBack(Ft+2,Ft+3),Kr.emplaceBack(Ft+3,Ft),Tt.primitiveLength+=4}addDebugCollisionBoxes(D,Y,pe,Ce){for(let Ue=D;Ue<Y;Ue++){let Ge=this.collisionBoxArray.get(Ue);this.addCollisionDebugVertices(Ge.x1,Ge.y1,Ge.x2,Ge.y2,Ce?this.textCollisionBox:this.iconCollisionBox,Ge.anchorPoint,pe)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new fv(Hl,Pv.members,$e),this.iconCollisionBox=new fv(Hl,Pv.members,$e);for(let D=0;D<this.symbolInstances.length;D++){let Y=this.symbolInstances.get(D);this.addDebugCollisionBoxes(Y.textBoxStartIndex,Y.textBoxEndIndex,Y,!0),this.addDebugCollisionBoxes(Y.verticalTextBoxStartIndex,Y.verticalTextBoxEndIndex,Y,!0),this.addDebugCollisionBoxes(Y.iconBoxStartIndex,Y.iconBoxEndIndex,Y,!1),this.addDebugCollisionBoxes(Y.verticalIconBoxStartIndex,Y.verticalIconBoxEndIndex,Y,!1)}}_deserializeCollisionBoxesForSymbol(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t={};for(let lr=Y;lr<pe;lr++){let Ar=D.get(lr);$t.textBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.textFeatureIndex=Ar.featureIndex;break}for(let lr=Ce;lr<Ue;lr++){let Ar=D.get(lr);$t.verticalTextBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.verticalTextFeatureIndex=Ar.featureIndex;break}for(let lr=Ge;lr<ut;lr++){let Ar=D.get(lr);$t.iconBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.iconFeatureIndex=Ar.featureIndex;break}for(let lr=Tt;lr<Ft;lr++){let Ar=D.get(lr);$t.verticalIconBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.verticalIconFeatureIndex=Ar.featureIndex;break}return $t}deserializeCollisionBoxes(D){this.collisionArrays=[];for(let Y=0;Y<this.symbolInstances.length;Y++){let pe=this.symbolInstances.get(Y);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(D,pe.textBoxStartIndex,pe.textBoxEndIndex,pe.verticalTextBoxStartIndex,pe.verticalTextBoxEndIndex,pe.iconBoxStartIndex,pe.iconBoxEndIndex,pe.verticalIconBoxStartIndex,pe.verticalIconBoxEndIndex))}}hasTextData(){return this.text.segments.get().length>0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(D,Y){let pe=D.placedSymbolArray.get(Y),Ce=pe.vertexStartIndex+4*pe.numGlyphs;for(let Ue=pe.vertexStartIndex;Ue<Ce;Ue+=4)D.indexArray.emplaceBack(Ue,Ue+1,Ue+2),D.indexArray.emplaceBack(Ue+1,Ue+2,Ue+3)}getSortedSymbolIndexes(D){if(this.sortedAngle===D&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let Y=Math.sin(D),pe=Math.cos(D),Ce=[],Ue=[],Ge=[];for(let ut=0;ut<this.symbolInstances.length;++ut){Ge.push(ut);let Tt=this.symbolInstances.get(ut);Ce.push(0|Math.round(Y*Tt.anchorX+pe*Tt.anchorY)),Ue.push(Tt.featureIndex)}return Ge.sort((ut,Tt)=>Ce[ut]-Ce[Tt]||Ue[Tt]-Ue[ut]),Ge}addToSortKeyRanges(D,Y){let pe=this.sortKeyRanges[this.sortKeyRanges.length-1];pe&&pe.sortKey===Y?pe.symbolInstanceEnd=D+1:this.sortKeyRanges.push({sortKey:Y,symbolInstanceStart:D,symbolInstanceEnd:D+1})}sortFeatures(D){if(this.sortFeaturesByY&&this.sortedAngle!==D&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(D),this.sortedAngle=D,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let Y of this.symbolInstanceIndexes){let pe=this.symbolInstances.get(Y);this.featureSortOrder.push(pe.featureIndex),[pe.rightJustifiedTextSymbolIndex,pe.centerJustifiedTextSymbolIndex,pe.leftJustifiedTextSymbolIndex].forEach((Ce,Ue,Ge)=>{Ce>=0&&Ge.indexOf(Ce)===Ue&&this.addIndicesForPlacedSymbol(this.text,Ce)}),pe.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,pe.verticalPlacedTextSymbolIndex),pe.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.placedIconSymbolIndex),pe.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let qc,Eg;ti("SymbolBucket",um,{omit:["layers","collisionBoxArray","features","compareText"]}),um.MAX_GLYPHS=65535,um.addDynamicAttributes=R1;var M0={get paint(){return Eg=Eg||new Oe({"icon-opacity":new Po(ie.paint_symbol["icon-opacity"]),"icon-color":new Po(ie.paint_symbol["icon-color"]),"icon-halo-color":new Po(ie.paint_symbol["icon-halo-color"]),"icon-halo-width":new Po(ie.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Po(ie.paint_symbol["icon-halo-blur"]),"icon-translate":new ro(ie.paint_symbol["icon-translate"]),"icon-translate-anchor":new ro(ie.paint_symbol["icon-translate-anchor"]),"text-opacity":new Po(ie.paint_symbol["text-opacity"]),"text-color":new Po(ie.paint_symbol["text-color"],{runtimeType:Ot,getOverride:q=>q.textColor,hasOverride:q=>!!q.textColor}),"text-halo-color":new Po(ie.paint_symbol["text-halo-color"]),"text-halo-width":new Po(ie.paint_symbol["text-halo-width"]),"text-halo-blur":new Po(ie.paint_symbol["text-halo-blur"]),"text-translate":new ro(ie.paint_symbol["text-translate"]),"text-translate-anchor":new ro(ie.paint_symbol["text-translate-anchor"])})},get layout(){return qc=qc||new Oe({"symbol-placement":new ro(ie.layout_symbol["symbol-placement"]),"symbol-spacing":new ro(ie.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ro(ie.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Po(ie.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ro(ie.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ro(ie.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ro(ie.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ro(ie.layout_symbol["icon-ignore-placement"]),"icon-optional":new ro(ie.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ro(ie.layout_symbol["icon-rotation-alignment"]),"icon-size":new Po(ie.layout_symbol["icon-size"]),"icon-text-fit":new ro(ie.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ro(ie.layout_symbol["icon-text-fit-padding"]),"icon-image":new Po(ie.layout_symbol["icon-image"]),"icon-rotate":new Po(ie.layout_symbol["icon-rotate"]),"icon-padding":new Po(ie.layout_symbol["icon-padding"]),"icon-keep-upright":new ro(ie.layout_symbol["icon-keep-upright"]),"icon-offset":new Po(ie.layout_symbol["icon-offset"]),"icon-anchor":new Po(ie.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ro(ie.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ro(ie.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ro(ie.layout_symbol["text-rotation-alignment"]),"text-field":new Po(ie.layout_symbol["text-field"]),"text-font":new Po(ie.layout_symbol["text-font"]),"text-size":new Po(ie.layout_symbol["text-size"]),"text-max-width":new Po(ie.layout_symbol["text-max-width"]),"text-line-height":new ro(ie.layout_symbol["text-line-height"]),"text-letter-spacing":new Po(ie.layout_symbol["text-letter-spacing"]),"text-justify":new Po(ie.layout_symbol["text-justify"]),"text-radial-offset":new Po(ie.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ro(ie.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Po(ie.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Po(ie.layout_symbol["text-anchor"]),"text-max-angle":new ro(ie.layout_symbol["text-max-angle"]),"text-writing-mode":new ro(ie.layout_symbol["text-writing-mode"]),"text-rotate":new Po(ie.layout_symbol["text-rotate"]),"text-padding":new ro(ie.layout_symbol["text-padding"]),"text-keep-upright":new ro(ie.layout_symbol["text-keep-upright"]),"text-transform":new Po(ie.layout_symbol["text-transform"]),"text-offset":new Po(ie.layout_symbol["text-offset"]),"text-allow-overlap":new ro(ie.layout_symbol["text-allow-overlap"]),"text-overlap":new ro(ie.layout_symbol["text-overlap"]),"text-ignore-placement":new ro(ie.layout_symbol["text-ignore-placement"]),"text-optional":new ro(ie.layout_symbol["text-optional"])})}};class kg{constructor(D){if(D.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=D.property.overrides?D.property.overrides.runtimeType:nt,this.defaultValue=D}evaluate(D){if(D.formattedSection){let Y=this.defaultValue.property.overrides;if(Y&&Y.hasOverride(D.formattedSection))return Y.getOverride(D.formattedSection)}return D.feature&&D.featureState?this.defaultValue.evaluate(D.feature,D.featureState):this.defaultValue.property.specification.default}eachChild(D){this.defaultValue.isConstant()||D(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}ti("FormatSectionOverride",kg,{omit:["defaultValue"]});class Dv extends ae{constructor(D){super(D,M0)}recalculate(D,Y){if(super.recalculate(D,Y),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let pe=this.layout.get("text-writing-mode");if(pe){let Ce=[];for(let Ue of pe)Ce.indexOf(Ue)<0&&Ce.push(Ue);this.layout._values["text-writing-mode"]=Ce}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(D,Y,pe,Ce){let Ue=this.layout.get(D).evaluate(Y,{},pe,Ce),Ge=this._unevaluatedLayout._values[D];return Ge.isDataDriven()||xc(Ge.value)||!Ue?Ue:function(ut,Tt){return Tt.replace(/{([^{}]+)}/g,(Ft,$t)=>ut&&$t in ut?String(ut[$t]):"")}(Y.properties,Ue)}createBucket(D){return new um(D)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let D of M0.paint.overridableProperties){if(!Dv.hasPaintOverride(this.layout,D))continue;let Y=this.paint.get(D),pe=new kg(Y),Ce=new Cu(pe,Y.property.specification),Ue=null;Ue=Y.value.kind==="constant"||Y.value.kind==="source"?new Fc("source",Ce):new $u("composite",Ce,Y.value.zoomStops),this.paint._values[D]=new Iu(Y.property,Ue,Y.parameters)}}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!(!this.layout||Y.isDataDriven()||pe.isDataDriven())&&Dv.hasPaintOverride(this.layout,D)}static hasPaintOverride(D,Y){let pe=D.get("text-field"),Ce=M0.paint.properties[Y],Ue=!1,Ge=ut=>{for(let Tt of ut)if(Ce.overrides&&Ce.overrides.hasOverride(Tt))return void(Ue=!0)};if(pe.value.kind==="constant"&&pe.value.value instanceof pa)Ge(pe.value.value.sections);else if(pe.value.kind==="source"){let ut=Ft=>{Ue||(Ft instanceof Er&&mt(Ft.value)===Cr?Ge(Ft.value.sections):Ft instanceof ys?Ge(Ft.sections):Ft.eachChild(ut))},Tt=pe.value;Tt._styleExpression&&ut(Tt._styleExpression.expression)}return Ue}}let Ox;var Cg={get paint(){return Ox=Ox||new Oe({"background-color":new ro(ie.paint_background["background-color"]),"background-pattern":new hc(ie.paint_background["background-pattern"]),"background-opacity":new ro(ie.paint_background["background-opacity"])})}};class $T extends ae{constructor(D){super(D,Cg)}}let F1;var Bx={get paint(){return F1=F1||new Oe({"raster-opacity":new ro(ie.paint_raster["raster-opacity"]),"raster-hue-rotate":new ro(ie.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ro(ie.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ro(ie.paint_raster["raster-brightness-max"]),"raster-saturation":new ro(ie.paint_raster["raster-saturation"]),"raster-contrast":new ro(ie.paint_raster["raster-contrast"]),"raster-resampling":new ro(ie.paint_raster["raster-resampling"]),"raster-fade-duration":new ro(ie.paint_raster["raster-fade-duration"])})}};class Lg extends ae{constructor(D){super(D,Bx)}}class O1 extends ae{constructor(D){super(D,{}),this.onAdd=Y=>{this.implementation.onAdd&&this.implementation.onAdd(Y,Y.painter.context.gl)},this.onRemove=Y=>{this.implementation.onRemove&&this.implementation.onRemove(Y,Y.painter.context.gl)},this.implementation=D}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class B1{constructor(D){this._methodToThrottle=D,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let N1=63710088e-1;class Gd{constructor(D,Y){if(isNaN(D)||isNaN(Y))throw new Error(`Invalid LngLat object: (${D}, ${Y})`);if(this.lng=+D,this.lat=+Y,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Gd(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(D){let Y=Math.PI/180,pe=this.lat*Y,Ce=D.lat*Y,Ue=Math.sin(pe)*Math.sin(Ce)+Math.cos(pe)*Math.cos(Ce)*Math.cos((D.lng-this.lng)*Y);return N1*Math.acos(Math.min(Ue,1))}static convert(D){if(D instanceof Gd)return D;if(Array.isArray(D)&&(D.length===2||D.length===3))return new Gd(Number(D[0]),Number(D[1]));if(!Array.isArray(D)&&typeof D=="object"&&D!==null)return new Gd(Number("lng"in D?D.lng:D.lon),Number(D.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")}}let cm=2*Math.PI*N1;function Nx(q){return cm*Math.cos(q*Math.PI/180)}function E0(q){return(180+q)/360}function Ux(q){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q*Math.PI/360)))/360}function k0(q,D){return q/Nx(D)}function Pg(q){return 360/Math.PI*Math.atan(Math.exp((180-360*q)*Math.PI/180))-90}class Ig{constructor(D,Y,pe=0){this.x=+D,this.y=+Y,this.z=+pe}static fromLngLat(D,Y=0){let pe=Gd.convert(D);return new Ig(E0(pe.lng),Ux(pe.lat),k0(Y,pe.lat))}toLngLat(){return new Gd(360*this.x-180,Pg(this.y))}toAltitude(){return this.z*Nx(Pg(this.y))}meterInMercatorCoordinateUnits(){return 1/cm*(D=Pg(this.y),1/Math.cos(D*Math.PI/180));var D}}function ad(q,D,Y){var pe=2*Math.PI*6378137/256/Math.pow(2,Y);return[q*pe-2*Math.PI*6378137/2,D*pe-2*Math.PI*6378137/2]}class U1{constructor(D,Y,pe){if(!function(Ce,Ue,Ge){return!(Ce<0||Ce>25||Ge<0||Ge>=Math.pow(2,Ce)||Ue<0||Ue>=Math.pow(2,Ce))}(D,Y,pe))throw new Error(`x=${Y}, y=${pe}, z=${D} outside of bounds. 0<=x<${Math.pow(2,D)}, 0<=y<${Math.pow(2,D)} 0<=z<=25 `);this.z=D,this.x=Y,this.y=pe,this.key=Rg(0,D,D,Y,pe)}equals(D){return this.z===D.z&&this.x===D.x&&this.y===D.y}url(D,Y,pe){let Ce=(Ge=this.y,ut=this.z,Tt=ad(256*(Ue=this.x),256*(Ge=Math.pow(2,ut)-Ge-1),ut),Ft=ad(256*(Ue+1),256*(Ge+1),ut),Tt[0]+","+Tt[1]+","+Ft[0]+","+Ft[1]);var Ue,Ge,ut,Tt,Ft;let $t=function(lr,Ar,zr){let Kr,la="";for(let za=lr;za>0;za--)Kr=1<<za-1,la+=(Ar&Kr?1:0)+(zr&Kr?2:0);return la}(this.z,this.x,this.y);return D[(this.x+this.y)%D.length].replace(/{prefix}/g,(this.x%16).toString(16)+(this.y%16).toString(16)).replace(/{z}/g,String(this.z)).replace(/{x}/g,String(this.x)).replace(/{y}/g,String(pe==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace(/{ratio}/g,Y>1?"@2x":"").replace(/{quadkey}/g,$t).replace(/{bbox-epsg-3857}/g,Ce)}isChildOf(D){let Y=this.z-D.z;return Y>0&&D.x===this.x>>Y&&D.y===this.y>>Y}getTilePoint(D){let Y=Math.pow(2,this.z);return new i((D.x*Y-this.x)*ao,(D.y*Y-this.y)*ao)}toString(){return`${this.z}/${this.x}/${this.y}`}}class jx{constructor(D,Y){this.wrap=D,this.canonical=Y,this.key=Rg(D,Y.z,Y.z,Y.x,Y.y)}}class Hp{constructor(D,Y,pe,Ce,Ue){if(D<pe)throw new Error(`overscaledZ should be >= z; overscaledZ = ${D}; z = ${pe}`);this.overscaledZ=D,this.wrap=Y,this.canonical=new U1(pe,+Ce,+Ue),this.key=Rg(Y,D,pe,Ce,Ue)}clone(){return new Hp(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(D){return this.overscaledZ===D.overscaledZ&&this.wrap===D.wrap&&this.canonical.equals(D.canonical)}scaledTo(D){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let Y=this.canonical.z-D;return D>this.canonical.z?new Hp(D,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Hp(D,this.wrap,D,this.canonical.x>>Y,this.canonical.y>>Y)}calculateScaledKey(D,Y){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let pe=this.canonical.z-D;return D>this.canonical.z?Rg(this.wrap*+Y,D,this.canonical.z,this.canonical.x,this.canonical.y):Rg(this.wrap*+Y,D,D,this.canonical.x>>pe,this.canonical.y>>pe)}isChildOf(D){if(D.wrap!==this.wrap)return!1;let Y=this.canonical.z-D.canonical.z;return D.overscaledZ===0||D.overscaledZ<this.overscaledZ&&D.canonical.x===this.canonical.x>>Y&&D.canonical.y===this.canonical.y>>Y}children(D){if(this.overscaledZ>=D)return[new Hp(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let Y=this.canonical.z+1,pe=2*this.canonical.x,Ce=2*this.canonical.y;return[new Hp(Y,this.wrap,Y,pe,Ce),new Hp(Y,this.wrap,Y,pe+1,Ce),new Hp(Y,this.wrap,Y,pe,Ce+1),new Hp(Y,this.wrap,Y,pe+1,Ce+1)]}isLessThan(D){return this.wrap<D.wrap||!(this.wrap>D.wrap)&&(this.overscaledZ<D.overscaledZ||!(this.overscaledZ>D.overscaledZ)&&(this.canonical.x<D.canonical.x||!(this.canonical.x>D.canonical.x)&&this.canonical.y<D.canonical.y))}wrapped(){return new Hp(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)}unwrapTo(D){return new Hp(this.overscaledZ,D,this.canonical.z,this.canonical.x,this.canonical.y)}overscaleFactor(){return Math.pow(2,this.overscaledZ-this.canonical.z)}toUnwrapped(){return new jx(this.wrap,this.canonical)}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`}getTilePoint(D){return this.canonical.getTilePoint(new Ig(D.x-this.wrap,D.y))}}function Rg(q,D,Y,pe,Ce){(q*=2)<0&&(q=-1*q-1);let Ue=1<<Y;return(Ue*Ue*q+Ue*Ce+pe).toString(36)+Y.toString(36)+D.toString(36)}ti("CanonicalTileID",U1),ti("OverscaledTileID",Hp,{omit:["posMatrix"]});class Vx{constructor(D,Y,pe,Ce=1,Ue=1,Ge=1,ut=0){if(this.uid=D,Y.height!==Y.width)throw new RangeError("DEM tiles must be square");if(pe&&!["mapbox","terrarium","custom"].includes(pe))return void f(`"${pe}" is not a valid encoding type. Valid types include "mapbox", "terrarium" and "custom".`);this.stride=Y.height;let Tt=this.dim=Y.height-2;switch(this.data=new Uint32Array(Y.data.buffer),pe){case"terrarium":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case"custom":this.redFactor=Ce,this.greenFactor=Ue,this.blueFactor=Ge,this.baseShift=ut;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4}for(let Ft=0;Ft<Tt;Ft++)this.data[this._idx(-1,Ft)]=this.data[this._idx(0,Ft)],this.data[this._idx(Tt,Ft)]=this.data[this._idx(Tt-1,Ft)],this.data[this._idx(Ft,-1)]=this.data[this._idx(Ft,0)],this.data[this._idx(Ft,Tt)]=this.data[this._idx(Ft,Tt-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(Tt,-1)]=this.data[this._idx(Tt-1,0)],this.data[this._idx(-1,Tt)]=this.data[this._idx(0,Tt-1)],this.data[this._idx(Tt,Tt)]=this.data[this._idx(Tt-1,Tt-1)],this.min=Number.MAX_SAFE_INTEGER,this.max=Number.MIN_SAFE_INTEGER;for(let Ft=0;Ft<Tt;Ft++)for(let $t=0;$t<Tt;$t++){let lr=this.get(Ft,$t);lr>this.max&&(this.max=lr),lr<this.min&&(this.min=lr)}}get(D,Y){let pe=new Uint8Array(this.data.buffer),Ce=4*this._idx(D,Y);return this.unpack(pe[Ce],pe[Ce+1],pe[Ce+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(D,Y){if(D<-1||D>=this.dim+1||Y<-1||Y>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(Y+1)*this.stride+(D+1)}unpack(D,Y,pe){return D*this.redFactor+Y*this.greenFactor+pe*this.blueFactor-this.baseShift}getPixels(){return new wn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(D,Y,pe){if(this.dim!==D.dim)throw new Error("dem dimension mismatch");let Ce=Y*this.dim,Ue=Y*this.dim+this.dim,Ge=pe*this.dim,ut=pe*this.dim+this.dim;switch(Y){case-1:Ce=Ue-1;break;case 1:Ue=Ce+1}switch(pe){case-1:Ge=ut-1;break;case 1:ut=Ge+1}let Tt=-Y*this.dim,Ft=-pe*this.dim;for(let $t=Ge;$t<ut;$t++)for(let lr=Ce;lr<Ue;lr++)this.data[this._idx(lr,$t)]=D.data[this._idx(lr+Tt,$t+Ft)]}}ti("DEMData",Vx);class qx{constructor(D){this._stringToNumber={},this._numberToString=[];for(let Y=0;Y<D.length;Y++){let pe=D[Y];this._stringToNumber[pe]=Y,this._numberToString[Y]=pe}}encode(D){return this._stringToNumber[D]}decode(D){if(D>=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${D} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[D]}}class j1{constructor(D,Y,pe,Ce,Ue){this.type="Feature",this._vectorTileFeature=D,D._z=Y,D._x=pe,D._y=Ce,this.properties=D.properties,this.id=Ue}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(D){this._geometry=D}toJSON(){let D={geometry:this.geometry};for(let Y in this)Y!=="_geometry"&&Y!=="_vectorTileFeature"&&(D[Y]=this[Y]);return D}}class zv{constructor(D,Y){this.tileID=D,this.x=D.canonical.x,this.y=D.canonical.y,this.z=D.canonical.z,this.grid=new _i(ao,16,0),this.grid3D=new _i(ao,16,0),this.featureIndexArray=new Ys,this.promoteId=Y}insert(D,Y,pe,Ce,Ue,Ge){let ut=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(pe,Ce,Ue);let Tt=Ge?this.grid3D:this.grid;for(let Ft=0;Ft<Y.length;Ft++){let $t=Y[Ft],lr=[1/0,1/0,-1/0,-1/0];for(let Ar=0;Ar<$t.length;Ar++){let zr=$t[Ar];lr[0]=Math.min(lr[0],zr.x),lr[1]=Math.min(lr[1],zr.y),lr[2]=Math.max(lr[2],zr.x),lr[3]=Math.max(lr[3],zr.y)}lr[0]<ao&&lr[1]<ao&&lr[2]>=0&&lr[3]>=0&&Tt.insert(ut,lr[0],lr[1],lr[2],lr[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Oa.VectorTile(new C1(this.rawTileData)).layers,this.sourceLayerCoder=new qx(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(D,Y,pe,Ce){this.loadVTLayers();let Ue=D.params||{},Ge=ao/D.tileSize/D.scale,ut=bc(Ue.filter),Tt=D.queryGeometry,Ft=D.queryPadding*Ge,$t=Gx(Tt),lr=this.grid.query($t.minX-Ft,$t.minY-Ft,$t.maxX+Ft,$t.maxY+Ft),Ar=Gx(D.cameraQueryGeometry),zr=this.grid3D.query(Ar.minX-Ft,Ar.minY-Ft,Ar.maxX+Ft,Ar.maxY+Ft,(za,ja,gi,ei)=>function(hi,Ei,En,fo,ss){for(let vn of hi)if(Ei<=vn.x&&En<=vn.y&&fo>=vn.x&&ss>=vn.y)return!0;let eo=[new i(Ei,En),new i(Ei,ss),new i(fo,ss),new i(fo,En)];if(hi.length>2){for(let vn of eo)if(cn(hi,vn))return!0}for(let vn=0;vn<hi.length-1;vn++)if(fn(hi[vn],hi[vn+1],eo))return!0;return!1}(D.cameraQueryGeometry,za-Ft,ja-Ft,gi+Ft,ei+Ft));for(let za of zr)lr.push(za);lr.sort(QT);let Kr={},la;for(let za=0;za<lr.length;za++){let ja=lr[za];if(ja===la)continue;la=ja;let gi=this.featureIndexArray.get(ja),ei=null;this.loadMatchingFeature(Kr,gi.bucketIndex,gi.sourceLayerIndex,gi.featureIndex,ut,Ue.layers,Ue.availableImages,Y,pe,Ce,(hi,Ei,En)=>(ei||(ei=hl(hi)),Ei.queryIntersectsFeature(Tt,hi,En,ei,this.z,D.transform,Ge,D.pixelPosMatrix)))}return Kr}loadMatchingFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=this.bucketLayerIDs[Y];if(Ge&&!function(za,ja){for(let gi=0;gi<za.length;gi++)if(ja.indexOf(za[gi])>=0)return!0;return!1}(Ge,Ar))return;let zr=this.sourceLayerCoder.decode(pe),Kr=this.vtLayers[zr].feature(Ce);if(Ue.needGeometry){let za=Dl(Kr,!0);if(!Ue.filter(new Ts(this.tileID.overscaledZ),za,this.tileID.canonical))return}else if(!Ue.filter(new Ts(this.tileID.overscaledZ),Kr))return;let la=this.getId(Kr,zr);for(let za=0;za<Ar.length;za++){let ja=Ar[za];if(Ge&&Ge.indexOf(ja)<0)continue;let gi=Tt[ja];if(!gi)continue;let ei={};la&&$t&&(ei=$t.getState(gi.sourceLayer||"_geojsonTileLayer",la));let hi=E({},Ft[ja]);hi.paint=Hx(hi.paint,gi.paint,Kr,ei,ut),hi.layout=Hx(hi.layout,gi.layout,Kr,ei,ut);let Ei=!lr||lr(Kr,gi,ei);if(!Ei)continue;let En=new j1(Kr,this.z,this.x,this.y,la);En.layer=hi;let fo=D[ja];fo===void 0&&(fo=D[ja]=[]),fo.push({featureIndex:Ce,feature:En,intersectionZ:Ei})}}lookupSymbolFeatures(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft={};this.loadVTLayers();let $t=bc(Ue);for(let lr of D)this.loadMatchingFeature(Ft,pe,Ce,lr,$t,Ge,ut,Tt,Y);return Ft}hasLayer(D){for(let Y of this.bucketLayerIDs)for(let pe of Y)if(D===pe)return!0;return!1}getId(D,Y){let pe=D.id;return this.promoteId&&(pe=D.properties[typeof this.promoteId=="string"?this.promoteId:this.promoteId[Y]],typeof pe=="boolean"&&(pe=Number(pe))),pe}}function Hx(q,D,Y,pe,Ce){return b(q,(Ue,Ge)=>{let ut=D instanceof Ac?D.get(Ge):null;return ut&&ut.evaluate?ut.evaluate(Y,pe,Ce):ut})}function Gx(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return{minX:D,minY:Y,maxX:pe,maxY:Ce}}function QT(q,D){return D-q}function Wx(q,D,Y,pe,Ce){let Ue=[];for(let Ge=0;Ge<q.length;Ge++){let ut=q[Ge],Tt;for(let Ft=0;Ft<ut.length-1;Ft++){let $t=ut[Ft],lr=ut[Ft+1];$t.x<D&&lr.x<D||($t.x<D?$t=new i(D,$t.y+(D-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x<D&&(lr=new i(D,$t.y+(D-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y<Y&&lr.y<Y||($t.y<Y?$t=new i($t.x+(Y-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Y)._round():lr.y<Y&&(lr=new i($t.x+(Y-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Y)._round()),$t.x>=pe&&lr.x>=pe||($t.x>=pe?$t=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x>=pe&&(lr=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y>=Ce&&lr.y>=Ce||($t.y>=Ce?$t=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round():lr.y>=Ce&&(lr=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round()),Tt&&$t.equals(Tt[Tt.length-1])||(Tt=[$t],Ue.push(Tt)),Tt.push(lr)))))}}return Ue}ti("FeatureIndex",zv,{omit:["rawTileData","sourceLayerCoder"]});class Wd extends i{constructor(D,Y,pe,Ce){super(D,Y),this.angle=pe,Ce!==void 0&&(this.segment=Ce)}clone(){return new Wd(this.x,this.y,this.angle,this.segment)}}function V1(q,D,Y,pe,Ce){if(D.segment===void 0||Y===0)return!0;let Ue=D,Ge=D.segment+1,ut=0;for(;ut>-Y/2;){if(Ge--,Ge<0)return!1;ut-=q[Ge].dist(Ue),Ue=q[Ge]}ut+=q[Ge].dist(q[Ge+1]),Ge++;let Tt=[],Ft=0;for(;ut<Y/2;){let $t=q[Ge],lr=q[Ge+1];if(!lr)return!1;let Ar=q[Ge-1].angleTo($t)-$t.angleTo(lr);for(Ar=Math.abs((Ar+3*Math.PI)%(2*Math.PI)-Math.PI),Tt.push({distance:ut,angleDelta:Ar}),Ft+=Ar;ut-Tt[0].distance>pe;)Ft-=Tt.shift().angleDelta;if(Ft>Ce)return!1;Ge++,ut+=$t.dist(lr)}return!0}function Zx(q){let D=0;for(let Y=0;Y<q.length-1;Y++)D+=q[Y].dist(q[Y+1]);return D}function Xx(q,D,Y){return q?.6*D*Y:0}function Yx(q,D){return Math.max(q?q.right-q.left:0,D?D.right-D.left:0)}function eA(q,D,Y,pe,Ce,Ue){let Ge=Xx(Y,Ce,Ue),ut=Yx(Y,pe)*Ue,Tt=0,Ft=Zx(q)/2;for(let $t=0;$t<q.length-1;$t++){let lr=q[$t],Ar=q[$t+1],zr=lr.dist(Ar);if(Tt+zr>Ft){let Kr=(Ft-Tt)/zr,la=$n.number(lr.x,Ar.x,Kr),za=$n.number(lr.y,Ar.y,Kr),ja=new Wd(la,za,Ar.angleTo(lr),$t);return ja._round(),!Ge||V1(q,ja,ut,Ge,D)?ja:void 0}Tt+=zr}}function tA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Xx(pe,Ue,Ge),$t=Yx(pe,Ce),lr=$t*Ge,Ar=q[0].x===0||q[0].x===Tt||q[0].y===0||q[0].y===Tt;return D-lr<D/4&&(D=lr+D/4),Kx(q,Ar?D/2*ut%D:($t/2+2*Ue)*Ge*ut%D,D,Ft,Y,lr,Ar,!1,Tt)}function Kx(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Ue/2,$t=Zx(q),lr=0,Ar=D-Y,zr=[];for(let Kr=0;Kr<q.length-1;Kr++){let la=q[Kr],za=q[Kr+1],ja=la.dist(za),gi=za.angleTo(la);for(;Ar+Y<lr+ja;){Ar+=Y;let ei=(Ar-lr)/ja,hi=$n.number(la.x,za.x,ei),Ei=$n.number(la.y,za.y,ei);if(hi>=0&&hi<Tt&&Ei>=0&&Ei<Tt&&Ar-Ft>=0&&Ar+Ft<=$t){let En=new Wd(hi,Ei,gi,Kr);En._round(),pe&&!V1(q,En,Ue,pe,Ce)||zr.push(En)}}lr+=ja}return ut||zr.length||Ge||(zr=Kx(q,lr/2,Y,pe,Ce,Ue,Ge,!0,Tt)),zr}ti("Anchor",Wd);let fm=Ph;function Jx(q,D,Y,pe){let Ce=[],Ue=q.image,Ge=Ue.pixelRatio,ut=Ue.paddedRect.w-2*fm,Tt=Ue.paddedRect.h-2*fm,Ft={x1:q.left,y1:q.top,x2:q.right,y2:q.bottom},$t=Ue.stretchX||[[0,ut]],lr=Ue.stretchY||[[0,Tt]],Ar=(Yi,Ko)=>Yi+Ko[1]-Ko[0],zr=$t.reduce(Ar,0),Kr=lr.reduce(Ar,0),la=ut-zr,za=Tt-Kr,ja=0,gi=zr,ei=0,hi=Kr,Ei=0,En=la,fo=0,ss=za;if(Ue.content&&pe){let Yi=Ue.content,Ko=Yi[2]-Yi[0],bo=Yi[3]-Yi[1];(Ue.textFitWidth||Ue.textFitHeight)&&(Ft=Dx(q)),ja=Zd($t,0,Yi[0]),ei=Zd(lr,0,Yi[1]),gi=Zd($t,Yi[0],Yi[2]),hi=Zd(lr,Yi[1],Yi[3]),Ei=Yi[0]-ja,fo=Yi[1]-ei,En=Ko-gi,ss=bo-hi}let eo=Ft.x1,vn=Ft.y1,Uo=Ft.x2-eo,Mo=Ft.y2-vn,xo=(Yi,Ko,bo,gs)=>{let _u=C0(Yi.stretch-ja,gi,Uo,eo),pu=hm(Yi.fixed-Ei,En,Yi.stretch,zr),Bf=C0(Ko.stretch-ei,hi,Mo,vn),Gp=hm(Ko.fixed-fo,ss,Ko.stretch,Kr),dh=C0(bo.stretch-ja,gi,Uo,eo),Nf=hm(bo.fixed-Ei,En,bo.stretch,zr),Yh=C0(gs.stretch-ei,hi,Mo,vn),Kh=hm(gs.fixed-fo,ss,gs.stretch,Kr),Jh=new i(_u,Bf),Hc=new i(dh,Bf),Uf=new i(dh,Yh),Ih=new i(_u,Yh),vh=new i(pu/Ge,Gp/Ge),th=new i(Nf/Ge,Kh/Ge),nf=D*Math.PI/180;if(nf){let Nl=Math.sin(nf),zu=Math.cos(nf),xu=[zu,-Nl,Nl,zu];Jh._matMult(xu),Hc._matMult(xu),Ih._matMult(xu),Uf._matMult(xu)}let Lp=Yi.stretch+Yi.fixed,pp=Ko.stretch+Ko.fixed;return{tl:Jh,tr:Hc,bl:Ih,br:Uf,tex:{x:Ue.paddedRect.x+fm+Lp,y:Ue.paddedRect.y+fm+pp,w:bo.stretch+bo.fixed-Lp,h:gs.stretch+gs.fixed-pp},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:vh,pixelOffsetBR:th,minFontScaleX:En/Ge/Uo,minFontScaleY:ss/Ge/Mo,isSDF:Y}};if(pe&&(Ue.stretchX||Ue.stretchY)){let Yi=$x($t,la,zr),Ko=$x(lr,za,Kr);for(let bo=0;bo<Yi.length-1;bo++){let gs=Yi[bo],_u=Yi[bo+1];for(let pu=0;pu<Ko.length-1;pu++)Ce.push(xo(gs,Ko[pu],_u,Ko[pu+1]))}}else Ce.push(xo({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ut+1},{fixed:0,stretch:Tt+1}));return Ce}function Zd(q,D,Y){let pe=0;for(let Ce of q)pe+=Math.max(D,Math.min(Y,Ce[1]))-Math.max(D,Math.min(Y,Ce[0]));return pe}function $x(q,D,Y){let pe=[{fixed:-fm,stretch:0}];for(let[Ce,Ue]of q){let Ge=pe[pe.length-1];pe.push({fixed:Ce-Ge.stretch,stretch:Ge.stretch}),pe.push({fixed:Ce-Ge.stretch,stretch:Ge.stretch+(Ue-Ce)})}return pe.push({fixed:D+fm,stretch:Y}),pe}function C0(q,D,Y,pe){return q/D*Y+pe}function hm(q,D,Y,pe){return q-D*Y/pe}class hv{constructor(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){var lr;if(this.boxStartIndex=D.length,Ft){let Ar=Ge.top,zr=Ge.bottom,Kr=Ge.collisionPadding;Kr&&(Ar-=Kr[1],zr+=Kr[3]);let la=zr-Ar;la>0&&(la=Math.max(10,la),this.circleDiameter=la)}else{let Ar=!((lr=Ge.image)===null||lr===void 0)&&lr.content&&(Ge.image.textFitWidth||Ge.image.textFitHeight)?Dx(Ge):{x1:Ge.left,y1:Ge.top,x2:Ge.right,y2:Ge.bottom};Ar.y1=Ar.y1*ut-Tt[0],Ar.y2=Ar.y2*ut+Tt[2],Ar.x1=Ar.x1*ut-Tt[3],Ar.x2=Ar.x2*ut+Tt[1];let zr=Ge.collisionPadding;if(zr&&(Ar.x1-=zr[0]*ut,Ar.y1-=zr[1]*ut,Ar.x2+=zr[2]*ut,Ar.y2+=zr[3]*ut),$t){let Kr=new i(Ar.x1,Ar.y1),la=new i(Ar.x2,Ar.y1),za=new i(Ar.x1,Ar.y2),ja=new i(Ar.x2,Ar.y2),gi=$t*Math.PI/180;Kr._rotate(gi),la._rotate(gi),za._rotate(gi),ja._rotate(gi),Ar.x1=Math.min(Kr.x,la.x,za.x,ja.x),Ar.x2=Math.max(Kr.x,la.x,za.x,ja.x),Ar.y1=Math.min(Kr.y,la.y,za.y,ja.y),Ar.y2=Math.max(Kr.y,la.y,za.y,ja.y)}D.emplaceBack(Y.x,Y.y,Ar.x1,Ar.y1,Ar.x2,Ar.y2,pe,Ce,Ue)}this.boxEndIndex=D.length}}class fd{constructor(D=[],Y=(pe,Ce)=>pe<Ce?-1:pe>Ce?1:0){if(this.data=D,this.length=this.data.length,this.compare=Y,this.length>0)for(let pe=(this.length>>1)-1;pe>=0;pe--)this._down(pe)}push(D){this.data.push(D),this._up(this.length++)}pop(){if(this.length===0)return;let D=this.data[0],Y=this.data.pop();return--this.length>0&&(this.data[0]=Y,this._down(0)),D}peek(){return this.data[0]}_up(D){let{data:Y,compare:pe}=this,Ce=Y[D];for(;D>0;){let Ue=D-1>>1,Ge=Y[Ue];if(pe(Ce,Ge)>=0)break;Y[D]=Ge,D=Ue}Y[D]=Ce}_down(D){let{data:Y,compare:pe}=this,Ce=this.length>>1,Ue=Y[D];for(;D<Ce;){let Ge=1+(D<<1),ut=Ge+1;if(ut<this.length&&pe(Y[ut],Y[Ge])<0&&(Ge=ut),pe(Y[Ge],Ue)>=0)break;Y[D]=Y[Ge],D=Ge}Y[D]=Ue}}function rA(q,D=1,Y=!1){let pe=1/0,Ce=1/0,Ue=-1/0,Ge=-1/0,ut=q[0];for(let zr=0;zr<ut.length;zr++){let Kr=ut[zr];(!zr||Kr.x<pe)&&(pe=Kr.x),(!zr||Kr.y<Ce)&&(Ce=Kr.y),(!zr||Kr.x>Ue)&&(Ue=Kr.x),(!zr||Kr.y>Ge)&&(Ge=Kr.y)}let Tt=Math.min(Ue-pe,Ge-Ce),Ft=Tt/2,$t=new fd([],aA);if(Tt===0)return new i(pe,Ce);for(let zr=pe;zr<Ue;zr+=Tt)for(let Kr=Ce;Kr<Ge;Kr+=Tt)$t.push(new pm(zr+Ft,Kr+Ft,Ft,q));let lr=function(zr){let Kr=0,la=0,za=0,ja=zr[0];for(let gi=0,ei=ja.length,hi=ei-1;gi<ei;hi=gi++){let Ei=ja[gi],En=ja[hi],fo=Ei.x*En.y-En.x*Ei.y;la+=(Ei.x+En.x)*fo,za+=(Ei.y+En.y)*fo,Kr+=3*fo}return new pm(la/Kr,za/Kr,0,zr)}(q),Ar=$t.length;for(;$t.length;){let zr=$t.pop();(zr.d>lr.d||!lr.d)&&(lr=zr,Y&&console.log("found best %d after %d probes",Math.round(1e4*zr.d)/1e4,Ar)),zr.max-lr.d<=D||(Ft=zr.h/2,$t.push(new pm(zr.p.x-Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x-Ft,zr.p.y+Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y+Ft,Ft,q)),Ar+=4)}return Y&&(console.log(`num probes: ${Ar}`),console.log(`best distance: ${lr.d}`)),lr.p}function aA(q,D){return D.max-q.max}function pm(q,D,Y,pe){this.p=new i(q,D),this.h=Y,this.d=function(Ce,Ue){let Ge=!1,ut=1/0;for(let Tt=0;Tt<Ue.length;Tt++){let Ft=Ue[Tt];for(let $t=0,lr=Ft.length,Ar=lr-1;$t<lr;Ar=$t++){let zr=Ft[$t],Kr=Ft[Ar];zr.y>Ce.y!=Kr.y>Ce.y&&Ce.x<(Kr.x-zr.x)*(Ce.y-zr.y)/(Kr.y-zr.y)+zr.x&&(Ge=!Ge),ut=Math.min(ut,bi(Ce,zr,Kr))}}return(Ge?1:-1)*Math.sqrt(ut)}(this.p,pe),this.max=this.d+this.h*Math.SQRT2}var ph;e.aq=void 0,(ph=e.aq||(e.aq={}))[ph.center=1]="center",ph[ph.left=2]="left",ph[ph.right=3]="right",ph[ph.top=4]="top",ph[ph.bottom=5]="bottom",ph[ph["top-left"]=6]="top-left",ph[ph["top-right"]=7]="top-right",ph[ph["bottom-left"]=8]="bottom-left",ph[ph["bottom-right"]=9]="bottom-right";let pv=7,Fv=Number.POSITIVE_INFINITY;function q1(q,D){return D[1]!==Fv?function(Y,pe,Ce){let Ue=0,Ge=0;switch(pe=Math.abs(pe),Ce=Math.abs(Ce),Y){case"top-right":case"top-left":case"top":Ge=Ce-pv;break;case"bottom-right":case"bottom-left":case"bottom":Ge=-Ce+pv}switch(Y){case"top-right":case"bottom-right":case"right":Ue=-pe;break;case"top-left":case"bottom-left":case"left":Ue=pe}return[Ue,Ge]}(q,D[0],D[1]):function(Y,pe){let Ce=0,Ue=0;pe<0&&(pe=0);let Ge=pe/Math.SQRT2;switch(Y){case"top-right":case"top-left":Ue=Ge-pv;break;case"bottom-right":case"bottom-left":Ue=-Ge+pv;break;case"bottom":Ue=-pe+pv;break;case"top":Ue=pe-pv}switch(Y){case"top-right":case"bottom-right":Ce=-Ge;break;case"top-left":case"bottom-left":Ce=Ge;break;case"left":Ce=pe;break;case"right":Ce=-pe}return[Ce,Ue]}(q,D[0])}function Qx(q,D,Y){var pe;let Ce=q.layout,Ue=(pe=Ce.get("text-variable-anchor-offset"))===null||pe===void 0?void 0:pe.evaluate(D,{},Y);if(Ue){let ut=Ue.values,Tt=[];for(let Ft=0;Ft<ut.length;Ft+=2){let $t=Tt[Ft]=ut[Ft],lr=ut[Ft+1].map(Ar=>Ar*Bl);$t.startsWith("top")?lr[1]-=pv:$t.startsWith("bottom")&&(lr[1]+=pv),Tt[Ft+1]=lr}return new Fa(Tt)}let Ge=Ce.get("text-variable-anchor");if(Ge){let ut;ut=q._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[Ce.get("text-radial-offset").evaluate(D,{},Y)*Bl,Fv]:Ce.get("text-offset").evaluate(D,{},Y).map(Ft=>Ft*Bl);let Tt=[];for(let Ft of Ge)Tt.push(Ft,q1(Ft,ut));return new Fa(Tt)}return null}function H1(q){switch(q){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function iA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=Ue.textMaxSize.evaluate(D,{});lr===void 0&&(lr=Ge);let Ar=q.layers[0].layout,zr=Ar.get("icon-offset").evaluate(D,{},$t),Kr=tb(Y.horizontal),la=Ge/24,za=q.tilePixelRatio*la,ja=q.tilePixelRatio*lr/24,gi=q.tilePixelRatio*ut,ei=q.tilePixelRatio*Ar.get("symbol-spacing"),hi=Ar.get("text-padding")*q.tilePixelRatio,Ei=function(Yi,Ko,bo,gs=1){let _u=Yi.get("icon-padding").evaluate(Ko,{},bo),pu=_u&&_u.values;return[pu[0]*gs,pu[1]*gs,pu[2]*gs,pu[3]*gs]}(Ar,D,$t,q.tilePixelRatio),En=Ar.get("text-max-angle")/180*Math.PI,fo=Ar.get("text-rotation-alignment")!=="viewport"&&Ar.get("symbol-placement")!=="point",ss=Ar.get("icon-rotation-alignment")==="map"&&Ar.get("symbol-placement")!=="point",eo=Ar.get("symbol-placement"),vn=ei/2,Uo=Ar.get("icon-text-fit"),Mo;pe&&Uo!=="none"&&(q.allowVerticalPlacement&&Y.vertical&&(Mo=zx(pe,Y.vertical,Uo,Ar.get("icon-text-fit-padding"),zr,la)),Kr&&(pe=zx(pe,Kr,Uo,Ar.get("icon-text-fit-padding"),zr,la)));let xo=(Yi,Ko)=>{Ko.x<0||Ko.x>=ao||Ko.y<0||Ko.y>=ao||function(bo,gs,_u,pu,Bf,Gp,dh,Nf,Yh,Kh,Jh,Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl,zu,xu,Pp,Ec,dm){let _d=bo.addToLineVertexArray(gs,_u),hd,Wp,tc,gf,Zp=0,Xd=0,dp=0,vm=0,Y1=-1,R0=-1,xd={},Ov=Xa("");if(bo.allowVerticalPlacement&&pu.vertical){let Rh=Nf.layout.get("text-rotate").evaluate(zu,{},Ec)+90;tc=new hv(Yh,gs,Kh,Jh,Hc,pu.vertical,Uf,Ih,vh,Rh),dh&&(gf=new hv(Yh,gs,Kh,Jh,Hc,dh,nf,Lp,vh,Rh))}if(Bf){let Rh=Nf.layout.get("icon-rotate").evaluate(zu,{}),Xp=Nf.layout.get("icon-text-fit")!=="none",dv=Jx(Bf,Rh,Pp,Xp),$h=dh?Jx(dh,Rh,Pp,Xp):void 0;Wp=new hv(Yh,gs,Kh,Jh,Hc,Bf,nf,Lp,!1,Rh),Zp=4*dv.length;let Dh=bo.iconSizeData,nd=null;Dh.kind==="source"?(nd=[yd*Nf.layout.get("icon-size").evaluate(zu,{})],nd[0]>cv&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)):Dh.kind==="composite"&&(nd=[yd*xu.compositeIconSizes[0].evaluate(zu,{},Ec),yd*xu.compositeIconSizes[1].evaluate(zu,{},Ec)],(nd[0]>cv||nd[1]>cv)&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)),bo.addSymbols(bo.icon,dv,nd,Nl,pp,zu,e.ah.none,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),Y1=bo.icon.placedSymbolArray.length-1,$h&&(Xd=4*$h.length,bo.addSymbols(bo.icon,$h,nd,Nl,pp,zu,e.ah.vertical,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),R0=bo.icon.placedSymbolArray.length-1)}let rh=Object.keys(pu.horizontal);for(let Rh of rh){let Xp=pu.horizontal[Rh];if(!hd){Ov=Xa(Xp.text);let $h=Nf.layout.get("text-rotate").evaluate(zu,{},Ec);hd=new hv(Yh,gs,Kh,Jh,Hc,Xp,Uf,Ih,vh,$h)}let dv=Xp.positionedLines.length===1;if(dp+=eb(bo,gs,Xp,Gp,Nf,vh,zu,th,_d,pu.vertical?e.ah.horizontal:e.ah.horizontalOnly,dv?rh:[Rh],xd,Y1,xu,Ec),dv)break}pu.vertical&&(vm+=eb(bo,gs,pu.vertical,Gp,Nf,vh,zu,th,_d,e.ah.vertical,["vertical"],xd,R0,xu,Ec));let sA=hd?hd.boxStartIndex:bo.collisionBoxArray.length,D0=hd?hd.boxEndIndex:bo.collisionBoxArray.length,bd=tc?tc.boxStartIndex:bo.collisionBoxArray.length,vp=tc?tc.boxEndIndex:bo.collisionBoxArray.length,nb=Wp?Wp.boxStartIndex:bo.collisionBoxArray.length,lA=Wp?Wp.boxEndIndex:bo.collisionBoxArray.length,ob=gf?gf.boxStartIndex:bo.collisionBoxArray.length,uA=gf?gf.boxEndIndex:bo.collisionBoxArray.length,id=-1,Fg=(Rh,Xp)=>Rh&&Rh.circleDiameter?Math.max(Rh.circleDiameter,Xp):Xp;id=Fg(hd,id),id=Fg(tc,id),id=Fg(Wp,id),id=Fg(gf,id);let z0=id>-1?1:0;z0&&(id*=dm/Bl),bo.glyphOffsetArray.length>=um.MAX_GLYPHS&&f("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),zu.sortKey!==void 0&&bo.addToSortKeyRanges(bo.symbolInstances.length,zu.sortKey);let K1=Qx(Nf,zu,Ec),[cA,fA]=function(Rh,Xp){let dv=Rh.length,$h=Xp?.values;if($h?.length>0)for(let Dh=0;Dh<$h.length;Dh+=2){let nd=$h[Dh+1];Rh.emplaceBack(e.aq[$h[Dh]],nd[0],nd[1])}return[dv,Rh.length]}(bo.textAnchorOffsets,K1);bo.symbolInstances.emplaceBack(gs.x,gs.y,xd.right>=0?xd.right:-1,xd.center>=0?xd.center:-1,xd.left>=0?xd.left:-1,xd.vertical||-1,Y1,R0,Ov,sA,D0,bd,vp,nb,lA,ob,uA,Kh,dp,vm,Zp,Xd,z0,0,Uf,id,cA,fA)}(q,Ko,Yi,Y,pe,Ce,Mo,q.layers[0],q.collisionBoxArray,D.index,D.sourceLayerIndex,q.index,za,[hi,hi,hi,hi],fo,Tt,gi,Ei,ss,zr,D,Ue,Ft,$t,Ge)};if(eo==="line")for(let Yi of Wx(D.geometry,0,0,ao,ao)){let Ko=tA(Yi,ei,En,Y.vertical||Kr,pe,24,ja,q.overscaling,ao);for(let bo of Ko)Kr&&nA(q,Kr.text,vn,bo)||xo(Yi,bo)}else if(eo==="line-center"){for(let Yi of D.geometry)if(Yi.length>1){let Ko=eA(Yi,En,Y.vertical||Kr,pe,24,ja);Ko&&xo(Yi,Ko)}}else if(D.type==="Polygon")for(let Yi of Ic(D.geometry,0)){let Ko=rA(Yi,16);xo(Yi[0],new Wd(Ko.x,Ko.y,0))}else if(D.type==="LineString")for(let Yi of D.geometry)xo(Yi,new Wd(Yi[0].x,Yi[0].y,0));else if(D.type==="Point")for(let Yi of D.geometry)for(let Ko of Yi)xo([Ko],new Wd(Ko.x,Ko.y,0))}function eb(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=function(gi,ei,hi,Ei,En,fo,ss,eo){let vn=Ei.layout.get("text-rotate").evaluate(fo,{})*Math.PI/180,Uo=[];for(let Mo of ei.positionedLines)for(let xo of Mo.positionedGlyphs){if(!xo.rect)continue;let Yi=xo.rect||{},Ko=Lx+1,bo=!0,gs=1,_u=0,pu=(En||eo)&&xo.vertical,Bf=xo.metrics.advance*xo.scale/2;if(eo&&ei.verticalizable&&(_u=Mo.lineOffset/2-(xo.imageName?-(Bl-xo.metrics.width*xo.scale)/2:(xo.scale-1)*Bl)),xo.imageName){let Nl=ss[xo.imageName];bo=Nl.sdf,gs=Nl.pixelRatio,Ko=Ph/gs}let Gp=En?[xo.x+Bf,xo.y]:[0,0],dh=En?[0,0]:[xo.x+Bf+hi[0],xo.y+hi[1]-_u],Nf=[0,0];pu&&(Nf=dh,dh=[0,0]);let Yh=xo.metrics.isDoubleResolution?2:1,Kh=(xo.metrics.left-Ko)*xo.scale-Bf+dh[0],Jh=(-xo.metrics.top-Ko)*xo.scale+dh[1],Hc=Kh+Yi.w/Yh*xo.scale/gs,Uf=Jh+Yi.h/Yh*xo.scale/gs,Ih=new i(Kh,Jh),vh=new i(Hc,Jh),th=new i(Kh,Uf),nf=new i(Hc,Uf);if(pu){let Nl=new i(-Bf,Bf-Of),zu=-Math.PI/2,xu=Bl/2-Bf,Pp=new i(5-Of-xu,-(xo.imageName?xu:0)),Ec=new i(...Nf);Ih._rotateAround(zu,Nl)._add(Pp)._add(Ec),vh._rotateAround(zu,Nl)._add(Pp)._add(Ec),th._rotateAround(zu,Nl)._add(Pp)._add(Ec),nf._rotateAround(zu,Nl)._add(Pp)._add(Ec)}if(vn){let Nl=Math.sin(vn),zu=Math.cos(vn),xu=[zu,-Nl,Nl,zu];Ih._matMult(xu),vh._matMult(xu),th._matMult(xu),nf._matMult(xu)}let Lp=new i(0,0),pp=new i(0,0);Uo.push({tl:Ih,tr:vh,bl:th,br:nf,tex:Yi,writingMode:ei.writingMode,glyphOffset:Gp,sectionIndex:xo.sectionIndex,isSDF:bo,pixelOffsetTL:Lp,pixelOffsetBR:pp,minFontScaleX:0,minFontScaleY:0})}return Uo}(0,Y,ut,Ce,Ue,Ge,pe,q.allowVerticalPlacement),za=q.textSizeData,ja=null;za.kind==="source"?(ja=[yd*Ce.layout.get("text-size").evaluate(Ge,{})],ja[0]>cv&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)):za.kind==="composite"&&(ja=[yd*zr.compositeTextSizes[0].evaluate(Ge,{},Kr),yd*zr.compositeTextSizes[1].evaluate(Ge,{},Kr)],(ja[0]>cv||ja[1]>cv)&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)),q.addSymbols(q.text,la,ja,ut,Ue,Ge,Ft,D,Tt.lineStartIndex,Tt.lineLength,Ar,Kr);for(let gi of $t)lr[gi]=q.text.placedSymbolArray.length-1;return 4*la.length}function tb(q){for(let D in q)return q[D];return null}function nA(q,D,Y,pe){let Ce=q.compareText;if(D in Ce){let Ue=Ce[D];for(let Ge=Ue.length-1;Ge>=0;Ge--)if(pe.dist(Ue[Ge])<Y)return!0}else Ce[D]=[];return Ce[D].push(pe),!1}let rb=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class G1{static from(D){if(!(D instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[Y,pe]=new Uint8Array(D,0,2);if(Y!==219)throw new Error("Data does not appear to be in a KDBush format.");let Ce=pe>>4;if(Ce!==1)throw new Error(`Got v${Ce} data when expected v1.`);let Ue=rb[15&pe];if(!Ue)throw new Error("Unrecognized array type.");let[Ge]=new Uint16Array(D,2,1),[ut]=new Uint32Array(D,4,1);return new G1(ut,Ge,Ue,D)}constructor(D,Y=64,pe=Float64Array,Ce){if(isNaN(D)||D<0)throw new Error(`Unpexpected numItems value: ${D}.`);this.numItems=+D,this.nodeSize=Math.min(Math.max(+Y,2),65535),this.ArrayType=pe,this.IndexArrayType=D<65536?Uint16Array:Uint32Array;let Ue=rb.indexOf(this.ArrayType),Ge=2*D*this.ArrayType.BYTES_PER_ELEMENT,ut=D*this.IndexArrayType.BYTES_PER_ELEMENT,Tt=(8-ut%8)%8;if(Ue<0)throw new Error(`Unexpected typed array class: ${pe}.`);Ce&&Ce instanceof ArrayBuffer?(this.data=Ce,this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=2*D,this._finished=!0):(this.data=new ArrayBuffer(8+Ge+ut+Tt),this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+Ue]),new Uint16Array(this.data,2,1)[0]=Y,new Uint32Array(this.data,4,1)[0]=D)}add(D,Y){let pe=this._pos>>1;return this.ids[pe]=pe,this.coords[this._pos++]=D,this.coords[this._pos++]=Y,pe}finish(){let D=this._pos>>1;if(D!==this.numItems)throw new Error(`Added ${D} items when expected ${this.numItems}.`);return L0(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(D,Y,pe,Ce){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ue,coords:Ge,nodeSize:ut}=this,Tt=[0,Ue.length-1,0],Ft=[];for(;Tt.length;){let $t=Tt.pop()||0,lr=Tt.pop()||0,Ar=Tt.pop()||0;if(lr-Ar<=ut){for(let za=Ar;za<=lr;za++){let ja=Ge[2*za],gi=Ge[2*za+1];ja>=D&&ja<=pe&&gi>=Y&&gi<=Ce&&Ft.push(Ue[za])}continue}let zr=Ar+lr>>1,Kr=Ge[2*zr],la=Ge[2*zr+1];Kr>=D&&Kr<=pe&&la>=Y&&la<=Ce&&Ft.push(Ue[zr]),($t===0?D<=Kr:Y<=la)&&(Tt.push(Ar),Tt.push(zr-1),Tt.push(1-$t)),($t===0?pe>=Kr:Ce>=la)&&(Tt.push(zr+1),Tt.push(lr),Tt.push(1-$t))}return Ft}within(D,Y,pe){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ce,coords:Ue,nodeSize:Ge}=this,ut=[0,Ce.length-1,0],Tt=[],Ft=pe*pe;for(;ut.length;){let $t=ut.pop()||0,lr=ut.pop()||0,Ar=ut.pop()||0;if(lr-Ar<=Ge){for(let za=Ar;za<=lr;za++)ib(Ue[2*za],Ue[2*za+1],D,Y)<=Ft&&Tt.push(Ce[za]);continue}let zr=Ar+lr>>1,Kr=Ue[2*zr],la=Ue[2*zr+1];ib(Kr,la,D,Y)<=Ft&&Tt.push(Ce[zr]),($t===0?D-pe<=Kr:Y-pe<=la)&&(ut.push(Ar),ut.push(zr-1),ut.push(1-$t)),($t===0?D+pe>=Kr:Y+pe>=la)&&(ut.push(zr+1),ut.push(lr),ut.push(1-$t))}return Tt}}function L0(q,D,Y,pe,Ce,Ue){if(Ce-pe<=Y)return;let Ge=pe+Ce>>1;ab(q,D,Ge,pe,Ce,Ue),L0(q,D,Y,pe,Ge-1,1-Ue),L0(q,D,Y,Ge+1,Ce,1-Ue)}function ab(q,D,Y,pe,Ce,Ue){for(;Ce>pe;){if(Ce-pe>600){let Ft=Ce-pe+1,$t=Y-pe+1,lr=Math.log(Ft),Ar=.5*Math.exp(2*lr/3),zr=.5*Math.sqrt(lr*Ar*(Ft-Ar)/Ft)*($t-Ft/2<0?-1:1);ab(q,D,Y,Math.max(pe,Math.floor(Y-$t*Ar/Ft+zr)),Math.min(Ce,Math.floor(Y+(Ft-$t)*Ar/Ft+zr)),Ue)}let Ge=D[2*Y+Ue],ut=pe,Tt=Ce;for(Dg(q,D,pe,Y),D[2*Ce+Ue]>Ge&&Dg(q,D,pe,Ce);ut<Tt;){for(Dg(q,D,ut,Tt),ut++,Tt--;D[2*ut+Ue]<Ge;)ut++;for(;D[2*Tt+Ue]>Ge;)Tt--}D[2*pe+Ue]===Ge?Dg(q,D,pe,Tt):(Tt++,Dg(q,D,Tt,Ce)),Tt<=Y&&(pe=Tt+1),Y<=Tt&&(Ce=Tt-1)}}function Dg(q,D,Y,pe){W1(q,Y,pe),W1(D,2*Y,2*pe),W1(D,2*Y+1,2*pe+1)}function W1(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}function ib(q,D,Y,pe){let Ce=q-Y,Ue=D-pe;return Ce*Ce+Ue*Ue}var P0;e.bg=void 0,(P0=e.bg||(e.bg={})).create="create",P0.load="load",P0.fullLoad="fullLoad";let zg=null,Mf=[],Z1=1e3/60,X1="loadTime",I0="fullLoadTime",oA={mark(q){performance.mark(q)},frame(q){let D=q;zg!=null&&Mf.push(D-zg),zg=D},clearMetrics(){zg=null,Mf=[],performance.clearMeasures(X1),performance.clearMeasures(I0);for(let q in e.bg)performance.clearMarks(e.bg[q])},getPerformanceMetrics(){performance.measure(X1,e.bg.create,e.bg.load),performance.measure(I0,e.bg.create,e.bg.fullLoad);let q=performance.getEntriesByName(X1)[0].duration,D=performance.getEntriesByName(I0)[0].duration,Y=Mf.length,pe=1/(Mf.reduce((Ue,Ge)=>Ue+Ge,0)/Y/1e3),Ce=Mf.filter(Ue=>Ue>Z1).reduce((Ue,Ge)=>Ue+(Ge-Z1)/Z1,0);return{loadTime:q,fullLoadTime:D,fps:pe,percentDroppedFrames:Ce/(Y+Ce)*100,totalFrames:Y}}};e.$=class extends cr{},e.A=tn,e.B=yi,e.C=function(q){if(z==null){let D=q.navigator?q.navigator.userAgent:null;z=!!q.safari||!(!D||!(/\b(iPad|iPhone|iPod)\b/.test(D)||D.match("Safari")&&!D.match("Chrome")))}return z},e.D=ro,e.E=ee,e.F=class{constructor(q,D){this.target=q,this.mapId=D,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new B1(()=>this.process()),this.subscription=function(Y,pe,Ce,Ue){return Y.addEventListener(pe,Ce,!1),{unsubscribe:()=>{Y.removeEventListener(pe,Ce,!1)}}}(this.target,"message",Y=>this.receive(Y)),this.globalScope=L(self)?q:window}registerMessageHandler(q,D){this.messageHandlers[q]=D}sendAsync(q,D){return new Promise((Y,pe)=>{let Ce=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[Ce]={resolve:Y,reject:pe},D&&D.signal.addEventListener("abort",()=>{delete this.resolveRejects[Ce];let ut={id:Ce,type:"<cancel>",origin:location.origin,targetMapId:q.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ut)},{once:!0});let Ue=[],Ge=Object.assign(Object.assign({},q),{id:Ce,sourceMapId:this.mapId,origin:location.origin,data:Jn(q.data,Ue)});this.target.postMessage(Ge,{transfer:Ue})})}receive(q){let D=q.data,Y=D.id;if(!(D.origin!=="file://"&&location.origin!=="file://"&&D.origin!=="resource://android"&&location.origin!=="resource://android"&&D.origin!==location.origin||D.targetMapId&&this.mapId!==D.targetMapId)){if(D.type==="<cancel>"){delete this.tasks[Y];let pe=this.abortControllers[Y];return delete this.abortControllers[Y],void(pe&&pe.abort())}if(L(self)||D.mustQueue)return this.tasks[Y]=D,this.taskQueue.push(Y),void this.invoker.trigger();this.processTask(Y,D)}}process(){if(this.taskQueue.length===0)return;let q=this.taskQueue.shift(),D=this.tasks[q];delete this.tasks[q],this.taskQueue.length>0&&this.invoker.trigger(),D&&this.processTask(q,D)}processTask(q,D){return t(this,void 0,void 0,function*(){if(D.type==="<response>"){let Ce=this.resolveRejects[q];return delete this.resolveRejects[q],Ce?void(D.error?Ce.reject(no(D.error)):Ce.resolve(no(D.data))):void 0}if(!this.messageHandlers[D.type])return void this.completeTask(q,new Error(`Could not find a registered handler for ${D.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let Y=no(D.data),pe=new AbortController;this.abortControllers[q]=pe;try{let Ce=yield this.messageHandlers[D.type](D.sourceMapId,Y,pe);this.completeTask(q,null,Ce)}catch(Ce){this.completeTask(q,Ce)}})}completeTask(q,D,Y){let pe=[];delete this.abortControllers[q];let Ce={id:q,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:D?Jn(D):null,data:Jn(Y,pe)};this.target.postMessage(Ce,{transfer:pe})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},e.G=se,e.H=function(){var q=new tn(16);return tn!=Float32Array&&(q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=0,q[12]=0,q[13]=0,q[14]=0),q[0]=1,q[5]=1,q[10]=1,q[15]=1,q},e.I=x0,e.J=function(q,D,Y){var pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la=Y[0],za=Y[1],ja=Y[2];return D===q?(q[12]=D[0]*la+D[4]*za+D[8]*ja+D[12],q[13]=D[1]*la+D[5]*za+D[9]*ja+D[13],q[14]=D[2]*la+D[6]*za+D[10]*ja+D[14],q[15]=D[3]*la+D[7]*za+D[11]*ja+D[15]):(Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],q[0]=pe=D[0],q[1]=Ce,q[2]=Ue,q[3]=Ge,q[4]=ut,q[5]=Tt,q[6]=Ft,q[7]=$t,q[8]=lr,q[9]=Ar,q[10]=zr,q[11]=Kr,q[12]=pe*la+ut*za+lr*ja+D[12],q[13]=Ce*la+Tt*za+Ar*ja+D[13],q[14]=Ue*la+Ft*za+zr*ja+D[14],q[15]=Ge*la+$t*za+Kr*ja+D[15]),q},e.K=function(q,D,Y){var pe=Y[0],Ce=Y[1],Ue=Y[2];return q[0]=D[0]*pe,q[1]=D[1]*pe,q[2]=D[2]*pe,q[3]=D[3]*pe,q[4]=D[4]*Ce,q[5]=D[5]*Ce,q[6]=D[6]*Ce,q[7]=D[7]*Ce,q[8]=D[8]*Ue,q[9]=D[9]*Ue,q[10]=D[10]*Ue,q[11]=D[11]*Ue,q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.L=qi,e.M=function(q,D){let Y={};for(let pe=0;pe<D.length;pe++){let Ce=D[pe];Ce in q&&(Y[Ce]=q[Ce])}return Y},e.N=Gd,e.O=E0,e.P=i,e.Q=Ux,e.R=wn,e.S=Hp,e.T=ec,e.U=p,e.V=T,e.W=O,e.X=ao,e.Y=ft,e.Z=Ig,e._=t,e.a=Q,e.a$=function(q,D){var Y=q[0],pe=q[1],Ce=q[2],Ue=q[3],Ge=q[4],ut=q[5],Tt=q[6],Ft=q[7],$t=q[8],lr=q[9],Ar=q[10],zr=q[11],Kr=q[12],la=q[13],za=q[14],ja=q[15],gi=D[0],ei=D[1],hi=D[2],Ei=D[3],En=D[4],fo=D[5],ss=D[6],eo=D[7],vn=D[8],Uo=D[9],Mo=D[10],xo=D[11],Yi=D[12],Ko=D[13],bo=D[14],gs=D[15];return Math.abs(Y-gi)<=Mi*Math.max(1,Math.abs(Y),Math.abs(gi))&&Math.abs(pe-ei)<=Mi*Math.max(1,Math.abs(pe),Math.abs(ei))&&Math.abs(Ce-hi)<=Mi*Math.max(1,Math.abs(Ce),Math.abs(hi))&&Math.abs(Ue-Ei)<=Mi*Math.max(1,Math.abs(Ue),Math.abs(Ei))&&Math.abs(Ge-En)<=Mi*Math.max(1,Math.abs(Ge),Math.abs(En))&&Math.abs(ut-fo)<=Mi*Math.max(1,Math.abs(ut),Math.abs(fo))&&Math.abs(Tt-ss)<=Mi*Math.max(1,Math.abs(Tt),Math.abs(ss))&&Math.abs(Ft-eo)<=Mi*Math.max(1,Math.abs(Ft),Math.abs(eo))&&Math.abs($t-vn)<=Mi*Math.max(1,Math.abs($t),Math.abs(vn))&&Math.abs(lr-Uo)<=Mi*Math.max(1,Math.abs(lr),Math.abs(Uo))&&Math.abs(Ar-Mo)<=Mi*Math.max(1,Math.abs(Ar),Math.abs(Mo))&&Math.abs(zr-xo)<=Mi*Math.max(1,Math.abs(zr),Math.abs(xo))&&Math.abs(Kr-Yi)<=Mi*Math.max(1,Math.abs(Kr),Math.abs(Yi))&&Math.abs(la-Ko)<=Mi*Math.max(1,Math.abs(la),Math.abs(Ko))&&Math.abs(za-bo)<=Mi*Math.max(1,Math.abs(za),Math.abs(bo))&&Math.abs(ja-gs)<=Mi*Math.max(1,Math.abs(ja),Math.abs(gs))},e.a0=wt,e.a1=U1,e.a2=ge,e.a3=q=>{let D=window.document.createElement("video");return D.muted=!0,new Promise(Y=>{D.onloadstart=()=>{Y(D)};for(let pe of q){let Ce=window.document.createElement("source");J(pe)||(D.crossOrigin="Anonymous"),Ce.src=pe,D.appendChild(Ce)}})},e.a4=function(){return m++},e.a5=Ci,e.a6=um,e.a7=bc,e.a8=Dl,e.a9=j1,e.aA=function(q){if(q.type==="custom")return new O1(q);switch(q.type){case"background":return new $T(q);case"circle":return new Zi(q);case"fill":return new Gr(q);case"fill-extrusion":return new Sp(q);case"heatmap":return new os(q);case"hillshade":return new Uc(q);case"line":return new Lv(q);case"raster":return new Lg(q);case"symbol":return new Dv(q)}},e.aB=u,e.aC=function(q,D){if(!q)return[{command:"setStyle",args:[D]}];let Y=[];try{if(!Ae(q.version,D.version))return[{command:"setStyle",args:[D]}];Ae(q.center,D.center)||Y.push({command:"setCenter",args:[D.center]}),Ae(q.zoom,D.zoom)||Y.push({command:"setZoom",args:[D.zoom]}),Ae(q.bearing,D.bearing)||Y.push({command:"setBearing",args:[D.bearing]}),Ae(q.pitch,D.pitch)||Y.push({command:"setPitch",args:[D.pitch]}),Ae(q.sprite,D.sprite)||Y.push({command:"setSprite",args:[D.sprite]}),Ae(q.glyphs,D.glyphs)||Y.push({command:"setGlyphs",args:[D.glyphs]}),Ae(q.transition,D.transition)||Y.push({command:"setTransition",args:[D.transition]}),Ae(q.light,D.light)||Y.push({command:"setLight",args:[D.light]}),Ae(q.terrain,D.terrain)||Y.push({command:"setTerrain",args:[D.terrain]}),Ae(q.sky,D.sky)||Y.push({command:"setSky",args:[D.sky]}),Ae(q.projection,D.projection)||Y.push({command:"setProjection",args:[D.projection]});let pe={},Ce=[];(function(Ge,ut,Tt,Ft){let $t;for($t in ut=ut||{},Ge=Ge||{})Object.prototype.hasOwnProperty.call(Ge,$t)&&(Object.prototype.hasOwnProperty.call(ut,$t)||Ze($t,Tt,Ft));for($t in ut)Object.prototype.hasOwnProperty.call(ut,$t)&&(Object.prototype.hasOwnProperty.call(Ge,$t)?Ae(Ge[$t],ut[$t])||(Ge[$t].type==="geojson"&&ut[$t].type==="geojson"&&it(Ge,ut,$t)?Be(Tt,{command:"setGeoJSONSourceData",args:[$t,ut[$t].data]}):at($t,ut,Tt,Ft)):Ie($t,ut,Tt))})(q.sources,D.sources,Ce,pe);let Ue=[];q.layers&&q.layers.forEach(Ge=>{"source"in Ge&&pe[Ge.source]?Y.push({command:"removeLayer",args:[Ge.id]}):Ue.push(Ge)}),Y=Y.concat(Ce),function(Ge,ut,Tt){ut=ut||[];let Ft=(Ge=Ge||[]).map(lt),$t=ut.map(lt),lr=Ge.reduce(Me,{}),Ar=ut.reduce(Me,{}),zr=Ft.slice(),Kr=Object.create(null),la,za,ja,gi,ei;for(let hi=0,Ei=0;hi<Ft.length;hi++)la=Ft[hi],Object.prototype.hasOwnProperty.call(Ar,la)?Ei++:(Be(Tt,{command:"removeLayer",args:[la]}),zr.splice(zr.indexOf(la,Ei),1));for(let hi=0,Ei=0;hi<$t.length;hi++)la=$t[$t.length-1-hi],zr[zr.length-1-hi]!==la&&(Object.prototype.hasOwnProperty.call(lr,la)?(Be(Tt,{command:"removeLayer",args:[la]}),zr.splice(zr.lastIndexOf(la,zr.length-Ei),1)):Ei++,gi=zr[zr.length-hi],Be(Tt,{command:"addLayer",args:[Ar[la],gi]}),zr.splice(zr.length-hi,0,la),Kr[la]=!0);for(let hi=0;hi<$t.length;hi++)if(la=$t[hi],za=lr[la],ja=Ar[la],!Kr[la]&&!Ae(za,ja))if(Ae(za.source,ja.source)&&Ae(za["source-layer"],ja["source-layer"])&&Ae(za.type,ja.type)){for(ei in et(za.layout,ja.layout,Tt,la,null,"setLayoutProperty"),et(za.paint,ja.paint,Tt,la,null,"setPaintProperty"),Ae(za.filter,ja.filter)||Be(Tt,{command:"setFilter",args:[la,ja.filter]}),Ae(za.minzoom,ja.minzoom)&&Ae(za.maxzoom,ja.maxzoom)||Be(Tt,{command:"setLayerZoomRange",args:[la,ja.minzoom,ja.maxzoom]}),za)Object.prototype.hasOwnProperty.call(za,ei)&&ei!=="layout"&&ei!=="paint"&&ei!=="filter"&&ei!=="metadata"&&ei!=="minzoom"&&ei!=="maxzoom"&&(ei.indexOf("paint.")===0?et(za[ei],ja[ei],Tt,la,ei.slice(6),"setPaintProperty"):Ae(za[ei],ja[ei])||Be(Tt,{command:"setLayerProperty",args:[la,ei,ja[ei]]}));for(ei in ja)Object.prototype.hasOwnProperty.call(ja,ei)&&!Object.prototype.hasOwnProperty.call(za,ei)&&ei!=="layout"&&ei!=="paint"&&ei!=="filter"&&ei!=="metadata"&&ei!=="minzoom"&&ei!=="maxzoom"&&(ei.indexOf("paint.")===0?et(za[ei],ja[ei],Tt,la,ei.slice(6),"setPaintProperty"):Ae(za[ei],ja[ei])||Be(Tt,{command:"setLayerProperty",args:[la,ei,ja[ei]]}))}else Be(Tt,{command:"removeLayer",args:[la]}),gi=zr[zr.lastIndexOf(la)+1],Be(Tt,{command:"addLayer",args:[ja,gi]})}(Ue,D.layers,Y)}catch(pe){console.warn("Unable to compute style diff:",pe),Y=[{command:"setStyle",args:[D]}]}return Y},e.aD=function(q){let D=[],Y=q.id;return Y===void 0&&D.push({message:`layers.${Y}: missing required property "id"`}),q.render===void 0&&D.push({message:`layers.${Y}: missing required method "render"`}),q.renderingMode&&q.renderingMode!=="2d"&&q.renderingMode!=="3d"&&D.push({message:`layers.${Y}: property "renderingMode" must be either "2d" or "3d"`}),D},e.aE=function q(D,Y){if(Array.isArray(D)){if(!Array.isArray(Y)||D.length!==Y.length)return!1;for(let pe=0;pe<D.length;pe++)if(!q(D[pe],Y[pe]))return!1;return!0}if(typeof D=="object"&&D!==null&&Y!==null){if(typeof Y!="object"||Object.keys(D).length!==Object.keys(Y).length)return!1;for(let pe in D)if(!q(D[pe],Y[pe]))return!1;return!0}return D===Y},e.aF=b,e.aG=d,e.aH=class extends Ya{constructor(q,D){super(q,D),this.current=0}set(q){this.current!==q&&(this.current=q,this.gl.uniform1i(this.location,q))}},e.aI=Da,e.aJ=class extends Ya{constructor(q,D){super(q,D),this.current=Qi}set(q){if(q[12]!==this.current[12]||q[0]!==this.current[0])return this.current=q,void this.gl.uniformMatrix4fv(this.location,!1,q);for(let D=1;D<16;D++)if(q[D]!==this.current[D]){this.current=q,this.gl.uniformMatrix4fv(this.location,!1,q);break}}},e.aK=zi,e.aL=Ni,e.aM=Ut,e.aN=class extends Ya{constructor(q,D){super(q,D),this.current=[0,0,0]}set(q){q[0]===this.current[0]&&q[1]===this.current[1]&&q[2]===this.current[2]||(this.current=q,this.gl.uniform3f(this.location,q[0],q[1],q[2]))}},e.aO=class extends Ya{constructor(q,D){super(q,D),this.current=[0,0]}set(q){q[0]===this.current[0]&&q[1]===this.current[1]||(this.current=q,this.gl.uniform2f(this.location,q[0],q[1]))}},e.aP=function(q,D,Y,pe,Ce,Ue,Ge){var ut=1/(D-Y),Tt=1/(pe-Ce),Ft=1/(Ue-Ge);return q[0]=-2*ut,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=-2*Tt,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=2*Ft,q[11]=0,q[12]=(D+Y)*ut,q[13]=(Ce+pe)*Tt,q[14]=(Ge+Ue)*Ft,q[15]=1,q},e.aQ=bn,e.aR=class extends Pt{},e.aS=nv,e.aT=class extends nr{},e.aU=Xo,e.aV=function(q){return q<=1?1:Math.pow(2,Math.ceil(Math.log(q)/Math.LN2))},e.aW=oo,e.aX=Zo,e.aY=Re,e.aZ=class extends Ja{},e.a_=function(q,D){return q[0]===D[0]&&q[1]===D[1]&&q[2]===D[2]&&q[3]===D[3]&&q[4]===D[4]&&q[5]===D[5]&&q[6]===D[6]&&q[7]===D[7]&&q[8]===D[8]&&q[9]===D[9]&&q[10]===D[10]&&q[11]===D[11]&&q[12]===D[12]&&q[13]===D[13]&&q[14]===D[14]&&q[15]===D[15]},e.aa=function(q){let D={};if(q.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(Y,pe,Ce,Ue)=>{let Ge=Ce||Ue;return D[pe]=!Ge||Ge.toLowerCase(),""}),D["max-age"]){let Y=parseInt(D["max-age"],10);isNaN(Y)?delete D["max-age"]:D["max-age"]=Y}return D},e.ab=function(q,D){let Y=[];for(let pe in q)pe in D||Y.push(pe);return Y},e.ac=w,e.ad=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[0],Ge=D[1],ut=D[2],Tt=D[3],Ft=D[4],$t=D[5],lr=D[6],Ar=D[7];return D!==q&&(q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[0]=Ue*Ce+Ft*pe,q[1]=Ge*Ce+$t*pe,q[2]=ut*Ce+lr*pe,q[3]=Tt*Ce+Ar*pe,q[4]=Ft*Ce-Ue*pe,q[5]=$t*Ce-Ge*pe,q[6]=lr*Ce-ut*pe,q[7]=Ar*Ce-Tt*pe,q},e.ae=function(q){var D=new tn(16);return D[0]=q[0],D[1]=q[1],D[2]=q[2],D[3]=q[3],D[4]=q[4],D[5]=q[5],D[6]=q[6],D[7]=q[7],D[8]=q[8],D[9]=q[9],D[10]=q[10],D[11]=q[11],D[12]=q[12],D[13]=q[13],D[14]=q[14],D[15]=q[15],D},e.af=_o,e.ag=function(q,D){let Y=0,pe=0;if(q.kind==="constant")pe=q.layoutSize;else if(q.kind!=="source"){let{interpolationType:Ce,minZoom:Ue,maxZoom:Ge}=q,ut=Ce?w(Cn.interpolationFactor(Ce,D,Ue,Ge),0,1):0;q.kind==="camera"?pe=$n.number(q.minSize,q.maxSize,ut):Y=ut}return{uSizeT:Y,uSize:pe}},e.ai=function(q,{uSize:D,uSizeT:Y},{lowerSize:pe,upperSize:Ce}){return q.kind==="source"?pe/yd:q.kind==="composite"?$n.number(pe/yd,Ce/yd,Y):D},e.aj=R1,e.ak=function(q,D,Y,pe){let Ce=D.y-q.y,Ue=D.x-q.x,Ge=pe.y-Y.y,ut=pe.x-Y.x,Tt=Ge*Ue-ut*Ce;if(Tt===0)return null;let Ft=(ut*(q.y-Y.y)-Ge*(q.x-Y.x))/Tt;return new i(q.x+Ft*Ue,q.y+Ft*Ce)},e.al=Wx,e.am=dc,e.an=pn,e.ao=function(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return[D,Y,pe,Ce]},e.ap=Bl,e.ar=I1,e.as=function(q,D){var Y=D[0],pe=D[1],Ce=D[2],Ue=D[3],Ge=D[4],ut=D[5],Tt=D[6],Ft=D[7],$t=D[8],lr=D[9],Ar=D[10],zr=D[11],Kr=D[12],la=D[13],za=D[14],ja=D[15],gi=Y*ut-pe*Ge,ei=Y*Tt-Ce*Ge,hi=Y*Ft-Ue*Ge,Ei=pe*Tt-Ce*ut,En=pe*Ft-Ue*ut,fo=Ce*Ft-Ue*Tt,ss=$t*la-lr*Kr,eo=$t*za-Ar*Kr,vn=$t*ja-zr*Kr,Uo=lr*za-Ar*la,Mo=lr*ja-zr*la,xo=Ar*ja-zr*za,Yi=gi*xo-ei*Mo+hi*Uo+Ei*vn-En*eo+fo*ss;return Yi?(q[0]=(ut*xo-Tt*Mo+Ft*Uo)*(Yi=1/Yi),q[1]=(Ce*Mo-pe*xo-Ue*Uo)*Yi,q[2]=(la*fo-za*En+ja*Ei)*Yi,q[3]=(Ar*En-lr*fo-zr*Ei)*Yi,q[4]=(Tt*vn-Ge*xo-Ft*eo)*Yi,q[5]=(Y*xo-Ce*vn+Ue*eo)*Yi,q[6]=(za*hi-Kr*fo-ja*ei)*Yi,q[7]=($t*fo-Ar*hi+zr*ei)*Yi,q[8]=(Ge*Mo-ut*vn+Ft*ss)*Yi,q[9]=(pe*vn-Y*Mo-Ue*ss)*Yi,q[10]=(Kr*En-la*hi+ja*gi)*Yi,q[11]=(lr*hi-$t*En-zr*gi)*Yi,q[12]=(ut*eo-Ge*Uo-Tt*ss)*Yi,q[13]=(Y*Uo-pe*eo+Ce*ss)*Yi,q[14]=(la*ei-Kr*Ei-za*gi)*Yi,q[15]=($t*Ei-lr*ei+Ar*gi)*Yi,q):null},e.at=H1,e.au=A0,e.av=G1,e.aw=function(){let q={},D=ie.$version;for(let Y in ie.$root){let pe=ie.$root[Y];if(pe.required){let Ce=null;Ce=Y==="version"?D:pe.type==="array"?[]:{},Ce!=null&&(q[Y]=Ce)}}return q},e.ax=en,e.ay=G,e.az=function(q){q=q.slice();let D=Object.create(null);for(let Y=0;Y<q.length;Y++)D[q[Y].id]=q[Y];for(let Y=0;Y<q.length;Y++)"ref"in q[Y]&&(q[Y]=be(q[Y],D[q[Y].ref]));return q},e.b=F,e.b0=function(q,D){return q[0]=D[0],q[1]=D[1],q[2]=D[2],q[3]=D[3],q[4]=D[4],q[5]=D[5],q[6]=D[6],q[7]=D[7],q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.b1=function(q,D,Y){return q[0]=D[0]*Y[0],q[1]=D[1]*Y[1],q[2]=D[2]*Y[2],q[3]=D[3]*Y[3],q},e.b2=function(q,D){return q[0]*D[0]+q[1]*D[1]+q[2]*D[2]+q[3]*D[3]},e.b3=S,e.b4=jx,e.b5=k0,e.b6=function(q,D,Y,pe,Ce){var Ue,Ge=1/Math.tan(D/2);return q[0]=Ge/Y,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=Ge,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=-1,q[12]=0,q[13]=0,q[15]=0,Ce!=null&&Ce!==1/0?(q[10]=(Ce+pe)*(Ue=1/(pe-Ce)),q[14]=2*Ce*pe*Ue):(q[10]=-1,q[14]=-2*pe),q},e.b7=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[4],Ge=D[5],ut=D[6],Tt=D[7],Ft=D[8],$t=D[9],lr=D[10],Ar=D[11];return D!==q&&(q[0]=D[0],q[1]=D[1],q[2]=D[2],q[3]=D[3],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[4]=Ue*Ce+Ft*pe,q[5]=Ge*Ce+$t*pe,q[6]=ut*Ce+lr*pe,q[7]=Tt*Ce+Ar*pe,q[8]=Ft*Ce-Ue*pe,q[9]=$t*Ce-Ge*pe,q[10]=lr*Ce-ut*pe,q[11]=Ar*Ce-Tt*pe,q},e.b8=l,e.b9=_,e.bA=Lh,e.bB=function(q){return q.message===U},e.bC=kl,e.bD=js,e.ba=function(q){return q*Math.PI/180},e.bb=function(q,D){let{x:Y,y:pe}=Ig.fromLngLat(D);return!(q<0||q>25||pe<0||pe>=1||Y<0||Y>=1)},e.bc=function(q,D){return q[0]=D[0],q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=D[1],q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=D[2],q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q},e.bd=class extends Yt{},e.be=N1,e.bf=oA,e.bh=he,e.bi=function(q,D){Q.REGISTERED_PROTOCOLS[q]=D},e.bj=function(q){delete Q.REGISTERED_PROTOCOLS[q]},e.bk=function(q,D){let Y={};for(let Ce=0;Ce<q.length;Ce++){let Ue=D&&D[q[Ce].id]||Mh(q[Ce]);D&&(D[q[Ce].id]=Ue);let Ge=Y[Ue];Ge||(Ge=Y[Ue]=[]),Ge.push(q[Ce])}let pe=[];for(let Ce in Y)pe.push(Y[Ce]);return pe},e.bl=ti,e.bm=qx,e.bn=zv,e.bo=b0,e.bp=function(q){q.bucket.createArrays(),q.bucket.tilePixelRatio=ao/(512*q.bucket.overscaling),q.bucket.compareText={},q.bucket.iconsNeedLinear=!1;let D=q.bucket.layers[0],Y=D.layout,pe=D._unevaluatedLayout._values,Ce={layoutIconSize:pe["icon-size"].possiblyEvaluate(new Ts(q.bucket.zoom+1),q.canonical),layoutTextSize:pe["text-size"].possiblyEvaluate(new Ts(q.bucket.zoom+1),q.canonical),textMaxSize:pe["text-size"].possiblyEvaluate(new Ts(18))};if(q.bucket.textSizeData.kind==="composite"){let{minZoom:Ft,maxZoom:$t}=q.bucket.textSizeData;Ce.compositeTextSizes=[pe["text-size"].possiblyEvaluate(new Ts(Ft),q.canonical),pe["text-size"].possiblyEvaluate(new Ts($t),q.canonical)]}if(q.bucket.iconSizeData.kind==="composite"){let{minZoom:Ft,maxZoom:$t}=q.bucket.iconSizeData;Ce.compositeIconSizes=[pe["icon-size"].possiblyEvaluate(new Ts(Ft),q.canonical),pe["icon-size"].possiblyEvaluate(new Ts($t),q.canonical)]}let Ue=Y.get("text-line-height")*Bl,Ge=Y.get("text-rotation-alignment")!=="viewport"&&Y.get("symbol-placement")!=="point",ut=Y.get("text-keep-upright"),Tt=Y.get("text-size");for(let Ft of q.bucket.features){let $t=Y.get("text-font").evaluate(Ft,{},q.canonical).join(","),lr=Tt.evaluate(Ft,{},q.canonical),Ar=Ce.layoutTextSize.evaluate(Ft,{},q.canonical),zr=Ce.layoutIconSize.evaluate(Ft,{},q.canonical),Kr={horizontal:{},vertical:void 0},la=Ft.text,za,ja=[0,0];if(la){let hi=la.toString(),Ei=Y.get("text-letter-spacing").evaluate(Ft,{},q.canonical)*Bl,En=Wo(hi)?Ei:0,fo=Y.get("text-anchor").evaluate(Ft,{},q.canonical),ss=Qx(D,Ft,q.canonical);if(!ss){let Mo=Y.get("text-radial-offset").evaluate(Ft,{},q.canonical);ja=Mo?q1(fo,[Mo*Bl,Fv]):Y.get("text-offset").evaluate(Ft,{},q.canonical).map(xo=>xo*Bl)}let eo=Ge?"center":Y.get("text-justify").evaluate(Ft,{},q.canonical),vn=Y.get("symbol-placement")==="point"?Y.get("text-max-width").evaluate(Ft,{},q.canonical)*Bl:1/0,Uo=()=>{q.bucket.allowVerticalPlacement&&co(hi)&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,"left",En,ja,e.ah.vertical,!0,Ar,lr))};if(!Ge&&ss){let Mo=new Set;if(eo==="auto")for(let Yi=0;Yi<ss.values.length;Yi+=2)Mo.add(H1(ss.values[Yi]));else Mo.add(eo);let xo=!1;for(let Yi of Mo)if(!Kr.horizontal[Yi])if(xo)Kr.horizontal[Yi]=Kr.horizontal[0];else{let Ko=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,"center",Yi,En,ja,e.ah.horizontal,!1,Ar,lr);Ko&&(Kr.horizontal[Yi]=Ko,xo=Ko.positionedLines.length===1)}Uo()}else{eo==="auto"&&(eo=H1(fo));let Mo=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,eo,En,ja,e.ah.horizontal,!1,Ar,lr);Mo&&(Kr.horizontal[eo]=Mo),Uo(),co(hi)&&Ge&&ut&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,eo,En,ja,e.ah.vertical,!1,Ar,lr))}}let gi=!1;if(Ft.icon&&Ft.icon.name){let hi=q.imageMap[Ft.icon.name];hi&&(za=Sg(q.imagePositions[Ft.icon.name],Y.get("icon-offset").evaluate(Ft,{},q.canonical),Y.get("icon-anchor").evaluate(Ft,{},q.canonical)),gi=!!hi.sdf,q.bucket.sdfIcons===void 0?q.bucket.sdfIcons=gi:q.bucket.sdfIcons!==gi&&f("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(hi.pixelRatio!==q.bucket.pixelRatio||Y.get("icon-rotate").constantOr(1)!==0)&&(q.bucket.iconsNeedLinear=!0))}let ei=tb(Kr.horizontal)||Kr.vertical;q.bucket.iconsInText=!!ei&&ei.iconsInText,(ei||za)&&iA(q.bucket,Ft,Kr,za,q.imageMap,Ce,Ar,zr,ja,gi,q.canonical)}q.showCollisionBoxes&&q.bucket.generateCollisionDebugBuffers()},e.bq=qp,e.br=Vr,e.bs=qo,e.bt=Oa,e.bu=C1,e.bv=class{constructor(q){this._marks={start:[q.url,"start"].join("#"),end:[q.url,"end"].join("#"),measure:q.url.toString()},performance.mark(this._marks.start)}finish(){performance.mark(this._marks.end);let q=performance.getEntriesByName(this._marks.measure);return q.length===0&&(performance.measure(this._marks.measure,this._marks.start,this._marks.end),q=performance.getEntriesByName(this._marks.measure),performance.clearMarks(this._marks.start),performance.clearMarks(this._marks.end),performance.clearMeasures(this._marks.measure)),q}},e.bw=function(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(T())try{return yield O(q,D,Y,pe,Ce)}catch{}return function(Ue,Ge,ut,Tt,Ft){let $t=Ue.width,lr=Ue.height;I&&N||(I=new OffscreenCanvas($t,lr),N=I.getContext("2d",{willReadFrequently:!0})),I.width=$t,I.height=lr,N.drawImage(Ue,0,0,$t,lr);let Ar=N.getImageData(Ge,ut,Tt,Ft);return N.clearRect(0,0,$t,lr),Ar.data}(q,D,Y,pe,Ce)})},e.bx=Vx,e.by=r,e.bz=o,e.c=W,e.d=q=>t(void 0,void 0,void 0,function*(){if(q.byteLength===0)return createImageBitmap(new ImageData(1,1));let D=new Blob([new Uint8Array(q)],{type:"image/png"});try{return createImageBitmap(D)}catch(Y){throw new Error(`Could not load image because of ${Y.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),e.e=E,e.f=q=>new Promise((D,Y)=>{let pe=new Image;pe.onload=()=>{D(pe),URL.revokeObjectURL(pe.src),pe.onload=null,window.requestAnimationFrame(()=>{pe.src=B})},pe.onerror=()=>Y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let Ce=new Blob([new Uint8Array(q)],{type:"image/png"});pe.src=q.byteLength?URL.createObjectURL(Ce):B}),e.g=ue,e.h=(q,D)=>$(E(q,{type:"json"}),D),e.i=L,e.j=j,e.k=ne,e.l=(q,D)=>$(E(q,{type:"arrayBuffer"}),D),e.m=$,e.n=function(q){return new C1(q).readFields(fC,[])},e.o=rs,e.p=P1,e.q=Oe,e.r=oi,e.s=J,e.t=li,e.u=Ka,e.v=ie,e.w=f,e.x=function([q,D,Y]){return D+=90,D*=Math.PI/180,Y*=Math.PI/180,{x:q*Math.cos(D)*Math.sin(Y),y:q*Math.sin(D)*Math.sin(Y),z:q*Math.cos(Y)}},e.y=$n,e.z=Ts}),A("worker",["./shared"],function(e){"use strict";class t{constructor(Fe){this.keyCache={},Fe&&this.replace(Fe)}replace(Fe){this._layerConfigs={},this._layers={},this.update(Fe,[])}update(Fe,Ke){for(let Ee of Fe){this._layerConfigs[Ee.id]=Ee;let Ve=this._layers[Ee.id]=e.aA(Ee);Ve._featureFilter=e.a7(Ve.filter),this.keyCache[Ee.id]&&delete this.keyCache[Ee.id]}for(let Ee of Ke)delete this.keyCache[Ee],delete this._layerConfigs[Ee],delete this._layers[Ee];this.familiesBySource={};let Ne=e.bk(Object.values(this._layerConfigs),this.keyCache);for(let Ee of Ne){let Ve=Ee.map(xt=>this._layers[xt.id]),ke=Ve[0];if(ke.visibility==="none")continue;let Te=ke.source||"",Le=this.familiesBySource[Te];Le||(Le=this.familiesBySource[Te]={});let rt=ke.sourceLayer||"_geojsonTileLayer",dt=Le[rt];dt||(dt=Le[rt]=[]),dt.push(Ve)}}}class r{constructor(Fe){let Ke={},Ne=[];for(let Te in Fe){let Le=Fe[Te],rt=Ke[Te]={};for(let dt in Le){let xt=Le[+dt];if(!xt||xt.bitmap.width===0||xt.bitmap.height===0)continue;let It={x:0,y:0,w:xt.bitmap.width+2,h:xt.bitmap.height+2};Ne.push(It),rt[dt]={rect:It,metrics:xt.metrics}}}let{w:Ee,h:Ve}=e.p(Ne),ke=new e.o({width:Ee||1,height:Ve||1});for(let Te in Fe){let Le=Fe[Te];for(let rt in Le){let dt=Le[+rt];if(!dt||dt.bitmap.width===0||dt.bitmap.height===0)continue;let xt=Ke[Te][rt].rect;e.o.copy(dt.bitmap,ke,{x:0,y:0},{x:xt.x+1,y:xt.y+1},dt.bitmap)}}this.image=ke,this.positions=Ke}}e.bl("GlyphAtlas",r);class o{constructor(Fe){this.tileID=new e.S(Fe.tileID.overscaledZ,Fe.tileID.wrap,Fe.tileID.canonical.z,Fe.tileID.canonical.x,Fe.tileID.canonical.y),this.uid=Fe.uid,this.zoom=Fe.zoom,this.pixelRatio=Fe.pixelRatio,this.tileSize=Fe.tileSize,this.source=Fe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Fe.showCollisionBoxes,this.collectResourceTiming=!!Fe.collectResourceTiming,this.returnDependencies=!!Fe.returnDependencies,this.promoteId=Fe.promoteId,this.inFlightDependencies=[]}parse(Fe,Ke,Ne,Ee){return e._(this,void 0,void 0,function*(){this.status="parsing",this.data=Fe,this.collisionBoxArray=new e.a5;let Ve=new e.bm(Object.keys(Fe.layers).sort()),ke=new e.bn(this.tileID,this.promoteId);ke.bucketLayerIDs=[];let Te={},Le={featureIndex:ke,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ne},rt=Ke.familiesBySource[this.source];for(let Ga in rt){let Ma=Fe.layers[Ga];if(!Ma)continue;Ma.version===1&&e.w(`Vector tile source "${this.source}" layer "${Ga}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Ua=Ve.encode(Ga),ni=[];for(let Wt=0;Wt<Ma.length;Wt++){let zt=Ma.feature(Wt),Vt=ke.getId(zt,Ga);ni.push({feature:zt,id:Vt,index:Wt,sourceLayerIndex:Ua})}for(let Wt of rt[Ga]){let zt=Wt[0];zt.source!==this.source&&e.w(`layer.source = ${zt.source} does not equal this.source = ${this.source}`),zt.minzoom&&this.zoom<Math.floor(zt.minzoom)||zt.maxzoom&&this.zoom>=zt.maxzoom||zt.visibility!=="none"&&(a(Wt,this.zoom,Ne),(Te[zt.id]=zt.createBucket({index:ke.bucketLayerIDs.length,layers:Wt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ua,sourceID:this.source})).populate(ni,Le,this.tileID.canonical),ke.bucketLayerIDs.push(Wt.map(Vt=>Vt.id)))}}let dt=e.aF(Le.glyphDependencies,Ga=>Object.keys(Ga).map(Number));this.inFlightDependencies.forEach(Ga=>Ga?.abort()),this.inFlightDependencies=[];let xt=Promise.resolve({});if(Object.keys(dt).length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),xt=Ee.sendAsync({type:"GG",data:{stacks:dt,source:this.source,tileID:this.tileID,type:"glyphs"}},Ga)}let It=Object.keys(Le.iconDependencies),Bt=Promise.resolve({});if(It.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Bt=Ee.sendAsync({type:"GI",data:{icons:It,source:this.source,tileID:this.tileID,type:"icons"}},Ga)}let Gt=Object.keys(Le.patternDependencies),Kt=Promise.resolve({});if(Gt.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Kt=Ee.sendAsync({type:"GI",data:{icons:Gt,source:this.source,tileID:this.tileID,type:"patterns"}},Ga)}let[sr,sa,Aa]=yield Promise.all([xt,Bt,Kt]),La=new r(sr),ka=new e.bo(sa,Aa);for(let Ga in Te){let Ma=Te[Ga];Ma instanceof e.a6?(a(Ma.layers,this.zoom,Ne),e.bp({bucket:Ma,glyphMap:sr,glyphPositions:La.positions,imageMap:sa,imagePositions:ka.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Ma.hasPattern&&(Ma instanceof e.bq||Ma instanceof e.br||Ma instanceof e.bs)&&(a(Ma.layers,this.zoom,Ne),Ma.addFeatures(Le,this.tileID.canonical,ka.patternPositions))}return this.status="done",{buckets:Object.values(Te).filter(Ga=>!Ga.isEmpty()),featureIndex:ke,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:La.image,imageAtlas:ka,glyphMap:this.returnDependencies?sr:null,iconMap:this.returnDependencies?sa:null,glyphPositions:this.returnDependencies?La.positions:null}})}}function a(yt,Fe,Ke){let Ne=new e.z(Fe);for(let Ee of yt)Ee.recalculate(Ne,Ke)}class i{constructor(Fe,Ke,Ne){this.actor=Fe,this.layerIndex=Ke,this.availableImages=Ne,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield e.l(Fe.request,Ke);try{return{vectorTile:new e.bt.VectorTile(new e.bu(Ne.data)),rawData:Ne.data,cacheControl:Ne.cacheControl,expires:Ne.expires}}catch(Ee){let Ve=new Uint8Array(Ne.data),ke=`Unable to parse the tile at ${Fe.request.url}, `;throw ke+=Ve[0]===31&&Ve[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Ee.message}`,new Error(ke)}})}loadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid,Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request),Ee=new o(Fe);this.loading[Ke]=Ee;let Ve=new AbortController;Ee.abort=Ve;try{let ke=yield this.loadVectorTile(Fe,Ve);if(delete this.loading[Ke],!ke)return null;let Te=ke.rawData,Le={};ke.expires&&(Le.expires=ke.expires),ke.cacheControl&&(Le.cacheControl=ke.cacheControl);let rt={};if(Ne){let xt=Ne.finish();xt&&(rt.resourceTiming=JSON.parse(JSON.stringify(xt)))}Ee.vectorTile=ke.vectorTile;let dt=Ee.parse(ke.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Ke]=Ee,this.fetching[Ke]={rawTileData:Te,cacheControl:Le,resourceTiming:rt};try{let xt=yield dt;return e.e({rawTileData:Te.slice(0)},xt,Le,rt)}finally{delete this.fetching[Ke]}}catch(ke){throw delete this.loading[Ke],Ee.status="done",this.loaded[Ke]=Ee,ke}})}reloadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid;if(!this.loaded||!this.loaded[Ke])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ne=this.loaded[Ke];if(Ne.showCollisionBoxes=Fe.showCollisionBoxes,Ne.status==="parsing"){let Ee=yield Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor),Ve;if(this.fetching[Ke]){let{rawTileData:ke,cacheControl:Te,resourceTiming:Le}=this.fetching[Ke];delete this.fetching[Ke],Ve=e.e({rawTileData:ke.slice(0)},Ee,Te,Le)}else Ve=Ee;return Ve}if(Ne.status==="done"&&Ne.vectorTile)return Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=this.loading,Ne=Fe.uid;Ke&&Ke[Ne]&&Ke[Ne].abort&&(Ke[Ne].abort.abort(),delete Ke[Ne])})}removeTile(Fe){return e._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Fe.uid]&&delete this.loaded[Fe.uid]})}}class n{constructor(){this.loaded={}}loadTile(Fe){return e._(this,void 0,void 0,function*(){let{uid:Ke,encoding:Ne,rawImageData:Ee,redFactor:Ve,greenFactor:ke,blueFactor:Te,baseShift:Le}=Fe,rt=Ee.width+2,dt=Ee.height+2,xt=e.b(Ee)?new e.R({width:rt,height:dt},yield e.bw(Ee,-1,-1,rt,dt)):Ee,It=new e.bx(Ke,xt,Ne,Ve,ke,Te,Le);return this.loaded=this.loaded||{},this.loaded[Ke]=It,It})}removeTile(Fe){let Ke=this.loaded,Ne=Fe.uid;Ke&&Ke[Ne]&&delete Ke[Ne]}}function s(yt,Fe){if(yt.length!==0){c(yt[0],Fe);for(var Ke=1;Ke<yt.length;Ke++)c(yt[Ke],!Fe)}}function c(yt,Fe){for(var Ke=0,Ne=0,Ee=0,Ve=yt.length,ke=Ve-1;Ee<Ve;ke=Ee++){var Te=(yt[Ee][0]-yt[ke][0])*(yt[ke][1]+yt[Ee][1]),Le=Ke+Te;Ne+=Math.abs(Ke)>=Math.abs(Te)?Ke-Le+Te:Te-Le+Ke,Ke=Le}Ke+Ne>=0!=!!Fe&&yt.reverse()}var h=e.by(function yt(Fe,Ke){var Ne,Ee=Fe&&Fe.type;if(Ee==="FeatureCollection")for(Ne=0;Ne<Fe.features.length;Ne++)yt(Fe.features[Ne],Ke);else if(Ee==="GeometryCollection")for(Ne=0;Ne<Fe.geometries.length;Ne++)yt(Fe.geometries[Ne],Ke);else if(Ee==="Feature")yt(Fe.geometry,Ke);else if(Ee==="Polygon")s(Fe.coordinates,Ke);else if(Ee==="MultiPolygon")for(Ne=0;Ne<Fe.coordinates.length;Ne++)s(Fe.coordinates[Ne],Ke);return Fe});let v=e.bt.VectorTileFeature.prototype.toGeoJSON;var p={exports:{}},T=e.bz,l=e.bt.VectorTileFeature,_=w;function w(yt,Fe){this.options=Fe||{},this.features=yt,this.length=yt.length}function S(yt,Fe){this.id=typeof yt.id=="number"?yt.id:void 0,this.type=yt.type,this.rawGeometry=yt.type===1?[yt.geometry]:yt.geometry,this.properties=yt.tags,this.extent=Fe||4096}w.prototype.feature=function(yt){return new S(this.features[yt],this.options.extent)},S.prototype.loadGeometry=function(){var yt=this.rawGeometry;this.geometry=[];for(var Fe=0;Fe<yt.length;Fe++){for(var Ke=yt[Fe],Ne=[],Ee=0;Ee<Ke.length;Ee++)Ne.push(new T(Ke[Ee][0],Ke[Ee][1]));this.geometry.push(Ne)}return this.geometry},S.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var yt=this.geometry,Fe=1/0,Ke=-1/0,Ne=1/0,Ee=-1/0,Ve=0;Ve<yt.length;Ve++)for(var ke=yt[Ve],Te=0;Te<ke.length;Te++){var Le=ke[Te];Fe=Math.min(Fe,Le.x),Ke=Math.max(Ke,Le.x),Ne=Math.min(Ne,Le.y),Ee=Math.max(Ee,Le.y)}return[Fe,Ne,Ke,Ee]},S.prototype.toGeoJSON=l.prototype.toGeoJSON;var E=e.bA,m=_;function b(yt){var Fe=new E;return function(Ke,Ne){for(var Ee in Ke.layers)Ne.writeMessage(3,d,Ke.layers[Ee])}(yt,Fe),Fe.finish()}function d(yt,Fe){var Ke;Fe.writeVarintField(15,yt.version||1),Fe.writeStringField(1,yt.name||""),Fe.writeVarintField(5,yt.extent||4096);var Ne={keys:[],values:[],keycache:{},valuecache:{}};for(Ke=0;Ke<yt.length;Ke++)Ne.feature=yt.feature(Ke),Fe.writeMessage(2,u,Ne);var Ee=Ne.keys;for(Ke=0;Ke<Ee.length;Ke++)Fe.writeStringField(3,Ee[Ke]);var Ve=Ne.values;for(Ke=0;Ke<Ve.length;Ke++)Fe.writeMessage(4,z,Ve[Ke])}function u(yt,Fe){var Ke=yt.feature;Ke.id!==void 0&&Fe.writeVarintField(1,Ke.id),Fe.writeMessage(2,y,yt),Fe.writeVarintField(3,Ke.type),Fe.writeMessage(4,L,Ke)}function y(yt,Fe){var Ke=yt.feature,Ne=yt.keys,Ee=yt.values,Ve=yt.keycache,ke=yt.valuecache;for(var Te in Ke.properties){var Le=Ke.properties[Te],rt=Ve[Te];if(Le!==null){rt===void 0&&(Ne.push(Te),Ve[Te]=rt=Ne.length-1),Fe.writeVarint(rt);var dt=typeof Le;dt!=="string"&&dt!=="boolean"&&dt!=="number"&&(Le=JSON.stringify(Le));var xt=dt+":"+Le,It=ke[xt];It===void 0&&(Ee.push(Le),ke[xt]=It=Ee.length-1),Fe.writeVarint(It)}}}function f(yt,Fe){return(Fe<<3)+(7&yt)}function P(yt){return yt<<1^yt>>31}function L(yt,Fe){for(var Ke=yt.loadGeometry(),Ne=yt.type,Ee=0,Ve=0,ke=Ke.length,Te=0;Te<ke;Te++){var Le=Ke[Te],rt=1;Ne===1&&(rt=Le.length),Fe.writeVarint(f(1,rt));for(var dt=Ne===3?Le.length-1:Le.length,xt=0;xt<dt;xt++){xt===1&&Ne!==1&&Fe.writeVarint(f(2,dt-1));var It=Le[xt].x-Ee,Bt=Le[xt].y-Ve;Fe.writeVarint(P(It)),Fe.writeVarint(P(Bt)),Ee+=It,Ve+=Bt}Ne===3&&Fe.writeVarint(f(7,1))}}function z(yt,Fe){var Ke=typeof yt;Ke==="string"?Fe.writeStringField(1,yt):Ke==="boolean"?Fe.writeBooleanField(7,yt):Ke==="number"&&(yt%1!=0?Fe.writeDoubleField(3,yt):yt<0?Fe.writeSVarintField(6,yt):Fe.writeVarintField(5,yt))}p.exports=b,p.exports.fromVectorTileJs=b,p.exports.fromGeojsonVt=function(yt,Fe){Fe=Fe||{};var Ke={};for(var Ne in yt)Ke[Ne]=new m(yt[Ne].features,Fe),Ke[Ne].name=Ne,Ke[Ne].version=Fe.version,Ke[Ne].extent=Fe.extent;return b({layers:Ke})},p.exports.GeoJSONWrapper=m;var F=e.by(p.exports);let B={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:yt=>yt},O=Math.fround||(I=new Float32Array(1),yt=>(I[0]=+yt,I[0]));var I;let N=3,U=5,W=6;class Q{constructor(Fe){this.options=Object.assign(Object.create(B),Fe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Fe){let{log:Ke,minZoom:Ne,maxZoom:Ee}=this.options;Ke&&console.time("total time");let Ve=`prepare ${Fe.length} points`;Ke&&console.time(Ve),this.points=Fe;let ke=[];for(let Le=0;Le<Fe.length;Le++){let rt=Fe[Le];if(!rt.geometry)continue;let[dt,xt]=rt.geometry.coordinates,It=O(he(dt)),Bt=O(G(xt));ke.push(It,Bt,1/0,Le,-1,1),this.options.reduce&&ke.push(0)}let Te=this.trees[Ee+1]=this._createTree(ke);Ke&&console.timeEnd(Ve);for(let Le=Ee;Le>=Ne;Le--){let rt=+Date.now();Te=this.trees[Le]=this._createTree(this._cluster(Te,Le)),Ke&&console.log("z%d: %d clusters in %dms",Le,Te.numItems,+Date.now()-rt)}return Ke&&console.timeEnd("total time"),this}getClusters(Fe,Ke){let Ne=((Fe[0]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,Fe[1])),Ve=Fe[2]===180?180:((Fe[2]+180)%360+360)%360-180,ke=Math.max(-90,Math.min(90,Fe[3]));if(Fe[2]-Fe[0]>=360)Ne=-180,Ve=180;else if(Ne>Ve){let xt=this.getClusters([Ne,Ee,180,ke],Ke),It=this.getClusters([-180,Ee,Ve,ke],Ke);return xt.concat(It)}let Te=this.trees[this._limitZoom(Ke)],Le=Te.range(he(Ne),G(ke),he(Ve),G(Ee)),rt=Te.data,dt=[];for(let xt of Le){let It=this.stride*xt;dt.push(rt[It+U]>1?ue(rt,It,this.clusterProps):this.points[rt[It+N]])}return dt}getChildren(Fe){let Ke=this._getOriginId(Fe),Ne=this._getOriginZoom(Fe),Ee="No cluster with the specified id.",Ve=this.trees[Ne];if(!Ve)throw new Error(Ee);let ke=Ve.data;if(Ke*this.stride>=ke.length)throw new Error(Ee);let Te=this.options.radius/(this.options.extent*Math.pow(2,Ne-1)),Le=Ve.within(ke[Ke*this.stride],ke[Ke*this.stride+1],Te),rt=[];for(let dt of Le){let xt=dt*this.stride;ke[xt+4]===Fe&&rt.push(ke[xt+U]>1?ue(ke,xt,this.clusterProps):this.points[ke[xt+N]])}if(rt.length===0)throw new Error(Ee);return rt}getLeaves(Fe,Ke,Ne){let Ee=[];return this._appendLeaves(Ee,Fe,Ke=Ke||10,Ne=Ne||0,0),Ee}getTile(Fe,Ke,Ne){let Ee=this.trees[this._limitZoom(Fe)],Ve=Math.pow(2,Fe),{extent:ke,radius:Te}=this.options,Le=Te/ke,rt=(Ne-Le)/Ve,dt=(Ne+1+Le)/Ve,xt={features:[]};return this._addTileFeatures(Ee.range((Ke-Le)/Ve,rt,(Ke+1+Le)/Ve,dt),Ee.data,Ke,Ne,Ve,xt),Ke===0&&this._addTileFeatures(Ee.range(1-Le/Ve,rt,1,dt),Ee.data,Ve,Ne,Ve,xt),Ke===Ve-1&&this._addTileFeatures(Ee.range(0,rt,Le/Ve,dt),Ee.data,-1,Ne,Ve,xt),xt.features.length?xt:null}getClusterExpansionZoom(Fe){let Ke=this._getOriginZoom(Fe)-1;for(;Ke<=this.options.maxZoom;){let Ne=this.getChildren(Fe);if(Ke++,Ne.length!==1)break;Fe=Ne[0].properties.cluster_id}return Ke}_appendLeaves(Fe,Ke,Ne,Ee,Ve){let ke=this.getChildren(Ke);for(let Te of ke){let Le=Te.properties;if(Le&&Le.cluster?Ve+Le.point_count<=Ee?Ve+=Le.point_count:Ve=this._appendLeaves(Fe,Le.cluster_id,Ne,Ee,Ve):Ve<Ee?Ve++:Fe.push(Te),Fe.length===Ne)break}return Ve}_createTree(Fe){let Ke=new e.av(Fe.length/this.stride|0,this.options.nodeSize,Float32Array);for(let Ne=0;Ne<Fe.length;Ne+=this.stride)Ke.add(Fe[Ne],Fe[Ne+1]);return Ke.finish(),Ke.data=Fe,Ke}_addTileFeatures(Fe,Ke,Ne,Ee,Ve,ke){for(let Te of Fe){let Le=Te*this.stride,rt=Ke[Le+U]>1,dt,xt,It;if(rt)dt=se(Ke,Le,this.clusterProps),xt=Ke[Le],It=Ke[Le+1];else{let Kt=this.points[Ke[Le+N]];dt=Kt.properties;let[sr,sa]=Kt.geometry.coordinates;xt=he(sr),It=G(sa)}let Bt={type:1,geometry:[[Math.round(this.options.extent*(xt*Ve-Ne)),Math.round(this.options.extent*(It*Ve-Ee))]],tags:dt},Gt;Gt=rt||this.options.generateId?Ke[Le+N]:this.points[Ke[Le+N]].id,Gt!==void 0&&(Bt.id=Gt),ke.features.push(Bt)}}_limitZoom(Fe){return Math.max(this.options.minZoom,Math.min(Math.floor(+Fe),this.options.maxZoom+1))}_cluster(Fe,Ke){let{radius:Ne,extent:Ee,reduce:Ve,minPoints:ke}=this.options,Te=Ne/(Ee*Math.pow(2,Ke)),Le=Fe.data,rt=[],dt=this.stride;for(let xt=0;xt<Le.length;xt+=dt){if(Le[xt+2]<=Ke)continue;Le[xt+2]=Ke;let It=Le[xt],Bt=Le[xt+1],Gt=Fe.within(Le[xt],Le[xt+1],Te),Kt=Le[xt+U],sr=Kt;for(let sa of Gt){let Aa=sa*dt;Le[Aa+2]>Ke&&(sr+=Le[Aa+U])}if(sr>Kt&&sr>=ke){let sa,Aa=It*Kt,La=Bt*Kt,ka=-1,Ga=((xt/dt|0)<<5)+(Ke+1)+this.points.length;for(let Ma of Gt){let Ua=Ma*dt;if(Le[Ua+2]<=Ke)continue;Le[Ua+2]=Ke;let ni=Le[Ua+U];Aa+=Le[Ua]*ni,La+=Le[Ua+1]*ni,Le[Ua+4]=Ga,Ve&&(sa||(sa=this._map(Le,xt,!0),ka=this.clusterProps.length,this.clusterProps.push(sa)),Ve(sa,this._map(Le,Ua)))}Le[xt+4]=Ga,rt.push(Aa/sr,La/sr,1/0,Ga,-1,sr),Ve&&rt.push(ka)}else{for(let sa=0;sa<dt;sa++)rt.push(Le[xt+sa]);if(sr>1)for(let sa of Gt){let Aa=sa*dt;if(!(Le[Aa+2]<=Ke)){Le[Aa+2]=Ke;for(let La=0;La<dt;La++)rt.push(Le[Aa+La])}}}}return rt}_getOriginId(Fe){return Fe-this.points.length>>5}_getOriginZoom(Fe){return(Fe-this.points.length)%32}_map(Fe,Ke,Ne){if(Fe[Ke+U]>1){let ke=this.clusterProps[Fe[Ke+W]];return Ne?Object.assign({},ke):ke}let Ee=this.points[Fe[Ke+N]].properties,Ve=this.options.map(Ee);return Ne&&Ve===Ee?Object.assign({},Ve):Ve}}function ue(yt,Fe,Ke){return{type:"Feature",id:yt[Fe+N],properties:se(yt,Fe,Ke),geometry:{type:"Point",coordinates:[(Ne=yt[Fe],360*(Ne-.5)),$(yt[Fe+1])]}};var Ne}function se(yt,Fe,Ke){let Ne=yt[Fe+U],Ee=Ne>=1e4?`${Math.round(Ne/1e3)}k`:Ne>=1e3?Math.round(Ne/100)/10+"k":Ne,Ve=yt[Fe+W],ke=Ve===-1?{}:Object.assign({},Ke[Ve]);return Object.assign(ke,{cluster:!0,cluster_id:yt[Fe+N],point_count:Ne,point_count_abbreviated:Ee})}function he(yt){return yt/360+.5}function G(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function $(yt){let Fe=(180-360*yt)*Math.PI/180;return 360*Math.atan(Math.exp(Fe))/Math.PI-90}function J(yt,Fe,Ke,Ne){let Ee=Ne,Ve=Fe+(Ke-Fe>>1),ke,Te=Ke-Fe,Le=yt[Fe],rt=yt[Fe+1],dt=yt[Ke],xt=yt[Ke+1];for(let It=Fe+3;It<Ke;It+=3){let Bt=Z(yt[It],yt[It+1],Le,rt,dt,xt);if(Bt>Ee)ke=It,Ee=Bt;else if(Bt===Ee){let Gt=Math.abs(It-Ve);Gt<Te&&(ke=It,Te=Gt)}}Ee>Ne&&(ke-Fe>3&&J(yt,Fe,ke,Ne),yt[ke+2]=Ee,Ke-ke>3&&J(yt,ke,Ke,Ne))}function Z(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ee-Ke,Te=Ve-Ne;if(ke!==0||Te!==0){let Le=((yt-Ke)*ke+(Fe-Ne)*Te)/(ke*ke+Te*Te);Le>1?(Ke=Ee,Ne=Ve):Le>0&&(Ke+=ke*Le,Ne+=Te*Le)}return ke=yt-Ke,Te=Fe-Ne,ke*ke+Te*Te}function re(yt,Fe,Ke,Ne){let Ee={id:yt??null,type:Fe,geometry:Ke,tags:Ne,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Fe==="Point"||Fe==="MultiPoint"||Fe==="LineString")ne(Ee,Ke);else if(Fe==="Polygon")ne(Ee,Ke[0]);else if(Fe==="MultiLineString")for(let Ve of Ke)ne(Ee,Ve);else if(Fe==="MultiPolygon")for(let Ve of Ke)ne(Ee,Ve[0]);return Ee}function ne(yt,Fe){for(let Ke=0;Ke<Fe.length;Ke+=3)yt.minX=Math.min(yt.minX,Fe[Ke]),yt.minY=Math.min(yt.minY,Fe[Ke+1]),yt.maxX=Math.max(yt.maxX,Fe[Ke]),yt.maxY=Math.max(yt.maxY,Fe[Ke+1])}function j(yt,Fe,Ke,Ne){if(!Fe.geometry)return;let Ee=Fe.geometry.coordinates;if(Ee&&Ee.length===0)return;let Ve=Fe.geometry.type,ke=Math.pow(Ke.tolerance/((1<<Ke.maxZoom)*Ke.extent),2),Te=[],Le=Fe.id;if(Ke.promoteId?Le=Fe.properties[Ke.promoteId]:Ke.generateId&&(Le=Ne||0),Ve==="Point")ee(Ee,Te);else if(Ve==="MultiPoint")for(let rt of Ee)ee(rt,Te);else if(Ve==="LineString")ie(Ee,Te,ke,!1);else if(Ve==="MultiLineString"){if(Ke.lineMetrics){for(let rt of Ee)Te=[],ie(rt,Te,ke,!1),yt.push(re(Le,"LineString",Te,Fe.properties));return}fe(Ee,Te,ke,!1)}else if(Ve==="Polygon")fe(Ee,Te,ke,!0);else{if(Ve!=="MultiPolygon"){if(Ve==="GeometryCollection"){for(let rt of Fe.geometry.geometries)j(yt,{id:Le,geometry:rt,properties:Fe.properties},Ke,Ne);return}throw new Error("Input data is not a valid GeoJSON object.")}for(let rt of Ee){let dt=[];fe(rt,dt,ke,!0),Te.push(dt)}}yt.push(re(Le,Ve,Te,Fe.properties))}function ee(yt,Fe){Fe.push(be(yt[0]),Ae(yt[1]),0)}function ie(yt,Fe,Ke,Ne){let Ee,Ve,ke=0;for(let Le=0;Le<yt.length;Le++){let rt=be(yt[Le][0]),dt=Ae(yt[Le][1]);Fe.push(rt,dt,0),Le>0&&(ke+=Ne?(Ee*dt-rt*Ve)/2:Math.sqrt(Math.pow(rt-Ee,2)+Math.pow(dt-Ve,2))),Ee=rt,Ve=dt}let Te=Fe.length-3;Fe[2]=1,J(Fe,0,Te,Ke),Fe[Te+2]=1,Fe.size=Math.abs(ke),Fe.start=0,Fe.end=Fe.size}function fe(yt,Fe,Ke,Ne){for(let Ee=0;Ee<yt.length;Ee++){let Ve=[];ie(yt[Ee],Ve,Ke,Ne),Fe.push(Ve)}}function be(yt){return yt/360+.5}function Ae(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function Be(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){if(Ne/=Fe,Ve>=(Ke/=Fe)&&ke<Ne)return yt;if(ke<Ke||Ve>=Ne)return null;let Le=[];for(let rt of yt){let dt=rt.geometry,xt=rt.type,It=Ee===0?rt.minX:rt.minY,Bt=Ee===0?rt.maxX:rt.maxY;if(It>=Ke&&Bt<Ne){Le.push(rt);continue}if(Bt<Ke||It>=Ne)continue;let Gt=[];if(xt==="Point"||xt==="MultiPoint")Ie(dt,Gt,Ke,Ne,Ee);else if(xt==="LineString")Ze(dt,Gt,Ke,Ne,Ee,!1,Te.lineMetrics);else if(xt==="MultiLineString")it(dt,Gt,Ke,Ne,Ee,!1);else if(xt==="Polygon")it(dt,Gt,Ke,Ne,Ee,!0);else if(xt==="MultiPolygon")for(let Kt of dt){let sr=[];it(Kt,sr,Ke,Ne,Ee,!0),sr.length&&Gt.push(sr)}if(Gt.length){if(Te.lineMetrics&&xt==="LineString"){for(let Kt of Gt)Le.push(re(rt.id,xt,Kt,rt.tags));continue}xt!=="LineString"&&xt!=="MultiLineString"||(Gt.length===1?(xt="LineString",Gt=Gt[0]):xt="MultiLineString"),xt!=="Point"&&xt!=="MultiPoint"||(xt=Gt.length===3?"Point":"MultiPoint"),Le.push(re(rt.id,xt,Gt,rt.tags))}}return Le.length?Le:null}function Ie(yt,Fe,Ke,Ne,Ee){for(let Ve=0;Ve<yt.length;Ve+=3){let ke=yt[Ve+Ee];ke>=Ke&&ke<=Ne&&et(Fe,yt[Ve],yt[Ve+1],yt[Ve+2])}}function Ze(yt,Fe,Ke,Ne,Ee,Ve,ke){let Te=at(yt),Le=Ee===0?lt:Me,rt,dt,xt=yt.start;for(let sr=0;sr<yt.length-3;sr+=3){let sa=yt[sr],Aa=yt[sr+1],La=yt[sr+2],ka=yt[sr+3],Ga=yt[sr+4],Ma=Ee===0?sa:Aa,Ua=Ee===0?ka:Ga,ni=!1;ke&&(rt=Math.sqrt(Math.pow(sa-ka,2)+Math.pow(Aa-Ga,2))),Ma<Ke?Ua>Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ke&&(Te.start=xt+rt*dt)):Ma>Ne?Ua<Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ke&&(Te.start=xt+rt*dt)):et(Te,sa,Aa,La),Ua<Ke&&Ma>=Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ni=!0),Ua>Ne&&Ma<=Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ni=!0),!Ve&&ni&&(ke&&(Te.end=xt+rt*dt),Fe.push(Te),Te=at(yt)),ke&&(xt+=rt)}let It=yt.length-3,Bt=yt[It],Gt=yt[It+1],Kt=Ee===0?Bt:Gt;Kt>=Ke&&Kt<=Ne&&et(Te,Bt,Gt,yt[It+2]),It=Te.length-3,Ve&&It>=3&&(Te[It]!==Te[0]||Te[It+1]!==Te[1])&&et(Te,Te[0],Te[1],Te[2]),Te.length&&Fe.push(Te)}function at(yt){let Fe=[];return Fe.size=yt.size,Fe.start=yt.start,Fe.end=yt.end,Fe}function it(yt,Fe,Ke,Ne,Ee,Ve){for(let ke of yt)Ze(ke,Fe,Ke,Ne,Ee,Ve,!1)}function et(yt,Fe,Ke,Ne){yt.push(Fe,Ke,Ne)}function lt(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Fe)/(Ne-Fe);return et(yt,Ve,Ke+(Ee-Ke)*ke,1),ke}function Me(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Ke)/(Ee-Ke);return et(yt,Fe+(Ne-Fe)*ke,Ve,1),ke}function ge(yt,Fe){let Ke=[];for(let Ne=0;Ne<yt.length;Ne++){let Ee=yt[Ne],Ve=Ee.type,ke;if(Ve==="Point"||Ve==="MultiPoint"||Ve==="LineString")ke=ce(Ee.geometry,Fe);else if(Ve==="MultiLineString"||Ve==="Polygon"){ke=[];for(let Te of Ee.geometry)ke.push(ce(Te,Fe))}else if(Ve==="MultiPolygon"){ke=[];for(let Te of Ee.geometry){let Le=[];for(let rt of Te)Le.push(ce(rt,Fe));ke.push(Le)}}Ke.push(re(Ee.id,Ve,ke,Ee.tags))}return Ke}function ce(yt,Fe){let Ke=[];Ke.size=yt.size,yt.start!==void 0&&(Ke.start=yt.start,Ke.end=yt.end);for(let Ne=0;Ne<yt.length;Ne+=3)Ke.push(yt[Ne]+Fe,yt[Ne+1],yt[Ne+2]);return Ke}function ze(yt,Fe){if(yt.transformed)return yt;let Ke=1<<yt.z,Ne=yt.x,Ee=yt.y;for(let Ve of yt.features){let ke=Ve.geometry,Te=Ve.type;if(Ve.geometry=[],Te===1)for(let Le=0;Le<ke.length;Le+=2)Ve.geometry.push(tt(ke[Le],ke[Le+1],Fe,Ke,Ne,Ee));else for(let Le=0;Le<ke.length;Le++){let rt=[];for(let dt=0;dt<ke[Le].length;dt+=2)rt.push(tt(ke[Le][dt],ke[Le][dt+1],Fe,Ke,Ne,Ee));Ve.geometry.push(rt)}}return yt.transformed=!0,yt}function tt(yt,Fe,Ke,Ne,Ee,Ve){return[Math.round(Ke*(yt*Ne-Ee)),Math.round(Ke*(Fe*Ne-Ve))]}function nt(yt,Fe,Ke,Ne,Ee){let Ve=Fe===Ee.maxZoom?0:Ee.tolerance/((1<<Fe)*Ee.extent),ke={features:[],numPoints:0,numSimplified:0,numFeatures:yt.length,source:null,x:Ke,y:Ne,z:Fe,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0};for(let Te of yt)Qe(ke,Te,Ve,Ee);return ke}function Qe(yt,Fe,Ke,Ne){let Ee=Fe.geometry,Ve=Fe.type,ke=[];if(yt.minX=Math.min(yt.minX,Fe.minX),yt.minY=Math.min(yt.minY,Fe.minY),yt.maxX=Math.max(yt.maxX,Fe.maxX),yt.maxY=Math.max(yt.maxY,Fe.maxY),Ve==="Point"||Ve==="MultiPoint")for(let Te=0;Te<Ee.length;Te+=3)ke.push(Ee[Te],Ee[Te+1]),yt.numPoints++,yt.numSimplified++;else if(Ve==="LineString")Ct(ke,Ee,yt,Ke,!1,!1);else if(Ve==="MultiLineString"||Ve==="Polygon")for(let Te=0;Te<Ee.length;Te++)Ct(ke,Ee[Te],yt,Ke,Ve==="Polygon",Te===0);else if(Ve==="MultiPolygon")for(let Te=0;Te<Ee.length;Te++){let Le=Ee[Te];for(let rt=0;rt<Le.length;rt++)Ct(ke,Le[rt],yt,Ke,!0,rt===0)}if(ke.length){let Te=Fe.tags||null;if(Ve==="LineString"&&Ne.lineMetrics){Te={};for(let rt in Fe.tags)Te[rt]=Fe.tags[rt];Te.mapbox_clip_start=Ee.start/Ee.size,Te.mapbox_clip_end=Ee.end/Ee.size}let Le={geometry:ke,type:Ve==="Polygon"||Ve==="MultiPolygon"?3:Ve==="LineString"||Ve==="MultiLineString"?2:1,tags:Te};Fe.id!==null&&(Le.id=Fe.id),yt.features.push(Le)}}function Ct(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ne*Ne;if(Ne>0&&Fe.size<(Ee?ke:Ne))return void(Ke.numPoints+=Fe.length/3);let Te=[];for(let Le=0;Le<Fe.length;Le+=3)(Ne===0||Fe[Le+2]>ke)&&(Ke.numSimplified++,Te.push(Fe[Le],Fe[Le+1])),Ke.numPoints++;Ee&&function(Le,rt){let dt=0;for(let xt=0,It=Le.length,Bt=It-2;xt<It;Bt=xt,xt+=2)dt+=(Le[xt]-Le[Bt])*(Le[xt+1]+Le[Bt+1]);if(dt>0===rt)for(let xt=0,It=Le.length;xt<It/2;xt+=2){let Bt=Le[xt],Gt=Le[xt+1];Le[xt]=Le[It-2-xt],Le[xt+1]=Le[It-1-xt],Le[It-2-xt]=Bt,Le[It-1-xt]=Gt}}(Te,Ve),yt.push(Te)}let St={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class Ot{constructor(Fe,Ke){let Ne=(Ke=this.options=function(Ve,ke){for(let Te in ke)Ve[Te]=ke[Te];return Ve}(Object.create(St),Ke)).debug;if(Ne&&console.time("preprocess data"),Ke.maxZoom<0||Ke.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Ke.promoteId&&Ke.generateId)throw new Error("promoteId and generateId cannot be used together.");let Ee=function(Ve,ke){let Te=[];if(Ve.type==="FeatureCollection")for(let Le=0;Le<Ve.features.length;Le++)j(Te,Ve.features[Le],ke,Le);else j(Te,Ve.type==="Feature"?Ve:{geometry:Ve},ke);return Te}(Fe,Ke);this.tiles={},this.tileCoords=[],Ne&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Ke.indexMaxZoom,Ke.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ee=function(Ve,ke){let Te=ke.buffer/ke.extent,Le=Ve,rt=Be(Ve,1,-1-Te,Te,0,-1,2,ke),dt=Be(Ve,1,1-Te,2+Te,0,-1,2,ke);return(rt||dt)&&(Le=Be(Ve,1,-Te,1+Te,0,-1,2,ke)||[],rt&&(Le=ge(rt,1).concat(Le)),dt&&(Le=Le.concat(ge(dt,-1)))),Le}(Ee,Ke),Ee.length&&this.splitTile(Ee,0,0,0),Ne&&(Ee.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}splitTile(Fe,Ke,Ne,Ee,Ve,ke,Te){let Le=[Fe,Ke,Ne,Ee],rt=this.options,dt=rt.debug;for(;Le.length;){Ee=Le.pop(),Ne=Le.pop(),Ke=Le.pop(),Fe=Le.pop();let xt=1<<Ke,It=jt(Ke,Ne,Ee),Bt=this.tiles[It];if(!Bt&&(dt>1&&console.time("creation"),Bt=this.tiles[It]=nt(Fe,Ke,Ne,Ee,rt),this.tileCoords.push({z:Ke,x:Ne,y:Ee}),dt)){dt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Ke,Ne,Ee,Bt.numFeatures,Bt.numPoints,Bt.numSimplified),console.timeEnd("creation"));let ni=`z${Ke}`;this.stats[ni]=(this.stats[ni]||0)+1,this.total++}if(Bt.source=Fe,Ve==null){if(Ke===rt.indexMaxZoom||Bt.numPoints<=rt.indexMaxPoints)continue}else{if(Ke===rt.maxZoom||Ke===Ve)continue;if(Ve!=null){let ni=Ve-Ke;if(Ne!==ke>>ni||Ee!==Te>>ni)continue}}if(Bt.source=null,Fe.length===0)continue;dt>1&&console.time("clipping");let Gt=.5*rt.buffer/rt.extent,Kt=.5-Gt,sr=.5+Gt,sa=1+Gt,Aa=null,La=null,ka=null,Ga=null,Ma=Be(Fe,xt,Ne-Gt,Ne+sr,0,Bt.minX,Bt.maxX,rt),Ua=Be(Fe,xt,Ne+Kt,Ne+sa,0,Bt.minX,Bt.maxX,rt);Fe=null,Ma&&(Aa=Be(Ma,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),La=Be(Ma,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ma=null),Ua&&(ka=Be(Ua,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),Ga=Be(Ua,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ua=null),dt>1&&console.timeEnd("clipping"),Le.push(Aa||[],Ke+1,2*Ne,2*Ee),Le.push(La||[],Ke+1,2*Ne,2*Ee+1),Le.push(ka||[],Ke+1,2*Ne+1,2*Ee),Le.push(Ga||[],Ke+1,2*Ne+1,2*Ee+1)}}getTile(Fe,Ke,Ne){Fe=+Fe,Ke=+Ke,Ne=+Ne;let Ee=this.options,{extent:Ve,debug:ke}=Ee;if(Fe<0||Fe>24)return null;let Te=1<<Fe,Le=jt(Fe,Ke=Ke+Te&Te-1,Ne);if(this.tiles[Le])return ze(this.tiles[Le],Ve);ke>1&&console.log("drilling down to z%d-%d-%d",Fe,Ke,Ne);let rt,dt=Fe,xt=Ke,It=Ne;for(;!rt&&dt>0;)dt--,xt>>=1,It>>=1,rt=this.tiles[jt(dt,xt,It)];return rt&&rt.source?(ke>1&&(console.log("found parent tile z%d-%d-%d",dt,xt,It),console.time("drilling down")),this.splitTile(rt.source,dt,xt,It,Fe,Ke,Ne),ke>1&&console.timeEnd("drilling down"),this.tiles[Le]?ze(this.tiles[Le],Ve):null):null}}function jt(yt,Fe,Ke){return 32*((1<<yt)*Ke+Fe)+yt}function ur(yt,Fe){return Fe?yt.properties[Fe]:yt.id}function ar(yt,Fe){if(yt==null)return!0;if(yt.type==="Feature")return ur(yt,Fe)!=null;if(yt.type==="FeatureCollection"){let Ke=new Set;for(let Ne of yt.features){let Ee=ur(Ne,Fe);if(Ee==null||Ke.has(Ee))return!1;Ke.add(Ee)}return!0}return!1}function Cr(yt,Fe){let Ke=new Map;if(yt!=null)if(yt.type==="Feature")Ke.set(ur(yt,Fe),yt);else for(let Ne of yt.features)Ke.set(ur(Ne,Fe),Ne);return Ke}class vr extends i{constructor(){super(...arguments),this._dataUpdateable=new Map}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=Fe.tileID.canonical;if(!this._geoJSONIndex)throw new Error("Unable to parse the data into a cluster or geojson");let Ee=this._geoJSONIndex.getTile(Ne.z,Ne.x,Ne.y);if(!Ee)return null;let Ve=new class{constructor(Te){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.X,this.length=Te.length,this._features=Te}feature(Te){return new class{constructor(Le){this._feature=Le,this.extent=e.X,this.type=Le.type,this.properties=Le.tags,"id"in Le&&!isNaN(Le.id)&&(this.id=parseInt(Le.id,10))}loadGeometry(){if(this._feature.type===1){let Le=[];for(let rt of this._feature.geometry)Le.push([new e.P(rt[0],rt[1])]);return Le}{let Le=[];for(let rt of this._feature.geometry){let dt=[];for(let xt of rt)dt.push(new e.P(xt[0],xt[1]));Le.push(dt)}return Le}}toGeoJSON(Le,rt,dt){return v.call(this,Le,rt,dt)}}(this._features[Te])}}(Ee.features),ke=F(Ve);return ke.byteOffset===0&&ke.byteLength===ke.buffer.byteLength||(ke=new Uint8Array(ke)),{vectorTile:Ve,rawData:ke.buffer}})}loadData(Fe){return e._(this,void 0,void 0,function*(){var Ke;(Ke=this._pendingRequest)===null||Ke===void 0||Ke.abort();let Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request);this._pendingRequest=new AbortController;try{this._pendingData=this.loadAndProcessGeoJSON(Fe,this._pendingRequest),this._geoJSONIndex=Fe.cluster?new Q(function({superclusterOptions:ke,clusterProperties:Te}){if(!Te||!ke)return ke;let Le={},rt={},dt={accumulated:null,zoom:0},xt={properties:null},It=Object.keys(Te);for(let Bt of It){let[Gt,Kt]=Te[Bt],sr=e.bC(Kt),sa=e.bC(typeof Gt=="string"?[Gt,["accumulated"],["get",Bt]]:Gt);Le[Bt]=sr.value,rt[Bt]=sa.value}return ke.map=Bt=>{xt.properties=Bt;let Gt={};for(let Kt of It)Gt[Kt]=Le[Kt].evaluate(dt,xt);return Gt},ke.reduce=(Bt,Gt)=>{xt.properties=Gt;for(let Kt of It)dt.accumulated=Bt[Kt],Bt[Kt]=rt[Kt].evaluate(dt,xt)},ke}(Fe)).load((yield this._pendingData).features):(Ee=yield this._pendingData,new Ot(Ee,Fe.geojsonVtOptions)),this.loaded={};let Ve={};if(Ne){let ke=Ne.finish();ke&&(Ve.resourceTiming={},Ve.resourceTiming[Fe.source]=JSON.parse(JSON.stringify(ke)))}return Ve}catch(Ve){if(delete this._pendingRequest,e.bB(Ve))return{abandoned:!0};throw Ve}var Ee})}getData(){return e._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Fe){let Ke=this.loaded;return Ke&&Ke[Fe.uid]?super.reloadTile(Fe):this.loadTile(Fe)}loadAndProcessGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield this.loadGeoJSON(Fe,Ke);if(delete this._pendingRequest,typeof Ne!="object")throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(h(Ne,!0),Fe.filter){let Ee=e.bC(Fe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Ee.result==="error")throw new Error(Ee.value.map(ke=>`${ke.key}: ${ke.message}`).join(", "));Ne={type:"FeatureCollection",features:Ne.features.filter(ke=>Ee.value.evaluate({zoom:0},ke))}}return Ne})}loadGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let{promoteId:Ne}=Fe;if(Fe.request){let Ee=yield e.h(Fe.request,Ke);return this._dataUpdateable=ar(Ee.data,Ne)?Cr(Ee.data,Ne):void 0,Ee.data}if(typeof Fe.data=="string")try{let Ee=JSON.parse(Fe.data);return this._dataUpdateable=ar(Ee,Ne)?Cr(Ee,Ne):void 0,Ee}catch{throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`)}if(!Fe.dataDiff)throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Fe.source}`);return function(Ee,Ve,ke){var Te,Le,rt,dt;if(Ve.removeAll&&Ee.clear(),Ve.remove)for(let xt of Ve.remove)Ee.delete(xt);if(Ve.add)for(let xt of Ve.add){let It=ur(xt,ke);It!=null&&Ee.set(It,xt)}if(Ve.update)for(let xt of Ve.update){let It=Ee.get(xt.id);if(It==null)continue;let Bt=!xt.removeAllProperties&&(((Te=xt.removeProperties)===null||Te===void 0?void 0:Te.length)>0||((Le=xt.addOrUpdateProperties)===null||Le===void 0?void 0:Le.length)>0);if((xt.newGeometry||xt.removeAllProperties||Bt)&&(It=Object.assign({},It),Ee.set(xt.id,It),Bt&&(It.properties=Object.assign({},It.properties))),xt.newGeometry&&(It.geometry=xt.newGeometry),xt.removeAllProperties)It.properties={};else if(((rt=xt.removeProperties)===null||rt===void 0?void 0:rt.length)>0)for(let Gt of xt.removeProperties)Object.prototype.hasOwnProperty.call(It.properties,Gt)&&delete It.properties[Gt];if(((dt=xt.addOrUpdateProperties)===null||dt===void 0?void 0:dt.length)>0)for(let{key:Gt,value:Kt}of xt.addOrUpdateProperties)It.properties[Gt]=Kt}}(this._dataUpdateable,Fe.dataDiff,Ne),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Fe){return e._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Fe){return this._geoJSONIndex.getClusterExpansionZoom(Fe.clusterId)}getClusterChildren(Fe){return this._geoJSONIndex.getChildren(Fe.clusterId)}getClusterLeaves(Fe){return this._geoJSONIndex.getLeaves(Fe.clusterId,Fe.limit,Fe.offset)}}class _r{constructor(Fe){this.self=Fe,this.actor=new e.F(Fe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Ke,Ne)=>{if(this.externalWorkerSourceTypes[Ke])throw new Error(`Worker source with name "${Ke}" already registered.`);this.externalWorkerSourceTypes[Ke]=Ne},this.self.addProtocol=e.bi,this.self.removeProtocol=e.bj,this.self.registerRTLTextPlugin=Ke=>{if(e.bD.isParsed())throw new Error("RTL text plugin already registered.");e.bD.setMethods(Ke)},this.actor.registerMessageHandler("LDT",(Ke,Ne)=>this._getDEMWorkerSource(Ke,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RDT",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Ke,Ne.source).removeTile(Ne)})),this.actor.registerMessageHandler("GCEZ",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterExpansionZoom(Ne)})),this.actor.registerMessageHandler("GCC",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterChildren(Ne)})),this.actor.registerMessageHandler("GCL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterLeaves(Ne)})),this.actor.registerMessageHandler("LD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadData(Ne)),this.actor.registerMessageHandler("GD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).getData()),this.actor.registerMessageHandler("LT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).reloadTile(Ne)),this.actor.registerMessageHandler("AT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).abortTile(Ne)),this.actor.registerMessageHandler("RMT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).removeTile(Ne)),this.actor.registerMessageHandler("RS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){if(!this.workerSources[Ke]||!this.workerSources[Ke][Ne.type]||!this.workerSources[Ke][Ne.type][Ne.source])return;let Ee=this.workerSources[Ke][Ne.type][Ne.source];delete this.workerSources[Ke][Ne.type][Ne.source],Ee.removeSource!==void 0&&Ee.removeSource(Ne)})),this.actor.registerMessageHandler("RM",Ke=>e._(this,void 0,void 0,function*(){delete this.layerIndexes[Ke],delete this.availableImages[Ke],delete this.workerSources[Ke],delete this.demWorkerSources[Ke]})),this.actor.registerMessageHandler("SR",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.referrer=Ne})),this.actor.registerMessageHandler("SRPS",(Ke,Ne)=>this._syncRTLPluginState(Ke,Ne)),this.actor.registerMessageHandler("IS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.self.importScripts(Ne)})),this.actor.registerMessageHandler("SI",(Ke,Ne)=>this._setImages(Ke,Ne)),this.actor.registerMessageHandler("UL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).update(Ne.layers,Ne.removedIds)})),this.actor.registerMessageHandler("SL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).replace(Ne)}))}_setImages(Fe,Ke){return e._(this,void 0,void 0,function*(){this.availableImages[Fe]=Ke;for(let Ne in this.workerSources[Fe]){let Ee=this.workerSources[Fe][Ne];for(let Ve in Ee)Ee[Ve].availableImages=Ke}})}_syncRTLPluginState(Fe,Ke){return e._(this,void 0,void 0,function*(){if(e.bD.isParsed())return e.bD.getState();if(Ke.pluginStatus!=="loading")return e.bD.setState(Ke),Ke;let Ne=Ke.pluginURL;if(this.self.importScripts(Ne),e.bD.isParsed()){let Ee={pluginStatus:"loaded",pluginURL:Ne};return e.bD.setState(Ee),Ee}throw e.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ne}`)})}_getAvailableImages(Fe){let Ke=this.availableImages[Fe];return Ke||(Ke=[]),Ke}_getLayerIndex(Fe){let Ke=this.layerIndexes[Fe];return Ke||(Ke=this.layerIndexes[Fe]=new t),Ke}_getWorkerSource(Fe,Ke,Ne){if(this.workerSources[Fe]||(this.workerSources[Fe]={}),this.workerSources[Fe][Ke]||(this.workerSources[Fe][Ke]={}),!this.workerSources[Fe][Ke][Ne]){let Ee={sendAsync:(Ve,ke)=>(Ve.targetMapId=Fe,this.actor.sendAsync(Ve,ke))};switch(Ke){case"vector":this.workerSources[Fe][Ke][Ne]=new i(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;case"geojson":this.workerSources[Fe][Ke][Ne]=new vr(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;default:this.workerSources[Fe][Ke][Ne]=new this.externalWorkerSourceTypes[Ke](Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe))}}return this.workerSources[Fe][Ke][Ne]}_getDEMWorkerSource(Fe,Ke){return this.demWorkerSources[Fe]||(this.demWorkerSources[Fe]={}),this.demWorkerSources[Fe][Ke]||(this.demWorkerSources[Fe][Ke]=new n),this.demWorkerSources[Fe][Ke]}}return e.i(self)&&(self.worker=new _r(self)),_r}),A("index",["exports","./shared"],function(e,t){"use strict";var r="4.7.1";let o,a,i={now:typeof performance<"u"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:Oe=>new Promise((R,ae)=>{let we=requestAnimationFrame(R);Oe.signal.addEventListener("abort",()=>{cancelAnimationFrame(we),ae(t.c())})}),getImageData(Oe,R=0){return this.getImageCanvasContext(Oe).getImageData(-R,-R,Oe.width+2*R,Oe.height+2*R)},getImageCanvasContext(Oe){let R=window.document.createElement("canvas"),ae=R.getContext("2d",{willReadFrequently:!0});if(!ae)throw new Error("failed to create canvas 2d context");return R.width=Oe.width,R.height=Oe.height,ae.drawImage(Oe,0,0,Oe.width,Oe.height),ae},resolveURL:Oe=>(o||(o=document.createElement("a")),o.href=Oe,o.href),hardwareConcurrency:typeof navigator<"u"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(a==null&&(a=matchMedia("(prefers-reduced-motion: reduce)")),a.matches)}};class n{static testProp(R){if(!n.docStyle)return R[0];for(let ae=0;ae<R.length;ae++)if(R[ae]in n.docStyle)return R[ae];return R[0]}static create(R,ae,we){let Se=window.document.createElement(R);return ae!==void 0&&(Se.className=ae),we&&we.appendChild(Se),Se}static createNS(R,ae){return window.document.createElementNS(R,ae)}static disableDrag(){n.docStyle&&n.selectProp&&(n.userSelect=n.docStyle[n.selectProp],n.docStyle[n.selectProp]="none")}static enableDrag(){n.docStyle&&n.selectProp&&(n.docStyle[n.selectProp]=n.userSelect)}static setTransform(R,ae){R.style[n.transformProp]=ae}static addEventListener(R,ae,we,Se={}){R.addEventListener(ae,we,"passive"in Se?Se:Se.capture)}static removeEventListener(R,ae,we,Se={}){R.removeEventListener(ae,we,"passive"in Se?Se:Se.capture)}static suppressClickInternal(R){R.preventDefault(),R.stopPropagation(),window.removeEventListener("click",n.suppressClickInternal,!0)}static suppressClick(){window.addEventListener("click",n.suppressClickInternal,!0),window.setTimeout(()=>{window.removeEventListener("click",n.suppressClickInternal,!0)},0)}static getScale(R){let ae=R.getBoundingClientRect();return{x:ae.width/R.offsetWidth||1,y:ae.height/R.offsetHeight||1,boundingClientRect:ae}}static getPoint(R,ae,we){let Se=ae.boundingClientRect;return new t.P((we.clientX-Se.left)/ae.x-R.clientLeft,(we.clientY-Se.top)/ae.y-R.clientTop)}static mousePos(R,ae){let we=n.getScale(R);return n.getPoint(R,we,ae)}static touchPos(R,ae){let we=[],Se=n.getScale(R);for(let De=0;De<ae.length;De++)we.push(n.getPoint(R,Se,ae[De]));return we}static mouseButton(R){return R.button}static remove(R){R.parentNode&&R.parentNode.removeChild(R)}}n.docStyle=typeof window<"u"&&window.document&&window.document.documentElement.style,n.selectProp=n.testProp(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),n.transformProp=n.testProp(["transform","WebkitTransform"]);let s={supported:!1,testSupport:function(Oe){!v&&h&&(p?T(Oe):c=Oe)}},c,h,v=!1,p=!1;function T(Oe){let R=Oe.createTexture();Oe.bindTexture(Oe.TEXTURE_2D,R);try{if(Oe.texImage2D(Oe.TEXTURE_2D,0,Oe.RGBA,Oe.RGBA,Oe.UNSIGNED_BYTE,h),Oe.isContextLost())return;s.supported=!0}catch{}Oe.deleteTexture(R),v=!0}var l;typeof document<"u"&&(h=document.createElement("img"),h.onload=()=>{c&&T(c),c=null,p=!0},h.onerror=()=>{v=!0,c=null},h.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(Oe){let R,ae,we,Se;Oe.resetRequestQueue=()=>{R=[],ae=0,we=0,Se={}},Oe.addThrottleControl=Dt=>{let Yt=we++;return Se[Yt]=Dt,Yt},Oe.removeThrottleControl=Dt=>{delete Se[Dt],ft()},Oe.getImage=(Dt,Yt,cr=!0)=>new Promise((hr,jr)=>{s.supported&&(Dt.headers||(Dt.headers={}),Dt.headers.accept="image/webp,*/*"),t.e(Dt,{type:"image"}),R.push({abortController:Yt,requestParameters:Dt,supportImageRefresh:cr,state:"queued",onError:ea=>{jr(ea)},onSuccess:ea=>{hr(ea)}}),ft()});let De=Dt=>t._(this,void 0,void 0,function*(){Dt.state="running";let{requestParameters:Yt,supportImageRefresh:cr,onError:hr,onSuccess:jr,abortController:ea}=Dt,qe=cr===!1&&!t.i(self)&&!t.g(Yt.url)&&(!Yt.headers||Object.keys(Yt.headers).reduce((ht,At)=>ht&&At==="accept",!0));ae++;let Je=qe?bt(Yt,ea):t.m(Yt,ea);try{let ht=yield Je;delete Dt.abortController,Dt.state="completed",ht.data instanceof HTMLImageElement||t.b(ht.data)?jr(ht):ht.data&&jr({data:yield(ot=ht.data,typeof createImageBitmap=="function"?t.d(ot):t.f(ot)),cacheControl:ht.cacheControl,expires:ht.expires})}catch(ht){delete Dt.abortController,hr(ht)}finally{ae--,ft()}var ot}),ft=()=>{let Dt=(()=>{for(let Yt of Object.keys(Se))if(Se[Yt]())return!0;return!1})()?t.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:t.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Yt=ae;Yt<Dt&&R.length>0;Yt++){let cr=R.shift();cr.abortController.signal.aborted?Yt--:De(cr)}},bt=(Dt,Yt)=>new Promise((cr,hr)=>{let jr=new Image,ea=Dt.url,qe=Dt.credentials;qe&&qe==="include"?jr.crossOrigin="use-credentials":(qe&&qe==="same-origin"||!t.s(ea))&&(jr.crossOrigin="anonymous"),Yt.signal.addEventListener("abort",()=>{jr.src="",hr(t.c())}),jr.fetchPriority="high",jr.onload=()=>{jr.onerror=jr.onload=null,cr({data:jr})},jr.onerror=()=>{jr.onerror=jr.onload=null,Yt.signal.aborted||hr(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},jr.src=ea})}(l||(l={})),l.resetRequestQueue();class _{constructor(R){this._transformRequestFn=R}transformRequest(R,ae){return this._transformRequestFn&&this._transformRequestFn(R,ae)||{url:R}}setTransformRequest(R){this._transformRequestFn=R}}function w(Oe){var R=new t.A(3);return R[0]=Oe[0],R[1]=Oe[1],R[2]=Oe[2],R}var S,E=function(Oe,R,ae){return Oe[0]=R[0]-ae[0],Oe[1]=R[1]-ae[1],Oe[2]=R[2]-ae[2],Oe};S=new t.A(3),t.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var m=function(Oe){var R=Oe[0],ae=Oe[1];return R*R+ae*ae};function b(Oe){let R=[];if(typeof Oe=="string")R.push({id:"default",url:Oe});else if(Oe&&Oe.length>0){let ae=[];for(let{id:we,url:Se}of Oe){let De=`${we}${Se}`;ae.indexOf(De)===-1&&(ae.push(De),R.push({id:we,url:Se}))}}return R}function d(Oe,R,ae){let we=Oe.split("?");return we[0]+=`${R}${ae}`,we.join("?")}(function(){var Oe=new t.A(2);t.A!=Float32Array&&(Oe[0]=0,Oe[1]=0)})();class u{constructor(R,ae,we,Se){this.context=R,this.format=we,this.texture=R.gl.createTexture(),this.update(ae,Se)}update(R,ae,we){let{width:Se,height:De}=R,ft=!(this.size&&this.size[0]===Se&&this.size[1]===De||we),{context:bt}=this,{gl:Dt}=bt;if(this.useMipmap=!!(ae&&ae.useMipmap),Dt.bindTexture(Dt.TEXTURE_2D,this.texture),bt.pixelStoreUnpackFlipY.set(!1),bt.pixelStoreUnpack.set(1),bt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Dt.RGBA&&(!ae||ae.premultiply!==!1)),ft)this.size=[Se,De],R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,this.format,Dt.UNSIGNED_BYTE,R):Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,Se,De,0,this.format,Dt.UNSIGNED_BYTE,R.data);else{let{x:Yt,y:cr}=we||{x:0,y:0};R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Dt.RGBA,Dt.UNSIGNED_BYTE,R):Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Se,De,Dt.RGBA,Dt.UNSIGNED_BYTE,R.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Dt.generateMipmap(Dt.TEXTURE_2D)}bind(R,ae,we){let{context:Se}=this,{gl:De}=Se;De.bindTexture(De.TEXTURE_2D,this.texture),we!==De.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(we=De.LINEAR),R!==this.filter&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,R),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,we||R),this.filter=R),ae!==this.wrap&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,ae),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,ae),this.wrap=ae)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:R}=this.context;R.deleteTexture(this.texture),this.texture=null}}function y(Oe){let{userImage:R}=Oe;return!!(R&&R.render&&R.render())&&(Oe.data.replace(new Uint8Array(R.data.buffer)),!0)}class f extends t.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(R){if(this.loaded!==R&&(this.loaded=R,R)){for(let{ids:ae,promiseResolve:we}of this.requestors)we(this._getImagesForIds(ae));this.requestors=[]}}getImage(R){let ae=this.images[R];if(ae&&!ae.data&&ae.spriteData){let we=ae.spriteData;ae.data=new t.R({width:we.width,height:we.height},we.context.getImageData(we.x,we.y,we.width,we.height).data),ae.spriteData=null}return ae}addImage(R,ae){if(this.images[R])throw new Error(`Image id ${R} already exist, use updateImage instead`);this._validate(R,ae)&&(this.images[R]=ae)}_validate(R,ae){let we=!0,Se=ae.data||ae.spriteData;return this._validateStretch(ae.stretchX,Se&&Se.width)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchX" value`))),we=!1),this._validateStretch(ae.stretchY,Se&&Se.height)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchY" value`))),we=!1),this._validateContent(ae.content,ae)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "content" value`))),we=!1),we}_validateStretch(R,ae){if(!R)return!0;let we=0;for(let Se of R){if(Se[0]<we||Se[1]<Se[0]||ae<Se[1])return!1;we=Se[1]}return!0}_validateContent(R,ae){if(!R)return!0;if(R.length!==4)return!1;let we=ae.spriteData,Se=we&&we.width||ae.data.width,De=we&&we.height||ae.data.height;return!(R[0]<0||Se<R[0]||R[1]<0||De<R[1]||R[2]<0||Se<R[2]||R[3]<0||De<R[3]||R[2]<R[0]||R[3]<R[1])}updateImage(R,ae,we=!0){let Se=this.getImage(R);if(we&&(Se.data.width!==ae.data.width||Se.data.height!==ae.data.height))throw new Error(`size mismatch between old image (${Se.data.width}x${Se.data.height}) and new image (${ae.data.width}x${ae.data.height}).`);ae.version=Se.version+1,this.images[R]=ae,this.updatedImages[R]=!0}removeImage(R){let ae=this.images[R];delete this.images[R],delete this.patterns[R],ae.userImage&&ae.userImage.onRemove&&ae.userImage.onRemove()}listImages(){return Object.keys(this.images)}getImages(R){return new Promise((ae,we)=>{let Se=!0;if(!this.isLoaded())for(let De of R)this.images[De]||(Se=!1);this.isLoaded()||Se?ae(this._getImagesForIds(R)):this.requestors.push({ids:R,promiseResolve:ae})})}_getImagesForIds(R){let ae={};for(let we of R){let Se=this.getImage(we);Se||(this.fire(new t.k("styleimagemissing",{id:we})),Se=this.getImage(we)),Se?ae[we]={data:Se.data.clone(),pixelRatio:Se.pixelRatio,sdf:Se.sdf,version:Se.version,stretchX:Se.stretchX,stretchY:Se.stretchY,content:Se.content,textFitWidth:Se.textFitWidth,textFitHeight:Se.textFitHeight,hasRenderCallback:!!(Se.userImage&&Se.userImage.render)}:t.w(`Image "${we}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return ae}getPixelSize(){let{width:R,height:ae}=this.atlasImage;return{width:R,height:ae}}getPattern(R){let ae=this.patterns[R],we=this.getImage(R);if(!we)return null;if(ae&&ae.position.version===we.version)return ae.position;if(ae)ae.position.version=we.version;else{let Se={w:we.data.width+2,h:we.data.height+2,x:0,y:0},De=new t.I(Se,we);this.patterns[R]={bin:Se,position:De}}return this._updatePatternAtlas(),this.patterns[R].position}bind(R){let ae=R.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new u(R,this.atlasImage,ae.RGBA),this.atlasTexture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE)}_updatePatternAtlas(){let R=[];for(let De in this.patterns)R.push(this.patterns[De].bin);let{w:ae,h:we}=t.p(R),Se=this.atlasImage;Se.resize({width:ae||1,height:we||1});for(let De in this.patterns){let{bin:ft}=this.patterns[De],bt=ft.x+1,Dt=ft.y+1,Yt=this.getImage(De).data,cr=Yt.width,hr=Yt.height;t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt},{width:cr,height:hr}),t.R.copy(Yt,Se,{x:0,y:hr-1},{x:bt,y:Dt-1},{width:cr,height:1}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt+hr},{width:cr,height:1}),t.R.copy(Yt,Se,{x:cr-1,y:0},{x:bt-1,y:Dt},{width:1,height:hr}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt+cr,y:Dt},{width:1,height:hr})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(R){for(let ae of R){if(this.callbackDispatchedThisFrame[ae])continue;this.callbackDispatchedThisFrame[ae]=!0;let we=this.getImage(ae);we||t.w(`Image with ID: "${ae}" was not found`),y(we)&&this.updateImage(ae,we)}}}let P=1e20;function L(Oe,R,ae,we,Se,De,ft,bt,Dt){for(let Yt=R;Yt<R+we;Yt++)z(Oe,ae*De+Yt,De,Se,ft,bt,Dt);for(let Yt=ae;Yt<ae+Se;Yt++)z(Oe,Yt*De+R,1,we,ft,bt,Dt)}function z(Oe,R,ae,we,Se,De,ft){De[0]=0,ft[0]=-P,ft[1]=P,Se[0]=Oe[R];for(let bt=1,Dt=0,Yt=0;bt<we;bt++){Se[bt]=Oe[R+bt*ae];let cr=bt*bt;do{let hr=De[Dt];Yt=(Se[bt]-Se[hr]+cr-hr*hr)/(bt-hr)/2}while(Yt<=ft[Dt]&&--Dt>-1);Dt++,De[Dt]=bt,ft[Dt]=Yt,ft[Dt+1]=P}for(let bt=0,Dt=0;bt<we;bt++){for(;ft[Dt+1]<bt;)Dt++;let Yt=De[Dt],cr=bt-Yt;Oe[R+bt*ae]=Se[Yt]+cr*cr}}class F{constructor(R,ae){this.requestManager=R,this.localIdeographFontFamily=ae,this.entries={}}setURL(R){this.url=R}getGlyphs(R){return t._(this,void 0,void 0,function*(){let ae=[];for(let De in R)for(let ft of R[De])ae.push(this._getAndCacheGlyphsPromise(De,ft));let we=yield Promise.all(ae),Se={};for(let{stack:De,id:ft,glyph:bt}of we)Se[De]||(Se[De]={}),Se[De][ft]=bt&&{id:bt.id,bitmap:bt.bitmap.clone(),metrics:bt.metrics};return Se})}_getAndCacheGlyphsPromise(R,ae){return t._(this,void 0,void 0,function*(){let we=this.entries[R];we||(we=this.entries[R]={glyphs:{},requests:{},ranges:{}});let Se=we.glyphs[ae];if(Se!==void 0)return{stack:R,id:ae,glyph:Se};if(Se=this._tinySDF(we,R,ae),Se)return we.glyphs[ae]=Se,{stack:R,id:ae,glyph:Se};let De=Math.floor(ae/256);if(256*De>65535)throw new Error("glyphs > 65535 not supported");if(we.ranges[De])return{stack:R,id:ae,glyph:Se};if(!this.url)throw new Error("glyphsUrl is not set");if(!we.requests[De]){let bt=F.loadGlyphRange(R,De,this.url,this.requestManager);we.requests[De]=bt}let ft=yield we.requests[De];for(let bt in ft)this._doesCharSupportLocalGlyph(+bt)||(we.glyphs[+bt]=ft[+bt]);return we.ranges[De]=!0,{stack:R,id:ae,glyph:ft[ae]||null}})}_doesCharSupportLocalGlyph(R){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(R))}_tinySDF(R,ae,we){let Se=this.localIdeographFontFamily;if(!Se||!this._doesCharSupportLocalGlyph(we))return;let De=R.tinySDF;if(!De){let bt="400";/bold/i.test(ae)?bt="900":/medium/i.test(ae)?bt="500":/light/i.test(ae)&&(bt="200"),De=R.tinySDF=new F.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:Se,fontWeight:bt})}let ft=De.draw(String.fromCharCode(we));return{id:we,bitmap:new t.o({width:ft.width||60,height:ft.height||60},ft.data),metrics:{width:ft.glyphWidth/2||24,height:ft.glyphHeight/2||24,left:ft.glyphLeft/2+.5||0,top:ft.glyphTop/2-27.5||-8,advance:ft.glyphAdvance/2||24,isDoubleResolution:!0}}}}F.loadGlyphRange=function(Oe,R,ae,we){return t._(this,void 0,void 0,function*(){let Se=256*R,De=Se+255,ft=we.transformRequest(ae.replace("{fontstack}",Oe).replace("{range}",`${Se}-${De}`),"Glyphs"),bt=yield t.l(ft,new AbortController);if(!bt||!bt.data)throw new Error(`Could not load glyph range. range: ${R}, ${Se}-${De}`);let Dt={};for(let Yt of t.n(bt.data))Dt[Yt.id]=Yt;return Dt})},F.TinySDF=class{constructor({fontSize:Oe=24,buffer:R=3,radius:ae=8,cutoff:we=.25,fontFamily:Se="sans-serif",fontWeight:De="normal",fontStyle:ft="normal"}={}){this.buffer=R,this.cutoff=we,this.radius=ae;let bt=this.size=Oe+4*R,Dt=this._createCanvas(bt),Yt=this.ctx=Dt.getContext("2d",{willReadFrequently:!0});Yt.font=`${ft} ${De} ${Oe}px ${Se}`,Yt.textBaseline="alphabetic",Yt.textAlign="left",Yt.fillStyle="black",this.gridOuter=new Float64Array(bt*bt),this.gridInner=new Float64Array(bt*bt),this.f=new Float64Array(bt),this.z=new Float64Array(bt+1),this.v=new Uint16Array(bt)}_createCanvas(Oe){let R=document.createElement("canvas");return R.width=R.height=Oe,R}draw(Oe){let{width:R,actualBoundingBoxAscent:ae,actualBoundingBoxDescent:we,actualBoundingBoxLeft:Se,actualBoundingBoxRight:De}=this.ctx.measureText(Oe),ft=Math.ceil(ae),bt=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(De-Se))),Dt=Math.min(this.size-this.buffer,ft+Math.ceil(we)),Yt=bt+2*this.buffer,cr=Dt+2*this.buffer,hr=Math.max(Yt*cr,0),jr=new Uint8ClampedArray(hr),ea={data:jr,width:Yt,height:cr,glyphWidth:bt,glyphHeight:Dt,glyphTop:ft,glyphLeft:0,glyphAdvance:R};if(bt===0||Dt===0)return ea;let{ctx:qe,buffer:Je,gridInner:ot,gridOuter:ht}=this;qe.clearRect(Je,Je,bt,Dt),qe.fillText(Oe,Je,Je+ft);let At=qe.getImageData(Je,Je,bt,Dt);ht.fill(P,0,hr),ot.fill(0,0,hr);for(let _t=0;_t<Dt;_t++)for(let Pt=0;Pt<bt;Pt++){let er=At.data[4*(_t*bt+Pt)+3]/255;if(er===0)continue;let nr=(_t+Je)*Yt+Pt+Je;if(er===1)ht[nr]=0,ot[nr]=P;else{let pr=.5-er;ht[nr]=pr>0?pr*pr:0,ot[nr]=pr<0?pr*pr:0}}L(ht,0,0,Yt,cr,Yt,this.f,this.v,this.z),L(ot,Je,Je,bt,Dt,Yt,this.f,this.v,this.z);for(let _t=0;_t<hr;_t++){let Pt=Math.sqrt(ht[_t])-Math.sqrt(ot[_t]);jr[_t]=Math.round(255-255*(Pt/this.radius+this.cutoff))}return ea}};class B{constructor(){this.specification=t.v.light.position}possiblyEvaluate(R,ae){return t.x(R.expression.evaluate(ae))}interpolate(R,ae,we){return{x:t.y.number(R.x,ae.x,we),y:t.y.number(R.y,ae.y,we),z:t.y.number(R.z,ae.z,we)}}}let O;class I extends t.E{constructor(R){super(),O=O||new t.q({anchor:new t.D(t.v.light.anchor),position:new B,color:new t.D(t.v.light.color),intensity:new t.D(t.v.light.intensity)}),this._transitionable=new t.T(O),this.setLight(R),this._transitioning=this._transitionable.untransitioned()}getLight(){return this._transitionable.serialize()}setLight(R,ae={}){if(!this._validate(t.r,R,ae))for(let we in R){let Se=R[we];we.endsWith("-transition")?this._transitionable.setTransition(we.slice(0,-11),Se):this._transitionable.setValue(we,Se)}}updateTransitions(R){this._transitioning=this._transitionable.transitioned(R,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(R){this.properties=this._transitioning.possiblyEvaluate(R)}_validate(R,ae,we){return(!we||we.validate!==!1)&&t.t(this,R.call(t.u,{value:ae,style:{glyphs:!0,sprite:!0},styleSpec:t.v}))}}let N=new t.q({"sky-color":new t.D(t.v.sky["sky-color"]),"horizon-color":new t.D(t.v.sky["horizon-color"]),"fog-color":new t.D(t.v.sky["fog-color"]),"fog-ground-blend":new t.D(t.v.sky["fog-ground-blend"]),"horizon-fog-blend":new t.D(t.v.sky["horizon-fog-blend"]),"sky-horizon-blend":new t.D(t.v.sky["sky-horizon-blend"]),"atmosphere-blend":new t.D(t.v.sky["atmosphere-blend"])});class U extends t.E{constructor(R){super(),this._transitionable=new t.T(N),this.setSky(R),this._transitioning=this._transitionable.untransitioned(),this.recalculate(new t.z(0))}setSky(R,ae={}){if(!this._validate(t.B,R,ae)){R||(R={"sky-color":"transparent","horizon-color":"transparent","fog-color":"transparent","fog-ground-blend":1,"atmosphere-blend":0});for(let we in R){let Se=R[we];we.endsWith("-transition")?this._transitionable.setTransition(we.slice(0,-11),Se):this._transitionable.setValue(we,Se)}}}getSky(){return this._transitionable.serialize()}updateTransitions(R){this._transitioning=this._transitionable.transitioned(R,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(R){this.properties=this._transitioning.possiblyEvaluate(R)}_validate(R,ae,we={}){return we?.validate!==!1&&t.t(this,R.call(t.u,t.e({value:ae,style:{glyphs:!0,sprite:!0},styleSpec:t.v})))}calculateFogBlendOpacity(R){return R<60?0:R<70?(R-60)/10:1}}class W{constructor(R,ae){this.width=R,this.height=ae,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}}getDash(R,ae){let we=R.join(",")+String(ae);return this.dashEntry[we]||(this.dashEntry[we]=this.addDash(R,ae)),this.dashEntry[we]}getDashRanges(R,ae,we){let Se=[],De=R.length%2==1?-R[R.length-1]*we:0,ft=R[0]*we,bt=!0;Se.push({left:De,right:ft,isDash:bt,zeroLength:R[0]===0});let Dt=R[0];for(let Yt=1;Yt<R.length;Yt++){bt=!bt;let cr=R[Yt];De=Dt*we,Dt+=cr,ft=Dt*we,Se.push({left:De,right:ft,isDash:bt,zeroLength:cr===0})}return Se}addRoundDash(R,ae,we){let Se=ae/2;for(let De=-we;De<=we;De++){let ft=this.width*(this.nextRow+we+De),bt=0,Dt=R[bt];for(let Yt=0;Yt<this.width;Yt++){Yt/Dt.right>1&&(Dt=R[++bt]);let cr=Math.abs(Yt-Dt.left),hr=Math.abs(Yt-Dt.right),jr=Math.min(cr,hr),ea,qe=De/we*(Se+1);if(Dt.isDash){let Je=Se-Math.abs(qe);ea=Math.sqrt(jr*jr+Je*Je)}else ea=Se-Math.sqrt(jr*jr+qe*qe);this.data[ft+Yt]=Math.max(0,Math.min(255,ea+128))}}}addRegularDash(R){for(let bt=R.length-1;bt>=0;--bt){let Dt=R[bt],Yt=R[bt+1];Dt.zeroLength?R.splice(bt,1):Yt&&Yt.isDash===Dt.isDash&&(Yt.left=Dt.left,R.splice(bt,1))}let ae=R[0],we=R[R.length-1];ae.isDash===we.isDash&&(ae.left=we.left-this.width,we.right=ae.right+this.width);let Se=this.width*this.nextRow,De=0,ft=R[De];for(let bt=0;bt<this.width;bt++){bt/ft.right>1&&(ft=R[++De]);let Dt=Math.abs(bt-ft.left),Yt=Math.abs(bt-ft.right),cr=Math.min(Dt,Yt);this.data[Se+bt]=Math.max(0,Math.min(255,(ft.isDash?cr:-cr)+128))}}addDash(R,ae){let we=ae?7:0,Se=2*we+1;if(this.nextRow+Se>this.height)return t.w("LineAtlas out of space"),null;let De=0;for(let bt=0;bt<R.length;bt++)De+=R[bt];if(De!==0){let bt=this.width/De,Dt=this.getDashRanges(R,this.width,bt);ae?this.addRoundDash(Dt,bt,we):this.addRegularDash(Dt)}let ft={y:(this.nextRow+we+.5)/this.height,height:2*we/this.height,width:De};return this.nextRow+=Se,this.dirty=!0,ft}bind(R){let ae=R.gl;this.texture?(ae.bindTexture(ae.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,this.width,this.height,ae.ALPHA,ae.UNSIGNED_BYTE,this.data))):(this.texture=ae.createTexture(),ae.bindTexture(ae.TEXTURE_2D,this.texture),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_WRAP_S,ae.REPEAT),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_WRAP_T,ae.REPEAT),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_MIN_FILTER,ae.LINEAR),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_MAG_FILTER,ae.LINEAR),ae.texImage2D(ae.TEXTURE_2D,0,ae.ALPHA,this.width,this.height,0,ae.ALPHA,ae.UNSIGNED_BYTE,this.data))}}let Q="maplibre_preloaded_worker_pool";class ue{constructor(){this.active={}}acquire(R){if(!this.workers)for(this.workers=[];this.workers.length<ue.workerCount;)this.workers.push(new Worker(t.a.WORKER_URL));return this.active[R]=!0,this.workers.slice()}release(R){delete this.active[R],this.numActive()===0&&(this.workers.forEach(ae=>{ae.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[Q]}numActive(){return Object.keys(this.active).length}}let se=Math.floor(i.hardwareConcurrency/2),he,G;function $(){return he||(he=new ue),he}ue.workerCount=t.C(globalThis)?Math.max(Math.min(se,3),1):1;class J{constructor(R,ae){this.workerPool=R,this.actors=[],this.currentActor=0,this.id=ae;let we=this.workerPool.acquire(ae);for(let Se=0;Se<we.length;Se++){let De=new t.F(we[Se],ae);De.name=`Worker ${Se}`,this.actors.push(De)}if(!this.actors.length)throw new Error("No actors found")}broadcast(R,ae){let we=[];for(let Se of this.actors)we.push(Se.sendAsync({type:R,data:ae}));return Promise.all(we)}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(R=!0){this.actors.forEach(ae=>{ae.remove()}),this.actors=[],R&&this.workerPool.release(this.id)}registerMessageHandler(R,ae){for(let we of this.actors)we.registerMessageHandler(R,ae)}}function Z(){return G||(G=new J($(),t.G),G.registerMessageHandler("GR",(Oe,R,ae)=>t.m(R,ae))),G}function re(Oe,R){let ae=t.H();return t.J(ae,ae,[1,1,0]),t.K(ae,ae,[.5*Oe.width,.5*Oe.height,1]),t.L(ae,ae,Oe.calculatePosMatrix(R.toUnwrapped()))}function ne(Oe,R,ae,we,Se,De){let ft=function(hr,jr,ea){if(hr)for(let qe of hr){let Je=jr[qe];if(Je&&Je.source===ea&&Je.type==="fill-extrusion")return!0}else for(let qe in jr){let Je=jr[qe];if(Je.source===ea&&Je.type==="fill-extrusion")return!0}return!1}(Se&&Se.layers,R,Oe.id),bt=De.maxPitchScaleFactor(),Dt=Oe.tilesIn(we,bt,ft);Dt.sort(j);let Yt=[];for(let hr of Dt)Yt.push({wrappedTileID:hr.tileID.wrapped().key,queryResults:hr.tile.queryRenderedFeatures(R,ae,Oe._state,hr.queryGeometry,hr.cameraQueryGeometry,hr.scale,Se,De,bt,re(Oe.transform,hr.tileID))});let cr=function(hr){let jr={},ea={};for(let qe of hr){let Je=qe.queryResults,ot=qe.wrappedTileID,ht=ea[ot]=ea[ot]||{};for(let At in Je){let _t=Je[At],Pt=ht[At]=ht[At]||{},er=jr[At]=jr[At]||[];for(let nr of _t)Pt[nr.featureIndex]||(Pt[nr.featureIndex]=!0,er.push(nr))}}return jr}(Yt);for(let hr in cr)cr[hr].forEach(jr=>{let ea=jr.feature,qe=Oe.getFeatureState(ea.layer["source-layer"],ea.id);ea.source=ea.layer.source,ea.layer["source-layer"]&&(ea.sourceLayer=ea.layer["source-layer"]),ea.state=qe});return cr}function j(Oe,R){let ae=Oe.tileID,we=R.tileID;return ae.overscaledZ-we.overscaledZ||ae.canonical.y-we.canonical.y||ae.wrap-we.wrap||ae.canonical.x-we.canonical.x}function ee(Oe,R,ae){return t._(this,void 0,void 0,function*(){let we=Oe;if(Oe.url?we=(yield t.h(R.transformRequest(Oe.url,"Source"),ae)).data:yield i.frameAsync(ae),!we)return null;let Se=t.M(t.e(we,Oe),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in we&&we.vector_layers&&(Se.vectorLayerIds=we.vector_layers.map(De=>De.id)),Se})}class ie{constructor(R,ae){R&&(ae?this.setSouthWest(R).setNorthEast(ae):Array.isArray(R)&&(R.length===4?this.setSouthWest([R[0],R[1]]).setNorthEast([R[2],R[3]]):this.setSouthWest(R[0]).setNorthEast(R[1])))}setNorthEast(R){return this._ne=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}setSouthWest(R){return this._sw=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}extend(R){let ae=this._sw,we=this._ne,Se,De;if(R instanceof t.N)Se=R,De=R;else{if(!(R instanceof ie))return Array.isArray(R)?R.length===4||R.every(Array.isArray)?this.extend(ie.convert(R)):this.extend(t.N.convert(R)):R&&("lng"in R||"lon"in R)&&"lat"in R?this.extend(t.N.convert(R)):this;if(Se=R._sw,De=R._ne,!Se||!De)return this}return ae||we?(ae.lng=Math.min(Se.lng,ae.lng),ae.lat=Math.min(Se.lat,ae.lat),we.lng=Math.max(De.lng,we.lng),we.lat=Math.max(De.lat,we.lat)):(this._sw=new t.N(Se.lng,Se.lat),this._ne=new t.N(De.lng,De.lat)),this}getCenter(){return new t.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new t.N(this.getWest(),this.getNorth())}getSouthEast(){return new t.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(R){let{lng:ae,lat:we}=t.N.convert(R),Se=this._sw.lng<=ae&&ae<=this._ne.lng;return this._sw.lng>this._ne.lng&&(Se=this._sw.lng>=ae&&ae>=this._ne.lng),this._sw.lat<=we&&we<=this._ne.lat&&Se}static convert(R){return R instanceof ie?R:R&&new ie(R)}static fromLngLat(R,ae=0){let we=360*ae/40075017,Se=we/Math.cos(Math.PI/180*R.lat);return new ie(new t.N(R.lng-Se,R.lat-we),new t.N(R.lng+Se,R.lat+we))}adjustAntiMeridian(){let R=new t.N(this._sw.lng,this._sw.lat),ae=new t.N(this._ne.lng,this._ne.lat);return new ie(R,R.lng>ae.lng?new t.N(ae.lng+360,ae.lat):ae)}}class fe{constructor(R,ae,we){this.bounds=ie.convert(this.validateBounds(R)),this.minzoom=ae||0,this.maxzoom=we||24}validateBounds(R){return Array.isArray(R)&&R.length===4?[Math.max(-180,R[0]),Math.max(-90,R[1]),Math.min(180,R[2]),Math.min(90,R[3])]:[-180,-90,180,90]}contains(R){let ae=Math.pow(2,R.z),we=Math.floor(t.O(this.bounds.getWest())*ae),Se=Math.floor(t.Q(this.bounds.getNorth())*ae),De=Math.ceil(t.O(this.bounds.getEast())*ae),ft=Math.ceil(t.Q(this.bounds.getSouth())*ae);return R.x>=we&&R.x<De&&R.y>=Se&&R.y<ft}}class be extends t.E{constructor(R,ae,we,Se){if(super(),this.id=R,this.dispatcher=we,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,t.e(this,t.M(ae,["url","scheme","tileSize","promoteId"])),this._options=t.e({type:"vector"},ae),this._collectResourceTiming=ae.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(Se)}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}onAdd(R){this.map=R,this.load()}setSourceProperty(R){this._tileJSONRequest&&this._tileJSONRequest.abort(),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return t.e({},this._options)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we={request:this.map._requestManager.transformRequest(ae,"Tile"),uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,tileSize:this.tileSize*R.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};we.request.collectResourceTiming=this._collectResourceTiming;let Se="RT";if(R.actor&&R.state!=="expired"){if(R.state==="loading")return new Promise((De,ft)=>{R.reloadPromise={resolve:De,reject:ft}})}else R.actor=this.dispatcher.getActor(),Se="LT";R.abortController=new AbortController;try{let De=yield R.actor.sendAsync({type:Se,data:we},R.abortController);if(delete R.abortController,R.aborted)return;this._afterTileLoadWorkerResponse(R,De)}catch(De){if(delete R.abortController,R.aborted)return;if(De&&De.status!==404)throw De;this._afterTileLoadWorkerResponse(R,null)}})}_afterTileLoadWorkerResponse(R,ae){if(ae&&ae.resourceTiming&&(R.resourceTiming=ae.resourceTiming),ae&&this.map._refreshExpiredTiles&&R.setExpiryData(ae),R.loadVectorData(ae,this.map.painter),R.reloadPromise){let we=R.reloadPromise;R.reloadPromise=null,this.loadTile(R).then(we.resolve).catch(we.reject)}}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.actor&&(yield R.actor.sendAsync({type:"AT",data:{uid:R.uid,type:this.type,source:this.id}}))})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),R.actor&&(yield R.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class Ae extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.setEventedParent(Se),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.e({type:"raster"},ae),t.e(this,t.M(ae,["url","scheme","tileSize"]))}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}onAdd(R){this.map=R,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(R){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}serialize(){return t.e({},this._options)}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);R.abortController=new AbortController;try{let we=yield l.getImage(this.map._requestManager.transformRequest(ae,"Tile"),R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(we&&we.data){this.map._refreshExpiredTiles&&we.cacheControl&&we.expires&&R.setExpiryData({cacheControl:we.cacheControl,expires:we.expires});let Se=this.map.painter.context,De=Se.gl,ft=we.data;R.texture=this.map.painter.getTileTexture(ft.width),R.texture?R.texture.update(ft,{useMipmap:!0}):(R.texture=new u(Se,ft,De.RGBA,{useMipmap:!0}),R.texture.bind(De.LINEAR,De.CLAMP_TO_EDGE,De.LINEAR_MIPMAP_NEAREST)),R.state="loaded"}}catch(we){if(delete R.abortController,R.aborted)R.state="unloaded";else if(we)throw R.state="errored",we}})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController)})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.texture&&this.map.painter.saveTileTexture(R.texture)})}hasTransition(){return!1}}class Be extends Ae{constructor(R,ae,we,Se){super(R,ae,we,Se),this.type="raster-dem",this.maxzoom=22,this._options=t.e({type:"raster-dem"},ae),this.encoding=ae.encoding||"mapbox",this.redFactor=ae.redFactor,this.greenFactor=ae.greenFactor,this.blueFactor=ae.blueFactor,this.baseShift=ae.baseShift}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we=this.map._requestManager.transformRequest(ae,"Tile");R.neighboringTiles=this._getNeighboringTiles(R.tileID),R.abortController=new AbortController;try{let Se=yield l.getImage(we,R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(Se&&Se.data){let De=Se.data;this.map._refreshExpiredTiles&&Se.cacheControl&&Se.expires&&R.setExpiryData({cacheControl:Se.cacheControl,expires:Se.expires});let ft=t.b(De)&&t.U()?De:yield this.readImageNow(De),bt={type:this.type,uid:R.uid,source:this.id,rawImageData:ft,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!R.actor||R.state==="expired"){R.actor=this.dispatcher.getActor();let Dt=yield R.actor.sendAsync({type:"LDT",data:bt});R.dem=Dt,R.needsHillshadePrepare=!0,R.needsTerrainPrepare=!0,R.state="loaded"}}}catch(Se){if(delete R.abortController,R.aborted)R.state="unloaded";else if(Se)throw R.state="errored",Se}})}readImageNow(R){return t._(this,void 0,void 0,function*(){if(typeof VideoFrame<"u"&&t.V()){let ae=R.width+2,we=R.height+2;try{return new t.R({width:ae,height:we},yield t.W(R,-1,-1,ae,we))}catch{}}return i.getImageData(R,1)})}_getNeighboringTiles(R){let ae=R.canonical,we=Math.pow(2,ae.z),Se=(ae.x-1+we)%we,De=ae.x===0?R.wrap-1:R.wrap,ft=(ae.x+1+we)%we,bt=ae.x+1===we?R.wrap+1:R.wrap,Dt={};return Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y).key]={backfilled:!1},ae.y>0&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y-1).key]={backfilled:!1}),ae.y+1<we&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y+1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y+1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y+1).key]={backfilled:!1}),Dt}unloadTile(R){return t._(this,void 0,void 0,function*(){R.demTexture&&this.map.painter.saveTileTexture(R.demTexture),R.fbo&&(R.fbo.destroy(),delete R.fbo),R.dem&&delete R.dem,delete R.neighboringTiles,R.state="unloaded",R.actor&&(yield R.actor.sendAsync({type:"RDT",data:{type:this.type,uid:R.uid,source:this.id}}))})}}class Ie extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._pendingLoads=0,this.actor=we.getActor(),this.setEventedParent(Se),this._data=ae.data,this._options=t.e({},ae),this._collectResourceTiming=ae.collectResourceTiming,ae.maxzoom!==void 0&&(this.maxzoom=ae.maxzoom),ae.type&&(this.type=ae.type),ae.attribution&&(this.attribution=ae.attribution),this.promoteId=ae.promoteId;let De=t.X/this.tileSize;ae.clusterMaxZoom!==void 0&&this.maxzoom<=ae.clusterMaxZoom&&t.w(`The maxzoom value "${this.maxzoom}" is expected to be greater than the clusterMaxZoom value "${ae.clusterMaxZoom}".`),this.workerOptions=t.e({source:this.id,cluster:ae.cluster||!1,geojsonVtOptions:{buffer:(ae.buffer!==void 0?ae.buffer:128)*De,tolerance:(ae.tolerance!==void 0?ae.tolerance:.375)*De,extent:t.X,maxZoom:this.maxzoom,lineMetrics:ae.lineMetrics||!1,generateId:ae.generateId||!1},superclusterOptions:{maxZoom:ae.clusterMaxZoom!==void 0?ae.clusterMaxZoom:this.maxzoom-1,minPoints:Math.max(2,ae.clusterMinPoints||2),extent:t.X,radius:(ae.clusterRadius||50)*De,log:!1,generateId:ae.generateId||!1},clusterProperties:ae.clusterProperties,filter:ae.filter},ae.workerOptions),typeof this.promoteId=="string"&&(this.workerOptions.promoteId=this.promoteId)}load(){return t._(this,void 0,void 0,function*(){yield this._updateWorkerData()})}onAdd(R){this.map=R,this.load()}setData(R){return this._data=R,this._updateWorkerData(),this}updateData(R){return this._updateWorkerData(R),this}getData(){return t._(this,void 0,void 0,function*(){let R=t.e({type:this.type},this.workerOptions);return this.actor.sendAsync({type:"GD",data:R})})}setClusterOptions(R){return this.workerOptions.cluster=R.cluster,R&&(R.clusterRadius!==void 0&&(this.workerOptions.superclusterOptions.radius=R.clusterRadius),R.clusterMaxZoom!==void 0&&(this.workerOptions.superclusterOptions.maxZoom=R.clusterMaxZoom)),this._updateWorkerData(),this}getClusterExpansionZoom(R){return this.actor.sendAsync({type:"GCEZ",data:{type:this.type,clusterId:R,source:this.id}})}getClusterChildren(R){return this.actor.sendAsync({type:"GCC",data:{type:this.type,clusterId:R,source:this.id}})}getClusterLeaves(R,ae,we){return this.actor.sendAsync({type:"GCL",data:{type:this.type,source:this.id,clusterId:R,limit:ae,offset:we}})}_updateWorkerData(R){return t._(this,void 0,void 0,function*(){let ae=t.e({type:this.type},this.workerOptions);R?ae.dataDiff=R:typeof this._data=="string"?(ae.request=this.map._requestManager.transformRequest(i.resolveURL(this._data),"Source"),ae.request.collectResourceTiming=this._collectResourceTiming):ae.data=JSON.stringify(this._data),this._pendingLoads++,this.fire(new t.k("dataloading",{dataType:"source"}));try{let we=yield this.actor.sendAsync({type:"LD",data:ae});if(this._pendingLoads--,this._removed||we.abandoned)return void this.fire(new t.k("dataabort",{dataType:"source"}));let Se=null;we.resourceTiming&&we.resourceTiming[this.id]&&(Se=we.resourceTiming[this.id].slice(0));let De={dataType:"source"};this._collectResourceTiming&&Se&&Se.length>0&&t.e(De,{resourceTiming:Se}),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"metadata"}))),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"content"})))}catch(we){if(this._pendingLoads--,this._removed)return void this.fire(new t.k("dataabort",{dataType:"source"}));this.fire(new t.j(we))}})}loaded(){return this._pendingLoads===0}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.actor?"RT":"LT";R.actor=this.actor;let we={type:this.type,uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};R.abortController=new AbortController;let Se=yield this.actor.sendAsync({type:ae,data:we},R.abortController);delete R.abortController,R.unloadVectorData(),R.aborted||R.loadVectorData(Se,this.map.painter,ae==="RT")})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.aborted=!0})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return t.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Ze=t.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class at extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.coordinates=ae.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(Se),this.options=ae}load(R){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let ae=yield l.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,ae&&ae.data&&(this.image=ae.data,R&&(this.coordinates=R),this._finishLoading())}catch(ae){this._request=null,this._loaded=!0,this.fire(new t.j(ae))}})}loaded(){return this._loaded}updateImage(R){return R.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=R.url,this.load(R.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(R){this.map=R,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(R){this.coordinates=R;let ae=R.map(t.Z.fromLngLat);this.tileID=function(Se){let De=1/0,ft=1/0,bt=-1/0,Dt=-1/0;for(let jr of Se)De=Math.min(De,jr.x),ft=Math.min(ft,jr.y),bt=Math.max(bt,jr.x),Dt=Math.max(Dt,jr.y);let Yt=Math.max(bt-De,Dt-ft),cr=Math.max(0,Math.floor(-Math.log(Yt)/Math.LN2)),hr=Math.pow(2,cr);return new t.a1(cr,Math.floor((De+bt)/2*hr),Math.floor((ft+Dt)/2*hr))}(ae),this.minzoom=this.maxzoom=this.tileID.z;let we=ae.map(Se=>this.tileID.getTilePoint(Se)._round());return this._boundsArray=new t.$,this._boundsArray.emplaceBack(we[0].x,we[0].y,0,0),this._boundsArray.emplaceBack(we[1].x,we[1].y,t.X,0),this._boundsArray.emplaceBack(we[3].x,we[3].y,0,t.X),this._boundsArray.emplaceBack(we[2].x,we[2].y,t.X,t.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new u(R,this.image,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(R){return t._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(R.tileID.canonical)?(this.tiles[String(R.tileID.wrap)]=R,R.buckets={}):R.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class it extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),this.roundZoom=!0,this.type="video",this.options=ae}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1;let R=this.options;this.urls=[];for(let ae of R.urls)this.urls.push(this.map._requestManager.transformRequest(ae,"Source").url);try{let ae=yield t.a3(this.urls);if(this._loaded=!0,!ae)return;this.video=ae,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(ae){this.fire(new t.j(ae))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(R){if(this.video){let ae=this.video.seekable;R<ae.start(0)||R>ae.end(0)?this.fire(new t.j(new t.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${ae.start(0)} and ${ae.end(0)}-second mark.`))):this.video.currentTime=R}}getVideo(){return this.video}onAdd(R){this.map||(this.map=R,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE),ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,ae.RGBA,ae.UNSIGNED_BYTE,this.video)):(this.texture=new u(R,this.video,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class et extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),ae.coordinates?Array.isArray(ae.coordinates)&&ae.coordinates.length===4&&!ae.coordinates.some(De=>!Array.isArray(De)||De.length!==2||De.some(ft=>typeof ft!="number"))||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "coordinates"'))),ae.animate&&typeof ae.animate!="boolean"&&this.fire(new t.j(new t.a2(`sources.${R}`,null,'optional "animate" property must be a boolean value'))),ae.canvas?typeof ae.canvas=="string"||ae.canvas instanceof HTMLCanvasElement||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "canvas"'))),this.options=ae,this.animate=ae.animate===void 0||ae.animate}load(){return t._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(R){this.map=R,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let R=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,R=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,R=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let ae=this.map.painter.context,we=ae.gl;this.boundsBuffer||(this.boundsBuffer=ae.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?(R||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new u(ae,this.canvas,we.RGBA,{premultiply:!0});let Se=!1;for(let De in this.tiles){let ft=this.tiles[De];ft.state!=="loaded"&&(ft.state="loaded",ft.texture=this.texture,Se=!0)}Se&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let R of[this.canvas.width,this.canvas.height])if(isNaN(R)||R<=0)return!0;return!1}}let lt={},Me=Oe=>{switch(Oe){case"geojson":return Ie;case"image":return at;case"raster":return Ae;case"raster-dem":return Be;case"vector":return be;case"video":return it;case"canvas":return et}return lt[Oe]},ge="RTLPluginLoaded";class ce extends t.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Z()}_syncState(R){return this.status=R,this.dispatcher.broadcast("SRPS",{pluginStatus:R,pluginURL:this.url}).catch(ae=>{throw this.status="error",ae})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(R){return t._(this,arguments,void 0,function*(ae,we=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=i.resolveURL(ae),!this.url)throw new Error(`requested url ${ae} is invalid`);if(this.status==="unavailable"){if(!we)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return t._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new t.k(ge))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ze=null;function tt(){return ze||(ze=new ce),ze}class nt{constructor(R,ae){this.timeAdded=0,this.fadeEndTime=0,this.tileID=R,this.uid=t.a4(),this.uses=0,this.tileSize=ae,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(R){let ae=R+this.timeAdded;ae<this.fadeEndTime||(this.fadeEndTime=ae)}wasRequested(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"}clearTextures(R){this.demTexture&&R.saveTileTexture(this.demTexture),this.demTexture=null}loadVectorData(R,ae,we){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",R){R.featureIndex&&(this.latestFeatureIndex=R.featureIndex,R.rawTileData?(this.latestRawTileData=R.rawTileData,this.latestFeatureIndex.rawTileData=R.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=R.collisionBoxArray,this.buckets=function(Se,De){let ft={};if(!De)return ft;for(let bt of Se){let Dt=bt.layerIds.map(Yt=>De.getLayer(Yt)).filter(Boolean);if(Dt.length!==0){bt.layers=Dt,bt.stateDependentLayerIds&&(bt.stateDependentLayers=bt.stateDependentLayerIds.map(Yt=>Dt.filter(cr=>cr.id===Yt)[0]));for(let Yt of Dt)ft[Yt.id]=bt}}return ft}(R.buckets,ae.style),this.hasSymbolBuckets=!1;for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6){if(this.hasSymbolBuckets=!0,!we)break;De.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6&&De.hasRTLText){this.hasRTLText=!0,tt().lazyLoad();break}}this.queryPadding=0;for(let Se in this.buckets){let De=this.buckets[Se];this.queryPadding=Math.max(this.queryPadding,ae.style.getLayer(Se).queryRadius(De))}R.imageAtlas&&(this.imageAtlas=R.imageAtlas),R.glyphAtlasImage&&(this.glyphAtlasImage=R.glyphAtlasImage)}else this.collisionBoxArray=new t.a5}unloadVectorData(){for(let R in this.buckets)this.buckets[R].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(R){return this.buckets[R.id]}upload(R){for(let we in this.buckets){let Se=this.buckets[we];Se.uploadPending()&&Se.upload(R)}let ae=R.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new u(R,this.imageAtlas.image,ae.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new u(R,this.glyphAtlasImage,ae.ALPHA),this.glyphAtlasImage=null)}prepare(R){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(R,this.imageAtlasTexture)}queryRenderedFeatures(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:Se,cameraQueryGeometry:De,scale:ft,tileSize:this.tileSize,pixelPosMatrix:cr,transform:Dt,params:bt,queryPadding:this.queryPadding*Yt},R,ae,we):{}}querySourceFeatures(R,ae){let we=this.latestFeatureIndex;if(!we||!we.rawTileData)return;let Se=we.loadVTLayers(),De=ae&&ae.sourceLayer?ae.sourceLayer:"",ft=Se._geojsonTileLayer||Se[De];if(!ft)return;let bt=t.a7(ae&&ae.filter),{z:Dt,x:Yt,y:cr}=this.tileID.canonical,hr={z:Dt,x:Yt,y:cr};for(let jr=0;jr<ft.length;jr++){let ea=ft.feature(jr);if(bt.needGeometry){let ot=t.a8(ea,!0);if(!bt.filter(new t.z(this.tileID.overscaledZ),ot,this.tileID.canonical))continue}else if(!bt.filter(new t.z(this.tileID.overscaledZ),ea))continue;let qe=we.getId(ea,De),Je=new t.a9(ea,Dt,Yt,cr,qe);Je.tile=hr,R.push(Je)}}hasData(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"}patternsLoaded(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length}setExpiryData(R){let ae=this.expirationTime;if(R.cacheControl){let we=t.aa(R.cacheControl);we["max-age"]&&(this.expirationTime=Date.now()+1e3*we["max-age"])}else R.expires&&(this.expirationTime=new Date(R.expires).getTime());if(this.expirationTime){let we=Date.now(),Se=!1;if(this.expirationTime>we)Se=!1;else if(ae)if(this.expirationTime<ae)Se=!0;else{let De=this.expirationTime-ae;De?this.expirationTime=we+Math.max(De,3e4):Se=!0}else Se=!0;Se?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}}getExpiryTimeout(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-new Date().getTime(),Math.pow(2,31)-1)}setFeatureState(R,ae){if(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(R).length===0)return;let we=this.latestFeatureIndex.loadVTLayers();for(let Se in this.buckets){if(!ae.style.hasLayer(Se))continue;let De=this.buckets[Se],ft=De.layers[0].sourceLayer||"_geojsonTileLayer",bt=we[ft],Dt=R[ft];if(!bt||!Dt||Object.keys(Dt).length===0)continue;De.update(Dt,bt,this.imageAtlas&&this.imageAtlas.patternPositions||{});let Yt=ae&&ae.style&&ae.style.getLayer(Se);Yt&&(this.queryPadding=Math.max(this.queryPadding,Yt.queryRadius(De)))}}holdingForFade(){return this.symbolFadeHoldUntil!==void 0}symbolFadeFinished(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<i.now()}clearFadeHold(){this.symbolFadeHoldUntil=void 0}setHoldDuration(R){this.symbolFadeHoldUntil=i.now()+R}setDependencies(R,ae){let we={};for(let Se of ae)we[Se]=!0;this.dependencies[R]=we}hasDependency(R,ae){for(let we of R){let Se=this.dependencies[we];if(Se){for(let De of ae)if(Se[De])return!0}}return!1}}class Qe{constructor(R,ae){this.max=R,this.onRemove=ae,this.reset()}reset(){for(let R in this.data)for(let ae of this.data[R])ae.timeout&&clearTimeout(ae.timeout),this.onRemove(ae.value);return this.data={},this.order=[],this}add(R,ae,we){let Se=R.wrapped().key;this.data[Se]===void 0&&(this.data[Se]=[]);let De={value:ae,timeout:void 0};if(we!==void 0&&(De.timeout=setTimeout(()=>{this.remove(R,De)},we)),this.data[Se].push(De),this.order.push(Se),this.order.length>this.max){let ft=this._getAndRemoveByKey(this.order[0]);ft&&this.onRemove(ft)}return this}has(R){return R.wrapped().key in this.data}getAndRemove(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null}_getAndRemoveByKey(R){let ae=this.data[R].shift();return ae.timeout&&clearTimeout(ae.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),ae.value}getByKey(R){let ae=this.data[R];return ae?ae[0].value:null}get(R){return this.has(R)?this.data[R.wrapped().key][0].value:null}remove(R,ae){if(!this.has(R))return this;let we=R.wrapped().key,Se=ae===void 0?0:this.data[we].indexOf(ae),De=this.data[we][Se];return this.data[we].splice(Se,1),De.timeout&&clearTimeout(De.timeout),this.data[we].length===0&&delete this.data[we],this.onRemove(De.value),this.order.splice(this.order.indexOf(we),1),this}setMaxSize(R){for(this.max=R;this.order.length>this.max;){let ae=this._getAndRemoveByKey(this.order[0]);ae&&this.onRemove(ae)}return this}filter(R){let ae=[];for(let we in this.data)for(let Se of this.data[we])R(Se.value)||ae.push(Se);for(let we of ae)this.remove(we.value.tileID,we)}}class Ct{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(R,ae,we){let Se=String(ae);if(this.stateChanges[R]=this.stateChanges[R]||{},this.stateChanges[R][Se]=this.stateChanges[R][Se]||{},t.e(this.stateChanges[R][Se],we),this.deletedStates[R]===null){this.deletedStates[R]={};for(let De in this.state[R])De!==Se&&(this.deletedStates[R][De]=null)}else if(this.deletedStates[R]&&this.deletedStates[R][Se]===null){this.deletedStates[R][Se]={};for(let De in this.state[R][Se])we[De]||(this.deletedStates[R][Se][De]=null)}else for(let De in we)this.deletedStates[R]&&this.deletedStates[R][Se]&&this.deletedStates[R][Se][De]===null&&delete this.deletedStates[R][Se][De]}removeFeatureState(R,ae,we){if(this.deletedStates[R]===null)return;let Se=String(ae);if(this.deletedStates[R]=this.deletedStates[R]||{},we&&ae!==void 0)this.deletedStates[R][Se]!==null&&(this.deletedStates[R][Se]=this.deletedStates[R][Se]||{},this.deletedStates[R][Se][we]=null);else if(ae!==void 0)if(this.stateChanges[R]&&this.stateChanges[R][Se])for(we in this.deletedStates[R][Se]={},this.stateChanges[R][Se])this.deletedStates[R][Se][we]=null;else this.deletedStates[R][Se]=null;else this.deletedStates[R]=null}getState(R,ae){let we=String(ae),Se=t.e({},(this.state[R]||{})[we],(this.stateChanges[R]||{})[we]);if(this.deletedStates[R]===null)return{};if(this.deletedStates[R]){let De=this.deletedStates[R][ae];if(De===null)return{};for(let ft in De)delete Se[ft]}return Se}initializeTileState(R,ae){R.setFeatureState(this.state,ae)}coalesceChanges(R,ae){let we={};for(let Se in this.stateChanges){this.state[Se]=this.state[Se]||{};let De={};for(let ft in this.stateChanges[Se])this.state[Se][ft]||(this.state[Se][ft]={}),t.e(this.state[Se][ft],this.stateChanges[Se][ft]),De[ft]=this.state[Se][ft];we[Se]=De}for(let Se in this.deletedStates){this.state[Se]=this.state[Se]||{};let De={};if(this.deletedStates[Se]===null)for(let ft in this.state[Se])De[ft]={},this.state[Se][ft]={};else for(let ft in this.deletedStates[Se]){if(this.deletedStates[Se][ft]===null)this.state[Se][ft]={};else for(let bt of Object.keys(this.deletedStates[Se][ft]))delete this.state[Se][ft][bt];De[ft]=this.state[Se][ft]}we[Se]=we[Se]||{},t.e(we[Se],De)}if(this.stateChanges={},this.deletedStates={},Object.keys(we).length!==0)for(let Se in R)R[Se].setFeatureState(we,ae)}}class St extends t.E{constructor(R,ae,we){super(),this.id=R,this.dispatcher=we,this.on("data",Se=>this._dataHandler(Se)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((Se,De,ft,bt)=>{let Dt=new(Me(De.type))(Se,De,ft,bt);if(Dt.id!==Se)throw new Error(`Expected Source id to be ${Se} instead of ${Dt.id}`);return Dt})(R,ae,we,this),this._tiles={},this._cache=new Qe(0,Se=>this._unloadTile(Se)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new Ct,this._didEmitContent=!1,this._updated=!1}onAdd(R){this.map=R,this._maxTileCacheSize=R?R._maxTileCacheSize:null,this._maxTileCacheZoomLevels=R?R._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(R)}onRemove(R){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(R)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let R in this._tiles){let ae=this._tiles[R];if(ae.state!=="loaded"&&ae.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let R=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,R&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(R,ae,we){return t._(this,void 0,void 0,function*(){try{yield this._source.loadTile(R),this._tileLoaded(R,ae,we)}catch(Se){R.state="errored",Se.status!==404?this._source.fire(new t.j(Se,{tile:R})):this.update(this.transform,this.terrain)}})}_unloadTile(R){this._source.unloadTile&&this._source.unloadTile(R)}_abortTile(R){this._source.abortTile&&this._source.abortTile(R),this._source.fire(new t.k("dataabort",{tile:R,coord:R.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(R){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let ae in this._tiles){let we=this._tiles[ae];we.upload(R),we.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(R=>R.tileID).sort(Ot).map(R=>R.key)}getRenderableIds(R){let ae=[];for(let we in this._tiles)this._isIdRenderable(we,R)&&ae.push(this._tiles[we]);return R?ae.sort((we,Se)=>{let De=we.tileID,ft=Se.tileID,bt=new t.P(De.canonical.x,De.canonical.y)._rotate(this.transform.angle),Dt=new t.P(ft.canonical.x,ft.canonical.y)._rotate(this.transform.angle);return De.overscaledZ-ft.overscaledZ||Dt.y-bt.y||Dt.x-bt.x}).map(we=>we.tileID.key):ae.map(we=>we.tileID).sort(Ot).map(we=>we.key)}hasRenderableParent(R){let ae=this.findLoadedParent(R,0);return!!ae&&this._isIdRenderable(ae.tileID.key)}_isIdRenderable(R,ae){return this._tiles[R]&&this._tiles[R].hasData()&&!this._coveredTiles[R]&&(ae||!this._tiles[R].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let R in this._tiles)this._tiles[R].state!=="errored"&&this._reloadTile(R,"reloading")}}_reloadTile(R,ae){return t._(this,void 0,void 0,function*(){let we=this._tiles[R];we&&(we.state!=="loading"&&(we.state=ae),yield this._loadTile(we,R,ae))})}_tileLoaded(R,ae,we){R.timeAdded=i.now(),we==="expired"&&(R.refreshedUponExpiration=!0),this._setTileReloadTimer(ae,R),this.getSource().type==="raster-dem"&&R.dem&&this._backfillDEM(R),this._state.initializeTileState(R,this.map?this.map.painter:null),R.aborted||this._source.fire(new t.k("data",{dataType:"source",tile:R,coord:R.tileID}))}_backfillDEM(R){let ae=this.getRenderableIds();for(let Se=0;Se<ae.length;Se++){let De=ae[Se];if(R.neighboringTiles&&R.neighboringTiles[De]){let ft=this.getTileByID(De);we(R,ft),we(ft,R)}}function we(Se,De){Se.needsHillshadePrepare=!0,Se.needsTerrainPrepare=!0;let ft=De.tileID.canonical.x-Se.tileID.canonical.x,bt=De.tileID.canonical.y-Se.tileID.canonical.y,Dt=Math.pow(2,Se.tileID.canonical.z),Yt=De.tileID.key;ft===0&&bt===0||Math.abs(bt)>1||(Math.abs(ft)>1&&(Math.abs(ft+Dt)===1?ft+=Dt:Math.abs(ft-Dt)===1&&(ft-=Dt)),De.dem&&Se.dem&&(Se.dem.backfillBorder(De.dem,ft,bt),Se.neighboringTiles&&Se.neighboringTiles[Yt]&&(Se.neighboringTiles[Yt].backfilled=!0)))}}getTile(R){return this.getTileByID(R.key)}getTileByID(R){return this._tiles[R]}_retainLoadedChildren(R,ae,we,Se){for(let De in this._tiles){let ft=this._tiles[De];if(Se[De]||!ft.hasData()||ft.tileID.overscaledZ<=ae||ft.tileID.overscaledZ>we)continue;let bt=ft.tileID;for(;ft&&ft.tileID.overscaledZ>ae+1;){let Yt=ft.tileID.scaledTo(ft.tileID.overscaledZ-1);ft=this._tiles[Yt.key],ft&&ft.hasData()&&(bt=Yt)}let Dt=bt;for(;Dt.overscaledZ>ae;)if(Dt=Dt.scaledTo(Dt.overscaledZ-1),R[Dt.key]){Se[bt.key]=bt;break}}}findLoadedParent(R,ae){if(R.key in this._loadedParentTiles){let we=this._loadedParentTiles[R.key];return we&&we.tileID.overscaledZ>=ae?we:null}for(let we=R.overscaledZ-1;we>=ae;we--){let Se=R.scaledTo(we),De=this._getLoadedTile(Se);if(De)return De}}findLoadedSibling(R){return this._getLoadedTile(R)}_getLoadedTile(R){let ae=this._tiles[R.key];return ae&&ae.hasData()?ae:this._cache.getByKey(R.wrapped().key)}updateCacheSize(R){let ae=Math.ceil(R.width/this._source.tileSize)+1,we=Math.ceil(R.height/this._source.tileSize)+1,Se=Math.floor(ae*we*(this._maxTileCacheZoomLevels===null?t.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),De=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Se):Se;this._cache.setMaxSize(De)}handleWrapJump(R){let ae=Math.round((R-(this._prevLng===void 0?R:this._prevLng))/360);if(this._prevLng=R,ae){let we={};for(let Se in this._tiles){let De=this._tiles[Se];De.tileID=De.tileID.unwrapTo(De.tileID.wrap+ae),we[De.tileID.key]=De}this._tiles=we;for(let Se in this._timers)clearTimeout(this._timers[Se]),delete this._timers[Se];for(let Se in this._tiles)this._setTileReloadTimer(Se,this._tiles[Se])}}_updateCoveredAndRetainedTiles(R,ae,we,Se,De,ft){let bt={},Dt={},Yt=Object.keys(R),cr=i.now();for(let hr of Yt){let jr=R[hr],ea=this._tiles[hr];if(!ea||ea.fadeEndTime!==0&&ea.fadeEndTime<=cr)continue;let qe=this.findLoadedParent(jr,ae),Je=this.findLoadedSibling(jr),ot=qe||Je||null;ot&&(this._addTile(ot.tileID),bt[ot.tileID.key]=ot.tileID),Dt[hr]=jr}this._retainLoadedChildren(Dt,Se,we,R);for(let hr in bt)R[hr]||(this._coveredTiles[hr]=!0,R[hr]=bt[hr]);if(ft){let hr={},jr={};for(let ea of De)this._tiles[ea.key].hasData()?hr[ea.key]=ea:jr[ea.key]=ea;for(let ea in jr){let qe=jr[ea].children(this._source.maxzoom);this._tiles[qe[0].key]&&this._tiles[qe[1].key]&&this._tiles[qe[2].key]&&this._tiles[qe[3].key]&&(hr[qe[0].key]=R[qe[0].key]=qe[0],hr[qe[1].key]=R[qe[1].key]=qe[1],hr[qe[2].key]=R[qe[2].key]=qe[2],hr[qe[3].key]=R[qe[3].key]=qe[3],delete jr[ea])}for(let ea in jr){let qe=jr[ea],Je=this.findLoadedParent(qe,this._source.minzoom),ot=this.findLoadedSibling(qe),ht=Je||ot||null;if(ht){hr[ht.tileID.key]=R[ht.tileID.key]=ht.tileID;for(let At in hr)hr[At].isChildOf(ht.tileID)&&delete hr[At]}}for(let ea in this._tiles)hr[ea]||(this._coveredTiles[ea]=!0)}}update(R,ae){if(!this._sourceLoaded||this._paused)return;let we;this.transform=R,this.terrain=ae,this.updateCacheSize(R),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?we=R.getVisibleUnwrappedCoordinates(this._source.tileID).map(cr=>new t.S(cr.canonical.z,cr.wrap,cr.canonical.z,cr.canonical.x,cr.canonical.y)):(we=R.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:ae}),this._source.hasTile&&(we=we.filter(cr=>this._source.hasTile(cr)))):we=[];let Se=R.coveringZoomLevel(this._source),De=Math.max(Se-St.maxOverzooming,this._source.minzoom),ft=Math.max(Se+St.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let cr={};for(let hr of we)if(hr.canonical.z>this._source.minzoom){let jr=hr.scaledTo(hr.canonical.z-1);cr[jr.key]=jr;let ea=hr.scaledTo(Math.max(this._source.minzoom,Math.min(hr.canonical.z,5)));cr[ea.key]=ea}we=we.concat(Object.values(cr))}let bt=we.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,bt&&this.fire(new t.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let Dt=this._updateRetainedTiles(we,Se);jt(this._source.type)&&this._updateCoveredAndRetainedTiles(Dt,De,ft,Se,we,ae);for(let cr in Dt)this._tiles[cr].clearFadeHold();let Yt=t.ab(this._tiles,Dt);for(let cr of Yt){let hr=this._tiles[cr];hr.hasSymbolBuckets&&!hr.holdingForFade()?hr.setHoldDuration(this.map._fadeDuration):hr.hasSymbolBuckets&&!hr.symbolFadeFinished()||this._removeTile(cr)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let R in this._tiles)this._tiles[R].holdingForFade()&&this._removeTile(R)}_updateRetainedTiles(R,ae){var we;let Se={},De={},ft=Math.max(ae-St.maxOverzooming,this._source.minzoom),bt=Math.max(ae+St.maxUnderzooming,this._source.minzoom),Dt={};for(let Yt of R){let cr=this._addTile(Yt);Se[Yt.key]=Yt,cr.hasData()||ae<this._source.maxzoom&&(Dt[Yt.key]=Yt)}this._retainLoadedChildren(Dt,ae,bt,Se);for(let Yt of R){let cr=this._tiles[Yt.key];if(cr.hasData())continue;if(ae+1>this._source.maxzoom){let jr=Yt.children(this._source.maxzoom)[0],ea=this.getTile(jr);if(ea&&ea.hasData()){Se[jr.key]=jr;continue}}else{let jr=Yt.children(this._source.maxzoom);if(Se[jr[0].key]&&Se[jr[1].key]&&Se[jr[2].key]&&Se[jr[3].key])continue}let hr=cr.wasRequested();for(let jr=Yt.overscaledZ-1;jr>=ft;--jr){let ea=Yt.scaledTo(jr);if(De[ea.key])break;if(De[ea.key]=!0,cr=this.getTile(ea),!cr&&hr&&(cr=this._addTile(ea)),cr){let qe=cr.hasData();if((qe||!(!((we=this.map)===null||we===void 0)&&we.cancelPendingTileRequestsWhileZooming)||hr)&&(Se[ea.key]=ea),hr=cr.wasRequested(),qe)break}}}return Se}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let R in this._tiles){let ae=[],we,Se=this._tiles[R].tileID;for(;Se.overscaledZ>0;){if(Se.key in this._loadedParentTiles){we=this._loadedParentTiles[Se.key];break}ae.push(Se.key);let De=Se.scaledTo(Se.overscaledZ-1);if(we=this._getLoadedTile(De),we)break;Se=De}for(let De of ae)this._loadedParentTiles[De]=we}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let R in this._tiles){let ae=this._tiles[R].tileID,we=this._getLoadedTile(ae);this._loadedSiblingTiles[ae.key]=we}}_addTile(R){let ae=this._tiles[R.key];if(ae)return ae;ae=this._cache.getAndRemove(R),ae&&(this._setTileReloadTimer(R.key,ae),ae.tileID=R,this._state.initializeTileState(ae,this.map?this.map.painter:null),this._cacheTimers[R.key]&&(clearTimeout(this._cacheTimers[R.key]),delete this._cacheTimers[R.key],this._setTileReloadTimer(R.key,ae)));let we=ae;return ae||(ae=new nt(R,this._source.tileSize*R.overscaleFactor()),this._loadTile(ae,R.key,ae.state)),ae.uses++,this._tiles[R.key]=ae,we||this._source.fire(new t.k("dataloading",{tile:ae,coord:ae.tileID,dataType:"source"})),ae}_setTileReloadTimer(R,ae){R in this._timers&&(clearTimeout(this._timers[R]),delete this._timers[R]);let we=ae.getExpiryTimeout();we&&(this._timers[R]=setTimeout(()=>{this._reloadTile(R,"expired"),delete this._timers[R]},we))}_removeTile(R){let ae=this._tiles[R];ae&&(ae.uses--,delete this._tiles[R],this._timers[R]&&(clearTimeout(this._timers[R]),delete this._timers[R]),ae.uses>0||(ae.hasData()&&ae.state!=="reloading"?this._cache.add(ae.tileID,ae,ae.getExpiryTimeout()):(ae.aborted=!0,this._abortTile(ae),this._unloadTile(ae))))}_dataHandler(R){let ae=R.sourceDataType;R.dataType==="source"&&ae==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&R.dataType==="source"&&ae==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let R in this._tiles)this._removeTile(R);this._cache.reset()}tilesIn(R,ae,we){let Se=[],De=this.transform;if(!De)return Se;let ft=we?De.getCameraQueryGeometry(R):R,bt=R.map(qe=>De.pointCoordinate(qe,this.terrain)),Dt=ft.map(qe=>De.pointCoordinate(qe,this.terrain)),Yt=this.getIds(),cr=1/0,hr=1/0,jr=-1/0,ea=-1/0;for(let qe of Dt)cr=Math.min(cr,qe.x),hr=Math.min(hr,qe.y),jr=Math.max(jr,qe.x),ea=Math.max(ea,qe.y);for(let qe=0;qe<Yt.length;qe++){let Je=this._tiles[Yt[qe]];if(Je.holdingForFade())continue;let ot=Je.tileID,ht=Math.pow(2,De.zoom-Je.tileID.overscaledZ),At=ae*Je.queryPadding*t.X/Je.tileSize/ht,_t=[ot.getTilePoint(new t.Z(cr,hr)),ot.getTilePoint(new t.Z(jr,ea))];if(_t[0].x-At<t.X&&_t[0].y-At<t.X&&_t[1].x+At>=0&&_t[1].y+At>=0){let Pt=bt.map(nr=>ot.getTilePoint(nr)),er=Dt.map(nr=>ot.getTilePoint(nr));Se.push({tile:Je,tileID:ot,queryGeometry:Pt,cameraQueryGeometry:er,scale:ht})}}return Se}getVisibleCoordinates(R){let ae=this.getRenderableIds(R).map(we=>this._tiles[we].tileID);for(let we of ae)we.posMatrix=this.transform.calculatePosMatrix(we.toUnwrapped());return ae}hasTransition(){if(this._source.hasTransition())return!0;if(jt(this._source.type)){let R=i.now();for(let ae in this._tiles)if(this._tiles[ae].fadeEndTime>=R)return!0}return!1}setFeatureState(R,ae,we){this._state.updateState(R=R||"_geojsonTileLayer",ae,we)}removeFeatureState(R,ae,we){this._state.removeFeatureState(R=R||"_geojsonTileLayer",ae,we)}getFeatureState(R,ae){return this._state.getState(R=R||"_geojsonTileLayer",ae)}setDependencies(R,ae,we){let Se=this._tiles[R];Se&&Se.setDependencies(ae,we)}reloadTilesForDependencies(R,ae){for(let we in this._tiles)this._tiles[we].hasDependency(R,ae)&&this._reloadTile(we,"reloading");this._cache.filter(we=>!we.hasDependency(R,ae))}}function Ot(Oe,R){let ae=Math.abs(2*Oe.wrap)-+(Oe.wrap<0),we=Math.abs(2*R.wrap)-+(R.wrap<0);return Oe.overscaledZ-R.overscaledZ||we-ae||R.canonical.y-Oe.canonical.y||R.canonical.x-Oe.canonical.x}function jt(Oe){return Oe==="raster"||Oe==="image"||Oe==="video"}St.maxOverzooming=10,St.maxUnderzooming=3;class ur{constructor(R,ae){this.reset(R,ae)}reset(R,ae){this.points=R||[],this._distances=[0];for(let we=1;we<this.points.length;we++)this._distances[we]=this._distances[we-1]+this.points[we].dist(this.points[we-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(ae||0,.5*this.length),this.paddedLength=this.length-2*this.padding}lerp(R){if(this.points.length===1)return this.points[0];R=t.ac(R,0,1);let ae=1,we=this._distances[ae],Se=R*this.paddedLength+this.padding;for(;we<Se&&ae<this._distances.length;)we=this._distances[++ae];let De=ae-1,ft=this._distances[De],bt=we-ft,Dt=bt>0?(Se-ft)/bt:0;return this.points[De].mult(1-Dt).add(this.points[ae].mult(Dt))}}function ar(Oe,R){let ae=!0;return Oe==="always"||Oe!=="never"&&R!=="never"||(ae=!1),ae}class Cr{constructor(R,ae,we){let Se=this.boxCells=[],De=this.circleCells=[];this.xCellCount=Math.ceil(R/we),this.yCellCount=Math.ceil(ae/we);for(let ft=0;ft<this.xCellCount*this.yCellCount;ft++)Se.push([]),De.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=R,this.height=ae,this.xScale=this.xCellCount/R,this.yScale=this.yCellCount/ae,this.boxUid=0,this.circleUid=0}keysLength(){return this.boxKeys.length+this.circleKeys.length}insert(R,ae,we,Se,De){this._forEachCell(ae,we,Se,De,this._insertBoxCell,this.boxUid++),this.boxKeys.push(R),this.bboxes.push(ae),this.bboxes.push(we),this.bboxes.push(Se),this.bboxes.push(De)}insertCircle(R,ae,we,Se){this._forEachCell(ae-Se,we-Se,ae+Se,we+Se,this._insertCircleCell,this.circleUid++),this.circleKeys.push(R),this.circles.push(ae),this.circles.push(we),this.circles.push(Se)}_insertBoxCell(R,ae,we,Se,De,ft){this.boxCells[De].push(ft)}_insertCircleCell(R,ae,we,Se,De,ft){this.circleCells[De].push(ft)}_query(R,ae,we,Se,De,ft,bt){if(we<0||R>this.width||Se<0||ae>this.height)return[];let Dt=[];if(R<=0&&ae<=0&&this.width<=we&&this.height<=Se){if(De)return[{key:null,x1:R,y1:ae,x2:we,y2:Se}];for(let Yt=0;Yt<this.boxKeys.length;Yt++)Dt.push({key:this.boxKeys[Yt],x1:this.bboxes[4*Yt],y1:this.bboxes[4*Yt+1],x2:this.bboxes[4*Yt+2],y2:this.bboxes[4*Yt+3]});for(let Yt=0;Yt<this.circleKeys.length;Yt++){let cr=this.circles[3*Yt],hr=this.circles[3*Yt+1],jr=this.circles[3*Yt+2];Dt.push({key:this.circleKeys[Yt],x1:cr-jr,y1:hr-jr,x2:cr+jr,y2:hr+jr})}}else this._forEachCell(R,ae,we,Se,this._queryCell,Dt,{hitTest:De,overlapMode:ft,seenUids:{box:{},circle:{}}},bt);return Dt}query(R,ae,we,Se){return this._query(R,ae,we,Se,!1,null)}hitTest(R,ae,we,Se,De,ft){return this._query(R,ae,we,Se,!0,De,ft).length>0}hitTestCircle(R,ae,we,Se,De){let ft=R-we,bt=R+we,Dt=ae-we,Yt=ae+we;if(bt<0||ft>this.width||Yt<0||Dt>this.height)return!1;let cr=[];return this._forEachCell(ft,Dt,bt,Yt,this._queryCellCircle,cr,{hitTest:!0,overlapMode:Se,circle:{x:R,y:ae,radius:we},seenUids:{box:{},circle:{}}},De),cr.length>0}_queryCell(R,ae,we,Se,De,ft,bt,Dt){let{seenUids:Yt,hitTest:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!Yt.box[Je]){Yt.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(R<=qe[ot+2]&&ae<=qe[ot+3]&&we>=qe[ot+0]&&Se>=qe[ot+1]&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))&&(ft.push({key:ht,x1:qe[ot],y1:qe[ot+1],x2:qe[ot+2],y2:qe[ot+3]}),cr))return!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!Yt.circle[Je]){Yt.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circleAndRectCollide(qe[ot],qe[ot+1],qe[ot+2],R,ae,we,Se)&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))){let At=qe[ot],_t=qe[ot+1],Pt=qe[ot+2];if(ft.push({key:ht,x1:At-Pt,y1:_t-Pt,x2:At+Pt,y2:_t+Pt}),cr)return!0}}}return!1}_queryCellCircle(R,ae,we,Se,De,ft,bt,Dt){let{circle:Yt,seenUids:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!cr.box[Je]){cr.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(this._circleAndRectCollide(Yt.x,Yt.y,Yt.radius,qe[ot+0],qe[ot+1],qe[ot+2],qe[ot+3])&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!cr.circle[Je]){cr.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circlesCollide(qe[ot],qe[ot+1],qe[ot+2],Yt.x,Yt.y,Yt.radius)&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}}_forEachCell(R,ae,we,Se,De,ft,bt,Dt){let Yt=this._convertToXCellCoord(R),cr=this._convertToYCellCoord(ae),hr=this._convertToXCellCoord(we),jr=this._convertToYCellCoord(Se);for(let ea=Yt;ea<=hr;ea++)for(let qe=cr;qe<=jr;qe++)if(De.call(this,R,ae,we,Se,this.xCellCount*qe+ea,ft,bt,Dt))return}_convertToXCellCoord(R){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(R*this.xScale)))}_convertToYCellCoord(R){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(R*this.yScale)))}_circlesCollide(R,ae,we,Se,De,ft){let bt=Se-R,Dt=De-ae,Yt=we+ft;return Yt*Yt>bt*bt+Dt*Dt}_circleAndRectCollide(R,ae,we,Se,De,ft,bt){let Dt=(ft-Se)/2,Yt=Math.abs(R-(Se+Dt));if(Yt>Dt+we)return!1;let cr=(bt-De)/2,hr=Math.abs(ae-(De+cr));if(hr>cr+we)return!1;if(Yt<=Dt||hr<=cr)return!0;let jr=Yt-Dt,ea=hr-cr;return jr*jr+ea*ea<=we*we}}function vr(Oe,R,ae,we,Se){let De=t.H();return R?(t.K(De,De,[1/Se,1/Se,1]),ae||t.ad(De,De,we.angle)):t.L(De,we.labelPlaneMatrix,Oe),De}function _r(Oe,R,ae,we,Se){if(R){let De=t.ae(Oe);return t.K(De,De,[Se,Se,1]),ae||t.ad(De,De,-we.angle),De}return we.glCoordMatrix}function yt(Oe,R,ae,we){let Se;we?(Se=[Oe,R,we(Oe,R),1],t.af(Se,Se,ae)):(Se=[Oe,R,0,1],Kt(Se,Se,ae));let De=Se[3];return{point:new t.P(Se[0]/De,Se[1]/De),signedDistanceFromCamera:De,isOccluded:!1}}function Fe(Oe,R){return .5+Oe/R*.5}function Ke(Oe,R){return Oe.x>=-R[0]&&Oe.x<=R[0]&&Oe.y>=-R[1]&&Oe.y<=R[1]}function Ne(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe){let Je=we?Oe.textSizeData:Oe.iconSizeData,ot=t.ag(Je,ae.transform.zoom),ht=[256/ae.width*2+1,256/ae.height*2+1],At=we?Oe.text.dynamicLayoutVertexArray:Oe.icon.dynamicLayoutVertexArray;At.clear();let _t=Oe.lineVertexArray,Pt=we?Oe.text.placedSymbolArray:Oe.icon.placedSymbolArray,er=ae.transform.width/ae.transform.height,nr=!1;for(let pr=0;pr<Pt.length;pr++){let Sr=Pt.get(pr);if(Sr.hidden||Sr.writingMode===t.ah.vertical&&!nr){Gt(Sr.numGlyphs,At);continue}nr=!1;let Wr=yt(Sr.anchorX,Sr.anchorY,R,qe);if(!Ke(Wr.point,ht)){Gt(Sr.numGlyphs,At);continue}let ha=Fe(ae.transform.cameraToCenterDistance,Wr.signedDistanceFromCamera),ga=t.ai(Je,ot,Sr),Pa=ft?ga/ha:ga*ha,Ja={getElevation:qe,labelPlaneMatrix:Se,lineVertexArray:_t,pitchWithMap:ft,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:Yt,tileAnchorPoint:new t.P(Sr.anchorX,Sr.anchorY),unwrappedTileID:cr,width:hr,height:jr,translation:ea},di=ke(Ja,Sr,Pa,!1,bt,R,De,Oe.glyphOffsetArray,At,er,Dt);nr=di.useVertical,(di.notEnoughRoom||nr||di.needsFlipping&&ke(Ja,Sr,Pa,!0,bt,R,De,Oe.glyphOffsetArray,At,er,Dt).notEnoughRoom)&&Gt(Sr.numGlyphs,At)}we?Oe.text.dynamicLayoutVertexBuffer.updateData(At):Oe.icon.dynamicLayoutVertexBuffer.updateData(At)}function Ee(Oe,R,ae,we,Se,De,ft,bt){let Dt=De.glyphStartIndex+De.numGlyphs,Yt=De.lineStartIndex,cr=De.lineStartIndex+De.lineLength,hr=R.getoffsetX(De.glyphStartIndex),jr=R.getoffsetX(Dt-1),ea=It(Oe*hr,ae,we,Se,De.segment,Yt,cr,bt,ft);if(!ea)return null;let qe=It(Oe*jr,ae,we,Se,De.segment,Yt,cr,bt,ft);return qe?bt.projectionCache.anyProjectionOccluded?null:{first:ea,last:qe}:null}function Ve(Oe,R,ae,we){return Oe===t.ah.horizontal&&Math.abs(ae.y-R.y)>Math.abs(ae.x-R.x)*we?{useVertical:!0}:(Oe===t.ah.vertical?R.y<ae.y:R.x>ae.x)?{needsFlipping:!0}:null}function ke(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=ae/24,jr=R.lineOffsetX*hr,ea=R.lineOffsetY*hr,qe;if(R.numGlyphs>1){let Je=R.glyphStartIndex+R.numGlyphs,ot=R.lineStartIndex,ht=R.lineStartIndex+R.lineLength,At=Ee(hr,bt,jr,ea,we,R,cr,Oe);if(!At)return{notEnoughRoom:!0};let _t=yt(At.first.point.x,At.first.point.y,ft,Oe.getElevation).point,Pt=yt(At.last.point.x,At.last.point.y,ft,Oe.getElevation).point;if(Se&&!we){let er=Ve(R.writingMode,_t,Pt,Yt);if(er)return er}qe=[At.first];for(let er=R.glyphStartIndex+1;er<Je-1;er++)qe.push(It(hr*bt.getoffsetX(er),jr,ea,we,R.segment,ot,ht,Oe,cr));qe.push(At.last)}else{if(Se&&!we){let ot=yt(Oe.tileAnchorPoint.x,Oe.tileAnchorPoint.y,De,Oe.getElevation).point,ht=R.lineStartIndex+R.segment+1,At=new t.P(Oe.lineVertexArray.getx(ht),Oe.lineVertexArray.gety(ht)),_t=yt(At.x,At.y,De,Oe.getElevation),Pt=_t.signedDistanceFromCamera>0?_t.point:function(nr,pr,Sr,Wr,ha,ga){return Te(nr,pr,Sr,1,ha,ga)}(Oe.tileAnchorPoint,At,ot,0,De,Oe),er=Ve(R.writingMode,ot,Pt,Yt);if(er)return er}let Je=It(hr*bt.getoffsetX(R.glyphStartIndex),jr,ea,we,R.segment,R.lineStartIndex,R.lineStartIndex+R.lineLength,Oe,cr);if(!Je||Oe.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};qe=[Je]}for(let Je of qe)t.aj(Dt,Je.point,Je.angle);return{}}function Te(Oe,R,ae,we,Se,De){let ft=Oe.add(Oe.sub(R)._unit()),bt=Se!==void 0?yt(ft.x,ft.y,Se,De.getElevation).point:rt(ft.x,ft.y,De).point,Dt=ae.sub(bt);return ae.add(Dt._mult(we/Dt.mag()))}function Le(Oe,R,ae){let we=R.projectionCache;if(we.projections[Oe])return we.projections[Oe];let Se=new t.P(R.lineVertexArray.getx(Oe),R.lineVertexArray.gety(Oe)),De=rt(Se.x,Se.y,R);if(De.signedDistanceFromCamera>0)return we.projections[Oe]=De.point,we.anyProjectionOccluded=we.anyProjectionOccluded||De.isOccluded,De.point;let ft=Oe-ae.direction;return function(bt,Dt,Yt,cr,hr){return Te(bt,Dt,Yt,cr,void 0,hr)}(ae.distanceFromAnchor===0?R.tileAnchorPoint:new t.P(R.lineVertexArray.getx(ft),R.lineVertexArray.gety(ft)),Se,ae.previousVertex,ae.absOffsetX-ae.distanceFromAnchor+1,R)}function rt(Oe,R,ae){let we=Oe+ae.translation[0],Se=R+ae.translation[1],De;return!ae.pitchWithMap&&ae.projection.useSpecialProjectionForSymbols?(De=ae.projection.projectTileCoordinates(we,Se,ae.unwrappedTileID,ae.getElevation),De.point.x=(.5*De.point.x+.5)*ae.width,De.point.y=(.5*-De.point.y+.5)*ae.height):(De=yt(we,Se,ae.labelPlaneMatrix,ae.getElevation),De.isOccluded=!1),De}function dt(Oe,R,ae){return Oe._unit()._perp()._mult(R*ae)}function xt(Oe,R,ae,we,Se,De,ft,bt,Dt){if(bt.projectionCache.offsets[Oe])return bt.projectionCache.offsets[Oe];let Yt=ae.add(R);if(Oe+Dt.direction<we||Oe+Dt.direction>=Se)return bt.projectionCache.offsets[Oe]=Yt,Yt;let cr=Le(Oe+Dt.direction,bt,Dt),hr=dt(cr.sub(ae),ft,Dt.direction),jr=ae.add(hr),ea=cr.add(hr);return bt.projectionCache.offsets[Oe]=t.ak(De,Yt,jr,ea)||Yt,bt.projectionCache.offsets[Oe]}function It(Oe,R,ae,we,Se,De,ft,bt,Dt){let Yt=we?Oe-R:Oe+R,cr=Yt>0?1:-1,hr=0;we&&(cr*=-1,hr=Math.PI),cr<0&&(hr+=Math.PI);let jr,ea=cr>0?De+Se:De+Se+1;bt.projectionCache.cachedAnchorPoint?jr=bt.projectionCache.cachedAnchorPoint:(jr=rt(bt.tileAnchorPoint.x,bt.tileAnchorPoint.y,bt).point,bt.projectionCache.cachedAnchorPoint=jr);let qe,Je,ot=jr,ht=jr,At=0,_t=0,Pt=Math.abs(Yt),er=[],nr;for(;At+_t<=Pt;){if(ea+=cr,ea<De||ea>=ft)return null;At+=_t,ht=ot,Je=qe;let Wr={absOffsetX:Pt,direction:cr,distanceFromAnchor:At,previousVertex:ht};if(ot=Le(ea,bt,Wr),ae===0)er.push(ht),nr=ot.sub(ht);else{let ha,ga=ot.sub(ht);ha=ga.mag()===0?dt(Le(ea+cr,bt,Wr).sub(ot),ae,cr):dt(ga,ae,cr),Je||(Je=ht.add(ha)),qe=xt(ea,ha,ot,De,ft,Je,ae,bt,Wr),er.push(Je),nr=qe.sub(Je)}_t=nr.mag()}let pr=nr._mult((Pt-At)/_t)._add(Je||ht),Sr=hr+Math.atan2(ot.y-ht.y,ot.x-ht.x);return er.push(pr),{point:pr,angle:Dt?Sr:0,path:er}}let Bt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Gt(Oe,R){for(let ae=0;ae<Oe;ae++){let we=R.length;R.resize(we+4),R.float32.set(Bt,3*we)}}function Kt(Oe,R,ae){let we=R[0],Se=R[1];return Oe[0]=ae[0]*we+ae[4]*Se+ae[12],Oe[1]=ae[1]*we+ae[5]*Se+ae[13],Oe[3]=ae[3]*we+ae[7]*Se+ae[15],Oe}let sr=100;class sa{constructor(R,ae,we=new Cr(R.width+200,R.height+200,25),Se=new Cr(R.width+200,R.height+200,25)){this.transform=R,this.mapProjection=ae,this.grid=we,this.ignoredGrid=Se,this.pitchFactor=Math.cos(R._pitch)*R.cameraToCenterDistance,this.screenRightBoundary=R.width+sr,this.screenBottomBoundary=R.height+sr,this.gridRightBoundary=R.width+200,this.gridBottomBoundary=R.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr){let jr=R.anchorPointX+Dt[0],ea=R.anchorPointY+Dt[1],qe=this.projectAndGetPerspectiveRatio(Se,jr,ea,De,cr),Je=we*qe.perspectiveRatio,ot;if(ft||bt)ot=this._projectCollisionBox(R,Je,Se,De,ft,bt,Dt,qe,cr,hr);else{let er=qe.point.x+(hr?hr.x*Je:0),nr=qe.point.y+(hr?hr.y*Je:0);ot={allPointsOccluded:!1,box:[er+R.x1*Je,nr+R.y1*Je,er+R.x2*Je,nr+R.y2*Je]}}let[ht,At,_t,Pt]=ot.box;return this.mapProjection.useSpecialProjectionForSymbols&&(ft?ot.allPointsOccluded:this.mapProjection.isOccluded(jr,ea,De))||qe.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(ht,At,_t,Pt)||ae!=="always"&&this.grid.hitTest(ht,At,_t,Pt,ae,Yt)?{box:[ht,At,_t,Pt],placeable:!1,offscreen:!1}:{box:[ht,At,_t,Pt],placeable:!0,offscreen:this.isOffscreen(ht,At,_t,Pt)}}placeCollisionCircles(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot){let ht=[],At=new t.P(ae.anchorX,ae.anchorY),_t=this.getPerspectiveRatio(ft,At.x,At.y,bt,ot),Pt=(hr?De/_t:De*_t)/t.ap,er={getElevation:ot,labelPlaneMatrix:Dt,lineVertexArray:we,pitchWithMap:hr,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:At,unwrappedTileID:bt,width:this.transform.width,height:this.transform.height,translation:Je},nr=Ee(Pt,Se,ae.lineOffsetX*Pt,ae.lineOffsetY*Pt,!1,ae,!1,er),pr=!1,Sr=!1,Wr=!0;if(nr){let ha=.5*ea*_t+qe,ga=new t.P(-100,-100),Pa=new t.P(this.screenRightBoundary,this.screenBottomBoundary),Ja=new ur,di=nr.first,pi=nr.last,Ci=[];for(let Sn=di.path.length-1;Sn>=1;Sn--)Ci.push(di.path[Sn]);for(let Sn=1;Sn<pi.path.length;Sn++)Ci.push(pi.path[Sn]);let $i=2.5*ha;if(Yt){let Sn=this.projectPathToScreenSpace(Ci,er,Yt);Ci=Sn.some(ho=>ho.signedDistanceFromCamera<=0)?[]:Sn.map(ho=>ho.point)}let Bn=[];if(Ci.length>0){let Sn=Ci[0].clone(),ho=Ci[0].clone();for(let ts=1;ts<Ci.length;ts++)Sn.x=Math.min(Sn.x,Ci[ts].x),Sn.y=Math.min(Sn.y,Ci[ts].y),ho.x=Math.max(ho.x,Ci[ts].x),ho.y=Math.max(ho.y,Ci[ts].y);Bn=Sn.x>=ga.x&&ho.x<=Pa.x&&Sn.y>=ga.y&&ho.y<=Pa.y?[Ci]:ho.x<ga.x||Sn.x>Pa.x||ho.y<ga.y||Sn.y>Pa.y?[]:t.al([Ci],ga.x,ga.y,Pa.x,Pa.y)}for(let Sn of Bn){Ja.reset(Sn,.25*ha);let ho=0;ho=Ja.length<=.5*ha?1:Math.ceil(Ja.paddedLength/$i)+1;for(let ts=0;ts<ho;ts++){let yo=ts/Math.max(ho-1,1),Vo=Ja.lerp(yo),ls=Vo.x+sr,rl=Vo.y+sr;ht.push(ls,rl,ha,0);let Ys=ls-ha,Zo=rl-ha,Go=ls+ha,Rl=rl+ha;if(Wr=Wr&&this.isOffscreen(Ys,Zo,Go,Rl),Sr=Sr||this.isInsideGrid(Ys,Zo,Go,Rl),R!=="always"&&this.grid.hitTestCircle(ls,rl,ha,R,jr)&&(pr=!0,!cr))return{circles:[],offscreen:!1,collisionDetected:pr}}}}return{circles:!cr&&pr||!Sr||_t<this.perspectiveRatioCutoff?[]:ht,offscreen:Wr,collisionDetected:pr}}projectPathToScreenSpace(R,ae,we){return R.map(Se=>yt(Se.x,Se.y,we,ae.getElevation))}queryRenderedSymbols(R){if(R.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let ae=[],we=1/0,Se=1/0,De=-1/0,ft=-1/0;for(let cr of R){let hr=new t.P(cr.x+sr,cr.y+sr);we=Math.min(we,hr.x),Se=Math.min(Se,hr.y),De=Math.max(De,hr.x),ft=Math.max(ft,hr.y),ae.push(hr)}let bt=this.grid.query(we,Se,De,ft).concat(this.ignoredGrid.query(we,Se,De,ft)),Dt={},Yt={};for(let cr of bt){let hr=cr.key;if(Dt[hr.bucketInstanceId]===void 0&&(Dt[hr.bucketInstanceId]={}),Dt[hr.bucketInstanceId][hr.featureIndex])continue;let jr=[new t.P(cr.x1,cr.y1),new t.P(cr.x2,cr.y1),new t.P(cr.x2,cr.y2),new t.P(cr.x1,cr.y2)];t.am(ae,jr)&&(Dt[hr.bucketInstanceId][hr.featureIndex]=!0,Yt[hr.bucketInstanceId]===void 0&&(Yt[hr.bucketInstanceId]=[]),Yt[hr.bucketInstanceId].push(hr.featureIndex))}return Yt}insertCollisionBox(R,ae,we,Se,De,ft){(we?this.ignoredGrid:this.grid).insert({bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae},R[0],R[1],R[2],R[3])}insertCollisionCircles(R,ae,we,Se,De,ft){let bt=we?this.ignoredGrid:this.grid,Dt={bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae};for(let Yt=0;Yt<R.length;Yt+=4)bt.insertCircle(Dt,R[Yt],R[Yt+1],R[Yt+2])}projectAndGetPerspectiveRatio(R,ae,we,Se,De){let ft;De?(ft=[ae,we,De(ae,we),1],t.af(ft,ft,R)):(ft=[ae,we,0,1],Kt(ft,ft,R));let bt=ft[3];return{point:new t.P((ft[0]/bt+1)/2*this.transform.width+sr,(-ft[1]/bt+1)/2*this.transform.height+sr),perspectiveRatio:.5+this.transform.cameraToCenterDistance/bt*.5,isOccluded:!1,signedDistanceFromCamera:bt}}getPerspectiveRatio(R,ae,we,Se,De){let ft=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(ae,we,Se,De):yt(ae,we,R,De);return .5+this.transform.cameraToCenterDistance/ft.signedDistanceFromCamera*.5}isOffscreen(R,ae,we,Se){return we<sr||R>=this.screenRightBoundary||Se<sr||ae>this.screenBottomBoundary}isInsideGrid(R,ae,we,Se){return we>=0&&R<this.gridRightBoundary&&Se>=0&&ae<this.gridBottomBoundary}getViewportMatrix(){let R=t.an([]);return t.J(R,R,[-100,-100,0]),R}_projectCollisionBox(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=new t.P(1,0),jr=new t.P(0,1),ea=new t.P(R.anchorPointX+bt[0],R.anchorPointY+bt[1]);if(ft&&!De){let Wr=this.projectAndGetPerspectiveRatio(we,ea.x+1,ea.y,Se,Yt).point.sub(Dt.point).unit(),ha=Math.atan(Wr.y/Wr.x)+(Wr.x<0?Math.PI:0),ga=Math.sin(ha),Pa=Math.cos(ha);hr=new t.P(Pa,ga),jr=new t.P(-ga,Pa)}else if(!ft&&De){let Wr=-this.transform.angle,ha=Math.sin(Wr),ga=Math.cos(Wr);hr=new t.P(ga,ha),jr=new t.P(-ha,ga)}let qe=Dt.point,Je=ae;if(De){qe=ea;let Wr=this.transform.zoom-Math.floor(this.transform.zoom);Je=Math.pow(2,-Wr),Je*=this.mapProjection.getPitchedTextCorrection(this.transform,ea,Se),cr||(Je*=t.ac(.5+Dt.signedDistanceFromCamera/this.transform.cameraToCenterDistance*.5,0,4))}cr&&(qe=qe.add(hr.mult(cr.x*Je)).add(jr.mult(cr.y*Je)));let ot=R.x1*Je,ht=R.x2*Je,At=(ot+ht)/2,_t=R.y1*Je,Pt=R.y2*Je,er=(_t+Pt)/2,nr=[{offsetX:ot,offsetY:_t},{offsetX:At,offsetY:_t},{offsetX:ht,offsetY:_t},{offsetX:ht,offsetY:er},{offsetX:ht,offsetY:Pt},{offsetX:At,offsetY:Pt},{offsetX:ot,offsetY:Pt},{offsetX:ot,offsetY:er}],pr=[];for(let{offsetX:Wr,offsetY:ha}of nr)pr.push(new t.P(qe.x+hr.x*Wr+jr.x*ha,qe.y+hr.y*Wr+jr.y*ha));let Sr=!1;if(De){let Wr=pr.map(ha=>this.projectAndGetPerspectiveRatio(we,ha.x,ha.y,Se,Yt));Sr=Wr.some(ha=>!ha.isOccluded),pr=Wr.map(ha=>ha.point)}else Sr=!0;return{box:t.ao(pr),allPointsOccluded:!Sr}}}function Aa(Oe,R,ae){return R*(t.X/(Oe.tileSize*Math.pow(2,ae-Oe.tileID.overscaledZ)))}class La{constructor(R,ae,we,Se){this.opacity=R?Math.max(0,Math.min(1,R.opacity+(R.placed?ae:-ae))):Se&&we?1:0,this.placed=we}isHidden(){return this.opacity===0&&!this.placed}}class ka{constructor(R,ae,we,Se,De){this.text=new La(R?R.text:null,ae,we,De),this.icon=new La(R?R.icon:null,ae,Se,De)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Ga{constructor(R,ae,we){this.text=R,this.icon=ae,this.skipFade=we}}class Ma{constructor(){this.invProjMatrix=t.H(),this.viewportMatrix=t.H(),this.circles=[]}}class Ua{constructor(R,ae,we,Se,De){this.bucketInstanceId=R,this.featureIndex=ae,this.sourceLayerIndex=we,this.bucketIndex=Se,this.tileID=De}}class ni{constructor(R){this.crossSourceCollisions=R,this.maxGroupID=0,this.collisionGroups={}}get(R){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[R]){let ae=++this.maxGroupID;this.collisionGroups[R]={ID:ae,predicate:we=>we.collisionGroupID===ae}}return this.collisionGroups[R]}}function Wt(Oe,R,ae,we,Se){let{horizontalAlign:De,verticalAlign:ft}=t.au(Oe);return new t.P(-(De-.5)*R+we[0]*Se,-(ft-.5)*ae+we[1]*Se)}class zt{constructor(R,ae,we,Se,De,ft){this.transform=R.clone(),this.terrain=we,this.collisionIndex=new sa(this.transform,ae),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=Se,this.retainedQueryData={},this.collisionGroups=new ni(De),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=ft,ft&&(ft.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(R){let ae=this.terrain;return ae?(we,Se)=>ae.getElevation(R,we,Se):null}getBucketParts(R,ae,we,Se){let De=we.getBucket(ae),ft=we.latestFeatureIndex;if(!De||!ft||ae.id!==De.layerIds[0])return;let bt=we.collisionBoxArray,Dt=De.layers[0].layout,Yt=De.layers[0].paint,cr=Math.pow(2,this.transform.zoom-we.tileID.overscaledZ),hr=we.tileSize/t.X,jr=we.tileID.toUnwrapped(),ea=this.transform.calculatePosMatrix(jr),qe=Dt.get("text-pitch-alignment")==="map",Je=Dt.get("text-rotation-alignment")==="map",ot=Aa(we,1,this.transform.zoom),ht=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("text-translate"),Yt.get("text-translate-anchor")),At=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("icon-translate"),Yt.get("icon-translate-anchor")),_t=vr(ea,qe,Je,this.transform,ot),Pt=null;if(qe){let nr=_r(ea,qe,Je,this.transform,ot);Pt=t.L([],this.transform.labelPlaneMatrix,nr)}this.retainedQueryData[De.bucketInstanceId]=new Ua(De.bucketInstanceId,ft,De.sourceLayerIndex,De.index,we.tileID);let er={bucket:De,layout:Dt,translationText:ht,translationIcon:At,posMatrix:ea,unwrappedTileID:jr,textLabelPlaneMatrix:_t,labelToScreenMatrix:Pt,scale:cr,textPixelRatio:hr,holdingForFade:we.holdingForFade(),collisionBoxArray:bt,partiallyEvaluatedTextSize:t.ag(De.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(De.sourceID)};if(Se)for(let nr of De.sortKeyRanges){let{sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr}=nr;R.push({sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr,parameters:er})}else R.push({symbolInstanceStart:0,symbolInstanceEnd:De.symbolInstances.length,parameters:er})}attemptAnchorPlacement(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At,_t){let Pt=t.aq[R.textAnchor],er=[R.textOffset0,R.textOffset1],nr=Wt(Pt,we,Se,er,De),pr=this.collisionIndex.placeCollisionBox(ae,jr,Dt,Yt,cr,bt,ft,ot,hr.predicate,_t,nr);if((!At||this.collisionIndex.placeCollisionBox(At,jr,Dt,Yt,cr,bt,ft,ht,hr.predicate,_t,nr).placeable)&&pr.placeable){let Sr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID].text&&(Sr=this.prevPlacement.variableOffsets[ea.crossTileID].anchor),ea.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[ea.crossTileID]={textOffset:er,width:we,height:Se,anchor:Pt,textBoxScale:De,prevAnchor:Sr},this.markUsedJustification(qe,Pt,ea,Je),qe.allowVerticalPlacement&&(this.markUsedOrientation(qe,Je,ea),this.placedOrientations[ea.crossTileID]=Je),{shift:nr,placedGlyphBoxes:pr}}}placeLayerBucketPart(R,ae,we){let{bucket:Se,layout:De,translationText:ft,translationIcon:bt,posMatrix:Dt,unwrappedTileID:Yt,textLabelPlaneMatrix:cr,labelToScreenMatrix:hr,textPixelRatio:jr,holdingForFade:ea,collisionBoxArray:qe,partiallyEvaluatedTextSize:Je,collisionGroup:ot}=R.parameters,ht=De.get("text-optional"),At=De.get("icon-optional"),_t=t.ar(De,"text-overlap","text-allow-overlap"),Pt=_t==="always",er=t.ar(De,"icon-overlap","icon-allow-overlap"),nr=er==="always",pr=De.get("text-rotation-alignment")==="map",Sr=De.get("text-pitch-alignment")==="map",Wr=De.get("icon-text-fit")!=="none",ha=De.get("symbol-z-order")==="viewport-y",ga=Pt&&(nr||!Se.hasIconData()||At),Pa=nr&&(Pt||!Se.hasTextData()||ht);!Se.collisionArrays&&qe&&Se.deserializeCollisionBoxes(qe);let Ja=this._getTerrainElevationFunc(this.retainedQueryData[Se.bucketInstanceId].tileID),di=(pi,Ci,$i)=>{var Bn,Sn;if(ae[pi.crossTileID])return;if(ea)return void(this.placements[pi.crossTileID]=new Ga(!1,!1,!1));let ho=!1,ts=!1,yo=!0,Vo=null,ls={box:null,placeable:!1,offscreen:null},rl={box:null,placeable:!1,offscreen:null},Ys=null,Zo=null,Go=null,Rl=0,Xl=0,qu=0;Ci.textFeatureIndex?Rl=Ci.textFeatureIndex:pi.useRuntimeCollisionCircles&&(Rl=pi.featureIndex),Ci.verticalTextFeatureIndex&&(Xl=Ci.verticalTextFeatureIndex);let fu=Ci.textBox;if(fu){let ql=$e=>{let pt=t.ah.horizontal;if(Se.allowVerticalPlacement&&!$e&&this.prevPlacement){let vt=this.prevPlacement.placedOrientations[pi.crossTileID];vt&&(this.placedOrientations[pi.crossTileID]=vt,pt=vt,this.markUsedOrientation(Se,pt,pi))}return pt},Hl=($e,pt)=>{if(Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&Ci.verticalTextBox){for(let vt of Se.writingModes)if(vt===t.ah.vertical?(ls=pt(),rl=ls):ls=$e(),ls&&ls.placeable)break}else ls=$e()},de=pi.textAnchorOffsetStartIndex,Re=pi.textAnchorOffsetEndIndex;if(Re===de){let $e=(pt,vt)=>{let wt=this.collisionIndex.placeCollisionBox(pt,_t,jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja);return wt&&wt.placeable&&(this.markUsedOrientation(Se,vt,pi),this.placedOrientations[pi.crossTileID]=vt),wt};Hl(()=>$e(fu,t.ah.horizontal),()=>{let pt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&pt?$e(pt,t.ah.vertical):{box:null,offscreen:null}}),ql(ls&&ls.placeable)}else{let $e=t.aq[(Sn=(Bn=this.prevPlacement)===null||Bn===void 0?void 0:Bn.variableOffsets[pi.crossTileID])===null||Sn===void 0?void 0:Sn.anchor],pt=(wt,Jt,Rt)=>{let or=wt.x2-wt.x1,Dr=wt.y2-wt.y1,Or=pi.textBoxScale,va=Wr&&er==="never"?Jt:null,fa=null,Va=_t==="never"?1:2,Xa="never";$e&&Va++;for(let _a=0;_a<Va;_a++){for(let Ra=de;Ra<Re;Ra++){let Na=Se.textAnchorOffsets.get(Ra);if($e&&Na.textAnchor!==$e)continue;let Qa=this.attemptAnchorPlacement(Na,wt,or,Dr,Or,pr,Sr,jr,Dt,Yt,ot,Xa,pi,Se,Rt,ft,bt,va,Ja);if(Qa&&(fa=Qa.placedGlyphBoxes,fa&&fa.placeable))return ho=!0,Vo=Qa.shift,fa}$e?$e=null:Xa=_t}return we&&!fa&&(fa={box:this.collisionIndex.placeCollisionBox(fu,"always",jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja,new t.P(0,0)).box,offscreen:!1,placeable:!1}),fa};Hl(()=>pt(fu,Ci.iconBox,t.ah.horizontal),()=>{let wt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&(!ls||!ls.placeable)&&pi.numVerticalGlyphVertices>0&&wt?pt(wt,Ci.verticalIconBox,t.ah.vertical):{box:null,occluded:!0,offscreen:null}}),ls&&(ho=ls.placeable,yo=ls.offscreen);let vt=ql(ls&&ls.placeable);if(!ho&&this.prevPlacement){let wt=this.prevPlacement.variableOffsets[pi.crossTileID];wt&&(this.variableOffsets[pi.crossTileID]=wt,this.markUsedJustification(Se,wt.anchor,pi,vt))}}}if(Ys=ls,ho=Ys&&Ys.placeable,yo=Ys&&Ys.offscreen,pi.useRuntimeCollisionCircles){let ql=Se.text.placedSymbolArray.get(pi.centerJustifiedTextSymbolIndex),Hl=t.ai(Se.textSizeData,Je,ql),de=De.get("text-padding");Zo=this.collisionIndex.placeCollisionCircles(_t,ql,Se.lineVertexArray,Se.glyphOffsetArray,Hl,Dt,Yt,cr,hr,we,Sr,ot.predicate,pi.collisionCircleDiameter,de,ft,Ja),Zo.circles.length&&Zo.collisionDetected&&!we&&t.w("Collisions detected, but collision boxes are not shown"),ho=Pt||Zo.circles.length>0&&!Zo.collisionDetected,yo=yo&&Zo.offscreen}if(Ci.iconFeatureIndex&&(qu=Ci.iconFeatureIndex),Ci.iconBox){let ql=Hl=>this.collisionIndex.placeCollisionBox(Hl,er,jr,Dt,Yt,Sr,pr,bt,ot.predicate,Ja,Wr&&Vo?Vo:void 0);rl&&rl.placeable&&Ci.verticalIconBox?(Go=ql(Ci.verticalIconBox),ts=Go.placeable):(Go=ql(Ci.iconBox),ts=Go.placeable),yo=yo&&Go.offscreen}let bl=ht||pi.numHorizontalGlyphVertices===0&&pi.numVerticalGlyphVertices===0,ou=At||pi.numIconVertices===0;bl||ou?ou?bl||(ts=ts&&ho):ho=ts&&ho:ts=ho=ts&&ho;let Sc=ts&&Go.placeable;if(ho&&Ys.placeable&&this.collisionIndex.insertCollisionBox(Ys.box,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,rl&&rl.placeable&&Xl?Xl:Rl,ot.ID),Sc&&this.collisionIndex.insertCollisionBox(Go.box,er,De.get("icon-ignore-placement"),Se.bucketInstanceId,qu,ot.ID),Zo&&ho&&this.collisionIndex.insertCollisionCircles(Zo.circles,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,Rl,ot.ID),we&&this.storeCollisionData(Se.bucketInstanceId,$i,Ci,Ys,Go,Zo),pi.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(Se.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[pi.crossTileID]=new Ga(ho||ga,ts||Pa,yo||Se.justReloaded),ae[pi.crossTileID]=!0};if(ha){if(R.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let pi=Se.getSortedSymbolIndexes(this.transform.angle);for(let Ci=pi.length-1;Ci>=0;--Ci){let $i=pi[Ci];di(Se.symbolInstances.get($i),Se.collisionArrays[$i],$i)}}else for(let pi=R.symbolInstanceStart;pi<R.symbolInstanceEnd;pi++)di(Se.symbolInstances.get(pi),Se.collisionArrays[pi],pi);if(we&&Se.bucketInstanceId in this.collisionCircleArrays){let pi=this.collisionCircleArrays[Se.bucketInstanceId];t.as(pi.invProjMatrix,Dt),pi.viewportMatrix=this.collisionIndex.getViewportMatrix()}Se.justReloaded=!1}storeCollisionData(R,ae,we,Se,De,ft){if(we.textBox||we.iconBox){let bt,Dt;this.collisionBoxArrays.has(R)?bt=this.collisionBoxArrays.get(R):(bt=new Map,this.collisionBoxArrays.set(R,bt)),bt.has(ae)?Dt=bt.get(ae):(Dt={text:null,icon:null},bt.set(ae,Dt)),we.textBox&&(Dt.text=Se.box),we.iconBox&&(Dt.icon=De.box)}if(ft){let bt=this.collisionCircleArrays[R];bt===void 0&&(bt=this.collisionCircleArrays[R]=new Ma);for(let Dt=0;Dt<ft.circles.length;Dt+=4)bt.circles.push(ft.circles[Dt+0]),bt.circles.push(ft.circles[Dt+1]),bt.circles.push(ft.circles[Dt+2]),bt.circles.push(ft.collisionDetected?1:0)}}markUsedJustification(R,ae,we,Se){let De;De=Se===t.ah.vertical?we.verticalPlacedTextSymbolIndex:{left:we.leftJustifiedTextSymbolIndex,center:we.centerJustifiedTextSymbolIndex,right:we.rightJustifiedTextSymbolIndex}[t.at(ae)];let ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex,we.verticalPlacedTextSymbolIndex];for(let bt of ft)bt>=0&&(R.text.placedSymbolArray.get(bt).crossTileID=De>=0&&bt!==De?0:we.crossTileID)}markUsedOrientation(R,ae,we){let Se=ae===t.ah.horizontal||ae===t.ah.horizontalOnly?ae:0,De=ae===t.ah.vertical?ae:0,ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex];for(let bt of ft)R.text.placedSymbolArray.get(bt).placedOrientation=Se;we.verticalPlacedTextSymbolIndex&&(R.text.placedSymbolArray.get(we.verticalPlacedTextSymbolIndex).placedOrientation=De)}commit(R){this.commitTime=R,this.zoomAtLastRecencyCheck=this.transform.zoom;let ae=this.prevPlacement,we=!1;this.prevZoomAdjustment=ae?ae.zoomAdjustment(this.transform.zoom):0;let Se=ae?ae.symbolFadeChange(R):1,De=ae?ae.opacities:{},ft=ae?ae.variableOffsets:{},bt=ae?ae.placedOrientations:{};for(let Dt in this.placements){let Yt=this.placements[Dt],cr=De[Dt];cr?(this.opacities[Dt]=new ka(cr,Se,Yt.text,Yt.icon),we=we||Yt.text!==cr.text.placed||Yt.icon!==cr.icon.placed):(this.opacities[Dt]=new ka(null,Se,Yt.text,Yt.icon,Yt.skipFade),we=we||Yt.text||Yt.icon)}for(let Dt in De){let Yt=De[Dt];if(!this.opacities[Dt]){let cr=new ka(Yt,Se,!1,!1);cr.isHidden()||(this.opacities[Dt]=cr,we=we||Yt.text.placed||Yt.icon.placed)}}for(let Dt in ft)this.variableOffsets[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.variableOffsets[Dt]=ft[Dt]);for(let Dt in bt)this.placedOrientations[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.placedOrientations[Dt]=bt[Dt]);if(ae&&ae.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");we?this.lastPlacementChangeTime=R:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ae?ae.lastPlacementChangeTime:R)}updateLayerOpacities(R,ae){let we={};for(let Se of ae){let De=Se.getBucket(R);De&&Se.latestFeatureIndex&&R.id===De.layerIds[0]&&this.updateBucketOpacities(De,Se.tileID,we,Se.collisionBoxArray)}}updateBucketOpacities(R,ae,we,Se){R.hasTextData()&&(R.text.opacityVertexArray.clear(),R.text.hasVisibleVertices=!1),R.hasIconData()&&(R.icon.opacityVertexArray.clear(),R.icon.hasVisibleVertices=!1),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexArray.clear(),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexArray.clear();let De=R.layers[0],ft=De.layout,bt=new ka(null,0,!1,!1,!0),Dt=ft.get("text-allow-overlap"),Yt=ft.get("icon-allow-overlap"),cr=De._unevaluatedLayout.hasValue("text-variable-anchor")||De._unevaluatedLayout.hasValue("text-variable-anchor-offset"),hr=ft.get("text-rotation-alignment")==="map",jr=ft.get("text-pitch-alignment")==="map",ea=ft.get("icon-text-fit")!=="none",qe=new ka(null,0,Dt&&(Yt||!R.hasIconData()||ft.get("icon-optional")),Yt&&(Dt||!R.hasTextData()||ft.get("text-optional")),!0);!R.collisionArrays&&Se&&(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData())&&R.deserializeCollisionBoxes(Se);let Je=(ht,At,_t)=>{for(let Pt=0;Pt<At/4;Pt++)ht.opacityVertexArray.emplaceBack(_t);ht.hasVisibleVertices=ht.hasVisibleVertices||_t!==ya},ot=this.collisionBoxArrays.get(R.bucketInstanceId);for(let ht=0;ht<R.symbolInstances.length;ht++){let At=R.symbolInstances.get(ht),{numHorizontalGlyphVertices:_t,numVerticalGlyphVertices:Pt,crossTileID:er}=At,nr=this.opacities[er];we[er]?nr=bt:nr||(nr=qe,this.opacities[er]=nr),we[er]=!0;let pr=At.numIconVertices>0,Sr=this.placedOrientations[At.crossTileID],Wr=Sr===t.ah.vertical,ha=Sr===t.ah.horizontal||Sr===t.ah.horizontalOnly;if(_t>0||Pt>0){let Pa=qa(nr.text);Je(R.text,_t,Wr?ya:Pa),Je(R.text,Pt,ha?ya:Pa);let Ja=nr.text.isHidden();[At.rightJustifiedTextSymbolIndex,At.centerJustifiedTextSymbolIndex,At.leftJustifiedTextSymbolIndex].forEach(Ci=>{Ci>=0&&(R.text.placedSymbolArray.get(Ci).hidden=Ja||Wr?1:0)}),At.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(At.verticalPlacedTextSymbolIndex).hidden=Ja||ha?1:0);let di=this.variableOffsets[At.crossTileID];di&&this.markUsedJustification(R,di.anchor,At,Sr);let pi=this.placedOrientations[At.crossTileID];pi&&(this.markUsedJustification(R,"left",At,pi),this.markUsedOrientation(R,pi,At))}if(pr){let Pa=qa(nr.icon),Ja=!(ea&&At.verticalPlacedIconSymbolIndex&&Wr);At.placedIconSymbolIndex>=0&&(Je(R.icon,At.numIconVertices,Ja?Pa:ya),R.icon.placedSymbolArray.get(At.placedIconSymbolIndex).hidden=nr.icon.isHidden()),At.verticalPlacedIconSymbolIndex>=0&&(Je(R.icon,At.numVerticalIconVertices,Ja?ya:Pa),R.icon.placedSymbolArray.get(At.verticalPlacedIconSymbolIndex).hidden=nr.icon.isHidden())}let ga=ot&&ot.has(ht)?ot.get(ht):{text:null,icon:null};if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){let Pa=R.collisionArrays[ht];if(Pa){let Ja=new t.P(0,0);if(Pa.textBox||Pa.verticalTextBox){let di=!0;if(cr){let pi=this.variableOffsets[er];pi?(Ja=Wt(pi.anchor,pi.width,pi.height,pi.textOffset,pi.textBoxScale),hr&&Ja._rotate(jr?this.transform.angle:-this.transform.angle)):di=!1}if(Pa.textBox||Pa.verticalTextBox){let pi;Pa.textBox&&(pi=Wr),Pa.verticalTextBox&&(pi=ha),Vt(R.textCollisionBox.collisionVertexArray,nr.text.placed,!di||pi,ga.text,Ja.x,Ja.y)}}if(Pa.iconBox||Pa.verticalIconBox){let di=!!(!ha&&Pa.verticalIconBox),pi;Pa.iconBox&&(pi=di),Pa.verticalIconBox&&(pi=!di),Vt(R.iconCollisionBox.collisionVertexArray,nr.icon.placed,pi,ga.icon,ea?Ja.x:0,ea?Ja.y:0)}}}}if(R.sortFeatures(this.transform.angle),this.retainedQueryData[R.bucketInstanceId]&&(this.retainedQueryData[R.bucketInstanceId].featureSortOrder=R.featureSortOrder),R.hasTextData()&&R.text.opacityVertexBuffer&&R.text.opacityVertexBuffer.updateData(R.text.opacityVertexArray),R.hasIconData()&&R.icon.opacityVertexBuffer&&R.icon.opacityVertexBuffer.updateData(R.icon.opacityVertexArray),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexBuffer&&R.iconCollisionBox.collisionVertexBuffer.updateData(R.iconCollisionBox.collisionVertexArray),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexBuffer&&R.textCollisionBox.collisionVertexBuffer.updateData(R.textCollisionBox.collisionVertexArray),R.text.opacityVertexArray.length!==R.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${R.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${R.text.layoutVertexArray.length}) / 4`);if(R.icon.opacityVertexArray.length!==R.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${R.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${R.icon.layoutVertexArray.length}) / 4`);if(R.bucketInstanceId in this.collisionCircleArrays){let ht=this.collisionCircleArrays[R.bucketInstanceId];R.placementInvProjMatrix=ht.invProjMatrix,R.placementViewportMatrix=ht.viewportMatrix,R.collisionCircleArray=ht.circles,delete this.collisionCircleArrays[R.bucketInstanceId]}}symbolFadeChange(R){return this.fadeDuration===0?1:(R-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(R){return Math.max(0,(this.transform.zoom-R)/1.5)}hasTransitions(R){return this.stale||R-this.lastPlacementChangeTime<this.fadeDuration}stillRecent(R,ae){let we=this.zoomAtLastRecencyCheck===ae?1-this.zoomAdjustment(ae):1;return this.zoomAtLastRecencyCheck=ae,this.commitTime+this.fadeDuration*we>R}setStale(){this.stale=!0}}function Vt(Oe,R,ae,we,Se,De){we&&we.length!==0||(we=[0,0,0,0]);let ft=we[0]-sr,bt=we[1]-sr,Dt=we[2]-sr,Yt=we[3]-sr;Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,Yt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,Yt)}let Ut=Math.pow(2,25),xr=Math.pow(2,24),Zr=Math.pow(2,17),pa=Math.pow(2,16),Xr=Math.pow(2,9),Ea=Math.pow(2,8),Fa=Math.pow(2,1);function qa(Oe){if(Oe.opacity===0&&!Oe.placed)return 0;if(Oe.opacity===1&&Oe.placed)return 4294967295;let R=Oe.placed?1:0,ae=Math.floor(127*Oe.opacity);return ae*Ut+R*xr+ae*Zr+R*pa+ae*Xr+R*Ea+ae*Fa+R}let ya=0;function $a(){return{isOccluded:(Oe,R,ae)=>!1,getPitchedTextCorrection:(Oe,R,ae)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(Oe,R,ae,we){throw new Error("Not implemented.")},translatePosition:(Oe,R,ae,we)=>function(Se,De,ft,bt,Dt=!1){if(!ft[0]&&!ft[1])return[0,0];let Yt=Dt?bt==="map"?Se.angle:0:bt==="viewport"?-Se.angle:0;if(Yt){let cr=Math.sin(Yt),hr=Math.cos(Yt);ft=[ft[0]*hr-ft[1]*cr,ft[0]*cr+ft[1]*hr]}return[Dt?ft[0]:Aa(De,ft[0],Se.zoom),Dt?ft[1]:Aa(De,ft[1],Se.zoom)]}(Oe,R,ae,we),getCircleRadiusCorrection:Oe=>1}}class mt{constructor(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&!R.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(R,ae,we,Se,De){let ft=this._bucketParts;for(;this._currentTileIndex<R.length;)if(ae.getBucketParts(ft,Se,R[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,De())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,ft.sort((bt,Dt)=>bt.sortKey-Dt.sortKey));this._currentPartIndex<ft.length;)if(ae.placeLayerBucketPart(ft[this._currentPartIndex],this._seenCrossTileIDs,we),this._currentPartIndex++,De())return!0;return!1}}class gt{constructor(R,ae,we,Se,De,ft,bt,Dt){this.placement=new zt(R,$a(),ae,ft,bt,Dt),this._currentPlacementIndex=we.length-1,this._forceFullPlacement=Se,this._showCollisionBoxes=De,this._done=!1}isDone(){return this._done}continuePlacement(R,ae,we){let Se=i.now(),De=()=>!this._forceFullPlacement&&i.now()-Se>2;for(;this._currentPlacementIndex>=0;){let ft=ae[R[this._currentPlacementIndex]],bt=this.placement.collisionIndex.transform.zoom;if(ft.type==="symbol"&&(!ft.minzoom||ft.minzoom<=bt)&&(!ft.maxzoom||ft.maxzoom>bt)){if(this._inProgressLayer||(this._inProgressLayer=new mt(ft)),this._inProgressLayer.continuePlacement(we[ft.source],this.placement,this._showCollisionBoxes,ft,De))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(R){return this.placement.commit(R),this.placement}}let Er=512/t.X/2;class kr{constructor(R,ae,we){this.tileID=R,this.bucketInstanceId=we,this._symbolsByKey={};let Se=new Map;for(let De=0;De<ae.length;De++){let ft=ae.get(De),bt=ft.key,Dt=Se.get(bt);Dt?Dt.push(ft):Se.set(bt,[ft])}for(let[De,ft]of Se){let bt={positions:ft.map(Dt=>({x:Math.floor(Dt.anchorX*Er),y:Math.floor(Dt.anchorY*Er)})),crossTileIDs:ft.map(Dt=>Dt.crossTileID)};if(bt.positions.length>128){let Dt=new t.av(bt.positions.length,16,Uint16Array);for(let{x:Yt,y:cr}of bt.positions)Dt.add(Yt,cr);Dt.finish(),delete bt.positions,bt.index=Dt}this._symbolsByKey[De]=bt}}getScaledCoordinates(R,ae){let{x:we,y:Se,z:De}=this.tileID.canonical,{x:ft,y:bt,z:Dt}=ae.canonical,Yt=Er/Math.pow(2,Dt-De),cr=(bt*t.X+R.anchorY)*Yt,hr=Se*t.X*Er;return{x:Math.floor((ft*t.X+R.anchorX)*Yt-we*t.X*Er),y:Math.floor(cr-hr)}}findMatches(R,ae,we){let Se=this.tileID.canonical.z<ae.canonical.z?1:Math.pow(2,this.tileID.canonical.z-ae.canonical.z);for(let De=0;De<R.length;De++){let ft=R.get(De);if(ft.crossTileID)continue;let bt=this._symbolsByKey[ft.key];if(!bt)continue;let Dt=this.getScaledCoordinates(ft,ae);if(bt.index){let Yt=bt.index.range(Dt.x-Se,Dt.y-Se,Dt.x+Se,Dt.y+Se).sort();for(let cr of Yt){let hr=bt.crossTileIDs[cr];if(!we[hr]){we[hr]=!0,ft.crossTileID=hr;break}}}else if(bt.positions)for(let Yt=0;Yt<bt.positions.length;Yt++){let cr=bt.positions[Yt],hr=bt.crossTileIDs[Yt];if(Math.abs(cr.x-Dt.x)<=Se&&Math.abs(cr.y-Dt.y)<=Se&&!we[hr]){we[hr]=!0,ft.crossTileID=hr;break}}}}getCrossTileIDsLists(){return Object.values(this._symbolsByKey).map(({crossTileIDs:R})=>R)}}class br{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Tr{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(R){let ae=Math.round((R-this.lng)/360);if(ae!==0)for(let we in this.indexes){let Se=this.indexes[we],De={};for(let ft in Se){let bt=Se[ft];bt.tileID=bt.tileID.unwrapTo(bt.tileID.wrap+ae),De[bt.tileID.key]=bt}this.indexes[we]=De}this.lng=R}addBucket(R,ae,we){if(this.indexes[R.overscaledZ]&&this.indexes[R.overscaledZ][R.key]){if(this.indexes[R.overscaledZ][R.key].bucketInstanceId===ae.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(R.overscaledZ,this.indexes[R.overscaledZ][R.key])}for(let De=0;De<ae.symbolInstances.length;De++)ae.symbolInstances.get(De).crossTileID=0;this.usedCrossTileIDs[R.overscaledZ]||(this.usedCrossTileIDs[R.overscaledZ]={});let Se=this.usedCrossTileIDs[R.overscaledZ];for(let De in this.indexes){let ft=this.indexes[De];if(Number(De)>R.overscaledZ)for(let bt in ft){let Dt=ft[bt];Dt.tileID.isChildOf(R)&&Dt.findMatches(ae.symbolInstances,R,Se)}else{let bt=ft[R.scaledTo(Number(De)).key];bt&&bt.findMatches(ae.symbolInstances,R,Se)}}for(let De=0;De<ae.symbolInstances.length;De++){let ft=ae.symbolInstances.get(De);ft.crossTileID||(ft.crossTileID=we.generate(),Se[ft.crossTileID]=!0)}return this.indexes[R.overscaledZ]===void 0&&(this.indexes[R.overscaledZ]={}),this.indexes[R.overscaledZ][R.key]=new kr(R,ae.symbolInstances,ae.bucketInstanceId),!0}removeBucketCrossTileIDs(R,ae){for(let we of ae.getCrossTileIDsLists())for(let Se of we)delete this.usedCrossTileIDs[R][Se]}removeStaleBuckets(R){let ae=!1;for(let we in this.indexes){let Se=this.indexes[we];for(let De in Se)R[Se[De].bucketInstanceId]||(this.removeBucketCrossTileIDs(we,Se[De]),delete Se[De],ae=!0)}return ae}}class Mr{constructor(){this.layerIndexes={},this.crossTileIDs=new br,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}}addLayer(R,ae,we){let Se=this.layerIndexes[R.id];Se===void 0&&(Se=this.layerIndexes[R.id]=new Tr);let De=!1,ft={};Se.handleWrapJump(we);for(let bt of ae){let Dt=bt.getBucket(R);Dt&&R.id===Dt.layerIds[0]&&(Dt.bucketInstanceId||(Dt.bucketInstanceId=++this.maxBucketInstanceId),Se.addBucket(bt.tileID,Dt,this.crossTileIDs)&&(De=!0),ft[Dt.bucketInstanceId]=!0)}return Se.removeStaleBuckets(ft)&&(De=!0),De}pruneUnusedLayers(R){let ae={};R.forEach(we=>{ae[we]=!0});for(let we in this.layerIndexes)ae[we]||delete this.layerIndexes[we]}}let Fr=(Oe,R)=>t.t(Oe,R&&R.filter(ae=>ae.identifier!=="source.canvas")),Lr=t.aw();class Jr extends t.E{constructor(R,ae={}){super(),this._rtlPluginLoaded=()=>{for(let we in this.sourceCaches){let Se=this.sourceCaches[we].getSource().type;Se!=="vector"&&Se!=="geojson"||this.sourceCaches[we].reload()}},this.map=R,this.dispatcher=new J($(),R._getMapId()),this.dispatcher.registerMessageHandler("GG",(we,Se)=>this.getGlyphs(we,Se)),this.dispatcher.registerMessageHandler("GI",(we,Se)=>this.getImages(we,Se)),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new F(R._requestManager,ae.localIdeographFontFamily),this.lineAtlas=new W(256,512),this.crossTileSymbolIndex=new Mr,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",t.ay()),tt().on(ge,this._rtlPluginLoaded),this.on("data",we=>{if(we.dataType!=="source"||we.sourceDataType!=="metadata")return;let Se=this.sourceCaches[we.sourceId];if(!Se)return;let De=Se.getSource();if(De&&De.vectorLayerIds)for(let ft in this._layers){let bt=this._layers[ft];bt.source===De.id&&this._validateLayer(bt)}})}loadURL(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),ae.validate=typeof ae.validate!="boolean"||ae.validate;let Se=this.map._requestManager.transformRequest(R,"Style");this._loadStyleRequest=new AbortController;let De=this._loadStyleRequest;t.h(Se,this._loadStyleRequest).then(ft=>{this._loadStyleRequest=null,this._load(ft.data,ae,we)}).catch(ft=>{this._loadStyleRequest=null,ft&&!De.signal.aborted&&this.fire(new t.j(ft))})}loadJSON(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,ae.validate=ae.validate!==!1,this._load(R,ae,we)}).catch(()=>{})}loadEmpty(){this.fire(new t.k("dataloading",{dataType:"style"})),this._load(Lr,{validate:!1})}_load(R,ae,we){var Se;let De=ae.transformStyle?ae.transformStyle(we,R):R;if(!ae.validate||!Fr(this,t.u(De))){this._loaded=!0,this.stylesheet=De;for(let ft in De.sources)this.addSource(ft,De.sources[ft],{validate:!1});De.sprite?this._loadSprite(De.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(De.glyphs),this._createLayers(),this.light=new I(this.stylesheet.light),this.sky=new U(this.stylesheet.sky),this.map.setTerrain((Se=this.stylesheet.terrain)!==null&&Se!==void 0?Se:null),this.fire(new t.k("data",{dataType:"style"})),this.fire(new t.k("style.load"))}}_createLayers(){let R=t.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",R),this._order=R.map(ae=>ae.id),this._layers={},this._serializedLayers=null;for(let ae of R){let we=t.aA(ae);we.setEventedParent(this,{layer:{id:ae.id}}),this._layers[ae.id]=we}}_loadSprite(R,ae=!1,we=void 0){let Se;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(De,ft,bt,Dt){return t._(this,void 0,void 0,function*(){let Yt=b(De),cr=bt>1?"@2x":"",hr={},jr={};for(let{id:ea,url:qe}of Yt){let Je=ft.transformRequest(d(qe,cr,".json"),"SpriteJSON");hr[ea]=t.h(Je,Dt);let ot=ft.transformRequest(d(qe,cr,".png"),"SpriteImage");jr[ea]=l.getImage(ot,Dt)}return yield Promise.all([...Object.values(hr),...Object.values(jr)]),function(ea,qe){return t._(this,void 0,void 0,function*(){let Je={};for(let ot in ea){Je[ot]={};let ht=i.getImageCanvasContext((yield qe[ot]).data),At=(yield ea[ot]).data;for(let _t in At){let{width:Pt,height:er,x:nr,y:pr,sdf:Sr,pixelRatio:Wr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di}=At[_t];Je[ot][_t]={data:null,pixelRatio:Wr,sdf:Sr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di,spriteData:{width:Pt,height:er,x:nr,y:pr,context:ht}}}}return Je})}(hr,jr)})}(R,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(De=>{if(this._spriteRequest=null,De)for(let ft in De){this._spritesImagesIds[ft]=[];let bt=this._spritesImagesIds[ft]?this._spritesImagesIds[ft].filter(Dt=>!(Dt in De)):[];for(let Dt of bt)this.imageManager.removeImage(Dt),this._changedImages[Dt]=!0;for(let Dt in De[ft]){let Yt=ft==="default"?Dt:`${ft}:${Dt}`;this._spritesImagesIds[ft].push(Yt),Yt in this.imageManager.images?this.imageManager.updateImage(Yt,De[ft][Dt],!1):this.imageManager.addImage(Yt,De[ft][Dt]),ae&&(this._changedImages[Yt]=!0)}}}).catch(De=>{this._spriteRequest=null,Se=De,this.fire(new t.j(Se))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),ae&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"})),we&&we(Se)})}_unloadSprite(){for(let R of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(R),this._changedImages[R]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}_validateLayer(R){let ae=this.sourceCaches[R.source];if(!ae)return;let we=R.sourceLayer;if(!we)return;let Se=ae.getSource();(Se.type==="geojson"||Se.vectorLayerIds&&Se.vectorLayerIds.indexOf(we)===-1)&&this.fire(new t.j(new Error(`Source layer "${we}" does not exist on source "${Se.id}" as specified by style layer "${R.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let R in this.sourceCaches)if(!this.sourceCaches[R].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(R,ae=!1){let we=this._serializedAllLayers();if(!R||R.length===0)return Object.values(ae?t.aB(we):we);let Se=[];for(let De of R)if(we[De]){let ft=ae?t.aB(we[De]):we[De];Se.push(ft)}return Se}_serializedAllLayers(){let R=this._serializedLayers;if(R)return R;R=this._serializedLayers={};let ae=Object.keys(this._layers);for(let we of ae){let Se=this._layers[we];Se.type!=="custom"&&(R[we]=Se.serialize())}return R}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let R in this.sourceCaches)if(this.sourceCaches[R].hasTransition())return!0;for(let R in this._layers)if(this._layers[R].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(R){if(!this._loaded)return;let ae=this._changed;if(ae){let Se=Object.keys(this._updatedLayers),De=Object.keys(this._removedLayers);(Se.length||De.length)&&this._updateWorkerLayers(Se,De);for(let ft in this._updatedSources){let bt=this._updatedSources[ft];if(bt==="reload")this._reloadSource(ft);else{if(bt!=="clear")throw new Error(`Invalid action ${bt}`);this._clearSource(ft)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let ft in this._updatedPaintProps)this._layers[ft].updateTransitions(R);this.light.updateTransitions(R),this.sky.updateTransitions(R),this._resetUpdates()}let we={};for(let Se in this.sourceCaches){let De=this.sourceCaches[Se];we[Se]=De.used,De.used=!1}for(let Se of this._order){let De=this._layers[Se];De.recalculate(R,this._availableImages),!De.isHidden(R.zoom)&&De.source&&(this.sourceCaches[De.source].used=!0)}for(let Se in we){let De=this.sourceCaches[Se];!!we[Se]!=!!De.used&&De.fire(new t.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:Se}))}this.light.recalculate(R),this.sky.recalculate(R),this.z=R.zoom,ae&&this.fire(new t.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let R=Object.keys(this._changedImages);if(R.length){for(let ae in this.sourceCaches)this.sourceCaches[ae].reloadTilesForDependencies(["icons","patterns"],R);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let R in this.sourceCaches)this.sourceCaches[R].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(R,ae){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(R,!1),removedIds:ae})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(R,ae={}){var we;this._checkLoaded();let Se=this.serialize();if(R=ae.transformStyle?ae.transformStyle(Se,R):R,((we=ae.validate)===null||we===void 0||we)&&Fr(this,t.u(R)))return!1;(R=t.aB(R)).layers=t.az(R.layers);let De=t.aC(Se,R),ft=this._getOperationsToPerform(De);if(ft.unimplemented.length>0)throw new Error(`Unimplemented: ${ft.unimplemented.join(", ")}.`);if(ft.operations.length===0)return!1;for(let bt of ft.operations)bt();return this.stylesheet=R,this._serializedLayers=null,!0}_getOperationsToPerform(R){let ae=[],we=[];for(let Se of R)switch(Se.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":ae.push(()=>this.addLayer.apply(this,Se.args));break;case"removeLayer":ae.push(()=>this.removeLayer.apply(this,Se.args));break;case"setPaintProperty":ae.push(()=>this.setPaintProperty.apply(this,Se.args));break;case"setLayoutProperty":ae.push(()=>this.setLayoutProperty.apply(this,Se.args));break;case"setFilter":ae.push(()=>this.setFilter.apply(this,Se.args));break;case"addSource":ae.push(()=>this.addSource.apply(this,Se.args));break;case"removeSource":ae.push(()=>this.removeSource.apply(this,Se.args));break;case"setLayerZoomRange":ae.push(()=>this.setLayerZoomRange.apply(this,Se.args));break;case"setLight":ae.push(()=>this.setLight.apply(this,Se.args));break;case"setGeoJSONSourceData":ae.push(()=>this.setGeoJSONSourceData.apply(this,Se.args));break;case"setGlyphs":ae.push(()=>this.setGlyphs.apply(this,Se.args));break;case"setSprite":ae.push(()=>this.setSprite.apply(this,Se.args));break;case"setSky":ae.push(()=>this.setSky.apply(this,Se.args));break;case"setTerrain":ae.push(()=>this.map.setTerrain.apply(this,Se.args));break;case"setTransition":ae.push(()=>{});break;default:we.push(Se.command)}return{operations:ae,unimplemented:we}}addImage(R,ae){if(this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" already exists.`)));this.imageManager.addImage(R,ae),this._afterImageUpdated(R)}updateImage(R,ae){this.imageManager.updateImage(R,ae)}getImage(R){return this.imageManager.getImage(R)}removeImage(R){if(!this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" does not exist.`)));this.imageManager.removeImage(R),this._afterImageUpdated(R)}_afterImageUpdated(R){this._availableImages=this.imageManager.listImages(),this._changedImages[R]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(R,ae,we={}){if(this._checkLoaded(),this.sourceCaches[R]!==void 0)throw new Error(`Source "${R}" already exists.`);if(!ae.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(ae).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(ae.type)>=0&&this._validate(t.u.source,`sources.${R}`,ae,null,we))return;this.map&&this.map._collectResourceTiming&&(ae.collectResourceTiming=!0);let Se=this.sourceCaches[R]=new St(R,ae,this.dispatcher);Se.style=this,Se.setEventedParent(this,()=>({isSourceLoaded:Se.loaded(),source:Se.serialize(),sourceId:R})),Se.onAdd(this.map),this._changed=!0}removeSource(R){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error("There is no source with this ID");for(let we in this._layers)if(this._layers[we].source===R)return this.fire(new t.j(new Error(`Source "${R}" cannot be removed while layer "${we}" is using it.`)));let ae=this.sourceCaches[R];delete this.sourceCaches[R],delete this._updatedSources[R],ae.fire(new t.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:R})),ae.setEventedParent(null),ae.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(R,ae){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error(`There is no source with this ID=${R}`);let we=this.sourceCaches[R].getSource();if(we.type!=="geojson")throw new Error(`geojsonSource.type is ${we.type}, which is !== 'geojson`);we.setData(ae),this._changed=!0}getSource(R){return this.sourceCaches[R]&&this.sourceCaches[R].getSource()}addLayer(R,ae,we={}){this._checkLoaded();let Se=R.id;if(this.getLayer(Se))return void this.fire(new t.j(new Error(`Layer "${Se}" already exists on this map.`)));let De;if(R.type==="custom"){if(Fr(this,t.aD(R)))return;De=t.aA(R)}else{if("source"in R&&typeof R.source=="object"&&(this.addSource(Se,R.source),R=t.aB(R),R=t.e(R,{source:Se})),this._validate(t.u.layer,`layers.${Se}`,R,{arrayIndex:-1},we))return;De=t.aA(R),this._validateLayer(De),De.setEventedParent(this,{layer:{id:Se}})}let ft=ae?this._order.indexOf(ae):this._order.length;if(ae&&ft===-1)this.fire(new t.j(new Error(`Cannot add layer "${Se}" before non-existing layer "${ae}".`)));else{if(this._order.splice(ft,0,Se),this._layerOrderChanged=!0,this._layers[Se]=De,this._removedLayers[Se]&&De.source&&De.type!=="custom"){let bt=this._removedLayers[Se];delete this._removedLayers[Se],bt.type!==De.type?this._updatedSources[De.source]="clear":(this._updatedSources[De.source]="reload",this.sourceCaches[De.source].pause())}this._updateLayer(De),De.onAdd&&De.onAdd(this.map)}}moveLayer(R,ae){if(this._checkLoaded(),this._changed=!0,!this._layers[R])return void this.fire(new t.j(new Error(`The layer '${R}' does not exist in the map's style and cannot be moved.`)));if(R===ae)return;let we=this._order.indexOf(R);this._order.splice(we,1);let Se=ae?this._order.indexOf(ae):this._order.length;ae&&Se===-1?this.fire(new t.j(new Error(`Cannot move layer "${R}" before non-existing layer "${ae}".`))):(this._order.splice(Se,0,R),this._layerOrderChanged=!0)}removeLayer(R){this._checkLoaded();let ae=this._layers[R];if(!ae)return void this.fire(new t.j(new Error(`Cannot remove non-existing layer "${R}".`)));ae.setEventedParent(null);let we=this._order.indexOf(R);this._order.splice(we,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[R]=ae,delete this._layers[R],this._serializedLayers&&delete this._serializedLayers[R],delete this._updatedLayers[R],delete this._updatedPaintProps[R],ae.onRemove&&ae.onRemove(this.map)}getLayer(R){return this._layers[R]}getLayersOrder(){return[...this._order]}hasLayer(R){return R in this._layers}setLayerZoomRange(R,ae,we){this._checkLoaded();let Se=this.getLayer(R);Se?Se.minzoom===ae&&Se.maxzoom===we||(ae!=null&&(Se.minzoom=ae),we!=null&&(Se.maxzoom=we),this._updateLayer(Se)):this.fire(new t.j(new Error(`Cannot set the zoom range of non-existing layer "${R}".`)))}setFilter(R,ae,we={}){this._checkLoaded();let Se=this.getLayer(R);if(Se){if(!t.aE(Se.filter,ae))return ae==null?(Se.filter=void 0,void this._updateLayer(Se)):void(this._validate(t.u.filter,`layers.${Se.id}.filter`,ae,null,we)||(Se.filter=t.aB(ae),this._updateLayer(Se)))}else this.fire(new t.j(new Error(`Cannot filter non-existing layer "${R}".`)))}getFilter(R){return t.aB(this.getLayer(R).filter)}setLayoutProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getLayoutProperty(ae),we)||(De.setLayoutProperty(ae,we,Se),this._updateLayer(De)):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getLayoutProperty(R,ae){let we=this.getLayer(R);if(we)return we.getLayoutProperty(ae);this.fire(new t.j(new Error(`Cannot get style of non-existing layer "${R}".`)))}setPaintProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getPaintProperty(ae),we)||(De.setPaintProperty(ae,we,Se)&&this._updateLayer(De),this._changed=!0,this._updatedPaintProps[R]=!0,this._serializedLayers=null):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getPaintProperty(R,ae){return this.getLayer(R).getPaintProperty(ae)}setFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=R.sourceLayer,De=this.sourceCaches[we];if(De===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let ft=De.getSource().type;ft==="geojson"&&Se?this.fire(new t.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):ft!=="vector"||Se?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),De.setFeatureState(Se,R.id,ae)):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=this.sourceCaches[we];if(Se===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let De=Se.getSource().type,ft=De==="vector"?R.sourceLayer:void 0;De!=="vector"||ft?ae&&typeof R.id!="string"&&typeof R.id!="number"?this.fire(new t.j(new Error("A feature id is required to remove its specific state property."))):Se.removeFeatureState(ft,R.id,ae):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(R){this._checkLoaded();let ae=R.source,we=R.sourceLayer,Se=this.sourceCaches[ae];if(Se!==void 0)return Se.getSource().type!=="vector"||we?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),Se.getFeatureState(we,R.id)):void this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new t.j(new Error(`The source '${ae}' does not exist in the map's style.`)))}getTransition(){return t.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let R=t.aF(this.sourceCaches,De=>De.serialize()),ae=this._serializeByIds(this._order,!0),we=this.map.getTerrain()||void 0,Se=this.stylesheet;return t.aG({version:Se.version,name:Se.name,metadata:Se.metadata,light:Se.light,sky:Se.sky,center:Se.center,zoom:Se.zoom,bearing:Se.bearing,pitch:Se.pitch,sprite:Se.sprite,glyphs:Se.glyphs,transition:Se.transition,sources:R,layers:ae,terrain:we},De=>De!==void 0)}_updateLayer(R){this._updatedLayers[R.id]=!0,R.source&&!this._updatedSources[R.source]&&this.sourceCaches[R.source].getSource().type!=="raster"&&(this._updatedSources[R.source]="reload",this.sourceCaches[R.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(R){let ae=ft=>this._layers[ft].type==="fill-extrusion",we={},Se=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt)){we[bt]=ft;for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)Se.push(cr)}}}Se.sort((ft,bt)=>bt.intersectionZ-ft.intersectionZ);let De=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt))for(let Dt=Se.length-1;Dt>=0;Dt--){let Yt=Se[Dt].feature;if(we[Yt.layer.id]<ft)break;De.push(Yt),Se.pop()}else for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)De.push(cr.feature)}}return De}queryRenderedFeatures(R,ae,we){ae&&ae.filter&&this._validate(t.u.filter,"queryRenderedFeatures.filter",ae.filter,null,ae);let Se={};if(ae&&ae.layers){if(!Array.isArray(ae.layers))return this.fire(new t.j(new Error("parameters.layers must be an Array."))),[];for(let bt of ae.layers){let Dt=this._layers[bt];if(!Dt)return this.fire(new t.j(new Error(`The layer '${bt}' does not exist in the map's style and cannot be queried for features.`))),[];Se[Dt.source]=!0}}let De=[];ae.availableImages=this._availableImages;let ft=this._serializedAllLayers();for(let bt in this.sourceCaches)ae.layers&&!Se[bt]||De.push(ne(this.sourceCaches[bt],this._layers,ft,R,ae,we));return this.placement&&De.push(function(bt,Dt,Yt,cr,hr,jr,ea){let qe={},Je=jr.queryRenderedSymbols(cr),ot=[];for(let ht of Object.keys(Je).map(Number))ot.push(ea[ht]);ot.sort(j);for(let ht of ot){let At=ht.featureIndex.lookupSymbolFeatures(Je[ht.bucketInstanceId],Dt,ht.bucketIndex,ht.sourceLayerIndex,hr.filter,hr.layers,hr.availableImages,bt);for(let _t in At){let Pt=qe[_t]=qe[_t]||[],er=At[_t];er.sort((nr,pr)=>{let Sr=ht.featureSortOrder;if(Sr){let Wr=Sr.indexOf(nr.featureIndex);return Sr.indexOf(pr.featureIndex)-Wr}return pr.featureIndex-nr.featureIndex});for(let nr of er)Pt.push(nr)}}for(let ht in qe)qe[ht].forEach(At=>{let _t=At.feature,Pt=Yt[bt[ht].source].getFeatureState(_t.layer["source-layer"],_t.id);_t.source=_t.layer.source,_t.layer["source-layer"]&&(_t.sourceLayer=_t.layer["source-layer"]),_t.state=Pt});return qe}(this._layers,ft,this.sourceCaches,R,ae,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(De)}querySourceFeatures(R,ae){ae&&ae.filter&&this._validate(t.u.filter,"querySourceFeatures.filter",ae.filter,null,ae);let we=this.sourceCaches[R];return we?function(Se,De){let ft=Se.getRenderableIds().map(Yt=>Se.getTileByID(Yt)),bt=[],Dt={};for(let Yt=0;Yt<ft.length;Yt++){let cr=ft[Yt],hr=cr.tileID.canonical.key;Dt[hr]||(Dt[hr]=!0,cr.querySourceFeatures(bt,De))}return bt}(we,ae):[]}getLight(){return this.light.getLight()}setLight(R,ae={}){this._checkLoaded();let we=this.light.getLight(),Se=!1;for(let ft in R)if(!t.aE(R[ft],we[ft])){Se=!0;break}if(!Se)return;let De={now:i.now(),transition:t.e({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(R,ae),this.light.updateTransitions(De)}getSky(){var R;return(R=this.stylesheet)===null||R===void 0?void 0:R.sky}setSky(R,ae={}){let we=this.getSky(),Se=!1;if(!R&&!we)return;if(R&&!we)Se=!0;else if(!R&&we)Se=!0;else for(let ft in R)if(!t.aE(R[ft],we[ft])){Se=!0;break}if(!Se)return;let De={now:i.now(),transition:t.e({duration:300,delay:0},this.stylesheet.transition)};this.stylesheet.sky=R,this.sky.setSky(R,ae),this.sky.updateTransitions(De)}_validate(R,ae,we,Se,De={}){return(!De||De.validate!==!1)&&Fr(this,R.call(t.u,t.e({key:ae,style:this.serialize(),value:we,styleSpec:t.v},Se)))}_remove(R=!0){this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._loadStyleRequest&&(this._loadStyleRequest.abort(),this._loadStyleRequest=null),this._spriteRequest&&(this._spriteRequest.abort(),this._spriteRequest=null),tt().off(ge,this._rtlPluginLoaded);for(let ae in this._layers)this._layers[ae].setEventedParent(null);for(let ae in this.sourceCaches){let we=this.sourceCaches[ae];we.setEventedParent(null),we.onRemove(this.map)}this.imageManager.setEventedParent(null),this.setEventedParent(null),R&&this.dispatcher.broadcast("RM",void 0),this.dispatcher.remove(R)}_clearSource(R){this.sourceCaches[R].clearTiles()}_reloadSource(R){this.sourceCaches[R].resume(),this.sourceCaches[R].reload()}_updateSources(R){for(let ae in this.sourceCaches)this.sourceCaches[ae].update(R,this.map.terrain)}_generateCollisionBoxes(){for(let R in this.sourceCaches)this._reloadSource(R)}_updatePlacement(R,ae,we,Se,De=!1){let ft=!1,bt=!1,Dt={};for(let Yt of this._order){let cr=this._layers[Yt];if(cr.type!=="symbol")continue;if(!Dt[cr.source]){let jr=this.sourceCaches[cr.source];Dt[cr.source]=jr.getRenderableIds(!0).map(ea=>jr.getTileByID(ea)).sort((ea,qe)=>qe.tileID.overscaledZ-ea.tileID.overscaledZ||(ea.tileID.isLessThan(qe.tileID)?-1:1))}let hr=this.crossTileSymbolIndex.addLayer(cr,Dt[cr.source],R.center.lng);ft=ft||hr}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((De=De||this._layerOrderChanged||we===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.now(),R.zoom))&&(this.pauseablePlacement=new gt(R,this.map.terrain,this._order,De,ae,we,Se,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Dt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.now()),bt=!0),ft&&this.pauseablePlacement.placement.setStale()),bt||ft)for(let Yt of this._order){let cr=this._layers[Yt];cr.type==="symbol"&&this.placement.updateLayerOpacities(cr,Dt[cr.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.now())}_releaseSymbolFadeTiles(){for(let R in this.sourceCaches)this.sourceCaches[R].releaseSymbolFadeTiles()}getImages(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.imageManager.getImages(ae.icons);this._updateTilesForChangedImages();let Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,ae.icons),we})}getGlyphs(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.glyphManager.getGlyphs(ae.stacks),Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,[""]),we})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(R,ae={}){this._checkLoaded(),R&&this._validate(t.u.glyphs,"glyphs",R,null,ae)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=R,this.glyphManager.entries={},this.glyphManager.setURL(R))}addSprite(R,ae,we={},Se){this._checkLoaded();let De=[{id:R,url:ae}],ft=[...b(this.stylesheet.sprite),...De];this._validate(t.u.sprite,"sprite",ft,null,we)||(this.stylesheet.sprite=ft,this._loadSprite(De,!0,Se))}removeSprite(R){this._checkLoaded();let ae=b(this.stylesheet.sprite);if(ae.find(we=>we.id===R)){if(this._spritesImagesIds[R])for(let we of this._spritesImagesIds[R])this.imageManager.removeImage(we),this._changedImages[we]=!0;ae.splice(ae.findIndex(we=>we.id===R),1),this.stylesheet.sprite=ae.length>0?ae:void 0,delete this._spritesImagesIds[R],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}else this.fire(new t.j(new Error(`Sprite "${R}" doesn't exists on this map.`)))}getSprite(){return b(this.stylesheet.sprite)}setSprite(R,ae={},we){this._checkLoaded(),R&&this._validate(t.u.sprite,"sprite",R,null,ae)||(this.stylesheet.sprite=R,R?this._loadSprite(R,!0,we):(this._unloadSprite(),we&&we(null)))}}var oa=t.Y([{name:"a_pos",type:"Int16",components:2}]);let ca={prelude:kt(`#ifdef GL_ES
+precision mediump float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+`,`#ifdef GL_ES
+precision highp float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0
+);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}
+#ifdef TERRAIN3D
+uniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;
+#endif
+const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {
+#ifdef TERRAIN3D
+highp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));
+#else
+return 1.0;
+#endif
+}float calculate_visibility(vec4 pos) {
+#ifdef TERRAIN3D
+vec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;
+#else
+return 1.0;
+#endif
+}float ele(vec2 pos) {
+#ifdef TERRAIN3D
+vec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;
+#else
+return 0.0;
+#endif
+}float get_elevation(vec2 pos) {
+#ifdef TERRAIN3D
+vec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;
+#else
+return 0.0;
+#endif
+}`),background:kt(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:kt(`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:kt(`varying vec3 v_data;varying float v_visibility;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main(void) {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),clippingMask:kt("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:kt(`uniform highp float u_intensity;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#define GAUSS_COEF 0.3989422804014327
+void main() {
+#pragma mapbox: initialize highp float weight
+float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#pragma mapbox: define mediump float radius
+const highp float ZERO=1.0/255.0/16.0;
+#define GAUSS_COEF 0.3989422804014327
+void main(void) {
+#pragma mapbox: initialize highp float weight
+#pragma mapbox: initialize mediump float radius
+vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}`),heatmapTexture:kt(`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(0.0);
+#endif
+}`,"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:kt("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:kt("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:kt("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:kt(`#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_FragColor=color*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec2 a_pos;uniform mat4 u_matrix;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);}`),fillOutline:kt(`varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillOutlinePattern:kt(`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillPattern:kt(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`),fillExtrusion:kt(`varying vec4 v_color;void main() {gl_FragColor=v_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;
+#ifdef TERRAIN3D
+attribute vec2 a_centroid;
+#endif
+varying vec4 v_color;
+#pragma mapbox: define highp float base
+#pragma mapbox: define highp float height
+#pragma mapbox: define highp vec4 color
+void main() {
+#pragma mapbox: initialize highp float base
+#pragma mapbox: initialize highp float height
+#pragma mapbox: initialize highp vec4 color
+vec3 normal=a_normal_ed.xyz;
+#ifdef TERRAIN3D
+float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
+#else
+float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
+#endif
+base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`),fillExtrusionPattern:kt(`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;
+#ifdef TERRAIN3D
+attribute vec2 a_centroid;
+#endif
+varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;
+#ifdef TERRAIN3D
+float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
+#else
+float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
+#endif
+base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0
+? a_pos
+: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`),hillshadePrepare:kt(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:kt(`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;
+#define PI 3.141592653589793
+void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:kt(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
+#endif
+v_width2=vec2(outset,inset);}`),lineGradient:kt(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
+#endif
+v_width2=vec2(outset,inset);}`),linePattern:kt(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
+#endif
+v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),lineSDF:kt(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;
+#endif
+v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`),raster:kt(`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:kt(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}`),symbolSDF:kt(`#define SDF_PX 8.0
+uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float inner_edge=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),symbolTextAndIcon:kt(`#define SDF_PX 8.0
+#define SDF 1.0
+#define ICON 0.0
+uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`),terrain:kt("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:kt("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:kt("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:kt("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function kt(Oe,R){let ae=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,we=R.match(/attribute ([\w]+) ([\w]+)/g),Se=Oe.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),De=R.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),ft=De?De.concat(Se):Se,bt={};return{fragmentSource:Oe=Oe.replace(ae,(Dt,Yt,cr,hr,jr)=>(bt[jr]=!0,Yt==="define"?`
+#ifndef HAS_UNIFORM_u_${jr}
+varying ${cr} ${hr} ${jr};
+#else
+uniform ${cr} ${hr} u_${jr};
+#endif
+`:`
+#ifdef HAS_UNIFORM_u_${jr}
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`)),vertexSource:R=R.replace(ae,(Dt,Yt,cr,hr,jr)=>{let ea=hr==="float"?"vec2":"vec4",qe=jr.match(/color/)?"color":ea;return bt[jr]?Yt==="define"?`
+#ifndef HAS_UNIFORM_u_${jr}
+uniform lowp float u_${jr}_t;
+attribute ${cr} ${ea} a_${jr};
+varying ${cr} ${hr} ${jr};
+#else
+uniform ${cr} ${hr} u_${jr};
+#endif
+`:qe==="vec4"?`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${jr} = a_${jr};
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t);
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`:Yt==="define"?`
+#ifndef HAS_UNIFORM_u_${jr}
+uniform lowp float u_${jr}_t;
+attribute ${cr} ${ea} a_${jr};
+#else
+uniform ${cr} ${hr} u_${jr};
+#endif
+`:qe==="vec4"?`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${cr} ${hr} ${jr} = a_${jr};
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${cr} ${hr} ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t);
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`}),staticAttributes:we,staticUniforms:ft}}class ir{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(R,ae,we,Se,De,ft,bt,Dt,Yt){this.context=R;let cr=this.boundPaintVertexBuffers.length!==Se.length;for(let hr=0;!cr&&hr<Se.length;hr++)this.boundPaintVertexBuffers[hr]!==Se[hr]&&(cr=!0);!this.vao||this.boundProgram!==ae||this.boundLayoutVertexBuffer!==we||cr||this.boundIndexBuffer!==De||this.boundVertexOffset!==ft||this.boundDynamicVertexBuffer!==bt||this.boundDynamicVertexBuffer2!==Dt||this.boundDynamicVertexBuffer3!==Yt?this.freshBind(ae,we,Se,De,ft,bt,Dt,Yt):(R.bindVertexArray.set(this.vao),bt&&bt.bind(),De&&De.dynamicDraw&&De.bind(),Dt&&Dt.bind(),Yt&&Yt.bind())}freshBind(R,ae,we,Se,De,ft,bt,Dt){let Yt=R.numAttributes,cr=this.context,hr=cr.gl;this.vao&&this.destroy(),this.vao=cr.createVertexArray(),cr.bindVertexArray.set(this.vao),this.boundProgram=R,this.boundLayoutVertexBuffer=ae,this.boundPaintVertexBuffers=we,this.boundIndexBuffer=Se,this.boundVertexOffset=De,this.boundDynamicVertexBuffer=ft,this.boundDynamicVertexBuffer2=bt,this.boundDynamicVertexBuffer3=Dt,ae.enableAttributes(hr,R);for(let jr of we)jr.enableAttributes(hr,R);ft&&ft.enableAttributes(hr,R),bt&&bt.enableAttributes(hr,R),Dt&&Dt.enableAttributes(hr,R),ae.bind(),ae.setVertexAttribPointers(hr,R,De);for(let jr of we)jr.bind(),jr.setVertexAttribPointers(hr,R,De);ft&&(ft.bind(),ft.setVertexAttribPointers(hr,R,De)),Se&&Se.bind(),bt&&(bt.bind(),bt.setVertexAttribPointers(hr,R,De)),Dt&&(Dt.bind(),Dt.setVertexAttribPointers(hr,R,De)),cr.currentNumAttributes=Yt}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}let mr=(Oe,R,ae,we,Se)=>({u_matrix:Oe,u_texture:0,u_ele_delta:R,u_fog_matrix:ae,u_fog_color:we?we.properties.get("fog-color"):t.aM.white,u_fog_ground_blend:we?we.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:we?we.calculateFogBlendOpacity(Se):0,u_horizon_color:we?we.properties.get("horizon-color"):t.aM.white,u_horizon_fog_blend:we?we.properties.get("horizon-fog-blend"):1});function $r(Oe){let R=[];for(let ae=0;ae<Oe.length;ae++){if(Oe[ae]===null)continue;let we=Oe[ae].split(" ");R.push(we.pop())}return R}class ma{constructor(R,ae,we,Se,De,ft){let bt=R.gl;this.program=bt.createProgram();let Dt=$r(ae.staticAttributes),Yt=we?we.getBinderAttributes():[],cr=Dt.concat(Yt),hr=ca.prelude.staticUniforms?$r(ca.prelude.staticUniforms):[],jr=ae.staticUniforms?$r(ae.staticUniforms):[],ea=we?we.getBinderUniforms():[],qe=hr.concat(jr).concat(ea),Je=[];for(let nr of qe)Je.indexOf(nr)<0&&Je.push(nr);let ot=we?we.defines():[];De&&ot.push("#define OVERDRAW_INSPECTOR;"),ft&&ot.push("#define TERRAIN3D;");let ht=ot.concat(ca.prelude.fragmentSource,ae.fragmentSource).join(`
+`),At=ot.concat(ca.prelude.vertexSource,ae.vertexSource).join(`
+`),_t=bt.createShader(bt.FRAGMENT_SHADER);if(bt.isContextLost())return void(this.failedToCreate=!0);if(bt.shaderSource(_t,ht),bt.compileShader(_t),!bt.getShaderParameter(_t,bt.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${bt.getShaderInfoLog(_t)}`);bt.attachShader(this.program,_t);let Pt=bt.createShader(bt.VERTEX_SHADER);if(bt.isContextLost())return void(this.failedToCreate=!0);if(bt.shaderSource(Pt,At),bt.compileShader(Pt),!bt.getShaderParameter(Pt,bt.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${bt.getShaderInfoLog(Pt)}`);bt.attachShader(this.program,Pt),this.attributes={};let er={};this.numAttributes=cr.length;for(let nr=0;nr<this.numAttributes;nr++)cr[nr]&&(bt.bindAttribLocation(this.program,nr,cr[nr]),this.attributes[cr[nr]]=nr);if(bt.linkProgram(this.program),!bt.getProgramParameter(this.program,bt.LINK_STATUS))throw new Error(`Program failed to link: ${bt.getProgramInfoLog(this.program)}`);bt.deleteShader(Pt),bt.deleteShader(_t);for(let nr=0;nr<Je.length;nr++){let pr=Je[nr];if(pr&&!er[pr]){let Sr=bt.getUniformLocation(this.program,pr);Sr&&(er[pr]=Sr)}}this.fixedUniforms=Se(R,er),this.terrainUniforms=((nr,pr)=>({u_depth:new t.aH(nr,pr.u_depth),u_terrain:new t.aH(nr,pr.u_terrain),u_terrain_dim:new t.aI(nr,pr.u_terrain_dim),u_terrain_matrix:new t.aJ(nr,pr.u_terrain_matrix),u_terrain_unpack:new t.aK(nr,pr.u_terrain_unpack),u_terrain_exaggeration:new t.aI(nr,pr.u_terrain_exaggeration)}))(R,er),this.binderUniforms=we?we.getUniforms(R,er):[]}draw(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At){let _t=R.gl;if(this.failedToCreate)return;if(R.program.set(this.program),R.setDepthMode(we),R.setStencilMode(Se),R.setColorMode(De),R.setCullFace(ft),Dt){R.activeTexture.set(_t.TEXTURE2),_t.bindTexture(_t.TEXTURE_2D,Dt.depthTexture),R.activeTexture.set(_t.TEXTURE3),_t.bindTexture(_t.TEXTURE_2D,Dt.texture);for(let er in this.terrainUniforms)this.terrainUniforms[er].set(Dt[er])}for(let er in this.fixedUniforms)this.fixedUniforms[er].set(bt[er]);Je&&Je.setUniforms(R,this.binderUniforms,ea,{zoom:qe});let Pt=0;switch(ae){case _t.LINES:Pt=2;break;case _t.TRIANGLES:Pt=3;break;case _t.LINE_STRIP:Pt=1}for(let er of jr.get()){let nr=er.vaos||(er.vaos={});(nr[Yt]||(nr[Yt]=new ir)).bind(R,this,cr,Je?Je.getPaintVertexBuffers():[],hr,er.vertexOffset,ot,ht,At),_t.drawElements(ae,er.primitiveLength*Pt,_t.UNSIGNED_SHORT,er.primitiveOffset*Pt*2)}}}function Ba(Oe,R,ae){let we=1/Aa(ae,1,R.transform.tileZoom),Se=Math.pow(2,ae.tileID.overscaledZ),De=ae.tileSize*Math.pow(2,R.transform.tileZoom)/Se,ft=De*(ae.tileID.canonical.x+ae.tileID.wrap*Se),bt=De*ae.tileID.canonical.y;return{u_image:0,u_texsize:ae.imageAtlasTexture.size,u_scale:[we,Oe.fromScale,Oe.toScale],u_fade:Oe.t,u_pixel_coord_upper:[ft>>16,bt>>16],u_pixel_coord_lower:[65535&ft,65535&bt]}}let Ca=(Oe,R,ae,we)=>{let Se=R.style.light,De=Se.properties.get("position"),ft=[De.x,De.y,De.z],bt=function(){var Yt=new t.A(9);return t.A!=Float32Array&&(Yt[1]=0,Yt[2]=0,Yt[3]=0,Yt[5]=0,Yt[6]=0,Yt[7]=0),Yt[0]=1,Yt[4]=1,Yt[8]=1,Yt}();Se.properties.get("anchor")==="viewport"&&function(Yt,cr){var hr=Math.sin(cr),jr=Math.cos(cr);Yt[0]=jr,Yt[1]=hr,Yt[2]=0,Yt[3]=-hr,Yt[4]=jr,Yt[5]=0,Yt[6]=0,Yt[7]=0,Yt[8]=1}(bt,-R.transform.angle),function(Yt,cr,hr){var jr=cr[0],ea=cr[1],qe=cr[2];Yt[0]=jr*hr[0]+ea*hr[3]+qe*hr[6],Yt[1]=jr*hr[1]+ea*hr[4]+qe*hr[7],Yt[2]=jr*hr[2]+ea*hr[5]+qe*hr[8]}(ft,ft,bt);let Dt=Se.properties.get("color");return{u_matrix:Oe,u_lightpos:ft,u_lightintensity:Se.properties.get("intensity"),u_lightcolor:[Dt.r,Dt.g,Dt.b],u_vertical_gradient:+ae,u_opacity:we}},da=(Oe,R,ae,we,Se,De,ft)=>t.e(Ca(Oe,R,ae,we),Ba(De,R,ft),{u_height_factor:-Math.pow(2,Se.overscaledZ)/ft.tileSize/8}),Sa=Oe=>({u_matrix:Oe}),Ti=(Oe,R,ae,we)=>t.e(Sa(Oe),Ba(ae,R,we)),ai=(Oe,R)=>({u_matrix:Oe,u_world:R}),an=(Oe,R,ae,we,Se)=>t.e(Ti(Oe,R,ae,we),{u_world:Se}),sn=(Oe,R,ae,we)=>{let Se=Oe.transform,De,ft;if(we.paint.get("circle-pitch-alignment")==="map"){let bt=Aa(ae,1,Se.zoom);De=!0,ft=[bt,bt]}else De=!1,ft=Se.pixelsToGLUnits;return{u_camera_to_center_distance:Se.cameraToCenterDistance,u_scale_with_map:+(we.paint.get("circle-pitch-scale")==="map"),u_matrix:Oe.translatePosMatrix(R.posMatrix,ae,we.paint.get("circle-translate"),we.paint.get("circle-translate-anchor")),u_pitch_with_map:+De,u_device_pixel_ratio:Oe.pixelRatio,u_extrude_scale:ft}},Mn=(Oe,R,ae)=>({u_matrix:Oe,u_inv_matrix:R,u_camera_to_center_distance:ae.cameraToCenterDistance,u_viewport_size:[ae.width,ae.height]}),On=(Oe,R,ae=1)=>({u_matrix:Oe,u_color:R,u_overlay:0,u_overlay_scale:ae}),$n=Oe=>({u_matrix:Oe}),Cn=(Oe,R,ae,we)=>({u_matrix:Oe,u_extrude_scale:Aa(R,1,ae),u_intensity:we}),Lo=(Oe,R,ae,we)=>{let Se=t.H();t.aP(Se,0,Oe.width,Oe.height,0,0,1);let De=Oe.context.gl;return{u_matrix:Se,u_world:[De.drawingBufferWidth,De.drawingBufferHeight],u_image:ae,u_color_ramp:we,u_opacity:R.paint.get("heatmap-opacity")}};function Xi(Oe,R){let ae=Math.pow(2,R.canonical.z),we=R.canonical.y;return[new t.Z(0,we/ae).toLngLat().lat,new t.Z(0,(we+1)/ae).toLngLat().lat]}let Jo=(Oe,R,ae,we)=>{let Se=Oe.transform;return{u_matrix:In(Oe,R,ae,we),u_ratio:1/Aa(R,1,Se.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_units_to_pixels:[1/Se.pixelsToGLUnits[0],1/Se.pixelsToGLUnits[1]]}},zo=(Oe,R,ae,we,Se)=>t.e(Jo(Oe,R,ae,Se),{u_image:0,u_image_height:we}),as=(Oe,R,ae,we,Se)=>{let De=Oe.transform,ft=go(R,De);return{u_matrix:In(Oe,R,ae,Se),u_texsize:R.imageAtlasTexture.size,u_ratio:1/Aa(R,1,De.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_image:0,u_scale:[ft,we.fromScale,we.toScale],u_fade:we.t,u_units_to_pixels:[1/De.pixelsToGLUnits[0],1/De.pixelsToGLUnits[1]]}},Pn=(Oe,R,ae,we,Se,De)=>{let ft=Oe.lineAtlas,bt=go(R,Oe.transform),Dt=ae.layout.get("line-cap")==="round",Yt=ft.getDash(we.from,Dt),cr=ft.getDash(we.to,Dt),hr=Yt.width*Se.fromScale,jr=cr.width*Se.toScale;return t.e(Jo(Oe,R,ae,De),{u_patternscale_a:[bt/hr,-Yt.height/2],u_patternscale_b:[bt/jr,-cr.height/2],u_sdfgamma:ft.width/(256*Math.min(hr,jr)*Oe.pixelRatio)/2,u_image:0,u_tex_y_a:Yt.y,u_tex_y_b:cr.y,u_mix:Se.t})};function go(Oe,R){return 1/Aa(Oe,1,R.tileZoom)}function In(Oe,R,ae,we){return Oe.translatePosMatrix(we?we.posMatrix:R.tileID.posMatrix,R,ae.paint.get("line-translate"),ae.paint.get("line-translate-anchor"))}let Do=(Oe,R,ae,we,Se)=>{return{u_matrix:Oe,u_tl_parent:R,u_scale_parent:ae,u_buffer_scale:1,u_fade_t:we.mix,u_opacity:we.opacity*Se.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:Se.paint.get("raster-brightness-min"),u_brightness_high:Se.paint.get("raster-brightness-max"),u_saturation_factor:(ft=Se.paint.get("raster-saturation"),ft>0?1-1/(1.001-ft):-ft),u_contrast_factor:(De=Se.paint.get("raster-contrast"),De>0?1/(1-De):1+De),u_spin_weights:Ho(Se.paint.get("raster-hue-rotate"))};var De,ft};function Ho(Oe){Oe*=Math.PI/180;let R=Math.sin(Oe),ae=Math.cos(Oe);return[(2*ae+1)/3,(-Math.sqrt(3)*R-ae+1)/3,(Math.sqrt(3)*R-ae+1)/3]}let Qo=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>{let qe=ft.transform;return{u_is_size_zoom_constant:+(Oe==="constant"||Oe==="source"),u_is_size_feature_constant:+(Oe==="constant"||Oe==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:qe.cameraToCenterDistance,u_pitch:qe.pitch/360*2*Math.PI,u_rotate_symbol:+ae,u_aspect_ratio:qe.width/qe.height,u_fade_change:ft.options.fadeDuration?ft.symbolFadeChange:1,u_matrix:bt,u_label_plane_matrix:Dt,u_coord_matrix:Yt,u_is_text:+hr,u_pitch_with_map:+we,u_is_along_line:Se,u_is_variable_anchor:De,u_texsize:jr,u_texture:0,u_translation:cr,u_pitched_scale:ea}},Xn=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe)=>{let Je=ft.transform;return t.e(Qo(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,qe),{u_gamma_scale:we?Math.cos(Je._pitch)*Je.cameraToCenterDistance:1,u_device_pixel_ratio:ft.pixelRatio,u_is_halo:+ea})},po=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>t.e(Xn(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,!0,hr,!0,ea),{u_texsize_icon:jr,u_texture_icon:1}),ys=(Oe,R,ae)=>({u_matrix:Oe,u_opacity:R,u_color:ae}),Is=(Oe,R,ae,we,Se,De)=>t.e(function(ft,bt,Dt,Yt){let cr=Dt.imageManager.getPattern(ft.from.toString()),hr=Dt.imageManager.getPattern(ft.to.toString()),{width:jr,height:ea}=Dt.imageManager.getPixelSize(),qe=Math.pow(2,Yt.tileID.overscaledZ),Je=Yt.tileSize*Math.pow(2,Dt.transform.tileZoom)/qe,ot=Je*(Yt.tileID.canonical.x+Yt.tileID.wrap*qe),ht=Je*Yt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:cr.tl,u_pattern_br_a:cr.br,u_pattern_tl_b:hr.tl,u_pattern_br_b:hr.br,u_texsize:[jr,ea],u_mix:bt.t,u_pattern_size_a:cr.displaySize,u_pattern_size_b:hr.displaySize,u_scale_a:bt.fromScale,u_scale_b:bt.toScale,u_tile_units_to_pixels:1/Aa(Yt,1,Dt.transform.tileZoom),u_pixel_coord_upper:[ot>>16,ht>>16],u_pixel_coord_lower:[65535&ot,65535&ht]}}(we,De,ae,Se),{u_matrix:Oe,u_opacity:R}),Fs={fillExtrusion:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_opacity:new t.aI(Oe,R.u_opacity)}),fillExtrusionPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_height_factor:new t.aI(Oe,R.u_height_factor),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade),u_opacity:new t.aI(Oe,R.u_opacity)}),fill:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),fillPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),fillOutline:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world)}),fillOutlinePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),circle:(Oe,R)=>({u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_scale_with_map:new t.aH(Oe,R.u_scale_with_map),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_extrude_scale:new t.aO(Oe,R.u_extrude_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_matrix:new t.aJ(Oe,R.u_matrix)}),collisionBox:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_pixel_extrude_scale:new t.aO(Oe,R.u_pixel_extrude_scale)}),collisionCircle:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_inv_matrix:new t.aJ(Oe,R.u_inv_matrix),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_viewport_size:new t.aO(Oe,R.u_viewport_size)}),debug:(Oe,R)=>({u_color:new t.aL(Oe,R.u_color),u_matrix:new t.aJ(Oe,R.u_matrix),u_overlay:new t.aH(Oe,R.u_overlay),u_overlay_scale:new t.aI(Oe,R.u_overlay_scale)}),clippingMask:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmap:(Oe,R)=>({u_extrude_scale:new t.aI(Oe,R.u_extrude_scale),u_intensity:new t.aI(Oe,R.u_intensity),u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmapTexture:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_color_ramp:new t.aH(Oe,R.u_color_ramp),u_opacity:new t.aI(Oe,R.u_opacity)}),hillshade:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_latrange:new t.aO(Oe,R.u_latrange),u_light:new t.aO(Oe,R.u_light),u_shadow:new t.aL(Oe,R.u_shadow),u_highlight:new t.aL(Oe,R.u_highlight),u_accent:new t.aL(Oe,R.u_accent)}),hillshadePrepare:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_dimension:new t.aO(Oe,R.u_dimension),u_zoom:new t.aI(Oe,R.u_zoom),u_unpack:new t.aK(Oe,R.u_unpack)}),line:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels)}),lineGradient:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_image:new t.aH(Oe,R.u_image),u_image_height:new t.aI(Oe,R.u_image_height)}),linePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texsize:new t.aO(Oe,R.u_texsize),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_image:new t.aH(Oe,R.u_image),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),lineSDF:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_patternscale_a:new t.aO(Oe,R.u_patternscale_a),u_patternscale_b:new t.aO(Oe,R.u_patternscale_b),u_sdfgamma:new t.aI(Oe,R.u_sdfgamma),u_image:new t.aH(Oe,R.u_image),u_tex_y_a:new t.aI(Oe,R.u_tex_y_a),u_tex_y_b:new t.aI(Oe,R.u_tex_y_b),u_mix:new t.aI(Oe,R.u_mix)}),raster:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_tl_parent:new t.aO(Oe,R.u_tl_parent),u_scale_parent:new t.aI(Oe,R.u_scale_parent),u_buffer_scale:new t.aI(Oe,R.u_buffer_scale),u_fade_t:new t.aI(Oe,R.u_fade_t),u_opacity:new t.aI(Oe,R.u_opacity),u_image0:new t.aH(Oe,R.u_image0),u_image1:new t.aH(Oe,R.u_image1),u_brightness_low:new t.aI(Oe,R.u_brightness_low),u_brightness_high:new t.aI(Oe,R.u_brightness_high),u_saturation_factor:new t.aI(Oe,R.u_saturation_factor),u_contrast_factor:new t.aI(Oe,R.u_contrast_factor),u_spin_weights:new t.aN(Oe,R.u_spin_weights)}),symbolIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolSDF:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolTextAndIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texsize_icon:new t.aO(Oe,R.u_texsize_icon),u_texture:new t.aH(Oe,R.u_texture),u_texture_icon:new t.aH(Oe,R.u_texture_icon),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),background:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_color:new t.aL(Oe,R.u_color)}),backgroundPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_image:new t.aH(Oe,R.u_image),u_pattern_tl_a:new t.aO(Oe,R.u_pattern_tl_a),u_pattern_br_a:new t.aO(Oe,R.u_pattern_br_a),u_pattern_tl_b:new t.aO(Oe,R.u_pattern_tl_b),u_pattern_br_b:new t.aO(Oe,R.u_pattern_br_b),u_texsize:new t.aO(Oe,R.u_texsize),u_mix:new t.aI(Oe,R.u_mix),u_pattern_size_a:new t.aO(Oe,R.u_pattern_size_a),u_pattern_size_b:new t.aO(Oe,R.u_pattern_size_b),u_scale_a:new t.aI(Oe,R.u_scale_a),u_scale_b:new t.aI(Oe,R.u_scale_b),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_tile_units_to_pixels:new t.aI(Oe,R.u_tile_units_to_pixels)}),terrain:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_ele_delta:new t.aI(Oe,R.u_ele_delta),u_fog_matrix:new t.aJ(Oe,R.u_fog_matrix),u_fog_color:new t.aL(Oe,R.u_fog_color),u_fog_ground_blend:new t.aI(Oe,R.u_fog_ground_blend),u_fog_ground_blend_opacity:new t.aI(Oe,R.u_fog_ground_blend_opacity),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon_fog_blend:new t.aI(Oe,R.u_horizon_fog_blend)}),terrainDepth:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),terrainCoords:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_terrain_coords_id:new t.aI(Oe,R.u_terrain_coords_id),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),sky:(Oe,R)=>({u_sky_color:new t.aL(Oe,R.u_sky_color),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon:new t.aI(Oe,R.u_horizon),u_sky_horizon_blend:new t.aI(Oe,R.u_sky_horizon_blend)})};class $o{constructor(R,ae,we){this.context=R;let Se=R.gl;this.buffer=Se.createBuffer(),this.dynamicDraw=!!we,this.context.unbindVAO(),R.bindElementBuffer.set(this.buffer),Se.bufferData(Se.ELEMENT_ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?Se.DYNAMIC_DRAW:Se.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(R){let ae=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),ae.bufferSubData(ae.ELEMENT_ARRAY_BUFFER,0,R.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let fi={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class mn{constructor(R,ae,we,Se){this.length=ae.length,this.attributes=we,this.itemSize=ae.bytesPerElement,this.dynamicDraw=Se,this.context=R;let De=R.gl;this.buffer=De.createBuffer(),R.bindVertexBuffer.set(this.buffer),De.bufferData(De.ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?De.DYNAMIC_DRAW:De.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(R){if(R.length!==this.length)throw new Error(`Length of new data is ${R.length}, which doesn't match current length of ${this.length}`);let ae=this.context.gl;this.bind(),ae.bufferSubData(ae.ARRAY_BUFFER,0,R.arrayBuffer)}enableAttributes(R,ae){for(let we=0;we<this.attributes.length;we++){let Se=ae.attributes[this.attributes[we].name];Se!==void 0&&R.enableVertexAttribArray(Se)}}setVertexAttribPointers(R,ae,we){for(let Se=0;Se<this.attributes.length;Se++){let De=this.attributes[Se],ft=ae.attributes[De.name];ft!==void 0&&R.vertexAttribPointer(ft,De.components,R[fi[De.type]],!1,this.itemSize,De.offset+this.itemSize*(we||0))}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let ol=new WeakMap;function Os(Oe){var R;if(ol.has(Oe))return ol.get(Oe);{let ae=(R=Oe.getParameter(Oe.VERSION))===null||R===void 0?void 0:R.startsWith("WebGL 2.0");return ol.set(Oe,ae),ae}}class so{constructor(R){this.gl=R.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1}get(){return this.current}set(R){}getDefault(){return this.default}setDefault(){this.set(this.default)}}class Ns extends so{getDefault(){return t.aM.transparent}set(R){let ae=this.current;(R.r!==ae.r||R.g!==ae.g||R.b!==ae.b||R.a!==ae.a||this.dirty)&&(this.gl.clearColor(R.r,R.g,R.b,R.a),this.current=R,this.dirty=!1)}}class fs extends so{getDefault(){return 1}set(R){(R!==this.current||this.dirty)&&(this.gl.clearDepth(R),this.current=R,this.dirty=!1)}}class al extends so{getDefault(){return 0}set(R){(R!==this.current||this.dirty)&&(this.gl.clearStencil(R),this.current=R,this.dirty=!1)}}class vl extends so{getDefault(){return[!0,!0,!0,!0]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||R[3]!==ae[3]||this.dirty)&&(this.gl.colorMask(R[0],R[1],R[2],R[3]),this.current=R,this.dirty=!1)}}class ji extends so{getDefault(){return!0}set(R){(R!==this.current||this.dirty)&&(this.gl.depthMask(R),this.current=R,this.dirty=!1)}}class To extends so{getDefault(){return 255}set(R){(R!==this.current||this.dirty)&&(this.gl.stencilMask(R),this.current=R,this.dirty=!1)}}class Yn extends so{getDefault(){return{func:this.gl.ALWAYS,ref:0,mask:255}}set(R){let ae=this.current;(R.func!==ae.func||R.ref!==ae.ref||R.mask!==ae.mask||this.dirty)&&(this.gl.stencilFunc(R.func,R.ref,R.mask),this.current=R,this.dirty=!1)}}class _s extends so{getDefault(){let R=this.gl;return[R.KEEP,R.KEEP,R.KEEP]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||this.dirty)&&(this.gl.stencilOp(R[0],R[1],R[2]),this.current=R,this.dirty=!1)}}class Yo extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.STENCIL_TEST):ae.disable(ae.STENCIL_TEST),this.current=R,this.dirty=!1}}class Nn extends so{getDefault(){return[0,1]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||this.dirty)&&(this.gl.depthRange(R[0],R[1]),this.current=R,this.dirty=!1)}}class Wl extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.DEPTH_TEST):ae.disable(ae.DEPTH_TEST),this.current=R,this.dirty=!1}}class Zu extends so{getDefault(){return this.gl.LESS}set(R){(R!==this.current||this.dirty)&&(this.gl.depthFunc(R),this.current=R,this.dirty=!1)}}class ml extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.BLEND):ae.disable(ae.BLEND),this.current=R,this.dirty=!1}}class Bu extends so{getDefault(){let R=this.gl;return[R.ONE,R.ZERO]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||this.dirty)&&(this.gl.blendFunc(R[0],R[1]),this.current=R,this.dirty=!1)}}class El extends so{getDefault(){return t.aM.transparent}set(R){let ae=this.current;(R.r!==ae.r||R.g!==ae.g||R.b!==ae.b||R.a!==ae.a||this.dirty)&&(this.gl.blendColor(R.r,R.g,R.b,R.a),this.current=R,this.dirty=!1)}}class qs extends so{getDefault(){return this.gl.FUNC_ADD}set(R){(R!==this.current||this.dirty)&&(this.gl.blendEquation(R),this.current=R,this.dirty=!1)}}class Jl extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.CULL_FACE):ae.disable(ae.CULL_FACE),this.current=R,this.dirty=!1}}class Nu extends so{getDefault(){return this.gl.BACK}set(R){(R!==this.current||this.dirty)&&(this.gl.cullFace(R),this.current=R,this.dirty=!1)}}class Ic extends so{getDefault(){return this.gl.CCW}set(R){(R!==this.current||this.dirty)&&(this.gl.frontFace(R),this.current=R,this.dirty=!1)}}class Xu extends so{getDefault(){return null}set(R){(R!==this.current||this.dirty)&&(this.gl.useProgram(R),this.current=R,this.dirty=!1)}}class Th extends so{getDefault(){return this.gl.TEXTURE0}set(R){(R!==this.current||this.dirty)&&(this.gl.activeTexture(R),this.current=R,this.dirty=!1)}}class bf extends so{getDefault(){let R=this.gl;return[0,0,R.drawingBufferWidth,R.drawingBufferHeight]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||R[3]!==ae[3]||this.dirty)&&(this.gl.viewport(R[0],R[1],R[2],R[3]),this.current=R,this.dirty=!1)}}class Rs extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindFramebuffer(ae.FRAMEBUFFER,R),this.current=R,this.dirty=!1}}class Yc extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindRenderbuffer(ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class If extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindTexture(ae.TEXTURE_2D,R),this.current=R,this.dirty=!1}}class Zl extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindBuffer(ae.ARRAY_BUFFER,R),this.current=R,this.dirty=!1}}class yl extends so{getDefault(){return null}set(R){let ae=this.gl;ae.bindBuffer(ae.ELEMENT_ARRAY_BUFFER,R),this.current=R,this.dirty=!1}}class oc extends so{getDefault(){return null}set(R){var ae;if(R===this.current&&!this.dirty)return;let we=this.gl;Os(we)?we.bindVertexArray(R):(ae=we.getExtension("OES_vertex_array_object"))===null||ae===void 0||ae.bindVertexArrayOES(R),this.current=R,this.dirty=!1}}class _c extends so{getDefault(){return 4}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_ALIGNMENT,R),this.current=R,this.dirty=!1}}class Zs extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_PREMULTIPLY_ALPHA_WEBGL,R),this.current=R,this.dirty=!1}}class _l extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_FLIP_Y_WEBGL,R),this.current=R,this.dirty=!1}}class Bs extends so{constructor(R,ae){super(R),this.context=R,this.parent=ae}getDefault(){return null}}class $s extends Bs{setDirty(){this.dirty=!0}set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferTexture2D(ae.FRAMEBUFFER,ae.COLOR_ATTACHMENT0,ae.TEXTURE_2D,R,0),this.current=R,this.dirty=!1}}class sc extends Bs{set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferRenderbuffer(ae.FRAMEBUFFER,ae.DEPTH_ATTACHMENT,ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class zl extends Bs{set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferRenderbuffer(ae.FRAMEBUFFER,ae.DEPTH_STENCIL_ATTACHMENT,ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class Yu{constructor(R,ae,we,Se,De){this.context=R,this.width=ae,this.height=we;let ft=R.gl,bt=this.framebuffer=ft.createFramebuffer();if(this.colorAttachment=new $s(R,bt),Se)this.depthAttachment=De?new zl(R,bt):new sc(R,bt);else if(De)throw new Error("Stencil cannot be set without depth");if(ft.checkFramebufferStatus(ft.FRAMEBUFFER)!==ft.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer is not complete")}destroy(){let R=this.context.gl,ae=this.colorAttachment.get();if(ae&&R.deleteTexture(ae),this.depthAttachment){let we=this.depthAttachment.get();we&&R.deleteRenderbuffer(we)}R.deleteFramebuffer(this.framebuffer)}}class Qs{constructor(R,ae,we){this.blendFunction=R,this.blendColor=ae,this.mask=we}}Qs.Replace=[1,0],Qs.disabled=new Qs(Qs.Replace,t.aM.transparent,[!1,!1,!1,!1]),Qs.unblended=new Qs(Qs.Replace,t.aM.transparent,[!0,!0,!0,!0]),Qs.alphaBlended=new Qs([1,771],t.aM.transparent,[!0,!0,!0,!0]);class fp{constructor(R){var ae,we;if(this.gl=R,this.clearColor=new Ns(this),this.clearDepth=new fs(this),this.clearStencil=new al(this),this.colorMask=new vl(this),this.depthMask=new ji(this),this.stencilMask=new To(this),this.stencilFunc=new Yn(this),this.stencilOp=new _s(this),this.stencilTest=new Yo(this),this.depthRange=new Nn(this),this.depthTest=new Wl(this),this.depthFunc=new Zu(this),this.blend=new ml(this),this.blendFunc=new Bu(this),this.blendColor=new El(this),this.blendEquation=new qs(this),this.cullFace=new Jl(this),this.cullFaceSide=new Nu(this),this.frontFace=new Ic(this),this.program=new Xu(this),this.activeTexture=new Th(this),this.viewport=new bf(this),this.bindFramebuffer=new Rs(this),this.bindRenderbuffer=new Yc(this),this.bindTexture=new If(this),this.bindVertexBuffer=new Zl(this),this.bindElementBuffer=new yl(this),this.bindVertexArray=new oc(this),this.pixelStoreUnpack=new _c(this),this.pixelStoreUnpackPremultiplyAlpha=new Zs(this),this.pixelStoreUnpackFlipY=new _l(this),this.extTextureFilterAnisotropic=R.getExtension("EXT_texture_filter_anisotropic")||R.getExtension("MOZ_EXT_texture_filter_anisotropic")||R.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=R.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.maxTextureSize=R.getParameter(R.MAX_TEXTURE_SIZE),Os(R)){this.HALF_FLOAT=R.HALF_FLOAT;let Se=R.getExtension("EXT_color_buffer_half_float");this.RGBA16F=(ae=R.RGBA16F)!==null&&ae!==void 0?ae:Se?.RGBA16F_EXT,this.RGB16F=(we=R.RGB16F)!==null&&we!==void 0?we:Se?.RGB16F_EXT,R.getExtension("EXT_color_buffer_float")}else{R.getExtension("EXT_color_buffer_half_float"),R.getExtension("OES_texture_half_float_linear");let Se=R.getExtension("OES_texture_half_float");this.HALF_FLOAT=Se?.HALF_FLOAT_OES}}setDefault(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()}setDirty(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.bindVertexArray.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0}createIndexBuffer(R,ae){return new $o(this,R,ae)}createVertexBuffer(R,ae,we){return new mn(this,R,ae,we)}createRenderbuffer(R,ae,we){let Se=this.gl,De=Se.createRenderbuffer();return this.bindRenderbuffer.set(De),Se.renderbufferStorage(Se.RENDERBUFFER,R,ae,we),this.bindRenderbuffer.set(null),De}createFramebuffer(R,ae,we,Se){return new Yu(this,R,ae,we,Se)}clear({color:R,depth:ae,stencil:we}){let Se=this.gl,De=0;R&&(De|=Se.COLOR_BUFFER_BIT,this.clearColor.set(R),this.colorMask.set([!0,!0,!0,!0])),ae!==void 0&&(De|=Se.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(ae),this.depthMask.set(!0)),we!==void 0&&(De|=Se.STENCIL_BUFFER_BIT,this.clearStencil.set(we),this.stencilMask.set(255)),Se.clear(De)}setCullFace(R){R.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(R.mode),this.frontFace.set(R.frontFace))}setDepthMode(R){R.func!==this.gl.ALWAYS||R.mask?(this.depthTest.set(!0),this.depthFunc.set(R.func),this.depthMask.set(R.mask),this.depthRange.set(R.range)):this.depthTest.set(!1)}setStencilMode(R){R.test.func!==this.gl.ALWAYS||R.mask?(this.stencilTest.set(!0),this.stencilMask.set(R.mask),this.stencilOp.set([R.fail,R.depthFail,R.pass]),this.stencilFunc.set({func:R.test.func,ref:R.ref,mask:R.test.mask})):this.stencilTest.set(!1)}setColorMode(R){t.aE(R.blendFunction,Qs.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(R.blendFunction),this.blendColor.set(R.blendColor)),this.colorMask.set(R.mask)}createVertexArray(){var R;return Os(this.gl)?this.gl.createVertexArray():(R=this.gl.getExtension("OES_vertex_array_object"))===null||R===void 0?void 0:R.createVertexArrayOES()}deleteVertexArray(R){var ae;return Os(this.gl)?this.gl.deleteVertexArray(R):(ae=this.gl.getExtension("OES_vertex_array_object"))===null||ae===void 0?void 0:ae.deleteVertexArrayOES(R)}unbindVAO(){this.bindVertexArray.set(null)}}class es{constructor(R,ae,we){this.func=R,this.mask=ae,this.range=we}}es.ReadOnly=!1,es.ReadWrite=!0,es.disabled=new es(519,es.ReadOnly,[0,1]);let Wh=7680;class Ss{constructor(R,ae,we,Se,De,ft){this.test=R,this.ref=ae,this.mask=we,this.fail=Se,this.depthFail=De,this.pass=ft}}Ss.disabled=new Ss({func:519,mask:0},0,0,Wh,Wh,Wh);class So{constructor(R,ae,we){this.enable=R,this.mode=ae,this.frontFace=we}}let hf;function Ku(Oe,R,ae,we,Se){let De=Oe.context,ft=De.gl,bt=Oe.useProgram("collisionBox"),Dt=[],Yt=0,cr=0;for(let ht=0;ht<we.length;ht++){let At=we[ht],_t=R.getTile(At).getBucket(ae);if(!_t)continue;let Pt=Se?_t.textCollisionBox:_t.iconCollisionBox,er=_t.collisionCircleArray;if(er.length>0){let nr=t.H();t.aQ(nr,_t.placementInvProjMatrix,Oe.transform.glCoordMatrix),t.aQ(nr,nr,_t.placementViewportMatrix),Dt.push({circleArray:er,circleOffset:cr,transform:At.posMatrix,invTransform:nr,coord:At}),Yt+=er.length/4,cr=Yt}Pt&&bt.draw(De,ft.LINES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,{u_matrix:At.posMatrix,u_pixel_extrude_scale:[1/(hr=Oe.transform).width,1/hr.height]},Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At),ae.id,Pt.layoutVertexBuffer,Pt.indexBuffer,Pt.segments,null,Oe.transform.zoom,null,null,Pt.collisionVertexBuffer)}var hr;if(!Se||!Dt.length)return;let jr=Oe.useProgram("collisionCircle"),ea=new t.aR;ea.resize(4*Yt),ea._trim();let qe=0;for(let ht of Dt)for(let At=0;At<ht.circleArray.length/4;At++){let _t=4*At,Pt=ht.circleArray[_t+0],er=ht.circleArray[_t+1],nr=ht.circleArray[_t+2],pr=ht.circleArray[_t+3];ea.emplace(qe++,Pt,er,nr,pr,0),ea.emplace(qe++,Pt,er,nr,pr,1),ea.emplace(qe++,Pt,er,nr,pr,2),ea.emplace(qe++,Pt,er,nr,pr,3)}(!hf||hf.length<2*Yt)&&(hf=function(ht){let At=2*ht,_t=new t.aT;_t.resize(At),_t._trim();for(let Pt=0;Pt<At;Pt++){let er=6*Pt;_t.uint16[er+0]=4*Pt+0,_t.uint16[er+1]=4*Pt+1,_t.uint16[er+2]=4*Pt+2,_t.uint16[er+3]=4*Pt+2,_t.uint16[er+4]=4*Pt+3,_t.uint16[er+5]=4*Pt+0}return _t}(Yt));let Je=De.createIndexBuffer(hf,!0),ot=De.createVertexBuffer(ea,t.aS.members,!0);for(let ht of Dt){let At=Mn(ht.transform,ht.invTransform,Oe.transform);jr.draw(De,ft.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,At,Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ht.coord),ae.id,ot,Je,t.a0.simpleSegment(0,2*ht.circleOffset,ht.circleArray.length,ht.circleArray.length/2),null,Oe.transform.zoom,null,null,null)}ot.destroy(),Je.destroy()}So.disabled=new So(!1,1029,2305),So.backCCW=new So(!0,1029,2305);let cu=t.an(new Float32Array(16));function Zf(Oe,R,ae,we,Se,De){let{horizontalAlign:ft,verticalAlign:bt}=t.au(Oe);return new t.P((-(ft-.5)*R/Se+we[0])*De,(-(bt-.5)*ae/Se+we[1])*De)}function Rc(Oe,R,ae,we,Se,De){let ft=R.tileAnchorPoint.add(new t.P(R.translation[0],R.translation[1]));if(R.pitchWithMap){let bt=we.mult(De);ae||(bt=bt.rotate(-Se));let Dt=ft.add(bt);return yt(Dt.x,Dt.y,R.labelPlaneMatrix,R.getElevation).point}if(ae){let bt=rt(R.tileAnchorPoint.x+1,R.tileAnchorPoint.y,R).point.sub(Oe),Dt=Math.atan(bt.y/bt.x)+(bt.x<0?Math.PI:0);return Oe.add(we.rotate(Dt))}return Oe.add(we)}function pf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea){let qe=Oe.text.placedSymbolArray,Je=Oe.text.dynamicLayoutVertexArray,ot=Oe.icon.dynamicLayoutVertexArray,ht={};Je.clear();for(let At=0;At<qe.length;At++){let _t=qe.get(At),Pt=_t.hidden||!_t.crossTileID||Oe.allowVerticalPlacement&&!_t.placedOrientation?null:we[_t.crossTileID];if(Pt){let er=new t.P(_t.anchorX,_t.anchorY),nr={getElevation:ea,width:Se.width,height:Se.height,labelPlaneMatrix:De,lineVertexArray:null,pitchWithMap:ae,projection:cr,projectionCache:null,tileAnchorPoint:er,translation:hr,unwrappedTileID:jr},pr=ae?yt(er.x,er.y,ft,ea):rt(er.x,er.y,nr),Sr=Fe(Se.cameraToCenterDistance,pr.signedDistanceFromCamera),Wr=t.ai(Oe.textSizeData,Dt,_t)*Sr/t.ap;ae&&(Wr*=Oe.tilePixelRatio/bt);let{width:ha,height:ga,anchor:Pa,textOffset:Ja,textBoxScale:di}=Pt,pi=Zf(Pa,ha,ga,Ja,di,Wr),Ci=cr.getPitchedTextCorrection(Se,er.add(new t.P(hr[0],hr[1])),jr),$i=Rc(pr.point,nr,R,pi,Se.angle,Ci),Bn=Oe.allowVerticalPlacement&&_t.placedOrientation===t.ah.vertical?Math.PI/2:0;for(let Sn=0;Sn<_t.numGlyphs;Sn++)t.aj(Je,$i,Bn);Yt&&_t.associatedIconIndex>=0&&(ht[_t.associatedIconIndex]={shiftedAnchor:$i,angle:Bn})}else Gt(_t.numGlyphs,Je)}if(Yt){ot.clear();let At=Oe.icon.placedSymbolArray;for(let _t=0;_t<At.length;_t++){let Pt=At.get(_t);if(Pt.hidden)Gt(Pt.numGlyphs,ot);else{let er=ht[_t];if(er)for(let nr=0;nr<Pt.numGlyphs;nr++)t.aj(ot,er.shiftedAnchor,er.angle);else Gt(Pt.numGlyphs,ot)}}Oe.icon.dynamicLayoutVertexBuffer.updateData(ot)}Oe.text.dynamicLayoutVertexBuffer.updateData(Je)}function Fl(Oe,R,ae){return ae.iconsInText&&R?"symbolTextAndIcon":Oe?"symbolSDF":"symbolIcon"}function lh(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr){let jr=Oe.context,ea=jr.gl,qe=Oe.transform,Je=$a(),ot=bt==="map",ht=Dt==="map",At=bt!=="viewport"&&ae.layout.get("symbol-placement")!=="point",_t=ot&&!ht&&!At,Pt=!ht&&At,er=!ae.layout.get("symbol-sort-key").isConstant(),nr=!1,pr=Oe.depthModeForSublayer(0,es.ReadOnly),Sr=ae._unevaluatedLayout.hasValue("text-variable-anchor")||ae._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Wr=[],ha=Je.getCircleRadiusCorrection(qe);for(let ga of we){let Pa=R.getTile(ga),Ja=Pa.getBucket(ae);if(!Ja)continue;let di=Se?Ja.text:Ja.icon;if(!di||!di.segments.get().length||!di.hasVisibleVertices)continue;let pi=di.programConfigurations.get(ae.id),Ci=Se||Ja.sdfIcons,$i=Se?Ja.textSizeData:Ja.iconSizeData,Bn=ht||qe.pitch!==0,Sn=Oe.useProgram(Fl(Ci,Se,Ja),pi),ho=t.ag($i,qe.zoom),ts=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ga),yo,Vo,ls,rl,Ys=[0,0],Zo=null;if(Se)Vo=Pa.glyphAtlasTexture,ls=ea.LINEAR,yo=Pa.glyphAtlasTexture.size,Ja.iconsInText&&(Ys=Pa.imageAtlasTexture.size,Zo=Pa.imageAtlasTexture,rl=Bn||Oe.options.rotating||Oe.options.zooming||$i.kind==="composite"||$i.kind==="camera"?ea.LINEAR:ea.NEAREST);else{let wt=ae.layout.get("icon-size").constantOr(0)!==1||Ja.iconsNeedLinear;Vo=Pa.imageAtlasTexture,ls=Ci||Oe.options.rotating||Oe.options.zooming||wt||Bn?ea.LINEAR:ea.NEAREST,yo=Pa.imageAtlasTexture.size}let Go=Aa(Pa,1,Oe.transform.zoom),Rl=Pt?ga.posMatrix:cu,Xl=vr(Rl,ht,ot,Oe.transform,Go),qu=_r(Rl,ht,ot,Oe.transform,Go),fu=_r(ga.posMatrix,ht,ot,Oe.transform,Go),bl=Je.translatePosition(Oe.transform,Pa,De,ft),ou=Sr&&Ja.hasTextData(),Sc=ae.layout.get("icon-text-fit")!=="none"&&ou&&Ja.hasIconData();if(At){let wt=Oe.style.map.terrain?(Rt,or)=>Oe.style.map.terrain.getElevation(ga,Rt,or):null,Jt=ae.layout.get("text-rotation-alignment")==="map";Ne(Ja,ga.posMatrix,Oe,Se,Xl,fu,ht,Yt,Jt,Je,ga.toUnwrapped(),qe.width,qe.height,bl,wt)}let ql=ga.posMatrix,Hl=Se&&Sr||Sc,de=At||Hl?cu:Xl,Re=qu,$e=Ci&&ae.paint.get(Se?"text-halo-width":"icon-halo-width").constantOr(1)!==0,pt;pt=Ci?Ja.iconsInText?po($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,yo,Ys,ha):Xn($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,!0,ha):Qo($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,ha);let vt={program:Sn,buffers:di,uniformValues:pt,atlasTexture:Vo,atlasTextureIcon:Zo,atlasInterpolation:ls,atlasInterpolationIcon:rl,isSDF:Ci,hasHalo:$e};if(er&&Ja.canOverlap){nr=!0;let wt=di.segments.get();for(let Jt of wt)Wr.push({segments:new t.a0([Jt]),sortKey:Jt.sortKey,state:vt,terrainData:ts})}else Wr.push({segments:di.segments,sortKey:0,state:vt,terrainData:ts})}nr&&Wr.sort((ga,Pa)=>ga.sortKey-Pa.sortKey);for(let ga of Wr){let Pa=ga.state;if(jr.activeTexture.set(ea.TEXTURE0),Pa.atlasTexture.bind(Pa.atlasInterpolation,ea.CLAMP_TO_EDGE),Pa.atlasTextureIcon&&(jr.activeTexture.set(ea.TEXTURE1),Pa.atlasTextureIcon&&Pa.atlasTextureIcon.bind(Pa.atlasInterpolationIcon,ea.CLAMP_TO_EDGE)),Pa.isSDF){let Ja=Pa.uniformValues;Pa.hasHalo&&(Ja.u_is_halo=1,Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Ja,ga.terrainData)),Ja.u_is_halo=0}Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Pa.uniformValues,ga.terrainData)}}function Xf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt){let cr=we.context;Se.draw(cr,cr.gl.TRIANGLES,De,ft,bt,So.disabled,Dt,Yt,ae.id,Oe.layoutVertexBuffer,Oe.indexBuffer,R,ae.paint,we.transform.zoom,Oe.programConfigurations.get(ae.id),Oe.dynamicLayoutVertexBuffer,Oe.opacityVertexBuffer)}function Rf(Oe,R,ae,we){let Se=Oe.context,De=Se.gl,ft=Ss.disabled,bt=new Qs([De.ONE,De.ONE],t.aM.transparent,[!0,!0,!0,!0]),Dt=R.getBucket(ae);if(!Dt)return;let Yt=we.key,cr=ae.heatmapFbos.get(Yt);cr||(cr=Yf(Se,R.tileSize,R.tileSize),ae.heatmapFbos.set(Yt,cr)),Se.bindFramebuffer.set(cr.framebuffer),Se.viewport.set([0,0,R.tileSize,R.tileSize]),Se.clear({color:t.aM.transparent});let hr=Dt.programConfigurations.get(ae.id),jr=Oe.useProgram("heatmap",hr),ea=Oe.style.map.terrain.getTerrainData(we);jr.draw(Se,De.TRIANGLES,es.disabled,ft,bt,So.disabled,Cn(we.posMatrix,R,Oe.transform.zoom,ae.paint.get("heatmap-intensity")),ea,ae.id,Dt.layoutVertexBuffer,Dt.indexBuffer,Dt.segments,ae.paint,Oe.transform.zoom,hr)}function Kc(Oe,R,ae){let we=Oe.context,Se=we.gl;we.setColorMode(Oe.colorModeForRenderPass());let De=uh(we,R),ft=ae.key,bt=R.heatmapFbos.get(ft);bt&&(we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,bt.colorAttachment.get()),we.activeTexture.set(Se.TEXTURE1),De.bind(Se.LINEAR,Se.CLAMP_TO_EDGE),Oe.useProgram("heatmapTexture").draw(we,Se.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,Lo(Oe,R,0,1),null,R.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments,R.paint,Oe.transform.zoom),bt.destroy(),R.heatmapFbos.delete(ft))}function Yf(Oe,R,ae){var we,Se;let De=Oe.gl,ft=De.createTexture();De.bindTexture(De.TEXTURE_2D,ft),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,De.LINEAR),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,De.LINEAR);let bt=(we=Oe.HALF_FLOAT)!==null&&we!==void 0?we:De.UNSIGNED_BYTE,Dt=(Se=Oe.RGBA16F)!==null&&Se!==void 0?Se:De.RGBA;De.texImage2D(De.TEXTURE_2D,0,Dt,R,ae,0,De.RGBA,bt,null);let Yt=Oe.createFramebuffer(R,ae,!1,!1);return Yt.colorAttachment.set(ft),Yt}function uh(Oe,R){return R.colorRampTexture||(R.colorRampTexture=new u(Oe,R.colorRamp,Oe.gl.RGBA)),R.colorRampTexture}function Ju(Oe,R,ae,we,Se){if(!ae||!we||!we.imageAtlas)return;let De=we.imageAtlas.patternPositions,ft=De[ae.to.toString()],bt=De[ae.from.toString()];if(!ft&&bt&&(ft=bt),!bt&&ft&&(bt=ft),!ft||!bt){let Dt=Se.getPaintProperty(R);ft=De[Dt],bt=De[Dt]}ft&&bt&&Oe.setConstantPatternPositions(ft,bt)}function Df(Oe,R,ae,we,Se,De,ft){let bt=Oe.context.gl,Dt="fill-pattern",Yt=ae.paint.get(Dt),cr=Yt&&Yt.constantOr(1),hr=ae.getCrossfadeParameters(),jr,ea,qe,Je,ot;ft?(ea=cr&&!ae.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",jr=bt.LINES):(ea=cr?"fillPattern":"fill",jr=bt.TRIANGLES);let ht=Yt.constantOr(null);for(let At of we){let _t=R.getTile(At);if(cr&&!_t.patternsLoaded())continue;let Pt=_t.getBucket(ae);if(!Pt)continue;let er=Pt.programConfigurations.get(ae.id),nr=Oe.useProgram(ea,er),pr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At);cr&&(Oe.context.activeTexture.set(bt.TEXTURE0),_t.imageAtlasTexture.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),er.updatePaintBuffers(hr)),Ju(er,Dt,ht,_t,ae);let Sr=pr?At:null,Wr=Oe.translatePosMatrix(Sr?Sr.posMatrix:At.posMatrix,_t,ae.paint.get("fill-translate"),ae.paint.get("fill-translate-anchor"));if(ft){Je=Pt.indexBuffer2,ot=Pt.segments2;let ha=[bt.drawingBufferWidth,bt.drawingBufferHeight];qe=ea==="fillOutlinePattern"&&cr?an(Wr,Oe,hr,_t,ha):ai(Wr,ha)}else Je=Pt.indexBuffer,ot=Pt.segments,qe=cr?Ti(Wr,Oe,hr,_t):Sa(Wr);nr.draw(Oe.context,jr,Se,Oe.stencilModeForClipping(At),De,So.disabled,qe,pr,ae.id,Pt.layoutVertexBuffer,Je,ot,ae.paint,Oe.transform.zoom,er)}}function Dc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt="fill-extrusion-pattern",cr=ae.paint.get(Yt),hr=cr.constantOr(1),jr=ae.getCrossfadeParameters(),ea=ae.paint.get("fill-extrusion-opacity"),qe=cr.constantOr(null);for(let Je of we){let ot=R.getTile(Je),ht=ot.getBucket(ae);if(!ht)continue;let At=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(Je),_t=ht.programConfigurations.get(ae.id),Pt=Oe.useProgram(hr?"fillExtrusionPattern":"fillExtrusion",_t);hr&&(Oe.context.activeTexture.set(Dt.TEXTURE0),ot.imageAtlasTexture.bind(Dt.LINEAR,Dt.CLAMP_TO_EDGE),_t.updatePaintBuffers(jr)),Ju(_t,Yt,qe,ot,ae);let er=Oe.translatePosMatrix(Je.posMatrix,ot,ae.paint.get("fill-extrusion-translate"),ae.paint.get("fill-extrusion-translate-anchor")),nr=ae.paint.get("fill-extrusion-vertical-gradient"),pr=hr?da(er,Oe,nr,ea,Je,jr,ot):Ca(er,Oe,nr,ea);Pt.draw(bt,bt.gl.TRIANGLES,Se,De,ft,So.backCCW,pr,At,ae.id,ht.layoutVertexBuffer,ht.indexBuffer,ht.segments,ae.paint,Oe.transform.zoom,_t,Oe.style.map.terrain&&ht.centroidVertexBuffer)}}function Jc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt=ae.fbo;if(!Yt)return;let cr=Oe.useProgram("hillshade"),hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(R);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,Yt.colorAttachment.get()),cr.draw(bt,Dt.TRIANGLES,Se,De,ft,So.disabled,((jr,ea,qe,Je)=>{let ot=qe.paint.get("hillshade-shadow-color"),ht=qe.paint.get("hillshade-highlight-color"),At=qe.paint.get("hillshade-accent-color"),_t=qe.paint.get("hillshade-illumination-direction")*(Math.PI/180);qe.paint.get("hillshade-illumination-anchor")==="viewport"&&(_t-=jr.transform.angle);let Pt=!jr.options.moving;return{u_matrix:Je?Je.posMatrix:jr.transform.calculatePosMatrix(ea.tileID.toUnwrapped(),Pt),u_image:0,u_latrange:Xi(0,ea.tileID),u_light:[qe.paint.get("hillshade-exaggeration"),_t],u_shadow:ot,u_highlight:ht,u_accent:At}})(Oe,ae,we,hr?R:null),hr,we.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments)}function Eu(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl,Dt=R.dem;if(Dt&&Dt.data){let Yt=Dt.dim,cr=Dt.stride,hr=Dt.getPixels();if(ft.activeTexture.set(bt.TEXTURE1),ft.pixelStoreUnpackPremultiplyAlpha.set(!1),R.demTexture=R.demTexture||Oe.getTileTexture(cr),R.demTexture){let ea=R.demTexture;ea.update(hr,{premultiply:!1}),ea.bind(bt.NEAREST,bt.CLAMP_TO_EDGE)}else R.demTexture=new u(ft,hr,bt.RGBA,{premultiply:!1}),R.demTexture.bind(bt.NEAREST,bt.CLAMP_TO_EDGE);ft.activeTexture.set(bt.TEXTURE0);let jr=R.fbo;if(!jr){let ea=new u(ft,{width:Yt,height:Yt,data:null},bt.RGBA);ea.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),jr=R.fbo=ft.createFramebuffer(Yt,Yt,!0,!1),jr.colorAttachment.set(ea.texture)}ft.bindFramebuffer.set(jr.framebuffer),ft.viewport.set([0,0,Yt,Yt]),Oe.useProgram("hillshadePrepare").draw(ft,bt.TRIANGLES,we,Se,De,So.disabled,((ea,qe)=>{let Je=qe.stride,ot=t.H();return t.aP(ot,0,t.X,-t.X,0,0,1),t.J(ot,ot,[0,-t.X,0]),{u_matrix:ot,u_image:1,u_dimension:[Je,Je],u_zoom:ea.overscaledZ,u_unpack:qe.getUnpackVector()}})(R.tileID,Dt),null,ae.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments),R.needsHillshadePrepare=!1}}function wf(Oe,R,ae,we,Se,De){let ft=we.paint.get("raster-fade-duration");if(!De&&ft>0){let bt=i.now(),Dt=(bt-Oe.timeAdded)/ft,Yt=R?(bt-R.timeAdded)/ft:-1,cr=ae.getSource(),hr=Se.coveringZoomLevel({tileSize:cr.tileSize,roundZoom:cr.roundZoom}),jr=!R||Math.abs(R.tileID.overscaledZ-hr)>Math.abs(Oe.tileID.overscaledZ-hr),ea=jr&&Oe.refreshedUponExpiration?1:t.ac(jr?Dt:1-Yt,0,1);return Oe.refreshedUponExpiration&&Dt>=1&&(Oe.refreshedUponExpiration=!1),R?{opacity:1,mix:1-ea}:{opacity:ea,mix:0}}return{opacity:1,mix:0}}let zc=new t.aM(1,0,0,1),Us=new t.aM(0,1,0,1),Kf=new t.aM(0,0,1,1),Zh=new t.aM(1,0,1,1),ch=new t.aM(0,1,1,1);function df(Oe,R,ae,we){ku(Oe,0,R+ae/2,Oe.transform.width,ae,we)}function Ah(Oe,R,ae,we){ku(Oe,R-ae/2,0,ae,Oe.transform.height,we)}function ku(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl;bt.enable(bt.SCISSOR_TEST),bt.scissor(R*Oe.pixelRatio,ae*Oe.pixelRatio,we*Oe.pixelRatio,Se*Oe.pixelRatio),ft.clear({color:De}),bt.disable(bt.SCISSOR_TEST)}function fh(Oe,R,ae){let we=Oe.context,Se=we.gl,De=ae.posMatrix,ft=Oe.useProgram("debug"),bt=es.disabled,Dt=Ss.disabled,Yt=Oe.colorModeForRenderPass(),cr="$debug",hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ae);we.activeTexture.set(Se.TEXTURE0);let jr=R.getTileByID(ae.key).latestRawTileData,ea=Math.floor((jr&&jr.byteLength||0)/1024),qe=R.getTile(ae).tileSize,Je=512/Math.min(qe,512)*(ae.overscaledZ/Oe.transform.zoom)*.5,ot=ae.canonical.toString();ae.overscaledZ!==ae.canonical.z&&(ot+=` => ${ae.overscaledZ}`),function(ht,At){ht.initDebugOverlayCanvas();let _t=ht.debugOverlayCanvas,Pt=ht.context.gl,er=ht.debugOverlayCanvas.getContext("2d");er.clearRect(0,0,_t.width,_t.height),er.shadowColor="white",er.shadowBlur=2,er.lineWidth=1.5,er.strokeStyle="white",er.textBaseline="top",er.font="bold 36px Open Sans, sans-serif",er.fillText(At,5,5),er.strokeText(At,5,5),ht.debugOverlayTexture.update(_t),ht.debugOverlayTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE)}(Oe,`${ot} ${ea}kB`),ft.draw(we,Se.TRIANGLES,bt,Dt,Qs.alphaBlended,So.disabled,On(De,t.aM.transparent,Je),null,cr,Oe.debugBuffer,Oe.quadTriangleIndexBuffer,Oe.debugSegments),ft.draw(we,Se.LINE_STRIP,bt,Dt,Yt,So.disabled,On(De,t.aM.red),hr,cr,Oe.debugBuffer,Oe.tileBorderIndexBuffer,Oe.debugSegments)}function ru(Oe,R,ae){let we=Oe.context,Se=we.gl,De=Oe.colorModeForRenderPass(),ft=new es(Se.LEQUAL,es.ReadWrite,Oe.depthRangeFor3D),bt=Oe.useProgram("terrain"),Dt=R.getTerrainMesh();we.bindFramebuffer.set(null),we.viewport.set([0,0,Oe.width,Oe.height]);for(let Yt of ae){let cr=Oe.renderToTexture.getTexture(Yt),hr=R.getTerrainData(Yt.tileID);we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,cr.texture);let jr=Oe.transform.calculatePosMatrix(Yt.tileID.toUnwrapped()),ea=R.getMeshFrameDelta(Oe.transform.zoom),qe=Oe.transform.calculateFogMatrix(Yt.tileID.toUnwrapped()),Je=mr(jr,ea,qe,Oe.style.sky,Oe.transform.pitch);bt.draw(we,Se.TRIANGLES,ft,Ss.disabled,De,So.backCCW,Je,hr,"terrain",Dt.vertexBuffer,Dt.indexBuffer,Dt.segments)}}class Cu{constructor(R,ae,we){this.vertexBuffer=R,this.indexBuffer=ae,this.segments=we}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class xc{constructor(R,ae){this.context=new fp(R),this.transform=ae,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:t.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=St.maxUnderzooming+St.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Mr}resize(R,ae,we){if(this.width=Math.floor(R*we),this.height=Math.floor(ae*we),this.pixelRatio=we,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let Se of this.style._order)this.style._layers[Se].resize()}setup(){let R=this.context,ae=new t.aX;ae.emplaceBack(0,0),ae.emplaceBack(t.X,0),ae.emplaceBack(0,t.X),ae.emplaceBack(t.X,t.X),this.tileExtentBuffer=R.createVertexBuffer(ae,oa.members),this.tileExtentSegments=t.a0.simpleSegment(0,0,4,2);let we=new t.aX;we.emplaceBack(0,0),we.emplaceBack(t.X,0),we.emplaceBack(0,t.X),we.emplaceBack(t.X,t.X),this.debugBuffer=R.createVertexBuffer(we,oa.members),this.debugSegments=t.a0.simpleSegment(0,0,4,5);let Se=new t.$;Se.emplaceBack(0,0,0,0),Se.emplaceBack(t.X,0,t.X,0),Se.emplaceBack(0,t.X,0,t.X),Se.emplaceBack(t.X,t.X,t.X,t.X),this.rasterBoundsBuffer=R.createVertexBuffer(Se,Ze.members),this.rasterBoundsSegments=t.a0.simpleSegment(0,0,4,2);let De=new t.aX;De.emplaceBack(0,0),De.emplaceBack(1,0),De.emplaceBack(0,1),De.emplaceBack(1,1),this.viewportBuffer=R.createVertexBuffer(De,oa.members),this.viewportSegments=t.a0.simpleSegment(0,0,4,2);let ft=new t.aZ;ft.emplaceBack(0),ft.emplaceBack(1),ft.emplaceBack(3),ft.emplaceBack(2),ft.emplaceBack(0),this.tileBorderIndexBuffer=R.createIndexBuffer(ft);let bt=new t.aY;bt.emplaceBack(0,1,2),bt.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=R.createIndexBuffer(bt);let Dt=this.context.gl;this.stencilClearMode=new Ss({func:Dt.ALWAYS,mask:0},0,255,Dt.ZERO,Dt.ZERO,Dt.ZERO)}clearStencil(){let R=this.context,ae=R.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let we=t.H();t.aP(we,0,this.width,this.height,0,0,1),t.K(we,we,[ae.drawingBufferWidth,ae.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(R,ae.TRIANGLES,es.disabled,this.stencilClearMode,Qs.disabled,So.disabled,$n(we),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(R,ae){if(this.currentStencilSource===R.source||!R.isTileClipped()||!ae||!ae.length)return;this.currentStencilSource=R.source;let we=this.context,Se=we.gl;this.nextStencilID+ae.length>256&&this.clearStencil(),we.setColorMode(Qs.disabled),we.setDepthMode(es.disabled);let De=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let ft of ae){let bt=this._tileClippingMaskIDs[ft.key]=this.nextStencilID++,Dt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(ft);De.draw(we,Se.TRIANGLES,es.disabled,new Ss({func:Se.ALWAYS,mask:0},bt,255,Se.KEEP,Se.KEEP,Se.REPLACE),Qs.disabled,So.disabled,$n(ft.posMatrix),Dt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let R=this.nextStencilID++,ae=this.context.gl;return new Ss({func:ae.NOTEQUAL,mask:255},R,255,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilModeForClipping(R){let ae=this.context.gl;return new Ss({func:ae.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilConfigForOverlap(R){let ae=this.context.gl,we=R.sort((ft,bt)=>bt.overscaledZ-ft.overscaledZ),Se=we[we.length-1].overscaledZ,De=we[0].overscaledZ-Se+1;if(De>1){this.currentStencilSource=void 0,this.nextStencilID+De>256&&this.clearStencil();let ft={};for(let bt=0;bt<De;bt++)ft[bt+Se]=new Ss({func:ae.GEQUAL,mask:255},bt+this.nextStencilID,255,ae.KEEP,ae.KEEP,ae.REPLACE);return this.nextStencilID+=De,[ft,we]}return[{[Se]:Ss.disabled},we]}colorModeForRenderPass(){let R=this.context.gl;return this._showOverdrawInspector?new Qs([R.CONSTANT_COLOR,R.ONE],new t.aM(.125,.125,.125,0),[!0,!0,!0,!0]):this.renderPass==="opaque"?Qs.unblended:Qs.alphaBlended}depthModeForSublayer(R,ae,we){if(!this.opaquePassEnabledForLayer())return es.disabled;let Se=1-((1+this.currentLayer)*this.numSublayers+R)*this.depthEpsilon;return new es(we||this.context.gl.LEQUAL,ae,[Se,Se])}opaquePassEnabledForLayer(){return this.currentLayer<this.opaquePassCutoff}render(R,ae){this.style=R,this.options=ae,this.lineAtlas=R.lineAtlas,this.imageManager=R.imageManager,this.glyphManager=R.glyphManager,this.symbolFadeChange=R.placement.symbolFadeChange(i.now()),this.imageManager.beginFrame();let we=this.style._order,Se=this.style.sourceCaches,De={},ft={},bt={};for(let Dt in Se){let Yt=Se[Dt];Yt.used&&Yt.prepare(this.context),De[Dt]=Yt.getVisibleCoordinates(),ft[Dt]=De[Dt].slice().reverse(),bt[Dt]=Yt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(let Dt=0;Dt<we.length;Dt++)if(this.style._layers[we[Dt]].is3D()){this.opaquePassCutoff=Dt;break}this.maybeDrawDepthAndCoords(!1),this.renderToTexture&&(this.renderToTexture.prepareForRender(this.style,this.transform.zoom),this.opaquePassCutoff=0),this.renderPass="offscreen";for(let Dt of we){let Yt=this.style._layers[Dt];if(!Yt.hasOffscreenPass()||Yt.isHidden(this.transform.zoom))continue;let cr=ft[Yt.source];(Yt.type==="custom"||cr.length)&&this.renderLayer(this,Se[Yt.source],Yt,cr)}if(this.context.bindFramebuffer.set(null),this.context.clear({color:ae.showOverdrawInspector?t.aM.black:t.aM.transparent,depth:1}),this.clearStencil(),this.style.sky&&function(Dt,Yt){let cr=Dt.context,hr=cr.gl,jr=((ht,At,_t)=>({u_sky_color:ht.properties.get("sky-color"),u_horizon_color:ht.properties.get("horizon-color"),u_horizon:(At.height/2+At.getHorizon())*_t,u_sky_horizon_blend:ht.properties.get("sky-horizon-blend")*At.height/2*_t}))(Yt,Dt.style.map.transform,Dt.pixelRatio),ea=new es(hr.LEQUAL,es.ReadWrite,[0,1]),qe=Ss.disabled,Je=Dt.colorModeForRenderPass(),ot=Dt.useProgram("sky");if(!Yt.mesh){let ht=new t.aX;ht.emplaceBack(-1,-1),ht.emplaceBack(1,-1),ht.emplaceBack(1,1),ht.emplaceBack(-1,1);let At=new t.aY;At.emplaceBack(0,1,2),At.emplaceBack(0,2,3),Yt.mesh=new Cu(cr.createVertexBuffer(ht,oa.members),cr.createIndexBuffer(At),t.a0.simpleSegment(0,0,ht.length,At.length))}ot.draw(cr,hr.TRIANGLES,ea,qe,Je,So.disabled,jr,void 0,"sky",Yt.mesh.vertexBuffer,Yt.mesh.indexBuffer,Yt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=ae.showOverdrawInspector,this.depthRangeFor3D=[0,1-(R._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=we.length-1;this.currentLayer>=0;this.currentLayer--){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source],cr=De[Dt.source];this._renderTileClippingMasks(Dt,cr),this.renderLayer(this,Yt,Dt,cr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<we.length;this.currentLayer++){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source];if(this.renderToTexture&&this.renderToTexture.renderLayer(Dt))continue;let cr=(Dt.type==="symbol"?bt:ft)[Dt.source];this._renderTileClippingMasks(Dt,De[Dt.source]),this.renderLayer(this,Yt,Dt,cr)}if(this.options.showTileBoundaries){let Dt=function(Yt,cr){let hr=null,jr=Object.values(Yt._layers).flatMap(ot=>ot.source&&!ot.isHidden(cr)?[Yt.sourceCaches[ot.source]]:[]),ea=jr.filter(ot=>ot.getSource().type==="vector"),qe=jr.filter(ot=>ot.getSource().type!=="vector"),Je=ot=>{(!hr||hr.getSource().maxzoom<ot.getSource().maxzoom)&&(hr=ot)};return ea.forEach(ot=>Je(ot)),hr||qe.forEach(ot=>Je(ot)),hr}(this.style,this.transform.zoom);Dt&&function(Yt,cr,hr){for(let jr=0;jr<hr.length;jr++)fh(Yt,cr,hr[jr])}(this,Dt,Dt.getVisibleCoordinates())}this.options.showPadding&&function(Dt){let Yt=Dt.transform.padding;df(Dt,Dt.transform.height-(Yt.top||0),3,zc),df(Dt,Yt.bottom||0,3,Us),Ah(Dt,Yt.left||0,3,Kf),Ah(Dt,Dt.transform.width-(Yt.right||0),3,Zh);let cr=Dt.transform.centerPoint;(function(hr,jr,ea,qe){ku(hr,jr-1,ea-10,2,20,qe),ku(hr,jr-10,ea-1,20,2,qe)})(Dt,cr.x,Dt.transform.height-cr.y,ch)}(this),this.context.setDefault()}maybeDrawDepthAndCoords(R){if(!this.style||!this.style.map||!this.style.map.terrain)return;let ae=this.terrainFacilitator.matrix,we=this.transform.modelViewProjectionMatrix,Se=this.terrainFacilitator.dirty;Se||(Se=R?!t.a_(ae,we):!t.a$(ae,we)),Se||(Se=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),Se&&(t.b0(ae,we),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.sourceCache.getRenderableTiles(),ea=De.useProgram("terrainDepth");bt.bindFramebuffer.set(ft.getFramebuffer("depth").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1});for(let qe of jr){let Je=ft.getTerrainData(qe.tileID),ot={u_matrix:De.transform.calculatePosMatrix(qe.tileID.toUnwrapped()),u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};ea.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ot,Je,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain),function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.getCoordsTexture(),ea=ft.sourceCache.getRenderableTiles(),qe=De.useProgram("terrainCoords");bt.bindFramebuffer.set(ft.getFramebuffer("coords").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1}),ft.coordsIndex=[];for(let Je of ea){let ot=ft.getTerrainData(Je.tileID);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,jr.texture);let ht={u_matrix:De.transform.calculatePosMatrix(Je.tileID.toUnwrapped()),u_terrain_coords_id:(255-ft.coordsIndex.length)/255,u_texture:0,u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};qe.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ht,ot,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments),ft.coordsIndex.push(Je.tileID.key)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain))}renderLayer(R,ae,we,Se){if(!we.isHidden(this.transform.zoom)&&(we.type==="background"||we.type==="custom"||(Se||[]).length))switch(this.id=we.id,we.type){case"symbol":(function(De,ft,bt,Dt,Yt){if(De.renderPass!=="translucent")return;let cr=Ss.disabled,hr=De.colorModeForRenderPass();(bt._unevaluatedLayout.hasValue("text-variable-anchor")||bt._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(jr,ea,qe,Je,ot,ht,At,_t,Pt){let er=ea.transform,nr=$a(),pr=ot==="map",Sr=ht==="map";for(let Wr of jr){let ha=Je.getTile(Wr),ga=ha.getBucket(qe);if(!ga||!ga.text||!ga.text.segments.get().length)continue;let Pa=t.ag(ga.textSizeData,er.zoom),Ja=Aa(ha,1,ea.transform.zoom),di=vr(Wr.posMatrix,Sr,pr,ea.transform,Ja),pi=qe.layout.get("icon-text-fit")!=="none"&&ga.hasIconData();if(Pa){let Ci=Math.pow(2,er.zoom-ha.tileID.overscaledZ),$i=ea.style.map.terrain?(Sn,ho)=>ea.style.map.terrain.getElevation(Wr,Sn,ho):null,Bn=nr.translatePosition(er,ha,At,_t);pf(ga,pr,Sr,Pt,er,di,Wr.posMatrix,Ci,Pa,pi,nr,Bn,Wr.toUnwrapped(),$i)}}}(Dt,De,bt,ft,bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),Yt),bt.paint.get("icon-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!1,bt.paint.get("icon-translate"),bt.paint.get("icon-translate-anchor"),bt.layout.get("icon-rotation-alignment"),bt.layout.get("icon-pitch-alignment"),bt.layout.get("icon-keep-upright"),cr,hr),bt.paint.get("text-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!0,bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.layout.get("text-keep-upright"),cr,hr),ft.map.showCollisionBoxes&&(Ku(De,ft,bt,Dt,!0),Ku(De,ft,bt,Dt,!1))})(R,ae,we,Se,this.style.placement.variableOffsets);break;case"circle":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("circle-opacity"),cr=bt.paint.get("circle-stroke-width"),hr=bt.paint.get("circle-stroke-opacity"),jr=!bt.layout.get("circle-sort-key").isConstant();if(Yt.constantOr(1)===0&&(cr.constantOr(1)===0||hr.constantOr(1)===0))return;let ea=De.context,qe=ea.gl,Je=De.depthModeForSublayer(0,es.ReadOnly),ot=Ss.disabled,ht=De.colorModeForRenderPass(),At=[];for(let _t=0;_t<Dt.length;_t++){let Pt=Dt[_t],er=ft.getTile(Pt),nr=er.getBucket(bt);if(!nr)continue;let pr=nr.programConfigurations.get(bt.id),Sr=De.useProgram("circle",pr),Wr=nr.layoutVertexBuffer,ha=nr.indexBuffer,ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(Pt),Pa={programConfiguration:pr,program:Sr,layoutVertexBuffer:Wr,indexBuffer:ha,uniformValues:sn(De,Pt,er,bt),terrainData:ga};if(jr){let Ja=nr.segments.get();for(let di of Ja)At.push({segments:new t.a0([di]),sortKey:di.sortKey,state:Pa})}else At.push({segments:nr.segments,sortKey:0,state:Pa})}jr&&At.sort((_t,Pt)=>_t.sortKey-Pt.sortKey);for(let _t of At){let{programConfiguration:Pt,program:er,layoutVertexBuffer:nr,indexBuffer:pr,uniformValues:Sr,terrainData:Wr}=_t.state;er.draw(ea,qe.TRIANGLES,Je,ot,ht,So.disabled,Sr,Wr,bt.id,nr,pr,_t.segments,bt.paint,De.transform.zoom,Pt)}})(R,ae,we,Se);break;case"heatmap":(function(De,ft,bt,Dt){if(bt.paint.get("heatmap-opacity")===0)return;let Yt=De.context;if(De.style.map.terrain){for(let cr of Dt){let hr=ft.getTile(cr);ft.hasRenderableParent(cr)||(De.renderPass==="offscreen"?Rf(De,hr,bt,cr):De.renderPass==="translucent"&&Kc(De,bt,cr))}Yt.viewport.set([0,0,De.width,De.height])}else De.renderPass==="offscreen"?function(cr,hr,jr,ea){let qe=cr.context,Je=qe.gl,ot=Ss.disabled,ht=new Qs([Je.ONE,Je.ONE],t.aM.transparent,[!0,!0,!0,!0]);(function(At,_t,Pt){let er=At.gl;At.activeTexture.set(er.TEXTURE1),At.viewport.set([0,0,_t.width/4,_t.height/4]);let nr=Pt.heatmapFbos.get(t.aU);nr?(er.bindTexture(er.TEXTURE_2D,nr.colorAttachment.get()),At.bindFramebuffer.set(nr.framebuffer)):(nr=Yf(At,_t.width/4,_t.height/4),Pt.heatmapFbos.set(t.aU,nr))})(qe,cr,jr),qe.clear({color:t.aM.transparent});for(let At=0;At<ea.length;At++){let _t=ea[At];if(hr.hasRenderableParent(_t))continue;let Pt=hr.getTile(_t),er=Pt.getBucket(jr);if(!er)continue;let nr=er.programConfigurations.get(jr.id),pr=cr.useProgram("heatmap",nr),{zoom:Sr}=cr.transform;pr.draw(qe,Je.TRIANGLES,es.disabled,ot,ht,So.disabled,Cn(_t.posMatrix,Pt,Sr,jr.paint.get("heatmap-intensity")),null,jr.id,er.layoutVertexBuffer,er.indexBuffer,er.segments,jr.paint,cr.transform.zoom,nr)}qe.viewport.set([0,0,cr.width,cr.height])}(De,ft,bt,Dt):De.renderPass==="translucent"&&function(cr,hr){let jr=cr.context,ea=jr.gl;jr.setColorMode(cr.colorModeForRenderPass());let qe=hr.heatmapFbos.get(t.aU);qe&&(jr.activeTexture.set(ea.TEXTURE0),ea.bindTexture(ea.TEXTURE_2D,qe.colorAttachment.get()),jr.activeTexture.set(ea.TEXTURE1),uh(jr,hr).bind(ea.LINEAR,ea.CLAMP_TO_EDGE),cr.useProgram("heatmapTexture").draw(jr,ea.TRIANGLES,es.disabled,Ss.disabled,cr.colorModeForRenderPass(),So.disabled,Lo(cr,hr,0,1),null,hr.id,cr.viewportBuffer,cr.quadTriangleIndexBuffer,cr.viewportSegments,hr.paint,cr.transform.zoom))}(De,bt)})(R,ae,we,Se);break;case"line":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("line-opacity"),cr=bt.paint.get("line-width");if(Yt.constantOr(1)===0||cr.constantOr(1)===0)return;let hr=De.depthModeForSublayer(0,es.ReadOnly),jr=De.colorModeForRenderPass(),ea=bt.paint.get("line-dasharray"),qe=bt.paint.get("line-pattern"),Je=qe.constantOr(1),ot=bt.paint.get("line-gradient"),ht=bt.getCrossfadeParameters(),At=Je?"linePattern":ea?"lineSDF":ot?"lineGradient":"line",_t=De.context,Pt=_t.gl,er=!0;for(let nr of Dt){let pr=ft.getTile(nr);if(Je&&!pr.patternsLoaded())continue;let Sr=pr.getBucket(bt);if(!Sr)continue;let Wr=Sr.programConfigurations.get(bt.id),ha=De.context.program.get(),ga=De.useProgram(At,Wr),Pa=er||ga.program!==ha,Ja=De.style.map.terrain&&De.style.map.terrain.getTerrainData(nr),di=qe.constantOr(null);if(di&&pr.imageAtlas){let $i=pr.imageAtlas,Bn=$i.patternPositions[di.to.toString()],Sn=$i.patternPositions[di.from.toString()];Bn&&Sn&&Wr.setConstantPatternPositions(Bn,Sn)}let pi=Ja?nr:null,Ci=Je?as(De,pr,bt,ht,pi):ea?Pn(De,pr,bt,ea,ht,pi):ot?zo(De,pr,bt,Sr.lineClipsArray.length,pi):Jo(De,pr,bt,pi);if(Je)_t.activeTexture.set(Pt.TEXTURE0),pr.imageAtlasTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE),Wr.updatePaintBuffers(ht);else if(ea&&(Pa||De.lineAtlas.dirty))_t.activeTexture.set(Pt.TEXTURE0),De.lineAtlas.bind(_t);else if(ot){let $i=Sr.gradients[bt.id],Bn=$i.texture;if(bt.gradientVersion!==$i.version){let Sn=256;if(bt.stepInterpolant){let ho=ft.getSource().maxzoom,ts=nr.canonical.z===ho?Math.ceil(1<<De.transform.maxZoom-nr.canonical.z):1;Sn=t.ac(t.aV(Sr.maxLineLength/t.X*1024*ts),256,_t.maxTextureSize)}$i.gradient=t.aW({expression:bt.gradientExpression(),evaluationKey:"lineProgress",resolution:Sn,image:$i.gradient||void 0,clips:Sr.lineClipsArray}),$i.texture?$i.texture.update($i.gradient):$i.texture=new u(_t,$i.gradient,Pt.RGBA),$i.version=bt.gradientVersion,Bn=$i.texture}_t.activeTexture.set(Pt.TEXTURE0),Bn.bind(bt.stepInterpolant?Pt.NEAREST:Pt.LINEAR,Pt.CLAMP_TO_EDGE)}ga.draw(_t,Pt.TRIANGLES,hr,De.stencilModeForClipping(nr),jr,So.disabled,Ci,Ja,bt.id,Sr.layoutVertexBuffer,Sr.indexBuffer,Sr.segments,bt.paint,De.transform.zoom,Wr,Sr.layoutVertexBuffer2),er=!1}})(R,ae,we,Se);break;case"fill":(function(De,ft,bt,Dt){let Yt=bt.paint.get("fill-color"),cr=bt.paint.get("fill-opacity");if(cr.constantOr(1)===0)return;let hr=De.colorModeForRenderPass(),jr=bt.paint.get("fill-pattern"),ea=De.opaquePassEnabledForLayer()&&!jr.constantOr(1)&&Yt.constantOr(t.aM.transparent).a===1&&cr.constantOr(0)===1?"opaque":"translucent";if(De.renderPass===ea){let qe=De.depthModeForSublayer(1,De.renderPass==="opaque"?es.ReadWrite:es.ReadOnly);Df(De,ft,bt,Dt,qe,hr,!1)}if(De.renderPass==="translucent"&&bt.paint.get("fill-antialias")){let qe=De.depthModeForSublayer(bt.getPaintProperty("fill-outline-color")?2:0,es.ReadOnly);Df(De,ft,bt,Dt,qe,hr,!0)}})(R,ae,we,Se);break;case"fill-extrusion":(function(De,ft,bt,Dt){let Yt=bt.paint.get("fill-extrusion-opacity");if(Yt!==0&&De.renderPass==="translucent"){let cr=new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D);if(Yt!==1||bt.paint.get("fill-extrusion-pattern").constantOr(1))Dc(De,ft,bt,Dt,cr,Ss.disabled,Qs.disabled),Dc(De,ft,bt,Dt,cr,De.stencilModeFor3D(),De.colorModeForRenderPass());else{let hr=De.colorModeForRenderPass();Dc(De,ft,bt,Dt,cr,Ss.disabled,hr)}}})(R,ae,we,Se);break;case"hillshade":(function(De,ft,bt,Dt){if(De.renderPass!=="offscreen"&&De.renderPass!=="translucent")return;let Yt=De.context,cr=De.depthModeForSublayer(0,es.ReadOnly),hr=De.colorModeForRenderPass(),[jr,ea]=De.renderPass==="translucent"?De.stencilConfigForOverlap(Dt):[{},Dt];for(let qe of ea){let Je=ft.getTile(qe);Je.needsHillshadePrepare!==void 0&&Je.needsHillshadePrepare&&De.renderPass==="offscreen"?Eu(De,Je,bt,cr,Ss.disabled,hr):De.renderPass==="translucent"&&Jc(De,qe,Je,bt,cr,jr[qe.overscaledZ],hr)}Yt.viewport.set([0,0,De.width,De.height])})(R,ae,we,Se);break;case"raster":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent"||bt.paint.get("raster-opacity")===0||!Dt.length)return;let Yt=De.context,cr=Yt.gl,hr=ft.getSource(),jr=De.useProgram("raster"),ea=De.colorModeForRenderPass(),[qe,Je]=hr instanceof at?[{},Dt]:De.stencilConfigForOverlap(Dt),ot=Je[Je.length-1].overscaledZ,ht=!De.options.moving;for(let At of Je){let _t=De.depthModeForSublayer(At.overscaledZ-ot,bt.paint.get("raster-opacity")===1?es.ReadWrite:es.ReadOnly,cr.LESS),Pt=ft.getTile(At);Pt.registerFadeDuration(bt.paint.get("raster-fade-duration"));let er=ft.findLoadedParent(At,0),nr=ft.findLoadedSibling(At),pr=wf(Pt,er||nr||null,ft,bt,De.transform,De.style.map.terrain),Sr,Wr,ha=bt.paint.get("raster-resampling")==="nearest"?cr.NEAREST:cr.LINEAR;Yt.activeTexture.set(cr.TEXTURE0),Pt.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Yt.activeTexture.set(cr.TEXTURE1),er?(er.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Sr=Math.pow(2,er.tileID.overscaledZ-Pt.tileID.overscaledZ),Wr=[Pt.tileID.canonical.x*Sr%1,Pt.tileID.canonical.y*Sr%1]):Pt.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Pt.texture.useMipmap&&Yt.extTextureFilterAnisotropic&&De.transform.pitch>20&&cr.texParameterf(cr.TEXTURE_2D,Yt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Yt.extTextureFilterAnisotropicMax);let ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(At),Pa=ga?At:null,Ja=Pa?Pa.posMatrix:De.transform.calculatePosMatrix(At.toUnwrapped(),ht),di=Do(Ja,Wr||[0,0],Sr||1,pr,bt);hr instanceof at?jr.draw(Yt,cr.TRIANGLES,_t,Ss.disabled,ea,So.disabled,di,ga,bt.id,hr.boundsBuffer,De.quadTriangleIndexBuffer,hr.boundsSegments):jr.draw(Yt,cr.TRIANGLES,_t,qe[At.overscaledZ],ea,So.disabled,di,ga,bt.id,De.rasterBoundsBuffer,De.quadTriangleIndexBuffer,De.rasterBoundsSegments)}})(R,ae,we,Se);break;case"background":(function(De,ft,bt,Dt){let Yt=bt.paint.get("background-color"),cr=bt.paint.get("background-opacity");if(cr===0)return;let hr=De.context,jr=hr.gl,ea=De.transform,qe=ea.tileSize,Je=bt.paint.get("background-pattern");if(De.isPatternMissing(Je))return;let ot=!Je&&Yt.a===1&&cr===1&&De.opaquePassEnabledForLayer()?"opaque":"translucent";if(De.renderPass!==ot)return;let ht=Ss.disabled,At=De.depthModeForSublayer(0,ot==="opaque"?es.ReadWrite:es.ReadOnly),_t=De.colorModeForRenderPass(),Pt=De.useProgram(Je?"backgroundPattern":"background"),er=Dt||ea.coveringTiles({tileSize:qe,terrain:De.style.map.terrain});Je&&(hr.activeTexture.set(jr.TEXTURE0),De.imageManager.bind(De.context));let nr=bt.getCrossfadeParameters();for(let pr of er){let Sr=Dt?pr.posMatrix:De.transform.calculatePosMatrix(pr.toUnwrapped()),Wr=Je?Is(Sr,cr,De,Je,{tileID:pr,tileSize:qe},nr):ys(Sr,cr,Yt),ha=De.style.map.terrain&&De.style.map.terrain.getTerrainData(pr);Pt.draw(hr,jr.TRIANGLES,At,ht,_t,So.disabled,Wr,ha,bt.id,De.tileExtentBuffer,De.quadTriangleIndexBuffer,De.tileExtentSegments)}})(R,0,we,Se);break;case"custom":(function(De,ft,bt){let Dt=De.context,Yt=bt.implementation;if(De.renderPass==="offscreen"){let cr=Yt.prerender;cr&&(De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),cr.call(Yt,Dt.gl,De.transform.customLayerMatrix()),Dt.setDirty(),De.setBaseState())}else if(De.renderPass==="translucent"){De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),Dt.setStencilMode(Ss.disabled);let cr=Yt.renderingMode==="3d"?new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D):De.depthModeForSublayer(0,es.ReadOnly);Dt.setDepthMode(cr),Yt.render(Dt.gl,De.transform.customLayerMatrix(),{farZ:De.transform.farZ,nearZ:De.transform.nearZ,fov:De.transform._fov,modelViewProjectionMatrix:De.transform.modelViewProjectionMatrix,projectionMatrix:De.transform.projectionMatrix}),Dt.setDirty(),De.setBaseState(),Dt.bindFramebuffer.set(null)}})(R,0,we)}}translatePosMatrix(R,ae,we,Se,De){if(!we[0]&&!we[1])return R;let ft=De?Se==="map"?this.transform.angle:0:Se==="viewport"?-this.transform.angle:0;if(ft){let Yt=Math.sin(ft),cr=Math.cos(ft);we=[we[0]*cr-we[1]*Yt,we[0]*Yt+we[1]*cr]}let bt=[De?we[0]:Aa(ae,we[0],this.transform.zoom),De?we[1]:Aa(ae,we[1],this.transform.zoom),0],Dt=new Float32Array(16);return t.J(Dt,R,bt),Dt}saveTileTexture(R){let ae=this._tileTextures[R.size[0]];ae?ae.push(R):this._tileTextures[R.size[0]]=[R]}getTileTexture(R){let ae=this._tileTextures[R];return ae&&ae.length>0?ae.pop():null}isPatternMissing(R){if(!R)return!1;if(!R.from||!R.to)return!0;let ae=this.imageManager.getPattern(R.from.toString()),we=this.imageManager.getPattern(R.to.toString());return!ae||!we}useProgram(R,ae){this.cache=this.cache||{};let we=R+(ae?ae.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[we]||(this.cache[we]=new ma(this.context,ca[R],ae,Fs[R],this._showOverdrawInspector,this.style.map.terrain)),this.cache[we]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new u(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:R,drawingBufferHeight:ae}=this.context.gl;return this.width!==R||this.height!==ae}}class kl{constructor(R,ae){this.points=R,this.planes=ae}static fromInvProjectionMatrix(R,ae,we){let Se=Math.pow(2,we),De=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(bt=>{let Dt=1/(bt=t.af([],bt,R))[3]/ae*Se;return t.b1(bt,bt,[Dt,Dt,1/bt[3],Dt])}),ft=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(bt=>{let Dt=function(jr,ea){var qe=ea[0],Je=ea[1],ot=ea[2],ht=qe*qe+Je*Je+ot*ot;return ht>0&&(ht=1/Math.sqrt(ht)),jr[0]=ea[0]*ht,jr[1]=ea[1]*ht,jr[2]=ea[2]*ht,jr}([],function(jr,ea,qe){var Je=ea[0],ot=ea[1],ht=ea[2],At=qe[0],_t=qe[1],Pt=qe[2];return jr[0]=ot*Pt-ht*_t,jr[1]=ht*At-Je*Pt,jr[2]=Je*_t-ot*At,jr}([],E([],De[bt[0]],De[bt[1]]),E([],De[bt[2]],De[bt[1]]))),Yt=-((cr=Dt)[0]*(hr=De[bt[1]])[0]+cr[1]*hr[1]+cr[2]*hr[2]);var cr,hr;return Dt.concat(Yt)});return new kl(De,ft)}}class Fc{constructor(R,ae){this.min=R,this.max=ae,this.center=function(we,Se,De){return we[0]=.5*Se[0],we[1]=.5*Se[1],we[2]=.5*Se[2],we}([],function(we,Se,De){return we[0]=Se[0]+De[0],we[1]=Se[1]+De[1],we[2]=Se[2]+De[2],we}([],this.min,this.max))}quadrant(R){let ae=[R%2==0,R<2],we=w(this.min),Se=w(this.max);for(let De=0;De<ae.length;De++)we[De]=ae[De]?this.min[De]:this.center[De],Se[De]=ae[De]?this.center[De]:this.max[De];return Se[2]=this.max[2],new Fc(we,Se)}distanceX(R){return Math.max(Math.min(this.max[0],R[0]),this.min[0])-R[0]}distanceY(R){return Math.max(Math.min(this.max[1],R[1]),this.min[1])-R[1]}intersects(R){let ae=[[this.min[0],this.min[1],this.min[2],1],[this.max[0],this.min[1],this.min[2],1],[this.max[0],this.max[1],this.min[2],1],[this.min[0],this.max[1],this.min[2],1],[this.min[0],this.min[1],this.max[2],1],[this.max[0],this.min[1],this.max[2],1],[this.max[0],this.max[1],this.max[2],1],[this.min[0],this.max[1],this.max[2],1]],we=!0;for(let Se=0;Se<R.planes.length;Se++){let De=R.planes[Se],ft=0;for(let bt=0;bt<ae.length;bt++)t.b2(De,ae[bt])>=0&&ft++;if(ft===0)return 0;ft!==ae.length&&(we=!1)}if(we)return 2;for(let Se=0;Se<3;Se++){let De=Number.MAX_VALUE,ft=-Number.MAX_VALUE;for(let bt=0;bt<R.points.length;bt++){let Dt=R.points[bt][Se]-this.min[Se];De=Math.min(De,Dt),ft=Math.max(ft,Dt)}if(ft<0||De>this.max[Se]-this.min[Se])return 0}return 1}}class $u{constructor(R=0,ae=0,we=0,Se=0){if(isNaN(R)||R<0||isNaN(ae)||ae<0||isNaN(we)||we<0||isNaN(Se)||Se<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=ae,this.left=we,this.right=Se}interpolate(R,ae,we){return ae.top!=null&&R.top!=null&&(this.top=t.y.number(R.top,ae.top,we)),ae.bottom!=null&&R.bottom!=null&&(this.bottom=t.y.number(R.bottom,ae.bottom,we)),ae.left!=null&&R.left!=null&&(this.left=t.y.number(R.left,ae.left,we)),ae.right!=null&&R.right!=null&&(this.right=t.y.number(R.right,ae.right,we)),this}getCenter(R,ae){let we=t.ac((this.left+R-this.right)/2,0,R),Se=t.ac((this.top+ae-this.bottom)/2,0,ae);return new t.P(we,Se)}equals(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right}clone(){return new $u(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let vu=85.051129;class xl{constructor(R,ae,we,Se,De){this.tileSize=512,this._renderWorldCopies=De===void 0||!!De,this._minZoom=R||0,this._maxZoom=ae||22,this._minPitch=we??0,this._maxPitch=Se??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new $u,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let R=new xl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.apply(this),R}apply(R){this.tileSize=R.tileSize,this.latRange=R.latRange,this.lngRange=R.lngRange,this.width=R.width,this.height=R.height,this._center=R._center,this._elevation=R._elevation,this.minElevationForCurrentTile=R.minElevationForCurrentTile,this.zoom=R.zoom,this.angle=R.angle,this._fov=R._fov,this._pitch=R._pitch,this._unmodified=R._unmodified,this._edgeInsets=R._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(R){this._minZoom!==R&&(this._minZoom=R,this.zoom=Math.max(this.zoom,R))}get maxZoom(){return this._maxZoom}set maxZoom(R){this._maxZoom!==R&&(this._maxZoom=R,this.zoom=Math.min(this.zoom,R))}get minPitch(){return this._minPitch}set minPitch(R){this._minPitch!==R&&(this._minPitch=R,this.pitch=Math.max(this.pitch,R))}get maxPitch(){return this._maxPitch}set maxPitch(R){this._maxPitch!==R&&(this._maxPitch=R,this.pitch=Math.min(this.pitch,R))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(R){R===void 0?R=!0:R===null&&(R=!1),this._renderWorldCopies=R}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new t.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(R){let ae=-t.b3(R,-180,180)*Math.PI/180;this.angle!==ae&&(this._unmodified=!1,this.angle=ae,this._calcMatrices(),this.rotationMatrix=function(){var we=new t.A(4);return t.A!=Float32Array&&(we[1]=0,we[2]=0),we[0]=1,we[3]=1,we}(),function(we,Se,De){var ft=Se[0],bt=Se[1],Dt=Se[2],Yt=Se[3],cr=Math.sin(De),hr=Math.cos(De);we[0]=ft*hr+Dt*cr,we[1]=bt*hr+Yt*cr,we[2]=ft*-cr+Dt*hr,we[3]=bt*-cr+Yt*hr}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(R){let ae=t.ac(R,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==ae&&(this._unmodified=!1,this._pitch=ae,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(R){R=Math.max(.01,Math.min(60,R)),this._fov!==R&&(this._unmodified=!1,this._fov=R/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(R){let ae=Math.min(Math.max(R,this.minZoom),this.maxZoom);this._zoom!==ae&&(this._unmodified=!1,this._zoom=ae,this.tileZoom=Math.max(0,Math.floor(ae)),this.scale=this.zoomScale(ae),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(R){R.lat===this._center.lat&&R.lng===this._center.lng||(this._unmodified=!1,this._center=R,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(R){R!==this._elevation&&(this._elevation=R,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(R){this._edgeInsets.equals(R)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,R,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(R){return this._edgeInsets.equals(R)}interpolatePadding(R,ae,we){this._unmodified=!1,this._edgeInsets.interpolate(R,ae,we),this._constrain(),this._calcMatrices()}coveringZoomLevel(R){let ae=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,ae)}getVisibleUnwrappedCoordinates(R){let ae=[new t.b4(0,R)];if(this._renderWorldCopies){let we=this.pointCoordinate(new t.P(0,0)),Se=this.pointCoordinate(new t.P(this.width,0)),De=this.pointCoordinate(new t.P(this.width,this.height)),ft=this.pointCoordinate(new t.P(0,this.height)),bt=Math.floor(Math.min(we.x,Se.x,De.x,ft.x)),Dt=Math.floor(Math.max(we.x,Se.x,De.x,ft.x)),Yt=1;for(let cr=bt-Yt;cr<=Dt+Yt;cr++)cr!==0&&ae.push(new t.b4(cr,R))}return ae}coveringTiles(R){var ae,we;let Se=this.coveringZoomLevel(R),De=Se;if(R.minzoom!==void 0&&Se<R.minzoom)return[];R.maxzoom!==void 0&&Se>R.maxzoom&&(Se=R.maxzoom);let ft=this.pointCoordinate(this.getCameraPoint()),bt=t.Z.fromLngLat(this.center),Dt=Math.pow(2,Se),Yt=[Dt*ft.x,Dt*ft.y,0],cr=[Dt*bt.x,Dt*bt.y,0],hr=kl.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,Se),jr=R.minzoom||0;!R.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(jr=Se);let ea=R.terrain?2/Math.min(this.tileSize,R.tileSize)*this.tileSize:3,qe=_t=>({aabb:new Fc([_t*Dt,0,0],[(_t+1)*Dt,Dt,0]),zoom:0,x:0,y:0,wrap:_t,fullyVisible:!1}),Je=[],ot=[],ht=Se,At=R.reparseOverscaled?De:Se;if(this._renderWorldCopies)for(let _t=1;_t<=3;_t++)Je.push(qe(-_t)),Je.push(qe(_t));for(Je.push(qe(0));Je.length>0;){let _t=Je.pop(),Pt=_t.x,er=_t.y,nr=_t.fullyVisible;if(!nr){let ga=_t.aabb.intersects(hr);if(ga===0)continue;nr=ga===2}let pr=R.terrain?Yt:cr,Sr=_t.aabb.distanceX(pr),Wr=_t.aabb.distanceY(pr),ha=Math.max(Math.abs(Sr),Math.abs(Wr));if(_t.zoom===ht||ha>ea+(1<<ht-_t.zoom)-2&&_t.zoom>=jr){let ga=ht-_t.zoom,Pa=Yt[0]-.5-(Pt<<ga),Ja=Yt[1]-.5-(er<<ga);ot.push({tileID:new t.S(_t.zoom===ht?At:_t.zoom,_t.wrap,_t.zoom,Pt,er),distanceSq:m([cr[0]-.5-Pt,cr[1]-.5-er]),tileDistanceToCamera:Math.sqrt(Pa*Pa+Ja*Ja)})}else for(let ga=0;ga<4;ga++){let Pa=(Pt<<1)+ga%2,Ja=(er<<1)+(ga>>1),di=_t.zoom+1,pi=_t.aabb.quadrant(ga);if(R.terrain){let Ci=new t.S(di,_t.wrap,di,Pa,Ja),$i=R.terrain.getMinMaxElevation(Ci),Bn=(ae=$i.minElevation)!==null&&ae!==void 0?ae:this.elevation,Sn=(we=$i.maxElevation)!==null&&we!==void 0?we:this.elevation;pi=new Fc([pi.min[0],pi.min[1],Bn],[pi.max[0],pi.max[1],Sn])}Je.push({aabb:pi,zoom:di,x:Pa,y:Ja,wrap:_t.wrap,fullyVisible:nr})}}return ot.sort((_t,Pt)=>_t.distanceSq-Pt.distanceSq).map(_t=>_t.tileID)}resize(R,ae){this.width=R,this.height=ae,this.pixelsToGLUnits=[2/R,-2/ae],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(R){return Math.pow(2,R)}scaleZoom(R){return Math.log(R)/Math.LN2}project(R){let ae=t.ac(R.lat,-85.051129,vu);return new t.P(t.O(R.lng)*this.worldSize,t.Q(ae)*this.worldSize)}unproject(R){return new t.Z(R.x/this.worldSize,R.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(R){let ae=this.elevation,we=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,Se=this.pointLocation(this.centerPoint,R),De=R.getElevationForLngLatZoom(Se,this.tileZoom);if(!(this.elevation-De))return;let ft=we+ae-De,bt=Math.cos(this._pitch)*this.cameraToCenterDistance/ft/t.b5(1,Se.lat),Dt=this.scaleZoom(bt/this.tileSize);this._elevation=De,this._center=Se,this.zoom=Dt}setLocationAtPoint(R,ae){let we=this.pointCoordinate(ae),Se=this.pointCoordinate(this.centerPoint),De=this.locationCoordinate(R),ft=new t.Z(De.x-(we.x-Se.x),De.y-(we.y-Se.y));this.center=this.coordinateLocation(ft),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(R,ae){return ae?this.coordinatePoint(this.locationCoordinate(R),ae.getElevationForLngLatZoom(R,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(R))}pointLocation(R,ae){return this.coordinateLocation(this.pointCoordinate(R,ae))}locationCoordinate(R){return t.Z.fromLngLat(R)}coordinateLocation(R){return R&&R.toLngLat()}pointCoordinate(R,ae){if(ae){let jr=ae.pointCoordinate(R);if(jr!=null)return jr}let we=[R.x,R.y,0,1],Se=[R.x,R.y,1,1];t.af(we,we,this.pixelMatrixInverse),t.af(Se,Se,this.pixelMatrixInverse);let De=we[3],ft=Se[3],bt=we[1]/De,Dt=Se[1]/ft,Yt=we[2]/De,cr=Se[2]/ft,hr=Yt===cr?0:(0-Yt)/(cr-Yt);return new t.Z(t.y.number(we[0]/De,Se[0]/ft,hr)/this.worldSize,t.y.number(bt,Dt,hr)/this.worldSize)}coordinatePoint(R,ae=0,we=this.pixelMatrix){let Se=[R.x*this.worldSize,R.y*this.worldSize,ae,1];return t.af(Se,Se,we),new t.P(Se[0]/Se[3],Se[1]/Se[3])}getBounds(){let R=Math.max(0,this.height/2-this.getHorizon());return new ie().extend(this.pointLocation(new t.P(0,R))).extend(this.pointLocation(new t.P(this.width,R))).extend(this.pointLocation(new t.P(this.width,this.height))).extend(this.pointLocation(new t.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ie([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,vu])}calculateTileMatrix(R){let ae=R.canonical,we=this.worldSize/this.zoomScale(ae.z),Se=ae.x+Math.pow(2,ae.z)*R.wrap,De=t.an(new Float64Array(16));return t.J(De,De,[Se*we,ae.y*we,0]),t.K(De,De,[we/t.X,we/t.X,1]),De}calculatePosMatrix(R,ae=!1){let we=R.key,Se=ae?this._alignedPosMatrixCache:this._posMatrixCache;if(Se[we])return Se[we];let De=this.calculateTileMatrix(R);return t.L(De,ae?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,De),Se[we]=new Float32Array(De),Se[we]}calculateFogMatrix(R){let ae=R.key,we=this._fogMatrixCache;if(we[ae])return we[ae];let Se=this.calculateTileMatrix(R);return t.L(Se,this.fogMatrix,Se),we[ae]=new Float32Array(Se),we[ae]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(R,ae){ae=t.ac(+ae,this.minZoom,this.maxZoom);let we={center:new t.N(R.lng,R.lat),zoom:ae},Se=this.lngRange;if(!this._renderWorldCopies&&Se===null){let _t=179.9999999999;Se=[-_t,_t]}let De=this.tileSize*this.zoomScale(we.zoom),ft=0,bt=De,Dt=0,Yt=De,cr=0,hr=0,{x:jr,y:ea}=this.size;if(this.latRange){let _t=this.latRange;ft=t.Q(_t[1])*De,bt=t.Q(_t[0])*De,bt-ft<ea&&(cr=ea/(bt-ft))}Se&&(Dt=t.b3(t.O(Se[0])*De,0,De),Yt=t.b3(t.O(Se[1])*De,0,De),Yt<Dt&&(Yt+=De),Yt-Dt<jr&&(hr=jr/(Yt-Dt)));let{x:qe,y:Je}=this.project.call({worldSize:De},R),ot,ht,At=Math.max(hr||0,cr||0);if(At){let _t=new t.P(hr?(Yt+Dt)/2:qe,cr?(bt+ft)/2:Je);return we.center=this.unproject.call({worldSize:De},_t).wrap(),we.zoom+=this.scaleZoom(At),we}if(this.latRange){let _t=ea/2;Je-_t<ft&&(ht=ft+_t),Je+_t>bt&&(ht=bt-_t)}if(Se){let _t=(Dt+Yt)/2,Pt=qe;this._renderWorldCopies&&(Pt=t.b3(qe,_t-De/2,_t+De/2));let er=jr/2;Pt-er<Dt&&(ot=Dt+er),Pt+er>Yt&&(ot=Yt-er)}if(ot!==void 0||ht!==void 0){let _t=new t.P(ot??qe,ht??Je);we.center=this.unproject.call({worldSize:De},_t).wrap()}return we}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let R=this._unmodified,{center:ae,zoom:we}=this.getConstrained(this.center,this.zoom);this.center=ae,this.zoom=we,this._unmodified=R,this._constraining=!1}_calcMatrices(){if(!this.height)return;let R=this.centerOffset,ae=this.point.x,we=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=t.b5(1,this.center.lat)*this.worldSize;let Se=t.an(new Float64Array(16));t.K(Se,Se,[this.width/2,-this.height/2,1]),t.J(Se,Se,[1,-1,0]),this.labelPlaneMatrix=Se,Se=t.an(new Float64Array(16)),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[-1,-1,0]),t.K(Se,Se,[2/this.width,2/this.height,1]),this.glCoordMatrix=Se;let De=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),ft=Math.min(this.elevation,this.minElevationForCurrentTile),bt=De-ft*this._pixelPerMeter/Math.cos(this._pitch),Dt=ft<0?bt:De,Yt=Math.PI/2+this._pitch,cr=this._fov*(.5+R.y/this.height),hr=Math.sin(cr)*Dt/Math.sin(t.ac(Math.PI-Yt-cr,.01,Math.PI-.01)),jr=this.getHorizon(),ea=2*Math.atan(jr/this.cameraToCenterDistance)*(.5+R.y/(2*jr)),qe=Math.sin(ea)*Dt/Math.sin(t.ac(Math.PI-Yt-ea,.01,Math.PI-.01)),Je=Math.min(hr,qe);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Je+Dt),this.nearZ=this.height/50,Se=new Float64Array(16),t.b6(Se,this._fov,this.width/this.height,this.nearZ,this.farZ),Se[8]=2*-R.x/this.width,Se[9]=2*R.y/this.height,this.projectionMatrix=t.ae(Se),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[0,0,-this.cameraToCenterDistance]),t.b7(Se,Se,this._pitch),t.ad(Se,Se,this.angle),t.J(Se,Se,[-ae,-we,0]),this.mercatorMatrix=t.K([],Se,[this.worldSize,this.worldSize,this.worldSize]),t.K(Se,Se,[1,1,this._pixelPerMeter]),this.pixelMatrix=t.L(new Float64Array(16),this.labelPlaneMatrix,Se),t.J(Se,Se,[0,0,-this.elevation]),this.modelViewProjectionMatrix=Se,this.invModelViewProjectionMatrix=t.as([],Se),this.fogMatrix=new Float64Array(16),t.b6(this.fogMatrix,this._fov,this.width/this.height,De,this.farZ),this.fogMatrix[8]=2*-R.x/this.width,this.fogMatrix[9]=2*R.y/this.height,t.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),t.b7(this.fogMatrix,this.fogMatrix,this._pitch),t.ad(this.fogMatrix,this.fogMatrix,this.angle),t.J(this.fogMatrix,this.fogMatrix,[-ae,-we,0]),t.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=t.L(new Float64Array(16),this.labelPlaneMatrix,Se);let ot=this.width%2/2,ht=this.height%2/2,At=Math.cos(this.angle),_t=Math.sin(this.angle),Pt=ae-Math.round(ae)+At*ot+_t*ht,er=we-Math.round(we)+At*ht+_t*ot,nr=new Float64Array(Se);if(t.J(nr,nr,[Pt>.5?Pt-1:Pt,er>.5?er-1:er,0]),this.alignedModelViewProjectionMatrix=nr,Se=t.as(new Float64Array(16),this.pixelMatrix),!Se)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Se,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let R=this.pointCoordinate(new t.P(0,0)),ae=[R.x*this.worldSize,R.y*this.worldSize,0,1];return t.af(ae,ae,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let R=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.P(0,R))}getCameraQueryGeometry(R){let ae=this.getCameraPoint();if(R.length===1)return[R[0],ae];{let we=ae.x,Se=ae.y,De=ae.x,ft=ae.y;for(let bt of R)we=Math.min(we,bt.x),Se=Math.min(Se,bt.y),De=Math.max(De,bt.x),ft=Math.max(ft,bt.y);return[new t.P(we,Se),new t.P(De,Se),new t.P(De,ft),new t.P(we,ft),new t.P(we,Se)]}}lngLatToCameraDepth(R,ae){let we=this.locationCoordinate(R),Se=[we.x*this.worldSize,we.y*this.worldSize,ae,1];return t.af(Se,Se,this.modelViewProjectionMatrix),Se[2]/Se[3]}}function hh(Oe,R){let ae,we=!1,Se=null,De=null,ft=()=>{Se=null,we&&(Oe.apply(De,ae),Se=setTimeout(ft,R),we=!1)};return(...bt)=>(we=!0,De=this,ae=bt,Se||ft(),Se)}class Sh{constructor(R){this._getCurrentHash=()=>{let ae=window.location.hash.replace("#","");if(this._hashName){let we;return ae.split("&").map(Se=>Se.split("=")).forEach(Se=>{Se[0]===this._hashName&&(we=Se)}),(we&&we[1]||"").split("/")}return ae.split("/")},this._onHashChange=()=>{let ae=this._getCurrentHash();if(ae.length>=3&&!ae.some(we=>isNaN(we))){let we=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(ae[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+ae[2],+ae[1]],zoom:+ae[0],bearing:we,pitch:+(ae[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let ae=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,ae)},this._removeHash=()=>{let ae=this._getCurrentHash();if(ae.length===0)return;let we=ae.join("/"),Se=we;Se.split("&").length>0&&(Se=Se.split("&")[0]),this._hashName&&(Se=`${this._hashName}=${we}`);let De=window.location.hash.replace(Se,"");De.startsWith("#&")?De=De.slice(0,1)+De.slice(2):De==="#"&&(De="");let ft=window.location.href.replace(/(#.+)?$/,De);ft=ft.replace("&&","&"),window.history.replaceState(window.history.state,null,ft)},this._updateHash=hh(this._updateHashUnthrottled,300),this._hashName=R&&encodeURIComponent(R)}addTo(R){return this._map=R,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(R){let ae=this._map.getCenter(),we=Math.round(100*this._map.getZoom())/100,Se=Math.ceil((we*Math.LN2+Math.log(512/360/.5))/Math.LN10),De=Math.pow(10,Se),ft=Math.round(ae.lng*De)/De,bt=Math.round(ae.lat*De)/De,Dt=this._map.getBearing(),Yt=this._map.getPitch(),cr="";if(cr+=R?`/${ft}/${bt}/${we}`:`${we}/${bt}/${ft}`,(Dt||Yt)&&(cr+="/"+Math.round(10*Dt)/10),Yt&&(cr+=`/${Math.round(Yt)}`),this._hashName){let hr=this._hashName,jr=!1,ea=window.location.hash.slice(1).split("&").map(qe=>{let Je=qe.split("=")[0];return Je===hr?(jr=!0,`${Je}=${cr}`):qe}).filter(qe=>qe);return jr||ea.push(`${hr}=${cr}`),`#${ea.join("&")}`}return`#${cr}`}}let Uu={linearity:.3,easing:t.b8(0,0,.3,1)},bc=t.e({deceleration:2500,maxSpeed:1400},Uu),lc=t.e({deceleration:20,maxSpeed:1400},Uu),hp=t.e({deceleration:1e3,maxSpeed:360},Uu),vf=t.e({deceleration:1e3,maxSpeed:90},Uu);class Tf{constructor(R){this._map=R,this.clear()}clear(){this._inertiaBuffer=[]}record(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.now(),settings:R})}_drainInertiaBuffer(){let R=this._inertiaBuffer,ae=i.now();for(;R.length>0&&ae-R[0].time>160;)R.shift()}_onMoveEnd(R){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let ae={zoom:0,bearing:0,pitch:0,pan:new t.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:De}of this._inertiaBuffer)ae.zoom+=De.zoomDelta||0,ae.bearing+=De.bearingDelta||0,ae.pitch+=De.pitchDelta||0,De.panDelta&&ae.pan._add(De.panDelta),De.around&&(ae.around=De.around),De.pinchAround&&(ae.pinchAround=De.pinchAround);let we=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,Se={};if(ae.pan.mag()){let De=zf(ae.pan.mag(),we,t.e({},bc,R||{}));Se.offset=ae.pan.mult(De.amount/ae.pan.mag()),Se.center=this._map.transform.center,Lu(Se,De)}if(ae.zoom){let De=zf(ae.zoom,we,lc);Se.zoom=this._map.transform.zoom+De.amount,Lu(Se,De)}if(ae.bearing){let De=zf(ae.bearing,we,hp);Se.bearing=this._map.transform.bearing+t.ac(De.amount,-179,179),Lu(Se,De)}if(ae.pitch){let De=zf(ae.pitch,we,vf);Se.pitch=this._map.transform.pitch+De.amount,Lu(Se,De)}if(Se.zoom||Se.bearing){let De=ae.pinchAround===void 0?ae.around:ae.pinchAround;Se.around=De?this._map.unproject(De):this._map.getCenter()}return this.clear(),t.e(Se,{noMoveStart:!0})}}function Lu(Oe,R){(!Oe.duration||Oe.duration<R.duration)&&(Oe.duration=R.duration,Oe.easing=R.easing)}function zf(Oe,R,ae){let{maxSpeed:we,linearity:Se,deceleration:De}=ae,ft=t.ac(Oe*Se/(R/1e3),-we,we),bt=Math.abs(ft)/(De*Se);return{easing:ae.easing,duration:1e3*bt,amount:ft*(bt/2)}}class au extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we,Se={}){let De=n.mousePos(ae.getCanvas(),we),ft=ae.unproject(De);super(R,t.e({point:De,lngLat:ft,originalEvent:we},Se)),this._defaultPrevented=!1,this.target=ae}}class $c extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){let Se=R==="touchend"?we.changedTouches:we.touches,De=n.touchPos(ae.getCanvasContainer(),Se),ft=De.map(Dt=>ae.unproject(Dt)),bt=De.reduce((Dt,Yt,cr,hr)=>Dt.add(Yt.div(hr.length)),new t.P(0,0));super(R,{points:De,point:bt,lngLats:ft,lngLat:ae.unproject(bt),originalEvent:we}),this._defaultPrevented=!1}}class Mh extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){super(R,{originalEvent:we}),this._defaultPrevented=!1}}class Ff{constructor(R,ae){this._map=R,this._clickTolerance=ae.clickTolerance}reset(){delete this._mousedownPos}wheel(R){return this._firePreventable(new Mh(R.type,this._map,R))}mousedown(R,ae){return this._mousedownPos=ae,this._firePreventable(new au(R.type,this._map,R))}mouseup(R){this._map.fire(new au(R.type,this._map,R))}click(R,ae){this._mousedownPos&&this._mousedownPos.dist(ae)>=this._clickTolerance||this._map.fire(new au(R.type,this._map,R))}dblclick(R){return this._firePreventable(new au(R.type,this._map,R))}mouseover(R){this._map.fire(new au(R.type,this._map,R))}mouseout(R){this._map.fire(new au(R.type,this._map,R))}touchstart(R){return this._firePreventable(new $c(R.type,this._map,R))}touchmove(R){this._map.fire(new $c(R.type,this._map,R))}touchend(R){this._map.fire(new $c(R.type,this._map,R))}touchcancel(R){this._map.fire(new $c(R.type,this._map,R))}_firePreventable(R){if(this._map.fire(R),R.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class il{constructor(R){this._map=R}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(R){this._map.fire(new au(R.type,this._map,R))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new au("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(R){this._delayContextMenu?this._contextMenuEvent=R:this._ignoreContextMenu||this._map.fire(new au(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class mu{constructor(R){this._map=R}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(R){return this.transform.pointLocation(t.P.convert(R),this._map.terrain)}}class gu{constructor(R,ae){this._map=R,this._tr=new mu(R),this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=ae.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(R,ae){this.isEnabled()&&R.shiftKey&&R.button===0&&(n.disableDrag(),this._startPos=this._lastPos=ae,this._active=!0)}mousemoveWindow(R,ae){if(!this._active)return;let we=ae;if(this._lastPos.equals(we)||!this._box&&we.dist(this._startPos)<this._clickTolerance)return;let Se=this._startPos;this._lastPos=we,this._box||(this._box=n.create("div","maplibregl-boxzoom",this._container),this._container.classList.add("maplibregl-crosshair"),this._fireEvent("boxzoomstart",R));let De=Math.min(Se.x,we.x),ft=Math.max(Se.x,we.x),bt=Math.min(Se.y,we.y),Dt=Math.max(Se.y,we.y);n.setTransform(this._box,`translate(${De}px,${bt}px)`),this._box.style.width=ft-De+"px",this._box.style.height=Dt-bt+"px"}mouseupWindow(R,ae){if(!this._active||R.button!==0)return;let we=this._startPos,Se=ae;if(this.reset(),n.suppressClick(),we.x!==Se.x||we.y!==Se.y)return this._map.fire(new t.k("boxzoomend",{originalEvent:R})),{cameraAnimation:De=>De.fitScreenCoordinates(we,Se,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",R)}keydown(R){this._active&&R.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",R))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(n.remove(this._box),this._box=null),n.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(R,ae){return this._map.fire(new t.k(R,{originalEvent:ae}))}}function Jf(Oe,R){if(Oe.length!==R.length)throw new Error(`The number of touches and points are not equal - touches ${Oe.length}, points ${R.length}`);let ae={};for(let we=0;we<Oe.length;we++)ae[Oe[we].identifier]=R[we];return ae}class el{constructor(R){this.reset(),this.numTouches=R.numTouches}reset(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1}touchstart(R,ae,we){(this.centroid||we.length>this.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=R.timeStamp),we.length===this.numTouches&&(this.centroid=function(Se){let De=new t.P(0,0);for(let ft of Se)De._add(ft);return De.div(Se.length)}(ae),this.touches=Jf(we,ae)))}touchmove(R,ae,we){if(this.aborted||!this.centroid)return;let Se=Jf(we,ae);for(let De in this.touches){let ft=Se[De];(!ft||ft.dist(this.touches[De])>30)&&(this.aborted=!0)}}touchend(R,ae,we){if((!this.centroid||R.timeStamp-this.startTime>500)&&(this.aborted=!0),we.length===0){let Se=!this.aborted&&this.centroid;if(this.reset(),Se)return Se}}}class mf{constructor(R){this.singleTap=new el(R),this.numTaps=R.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(R,ae,we){this.singleTap.touchstart(R,ae,we)}touchmove(R,ae,we){this.singleTap.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this.singleTap.touchend(R,ae,we);if(Se){let De=R.timeStamp-this.lastTime<500,ft=!this.lastTap||this.lastTap.dist(Se)<30;if(De&&ft||this.reset(),this.count++,this.lastTime=R.timeStamp,this.lastTap=Se,this.count===this.numTaps)return this.reset(),Se}}}class wc{constructor(R){this._tr=new mu(R),this._zoomIn=new mf({numTouches:1,numTaps:2}),this._zoomOut=new mf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(R,ae,we){this._zoomIn.touchstart(R,ae,we),this._zoomOut.touchstart(R,ae,we)}touchmove(R,ae,we){this._zoomIn.touchmove(R,ae,we),this._zoomOut.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this._zoomIn.touchend(R,ae,we),De=this._zoomOut.touchend(R,ae,we),ft=this._tr;return Se?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom+1,around:ft.unproject(Se)},{originalEvent:R})}):De?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom-1,around:ft.unproject(De)},{originalEvent:R})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ju{constructor(R){this._enabled=!!R.enable,this._moveStateManager=R.moveStateManager,this._clickTolerance=R.clickTolerance||1,this._moveFunction=R.move,this._activateOnStart=!!R.activateOnStart,R.assignEvents(this),this.reset()}reset(R){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(R)}_move(...R){let ae=this._moveFunction(...R);if(ae.bearingDelta||ae.pitchDelta||ae.around||ae.panDelta)return this._active=!0,ae}dragStart(R,ae){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(R)&&(this._moveStateManager.startMove(R),this._lastPoint=ae.length?ae[0]:ae,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(R,ae){if(!this.isEnabled())return;let we=this._lastPoint;if(!we)return;if(R.preventDefault(),!this._moveStateManager.isValidMoveEvent(R))return void this.reset(R);let Se=ae.length?ae[0]:ae;return!this._moved&&Se.dist(we)<this._clickTolerance?void 0:(this._moved=!0,this._lastPoint=Se,this._move(we,Se))}dragEnd(R){this.isEnabled()&&this._lastPoint&&this._moveStateManager.isValidEndEvent(R)&&(this._moved&&n.suppressClick(),this.reset(R))}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}getClickTolerance(){return this._clickTolerance}}let Af={0:1,2:2};class uc{constructor(R){this._correctEvent=R.checkCorrectEvent}startMove(R){let ae=n.mouseButton(R);this._eventButton=ae}endMove(R){delete this._eventButton}isValidStartEvent(R){return this._correctEvent(R)}isValidMoveEvent(R){return!function(ae,we){let Se=Af[we];return ae.buttons===void 0||(ae.buttons&Se)!==Se}(R,this._eventButton)}isValidEndEvent(R){return n.mouseButton(R)===this._eventButton}}class Qc{constructor(){this._firstTouch=void 0}_isOneFingerTouch(R){return R.targetTouches.length===1}_isSameTouchEvent(R){return R.targetTouches[0].identifier===this._firstTouch}startMove(R){this._firstTouch=R.targetTouches[0].identifier}endMove(R){delete this._firstTouch}isValidStartEvent(R){return this._isOneFingerTouch(R)}isValidMoveEvent(R){return this._isOneFingerTouch(R)&&this._isSameTouchEvent(R)}isValidEndEvent(R){return this._isOneFingerTouch(R)&&this._isSameTouchEvent(R)}}let $f=Oe=>{Oe.mousedown=Oe.dragStart,Oe.mousemoveWindow=Oe.dragMove,Oe.mouseup=Oe.dragEnd,Oe.contextmenu=R=>{R.preventDefault()}},Vl=({enable:Oe,clickTolerance:R,bearingDegreesPerPixelMoved:ae=.8})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({bearingDelta:(De.x-Se.x)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})},Qf=({enable:Oe,clickTolerance:R,pitchDegreesPerPixelMoved:ae=-.5})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({pitchDelta:(De.y-Se.y)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})};class Vu{constructor(R,ae){this._clickTolerance=R.clickTolerance||1,this._map=ae,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new t.P(0,0)}_shouldBePrevented(R){return R<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(R,ae,we){return this._calculateTransform(R,ae,we)}touchmove(R,ae,we){if(this._active){if(!this._shouldBePrevented(we.length))return R.preventDefault(),this._calculateTransform(R,ae,we);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",R)}}touchend(R,ae,we){this._calculateTransform(R,ae,we),this._active&&this._shouldBePrevented(we.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(R,ae,we){we.length>0&&(this._active=!0);let Se=Jf(we,ae),De=new t.P(0,0),ft=new t.P(0,0),bt=0;for(let Yt in Se){let cr=Se[Yt],hr=this._touches[Yt];hr&&(De._add(cr),ft._add(cr.sub(hr)),bt++,Se[Yt]=cr)}if(this._touches=Se,this._shouldBePrevented(bt)||!ft.mag())return;let Dt=ft.div(bt);return this._sum._add(Dt),this._sum.mag()<this._clickTolerance?void 0:{around:De.div(bt),panDelta:Dt}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Tc{constructor(){this.reset()}reset(){this._active=!1,delete this._firstTwoTouches}touchstart(R,ae,we){this._firstTwoTouches||we.length<2||(this._firstTwoTouches=[we[0].identifier,we[1].identifier],this._start([ae[0],ae[1]]))}touchmove(R,ae,we){if(!this._firstTwoTouches)return;R.preventDefault();let[Se,De]=this._firstTwoTouches,ft=cc(we,ae,Se),bt=cc(we,ae,De);if(!ft||!bt)return;let Dt=this._aroundCenter?null:ft.add(bt).div(2);return this._move([ft,bt],Dt,R)}touchend(R,ae,we){if(!this._firstTwoTouches)return;let[Se,De]=this._firstTwoTouches,ft=cc(we,ae,Se),bt=cc(we,ae,De);ft&&bt||(this._active&&n.suppressClick(),this.reset())}touchcancel(){this.reset()}enable(R){this._enabled=!0,this._aroundCenter=!!R&&R.around==="center"}disable(){this._enabled=!1,this.reset()}isEnabled(){return!!this._enabled}isActive(){return!!this._active}}function cc(Oe,R,ae){for(let we=0;we<Oe.length;we++)if(Oe[we].identifier===ae)return R[we]}function Cl(Oe,R){return Math.log(Oe/R)/Math.LN2}class iu extends Tc{reset(){super.reset(),delete this._distance,delete this._startDistance}_start(R){this._startDistance=this._distance=R[0].dist(R[1])}_move(R,ae){let we=this._distance;if(this._distance=R[0].dist(R[1]),this._active||!(Math.abs(Cl(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:Cl(this._distance,we),pinchAround:ae}}}function fc(Oe,R){return 180*Oe.angleWith(R)/Math.PI}class Oc extends Tc{reset(){super.reset(),delete this._minDiameter,delete this._startVector,delete this._vector}_start(R){this._startVector=this._vector=R[0].sub(R[1]),this._minDiameter=R[0].dist(R[1])}_move(R,ae,we){let Se=this._vector;if(this._vector=R[0].sub(R[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:fc(this._vector,Se),pinchAround:ae}}_isBelowThreshold(R){this._minDiameter=Math.min(this._minDiameter,R.mag());let ae=25/(Math.PI*this._minDiameter)*360,we=fc(R,this._startVector);return Math.abs(we)<ae}}function Qu(Oe){return Math.abs(Oe.y)>Math.abs(Oe.x)}class ef extends Tc{constructor(R){super(),this._currentTouchCount=0,this._map=R}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(R,ae,we){super.touchstart(R,ae,we),this._currentTouchCount=we.length}_start(R){this._lastPoints=R,Qu(R[0].sub(R[1]))&&(this._valid=!1)}_move(R,ae,we){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let Se=R[0].sub(this._lastPoints[0]),De=R[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(Se,De,we.timeStamp),this._valid?(this._lastPoints=R,this._active=!0,{pitchDelta:(Se.y+De.y)/2*-.5}):void 0}gestureBeginsVertically(R,ae,we){if(this._valid!==void 0)return this._valid;let Se=R.mag()>=2,De=ae.mag()>=2;if(!Se&&!De)return;if(!Se||!De)return this._firstMove===void 0&&(this._firstMove=we),we-this._firstMove<100&&void 0;let ft=R.y>0==ae.y>0;return Qu(R)&&Qu(ae)&&ft}}let Zt={panStep:100,bearingStep:15,pitchStep:10};class fr{constructor(R){this._tr=new mu(R);let ae=Zt;this._panStep=ae.panStep,this._bearingStep=ae.bearingStep,this._pitchStep=ae.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(R){if(R.altKey||R.ctrlKey||R.metaKey)return;let ae=0,we=0,Se=0,De=0,ft=0;switch(R.keyCode){case 61:case 107:case 171:case 187:ae=1;break;case 189:case 109:case 173:ae=-1;break;case 37:R.shiftKey?we=-1:(R.preventDefault(),De=-1);break;case 39:R.shiftKey?we=1:(R.preventDefault(),De=1);break;case 38:R.shiftKey?Se=1:(R.preventDefault(),ft=-1);break;case 40:R.shiftKey?Se=-1:(R.preventDefault(),ft=1);break;default:return}return this._rotationDisabled&&(we=0,Se=0),{cameraAnimation:bt=>{let Dt=this._tr;bt.easeTo({duration:300,easeId:"keyboardHandler",easing:Yr,zoom:ae?Math.round(Dt.zoom)+ae*(R.shiftKey?2:1):Dt.zoom,bearing:Dt.bearing+we*this._bearingStep,pitch:Dt.pitch+Se*this._pitchStep,offset:[-De*this._panStep,-ft*this._panStep],center:Dt.center},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Yr(Oe){return Oe*(2-Oe)}let qr=4.000244140625;class ba{constructor(R,ae){this._onTimeout=we=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(we)},this._map=R,this._tr=new mu(R),this._triggerRenderFrame=ae,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(R){this._defaultZoomRate=R}setWheelZoomRate(R){this._wheelZoomRate=R}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!R&&R.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(R){return!!this._map.cooperativeGestures.isEnabled()&&!(R.ctrlKey||this._map.cooperativeGestures.isBypassed(R))}wheel(R){if(!this.isEnabled())return;if(this._shouldBePrevented(R))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",R);let ae=R.deltaMode===WheelEvent.DOM_DELTA_LINE?40*R.deltaY:R.deltaY,we=i.now(),Se=we-(this._lastWheelEventTime||0);this._lastWheelEventTime=we,ae!==0&&ae%qr==0?this._type="wheel":ae!==0&&Math.abs(ae)<4?this._type="trackpad":Se>400?(this._type=null,this._lastValue=ae,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(Se*ae)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ae+=this._lastValue)),R.shiftKey&&ae&&(ae/=4),this._type&&(this._lastWheelEvent=R,this._delta-=ae,this._active||this._start(R)),R.preventDefault()}_start(R){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let ae=n.mousePos(this._map.getCanvas(),R),we=this._tr;this._around=ae.y>we.transform.height/2-we.transform.getHorizon()?t.N.convert(this._aroundCenter?we.center:we.unproject(ae)):t.N.convert(we.center),this._aroundPoint=we.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let R=this._tr.transform;if(this._delta!==0){let Dt=this._type==="wheel"&&Math.abs(this._delta)>qr?this._wheelZoomRate:this._defaultZoomRate,Yt=2/(1+Math.exp(-Math.abs(this._delta*Dt)));this._delta<0&&Yt!==0&&(Yt=1/Yt);let cr=typeof this._targetZoom=="number"?R.zoomScale(this._targetZoom):R.scale;this._targetZoom=Math.min(R.maxZoom,Math.max(R.minZoom,R.scaleZoom(cr*Yt))),this._type==="wheel"&&(this._startZoom=R.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let ae=typeof this._targetZoom=="number"?this._targetZoom:R.zoom,we=this._startZoom,Se=this._easing,De,ft=!1,bt=i.now()-this._lastWheelEventTime;if(this._type==="wheel"&&we&&Se&&bt){let Dt=Math.min(bt/200,1),Yt=Se(Dt);De=t.y.number(we,ae,Yt),Dt<1?this._frameId||(this._frameId=!0):ft=!0}else De=ae,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:De-R.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(R){let ae=t.b9;if(this._prevEase){let we=this._prevEase,Se=(i.now()-we.start)/we.duration,De=we.easing(Se+.01)-we.easing(Se),ft=.27/Math.sqrt(De*De+1e-4)*.01,bt=Math.sqrt(.0729-ft*ft);ae=t.b8(ft,bt,.25,1)}return this._prevEase={start:i.now(),duration:R,easing:ae},ae}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class Ka{constructor(R,ae){this._clickZoom=R,this._tapZoom=ae}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class oi{constructor(R){this._tr=new mu(R),this.reset()}reset(){this._active=!1}dblclick(R,ae){return R.preventDefault(),{cameraAnimation:we=>{we.easeTo({duration:300,zoom:this._tr.zoom+(R.shiftKey?-1:1),around:this._tr.unproject(ae)},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class yi{constructor(){this._tap=new mf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(R,ae,we){if(!this._swipePoint)if(this._tapTime){let Se=ae[0],De=R.timeStamp-this._tapTime<500,ft=this._tapPoint.dist(Se)<30;De&&ft?we.length>0&&(this._swipePoint=Se,this._swipeTouch=we[0].identifier):this.reset()}else this._tap.touchstart(R,ae,we)}touchmove(R,ae,we){if(this._tapTime){if(this._swipePoint){if(we[0].identifier!==this._swipeTouch)return;let Se=ae[0],De=Se.y-this._swipePoint.y;return this._swipePoint=Se,R.preventDefault(),this._active=!0,{zoomDelta:De/128}}}else this._tap.touchmove(R,ae,we)}touchend(R,ae,we){if(this._tapTime)this._swipePoint&&we.length===0&&this.reset();else{let Se=this._tap.touchend(R,ae,we);Se&&(this._tapTime=R.timeStamp,this._tapPoint=Se)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ki{constructor(R,ae,we){this._el=R,this._mousePan=ae,this._touchPan=we}enable(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Bi{constructor(R,ae,we){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=ae,this._mousePitch=we}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class li{constructor(R,ae,we,Se){this._el=R,this._touchZoom=ae,this._touchRotate=we,this._tapDragZoom=Se,this._rotationDisabled=!1,this._enabled=!0}enable(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class _i{constructor(R,ae){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=R,this._options=ae,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let R=this._map.getCanvasContainer();R.classList.add("maplibregl-cooperative-gestures"),this._container=n.create("div","maplibregl-cooperative-gesture-screen",R);let ae=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(ae=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let we=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),Se=document.createElement("div");Se.className="maplibregl-desktop-message",Se.textContent=ae,this._container.appendChild(Se);let De=document.createElement("div");De.className="maplibregl-mobile-message",De.textContent=we,this._container.appendChild(De),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(n.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(R){return R[this._bypassKey]}notifyGestureBlocked(R,ae){this._enabled&&(this._map.fire(new t.k("cooperativegestureprevented",{gestureType:R,originalEvent:ae})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let vi=Oe=>Oe.zoom||Oe.drag||Oe.pitch||Oe.rotate;class ti extends t.k{}function rn(Oe){return Oe.panDelta&&Oe.panDelta.mag()||Oe.zoomDelta||Oe.bearingDelta||Oe.pitchDelta}class Kn{constructor(R,ae){this.handleWindowEvent=Se=>{this.handleEvent(Se,`${Se.type}Window`)},this.handleEvent=(Se,De)=>{if(Se.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let ft=Se.type==="renderFrame"?void 0:Se,bt={needsRenderFrame:!1},Dt={},Yt={},cr=Se.touches,hr=cr?this._getMapTouches(cr):void 0,jr=hr?n.touchPos(this._map.getCanvas(),hr):n.mousePos(this._map.getCanvas(),Se);for(let{handlerName:Je,handler:ot,allowed:ht}of this._handlers){if(!ot.isEnabled())continue;let At;this._blockedByActive(Yt,ht,Je)?ot.reset():ot[De||Se.type]&&(At=ot[De||Se.type](Se,jr,hr),this.mergeHandlerResult(bt,Dt,At,Je,ft),At&&At.needsRenderFrame&&this._triggerRenderFrame()),(At||ot.isActive())&&(Yt[Je]=ot)}let ea={};for(let Je in this._previousActiveHandlers)Yt[Je]||(ea[Je]=ft);this._previousActiveHandlers=Yt,(Object.keys(ea).length||rn(bt))&&(this._changes.push([bt,Dt,ea]),this._triggerRenderFrame()),(Object.keys(Yt).length||rn(bt))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:qe}=bt;qe&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],qe(this._map))},this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tf(R),this._bearingSnap=ae.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ae);let we=this._el;this._listeners=[[we,"touchstart",{passive:!0}],[we,"touchmove",{passive:!1}],[we,"touchend",void 0],[we,"touchcancel",void 0],[we,"mousedown",void 0],[we,"mousemove",void 0],[we,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[we,"mouseover",void 0],[we,"mouseout",void 0],[we,"dblclick",void 0],[we,"click",void 0],[we,"keydown",{capture:!1}],[we,"keyup",void 0],[we,"wheel",{passive:!1}],[we,"contextmenu",void 0],[window,"blur",void 0]];for(let[Se,De,ft]of this._listeners)n.addEventListener(Se,De,Se===document?this.handleWindowEvent:this.handleEvent,ft)}destroy(){for(let[R,ae,we]of this._listeners)n.removeEventListener(R,ae,R===document?this.handleWindowEvent:this.handleEvent,we)}_addDefaultHandlers(R){let ae=this._map,we=ae.getCanvasContainer();this._add("mapEvent",new Ff(ae,R));let Se=ae.boxZoom=new gu(ae,R);this._add("boxZoom",Se),R.interactive&&R.boxZoom&&Se.enable();let De=ae.cooperativeGestures=new _i(ae,R.cooperativeGestures);this._add("cooperativeGestures",De),R.cooperativeGestures&&De.enable();let ft=new wc(ae),bt=new oi(ae);ae.doubleClickZoom=new Ka(bt,ft),this._add("tapZoom",ft),this._add("clickZoom",bt),R.interactive&&R.doubleClickZoom&&ae.doubleClickZoom.enable();let Dt=new yi;this._add("tapDragZoom",Dt);let Yt=ae.touchPitch=new ef(ae);this._add("touchPitch",Yt),R.interactive&&R.touchPitch&&ae.touchPitch.enable(R.touchPitch);let cr=Vl(R),hr=Qf(R);ae.dragRotate=new Bi(R,cr,hr),this._add("mouseRotate",cr,["mousePitch"]),this._add("mousePitch",hr,["mouseRotate"]),R.interactive&&R.dragRotate&&ae.dragRotate.enable();let jr=(({enable:At,clickTolerance:_t})=>{let Pt=new uc({checkCorrectEvent:er=>n.mouseButton(er)===0&&!er.ctrlKey});return new ju({clickTolerance:_t,move:(er,nr)=>({around:nr,panDelta:nr.sub(er)}),activateOnStart:!0,moveStateManager:Pt,enable:At,assignEvents:$f})})(R),ea=new Vu(R,ae);ae.dragPan=new ki(we,jr,ea),this._add("mousePan",jr),this._add("touchPan",ea,["touchZoom","touchRotate"]),R.interactive&&R.dragPan&&ae.dragPan.enable(R.dragPan);let qe=new Oc,Je=new iu;ae.touchZoomRotate=new li(we,Je,qe,Dt),this._add("touchRotate",qe,["touchPan","touchZoom"]),this._add("touchZoom",Je,["touchPan","touchRotate"]),R.interactive&&R.touchZoomRotate&&ae.touchZoomRotate.enable(R.touchZoomRotate);let ot=ae.scrollZoom=new ba(ae,()=>this._triggerRenderFrame());this._add("scrollZoom",ot,["mousePan"]),R.interactive&&R.scrollZoom&&ae.scrollZoom.enable(R.scrollZoom);let ht=ae.keyboard=new fr(ae);this._add("keyboard",ht),R.interactive&&R.keyboard&&ae.keyboard.enable(),this._add("blockableMapEvent",new il(ae))}_add(R,ae,we){this._handlers.push({handlerName:R,handler:ae,allowed:we}),this._handlersById[R]=ae}stop(R){if(!this._updatingCamera){for(let{handler:ae}of this._handlers)ae.reset();this._inertia.clear(),this._fireEvents({},{},R),this._changes=[]}}isActive(){for(let{handler:R}of this._handlers)if(R.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!vi(this._eventsInProgress)||this.isZooming()}_blockedByActive(R,ae,we){for(let Se in R)if(Se!==we&&(!ae||ae.indexOf(Se)<0))return!0;return!1}_getMapTouches(R){let ae=[];for(let we of R)this._el.contains(we.target)&&ae.push(we);return ae}mergeHandlerResult(R,ae,we,Se,De){if(!we)return;t.e(R,we);let ft={handlerName:Se,originalEvent:we.originalEvent||De};we.zoomDelta!==void 0&&(ae.zoom=ft),we.panDelta!==void 0&&(ae.drag=ft),we.pitchDelta!==void 0&&(ae.pitch=ft),we.bearingDelta!==void 0&&(ae.rotate=ft)}_applyChanges(){let R={},ae={},we={};for(let[Se,De,ft]of this._changes)Se.panDelta&&(R.panDelta=(R.panDelta||new t.P(0,0))._add(Se.panDelta)),Se.zoomDelta&&(R.zoomDelta=(R.zoomDelta||0)+Se.zoomDelta),Se.bearingDelta&&(R.bearingDelta=(R.bearingDelta||0)+Se.bearingDelta),Se.pitchDelta&&(R.pitchDelta=(R.pitchDelta||0)+Se.pitchDelta),Se.around!==void 0&&(R.around=Se.around),Se.pinchAround!==void 0&&(R.pinchAround=Se.pinchAround),Se.noInertia&&(R.noInertia=Se.noInertia),t.e(ae,De),t.e(we,ft);this._updateMapTransform(R,ae,we),this._changes=[]}_updateMapTransform(R,ae,we){let Se=this._map,De=Se._getTransformForUpdate(),ft=Se.terrain;if(!(rn(R)||ft&&this._terrainMovement))return this._fireEvents(ae,we,!0);let{panDelta:bt,zoomDelta:Dt,bearingDelta:Yt,pitchDelta:cr,around:hr,pinchAround:jr}=R;jr!==void 0&&(hr=jr),Se._stop(!0),hr=hr||Se.transform.centerPoint;let ea=De.pointLocation(bt?hr.sub(bt):hr);Yt&&(De.bearing+=Yt),cr&&(De.pitch+=cr),Dt&&(De.zoom+=Dt),ft?this._terrainMovement||!ae.drag&&!ae.zoom?ae.drag&&this._terrainMovement?De.center=De.pointLocation(De.centerPoint.sub(bt)):De.setLocationAtPoint(ea,hr):(this._terrainMovement=!0,this._map._elevationFreeze=!0,De.setLocationAtPoint(ea,hr)):De.setLocationAtPoint(ea,hr),Se._applyUpdatedTransform(De),this._map._update(),R.noInertia||this._inertia.record(R),this._fireEvents(ae,we,!0)}_fireEvents(R,ae,we){let Se=vi(this._eventsInProgress),De=vi(R),ft={};for(let hr in R){let{originalEvent:jr}=R[hr];this._eventsInProgress[hr]||(ft[`${hr}start`]=jr),this._eventsInProgress[hr]=R[hr]}!Se&&De&&this._fireEvent("movestart",De.originalEvent);for(let hr in ft)this._fireEvent(hr,ft[hr]);De&&this._fireEvent("move",De.originalEvent);for(let hr in R){let{originalEvent:jr}=R[hr];this._fireEvent(hr,jr)}let bt={},Dt;for(let hr in this._eventsInProgress){let{handlerName:jr,originalEvent:ea}=this._eventsInProgress[hr];this._handlersById[jr].isActive()||(delete this._eventsInProgress[hr],Dt=ae[jr]||ea,bt[`${hr}end`]=Dt)}for(let hr in bt)this._fireEvent(hr,bt[hr]);let Yt=vi(this._eventsInProgress),cr=(Se||De)&&!Yt;if(cr&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let hr=this._map._getTransformForUpdate();hr.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(hr)}if(we&&cr){this._updatingCamera=!0;let hr=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),jr=ea=>ea!==0&&-this._bearingSnap<ea&&ea<this._bearingSnap;!hr||!hr.essential&&i.prefersReducedMotion?(this._map.fire(new t.k("moveend",{originalEvent:Dt})),jr(this._map.getBearing())&&this._map.resetNorth()):(jr(hr.bearing||this._map.getBearing())&&(hr.bearing=0),hr.freezeElevation=!0,this._map.easeTo(hr,{originalEvent:Dt})),this._updatingCamera=!1}}_fireEvent(R,ae){this._map.fire(new t.k(R,ae?{originalEvent:ae}:{}))}_requestFrame(){return this._map.triggerRepaint(),this._map._renderTaskQueue.add(R=>{delete this._frameId,this.handleEvent(new ti("renderFrame",{timeStamp:R})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Wn extends t.E{constructor(R,ae){super(),this._renderFrameCallback=()=>{let we=Math.min((i.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(we)),we<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=R,this._bearingSnap=ae.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new t.N(this.transform.center.lng,this.transform.center.lat)}setCenter(R,ae){return this.jumpTo({center:R},ae)}panBy(R,ae,we){return R=t.P.convert(R).mult(-1),this.panTo(this.transform.center,t.e({offset:R},ae),we)}panTo(R,ae,we){return this.easeTo(t.e({center:R},ae),we)}getZoom(){return this.transform.zoom}setZoom(R,ae){return this.jumpTo({zoom:R},ae),this}zoomTo(R,ae,we){return this.easeTo(t.e({zoom:R},ae),we)}zoomIn(R,ae){return this.zoomTo(this.getZoom()+1,R,ae),this}zoomOut(R,ae){return this.zoomTo(this.getZoom()-1,R,ae),this}getBearing(){return this.transform.bearing}setBearing(R,ae){return this.jumpTo({bearing:R},ae),this}getPadding(){return this.transform.padding}setPadding(R,ae){return this.jumpTo({padding:R},ae),this}rotateTo(R,ae,we){return this.easeTo(t.e({bearing:R},ae),we)}resetNorth(R,ae){return this.rotateTo(0,t.e({duration:1e3},R),ae),this}resetNorthPitch(R,ae){return this.easeTo(t.e({bearing:0,pitch:0,duration:1e3},R),ae),this}snapToNorth(R,ae){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(R,ae):this}getPitch(){return this.transform.pitch}setPitch(R,ae){return this.jumpTo({pitch:R},ae),this}cameraForBounds(R,ae){R=ie.convert(R).adjustAntiMeridian();let we=ae&&ae.bearing||0;return this._cameraForBoxAndBearing(R.getNorthWest(),R.getSouthEast(),we,ae)}_cameraForBoxAndBearing(R,ae,we,Se){let De={top:0,bottom:0,right:0,left:0};if(typeof(Se=t.e({padding:De,offset:[0,0],maxZoom:this.transform.maxZoom},Se)).padding=="number"){let ga=Se.padding;Se.padding={top:ga,bottom:ga,right:ga,left:ga}}Se.padding=t.e(De,Se.padding);let ft=this.transform,bt=ft.padding,Dt=new ie(R,ae),Yt=ft.project(Dt.getNorthWest()),cr=ft.project(Dt.getNorthEast()),hr=ft.project(Dt.getSouthEast()),jr=ft.project(Dt.getSouthWest()),ea=t.ba(-we),qe=Yt.rotate(ea),Je=cr.rotate(ea),ot=hr.rotate(ea),ht=jr.rotate(ea),At=new t.P(Math.max(qe.x,Je.x,ht.x,ot.x),Math.max(qe.y,Je.y,ht.y,ot.y)),_t=new t.P(Math.min(qe.x,Je.x,ht.x,ot.x),Math.min(qe.y,Je.y,ht.y,ot.y)),Pt=At.sub(_t),er=(ft.width-(bt.left+bt.right+Se.padding.left+Se.padding.right))/Pt.x,nr=(ft.height-(bt.top+bt.bottom+Se.padding.top+Se.padding.bottom))/Pt.y;if(nr<0||er<0)return void t.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");let pr=Math.min(ft.scaleZoom(ft.scale*Math.min(er,nr)),Se.maxZoom),Sr=t.P.convert(Se.offset),Wr=new t.P((Se.padding.left-Se.padding.right)/2,(Se.padding.top-Se.padding.bottom)/2).rotate(t.ba(we)),ha=Sr.add(Wr).mult(ft.scale/ft.zoomScale(pr));return{center:ft.unproject(Yt.add(hr).div(2).sub(ha)),zoom:pr,bearing:we}}fitBounds(R,ae,we){return this._fitInternal(this.cameraForBounds(R,ae),ae,we)}fitScreenCoordinates(R,ae,we,Se,De){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(t.P.convert(R)),this.transform.pointLocation(t.P.convert(ae)),we,Se),Se,De)}_fitInternal(R,ae,we){return R?(delete(ae=t.e(R,ae)).padding,ae.linear?this.easeTo(ae,we):this.flyTo(ae,we)):this}jumpTo(R,ae){this.stop();let we=this._getTransformForUpdate(),Se=!1,De=!1,ft=!1;return"zoom"in R&&we.zoom!==+R.zoom&&(Se=!0,we.zoom=+R.zoom),R.center!==void 0&&(we.center=t.N.convert(R.center)),"bearing"in R&&we.bearing!==+R.bearing&&(De=!0,we.bearing=+R.bearing),"pitch"in R&&we.pitch!==+R.pitch&&(ft=!0,we.pitch=+R.pitch),R.padding==null||we.isPaddingEqual(R.padding)||(we.padding=R.padding),this._applyUpdatedTransform(we),this.fire(new t.k("movestart",ae)).fire(new t.k("move",ae)),Se&&this.fire(new t.k("zoomstart",ae)).fire(new t.k("zoom",ae)).fire(new t.k("zoomend",ae)),De&&this.fire(new t.k("rotatestart",ae)).fire(new t.k("rotate",ae)).fire(new t.k("rotateend",ae)),ft&&this.fire(new t.k("pitchstart",ae)).fire(new t.k("pitch",ae)).fire(new t.k("pitchend",ae)),this.fire(new t.k("moveend",ae))}calculateCameraOptionsFromTo(R,ae,we,Se=0){let De=t.Z.fromLngLat(R,ae),ft=t.Z.fromLngLat(we,Se),bt=ft.x-De.x,Dt=ft.y-De.y,Yt=ft.z-De.z,cr=Math.hypot(bt,Dt,Yt);if(cr===0)throw new Error("Can't calculate camera options with same From and To");let hr=Math.hypot(bt,Dt),jr=this.transform.scaleZoom(this.transform.cameraToCenterDistance/cr/this.transform.tileSize),ea=180*Math.atan2(bt,-Dt)/Math.PI,qe=180*Math.acos(hr/cr)/Math.PI;return qe=Yt<0?90-qe:90+qe,{center:ft.toLngLat(),zoom:jr,pitch:qe,bearing:ea}}easeTo(R,ae){var we;this._stop(!1,R.easeId),((R=t.e({offset:[0,0],duration:500,easing:t.b9},R)).animate===!1||!R.essential&&i.prefersReducedMotion)&&(R.duration=0);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.project(qe),At=Se.project(Je).sub(ht),_t=Se.zoomScale(ot-De),Pt,er;R.around&&(Pt=t.N.convert(R.around),er=Se.locationPoint(Pt));let nr={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||ot!==De,this._rotating=this._rotating||ft!==Yt,this._pitching=this._pitching||cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._easeId=R.easeId,this._prepareEase(ae,R.noMoveStart,nr),this.terrain&&this._prepareElevation(Je),this._ease(pr=>{if(this._zooming&&(Se.zoom=t.y.number(De,ot,pr)),this._rotating&&(Se.bearing=t.y.number(ft,Yt,pr)),this._pitching&&(Se.pitch=t.y.number(bt,cr,pr)),this._padding&&(Se.interpolatePadding(Dt,hr,pr),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(pr),Pt)Se.setLocationAtPoint(Pt,er);else{let Sr=Se.zoomScale(Se.zoom-De),Wr=ot>De?Math.min(2,_t):Math.max(.5,_t),ha=Math.pow(Wr,1-pr),ga=Se.unproject(ht.add(At.mult(pr*ha)).mult(Sr));Se.setLocationAtPoint(Se.renderWorldCopies?ga.wrap():ga,ea)}this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},pr=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae,pr)},R),this}_prepareEase(R,ae,we={}){this._moving=!0,ae||we.moving||this.fire(new t.k("movestart",R)),this._zooming&&!we.zooming&&this.fire(new t.k("zoomstart",R)),this._rotating&&!we.rotating&&this.fire(new t.k("rotatestart",R)),this._pitching&&!we.pitching&&this.fire(new t.k("pitchstart",R))}_prepareElevation(R){this._elevationCenter=R,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(R,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(R){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let ae=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(R<1&&ae!==this._elevationTarget){let we=this._elevationTarget-this._elevationStart;this._elevationStart+=R*(we-(ae-(we*R+this._elevationStart))/(1-R)),this._elevationTarget=ae}this.transform.elevation=t.y.number(this._elevationStart,this._elevationTarget,R)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(R){let ae=R.getCameraPosition(),we=this.terrain.getElevationForLngLatZoom(ae.lngLat,R.zoom);if(ae.altitude<we){let Se=this.calculateCameraOptionsFromTo(ae.lngLat,we,R.center,R.elevation);return{pitch:Se.pitch,zoom:Se.zoom}}return{}}_applyUpdatedTransform(R){let ae=[];if(this.terrain&&ae.push(Se=>this._elevateCameraIfInsideTerrain(Se)),this.transformCameraUpdate&&ae.push(Se=>this.transformCameraUpdate(Se)),!ae.length)return;let we=R.clone();for(let Se of ae){let De=we.clone(),{center:ft,zoom:bt,pitch:Dt,bearing:Yt,elevation:cr}=Se(De);ft&&(De.center=ft),bt!==void 0&&(De.zoom=bt),Dt!==void 0&&(De.pitch=Dt),Yt!==void 0&&(De.bearing=Yt),cr!==void 0&&(De.elevation=cr),we.apply(De)}this.transform.apply(we)}_fireMoveEvents(R){this.fire(new t.k("move",R)),this._zooming&&this.fire(new t.k("zoom",R)),this._rotating&&this.fire(new t.k("rotate",R)),this._pitching&&this.fire(new t.k("pitch",R))}_afterEase(R,ae){if(this._easeId&&ae&&this._easeId===ae)return;delete this._easeId;let we=this._zooming,Se=this._rotating,De=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,we&&this.fire(new t.k("zoomend",R)),Se&&this.fire(new t.k("rotateend",R)),De&&this.fire(new t.k("pitchend",R)),this.fire(new t.k("moveend",R))}flyTo(R,ae){var we;if(!R.essential&&i.prefersReducedMotion){let Ci=t.M(R,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Ci,ae)}this.stop(),R=t.e({offset:[0,0],speed:1.2,curve:1.42,easing:t.b9},R);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.zoomScale(ot-De),At=Se.project(qe),_t=Se.project(Je).sub(At),Pt=R.curve,er=Math.max(Se.width,Se.height),nr=er/ht,pr=_t.mag();if("minZoom"in R){let Ci=t.ac(Math.min(R.minZoom,De,ot),Se.minZoom,Se.maxZoom),$i=er/Se.zoomScale(Ci-De);Pt=Math.sqrt($i/pr*2)}let Sr=Pt*Pt;function Wr(Ci){let $i=(nr*nr-er*er+(Ci?-1:1)*Sr*Sr*pr*pr)/(2*(Ci?nr:er)*Sr*pr);return Math.log(Math.sqrt($i*$i+1)-$i)}function ha(Ci){return(Math.exp(Ci)-Math.exp(-Ci))/2}function ga(Ci){return(Math.exp(Ci)+Math.exp(-Ci))/2}let Pa=Wr(!1),Ja=function(Ci){return ga(Pa)/ga(Pa+Pt*Ci)},di=function(Ci){return er*((ga(Pa)*(ha($i=Pa+Pt*Ci)/ga($i))-ha(Pa))/Sr)/pr;var $i},pi=(Wr(!0)-Pa)/Pt;if(Math.abs(pr)<1e-6||!isFinite(pi)){if(Math.abs(er-nr)<1e-6)return this.easeTo(R,ae);let Ci=nr<er?-1:1;pi=Math.abs(Math.log(nr/er))/Pt,di=()=>0,Ja=$i=>Math.exp(Ci*Pt*$i)}return R.duration="duration"in R?+R.duration:1e3*pi/("screenSpeed"in R?+R.screenSpeed/Pt:+R.speed),R.maxDuration&&R.duration>R.maxDuration&&(R.duration=0),this._zooming=!0,this._rotating=ft!==Yt,this._pitching=cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._prepareEase(ae,!1),this.terrain&&this._prepareElevation(Je),this._ease(Ci=>{let $i=Ci*pi,Bn=1/Ja($i);Se.zoom=Ci===1?ot:De+Se.scaleZoom(Bn),this._rotating&&(Se.bearing=t.y.number(ft,Yt,Ci)),this._pitching&&(Se.pitch=t.y.number(bt,cr,Ci)),this._padding&&(Se.interpolatePadding(Dt,hr,Ci),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(Ci);let Sn=Ci===1?Je:Se.unproject(At.add(_t.mult(di($i))).mult(Bn));Se.setLocationAtPoint(Se.renderWorldCopies?Sn.wrap():Sn,ea),this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},()=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae)},R),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(R,ae){var we;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let Se=this._onEaseEnd;delete this._onEaseEnd,Se.call(this,ae)}return R||(we=this.handlers)===null||we===void 0||we.stop(!1),this}_ease(R,ae,we){we.animate===!1||we.duration===0?(R(1),ae()):(this._easeStart=i.now(),this._easeOptions=we,this._onEaseFrame=R,this._onEaseEnd=ae,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(R,ae){R=t.b3(R,-180,180);let we=Math.abs(R-ae);return Math.abs(R-360-ae)<we&&(R-=360),Math.abs(R+360-ae)<we&&(R+=360),R}_normalizeCenter(R,ae){if(!ae.renderWorldCopies||ae.lngRange)return;let we=R.lng-ae.center.lng;R.lng+=we>180?-360:we<-180?360:0}queryTerrainElevation(R){return this.terrain?this.terrain.getElevationForLngLatZoom(t.N.convert(R),this.transform.tileZoom)-this.transform.elevation:null}}let Jn={compact:!0,customAttribution:'<a href="https://maplibre.org/" target="_blank">MapLibre</a>'};class no{constructor(R=Jn){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=ae=>{!ae||ae.sourceDataType!=="metadata"&&ae.sourceDataType!=="visibility"&&ae.dataType!=="style"&&ae.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=R}getDefaultPosition(){return"bottom-right"}onAdd(R){return this._map=R,this._compact=this.options.compact,this._container=n.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=n.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=n.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){n.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(R,ae){let we=this._map._getUIString(`AttributionControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)}_updateAttributions(){if(!this._map.style)return;let R=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?R=R.concat(this.options.customAttribution.map(Se=>typeof Se!="string"?"":Se)):typeof this.options.customAttribution=="string"&&R.push(this.options.customAttribution)),this._map.style.stylesheet){let Se=this._map.style.stylesheet;this.styleOwner=Se.owner,this.styleId=Se.id}let ae=this._map.style.sourceCaches;for(let Se in ae){let De=ae[Se];if(De.used||De.usedForTerrain){let ft=De.getSource();ft.attribution&&R.indexOf(ft.attribution)<0&&R.push(ft.attribution)}}R=R.filter(Se=>String(Se).trim()),R.sort((Se,De)=>Se.length-De.length),R=R.filter((Se,De)=>{for(let ft=De+1;ft<R.length;ft++)if(R[ft].indexOf(Se)>=0)return!1;return!0});let we=R.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,R.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class en{constructor(R={}){this._updateCompact=()=>{let ae=this._container.children;if(ae.length){let we=ae[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&we.classList.add("maplibregl-compact"):we.classList.remove("maplibregl-compact")}},this.options=R}getDefaultPosition(){return"bottom-left"}onAdd(R){this._map=R,this._compact=this.options&&this.options.compact,this._container=n.create("div","maplibregl-ctrl");let ae=n.create("a","maplibregl-ctrl-logo");return ae.target="_blank",ae.rel="noopener nofollow",ae.href="https://maplibre.org/",ae.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ae.setAttribute("rel","noopener nofollow"),this._container.appendChild(ae),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){n.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Ri{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(R){let ae=++this._id;return this._queue.push({callback:R,id:ae,cancelled:!1}),ae}remove(R){let ae=this._currentlyRunning,we=ae?this._queue.concat(ae):this._queue;for(let Se of we)if(Se.id===R)return void(Se.cancelled=!0)}run(R=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let ae=this._currentlyRunning=this._queue;this._queue=[];for(let we of ae)if(!we.cancelled&&(we.callback(R),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var co=t.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Wo extends t.E{constructor(R){super(),this.sourceCache=R,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,R.usedForTerrain=!0,R.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(R,ae){this.sourceCache.update(R,ae),this._renderableTilesKeys=[];let we={};for(let Se of R.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:ae}))we[Se.key]=!0,this._renderableTilesKeys.push(Se.key),this._tiles[Se.key]||(Se.posMatrix=new Float64Array(16),t.aP(Se.posMatrix,0,t.X,0,t.X,0,1),this._tiles[Se.key]=new nt(Se,this.tileSize));for(let Se in this._tiles)we[Se]||delete this._tiles[Se]}freeRtt(R){for(let ae in this._tiles){let we=this._tiles[ae];(!R||we.tileID.equals(R)||we.tileID.isChildOf(R)||R.isChildOf(we.tileID))&&(we.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(R=>this.getTileByID(R))}getTileByID(R){return this._tiles[R]}getTerrainCoords(R){let ae={};for(let we of this._renderableTilesKeys){let Se=this._tiles[we].tileID;if(Se.canonical.equals(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16),t.aP(De.posMatrix,0,t.X,0,t.X,0,1),ae[we]=De}else if(Se.canonical.isChildOf(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=Se.canonical.z-R.canonical.z,bt=Se.canonical.x-(Se.canonical.x>>ft<<ft),Dt=Se.canonical.y-(Se.canonical.y>>ft<<ft),Yt=t.X>>ft;t.aP(De.posMatrix,0,Yt,0,Yt,0,1),t.J(De.posMatrix,De.posMatrix,[-bt*Yt,-Dt*Yt,0]),ae[we]=De}else if(R.canonical.isChildOf(Se.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=R.canonical.z-Se.canonical.z,bt=R.canonical.x-(R.canonical.x>>ft<<ft),Dt=R.canonical.y-(R.canonical.y>>ft<<ft),Yt=t.X>>ft;t.aP(De.posMatrix,0,t.X,0,t.X,0,1),t.J(De.posMatrix,De.posMatrix,[bt*Yt,Dt*Yt,0]),t.K(De.posMatrix,De.posMatrix,[1/2**ft,1/2**ft,0]),ae[we]=De}}return ae}getSourceTile(R,ae){let we=this.sourceCache._source,Se=R.overscaledZ-this.deltaZoom;if(Se>we.maxzoom&&(Se=we.maxzoom),Se<we.minzoom)return null;this._sourceTileCache[R.key]||(this._sourceTileCache[R.key]=R.scaledTo(Se).key);let De=this.sourceCache.getTileByID(this._sourceTileCache[R.key]);if((!De||!De.dem)&&ae)for(;Se>=we.minzoom&&(!De||!De.dem);)De=this.sourceCache.getTileByID(R.scaledTo(Se--).key);return De}tilesAfterTime(R=Date.now()){return Object.values(this._tiles).filter(ae=>ae.timeAdded>=R)}}class bs{constructor(R,ae,we){this.painter=R,this.sourceCache=new Wo(ae),this.options=we,this.exaggeration=typeof we.exaggeration=="number"?we.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(R,ae,we,Se=t.X){var De;if(!(ae>=0&&ae<Se&&we>=0&&we<Se))return 0;let ft=this.getTerrainData(R),bt=(De=ft.tile)===null||De===void 0?void 0:De.dem;if(!bt)return 0;let Dt=function(qe,Je,ot){var ht=Je[0],At=Je[1];return qe[0]=ot[0]*ht+ot[4]*At+ot[12],qe[1]=ot[1]*ht+ot[5]*At+ot[13],qe}([],[ae/Se*t.X,we/Se*t.X],ft.u_terrain_matrix),Yt=[Dt[0]*bt.dim,Dt[1]*bt.dim],cr=Math.floor(Yt[0]),hr=Math.floor(Yt[1]),jr=Yt[0]-cr,ea=Yt[1]-hr;return bt.get(cr,hr)*(1-jr)*(1-ea)+bt.get(cr+1,hr)*jr*(1-ea)+bt.get(cr,hr+1)*(1-jr)*ea+bt.get(cr+1,hr+1)*jr*ea}getElevationForLngLatZoom(R,ae){if(!t.bb(ae,R.wrap()))return 0;let{tileID:we,mercatorX:Se,mercatorY:De}=this._getOverscaledTileIDFromLngLatZoom(R,ae);return this.getElevation(we,Se%t.X,De%t.X,t.X)}getElevation(R,ae,we,Se=t.X){return this.getDEMElevation(R,ae,we,Se)*this.exaggeration}getTerrainData(R){if(!this._emptyDemTexture){let Se=this.painter.context,De=new t.R({width:1,height:1},new Uint8Array(4));this._emptyDepthTexture=new u(Se,De,Se.gl.RGBA,{premultiply:!1}),this._emptyDemUnpack=[0,0,0,0],this._emptyDemTexture=new u(Se,new t.R({width:1,height:1}),Se.gl.RGBA,{premultiply:!1}),this._emptyDemTexture.bind(Se.gl.NEAREST,Se.gl.CLAMP_TO_EDGE),this._emptyDemMatrix=t.an([])}let ae=this.sourceCache.getSourceTile(R,!0);if(ae&&ae.dem&&(!ae.demTexture||ae.needsTerrainPrepare)){let Se=this.painter.context;ae.demTexture=this.painter.getTileTexture(ae.dem.stride),ae.demTexture?ae.demTexture.update(ae.dem.getPixels(),{premultiply:!1}):ae.demTexture=new u(Se,ae.dem.getPixels(),Se.gl.RGBA,{premultiply:!1}),ae.demTexture.bind(Se.gl.NEAREST,Se.gl.CLAMP_TO_EDGE),ae.needsTerrainPrepare=!1}let we=ae&&ae+ae.tileID.key+R.key;if(we&&!this._demMatrixCache[we]){let Se=this.sourceCache.sourceCache._source.maxzoom,De=R.canonical.z-ae.tileID.canonical.z;R.overscaledZ>R.canonical.z&&(R.canonical.z>=Se?De=R.canonical.z-Se:t.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let ft=R.canonical.x-(R.canonical.x>>De<<De),bt=R.canonical.y-(R.canonical.y>>De<<De),Dt=t.bc(new Float64Array(16),[1/(t.X<<De),1/(t.X<<De),0]);t.J(Dt,Dt,[ft*t.X,bt*t.X,0]),this._demMatrixCache[R.key]={matrix:Dt,coord:R}}return{u_depth:2,u_terrain:3,u_terrain_dim:ae&&ae.dem&&ae.dem.dim||1,u_terrain_matrix:we?this._demMatrixCache[R.key].matrix:this._emptyDemMatrix,u_terrain_unpack:ae&&ae.dem&&ae.dem.getUnpackVector()||this._emptyDemUnpack,u_terrain_exaggeration:this.exaggeration,texture:(ae&&ae.demTexture||this._emptyDemTexture).texture,depthTexture:(this._fboDepthTexture||this._emptyDepthTexture).texture,tile:ae}}getFramebuffer(R){let ae=this.painter,we=ae.width/devicePixelRatio,Se=ae.height/devicePixelRatio;return!this._fbo||this._fbo.width===we&&this._fbo.height===Se||(this._fbo.destroy(),this._fboCoordsTexture.destroy(),this._fboDepthTexture.destroy(),delete this._fbo,delete this._fboDepthTexture,delete this._fboCoordsTexture),this._fboCoordsTexture||(this._fboCoordsTexture=new u(ae.context,{width:we,height:Se,data:null},ae.context.gl.RGBA,{premultiply:!1}),this._fboCoordsTexture.bind(ae.context.gl.NEAREST,ae.context.gl.CLAMP_TO_EDGE)),this._fboDepthTexture||(this._fboDepthTexture=new u(ae.context,{width:we,height:Se,data:null},ae.context.gl.RGBA,{premultiply:!1}),this._fboDepthTexture.bind(ae.context.gl.NEAREST,ae.context.gl.CLAMP_TO_EDGE)),this._fbo||(this._fbo=ae.context.createFramebuffer(we,Se,!0,!1),this._fbo.depthAttachment.set(ae.context.createRenderbuffer(ae.context.gl.DEPTH_COMPONENT16,we,Se))),this._fbo.colorAttachment.set(R==="coords"?this._fboCoordsTexture.texture:this._fboDepthTexture.texture),this._fbo}getCoordsTexture(){let R=this.painter.context;if(this._coordsTexture)return this._coordsTexture;let ae=new Uint8Array(this._coordsTextureSize*this._coordsTextureSize*4);for(let De=0,ft=0;De<this._coordsTextureSize;De++)for(let bt=0;bt<this._coordsTextureSize;bt++,ft+=4)ae[ft+0]=255&bt,ae[ft+1]=255&De,ae[ft+2]=bt>>8<<4|De>>8,ae[ft+3]=0;let we=new t.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(ae.buffer)),Se=new u(R,we,R.gl.RGBA,{premultiply:!1});return Se.bind(R.gl.NEAREST,R.gl.CLAMP_TO_EDGE),this._coordsTexture=Se,Se}pointCoordinate(R){this.painter.maybeDrawDepthAndCoords(!0);let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl,De=Math.round(R.x*this.painter.pixelRatio/devicePixelRatio),ft=Math.round(R.y*this.painter.pixelRatio/devicePixelRatio),bt=Math.round(this.painter.height/devicePixelRatio);we.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),Se.readPixels(De,bt-ft-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null);let Dt=ae[0]+(ae[2]>>4<<8),Yt=ae[1]+((15&ae[2])<<8),cr=this.coordsIndex[255-ae[3]],hr=cr&&this.sourceCache.getTileByID(cr);if(!hr)return null;let jr=this._coordsTextureSize,ea=(1<<hr.tileID.canonical.z)*jr;return new t.Z((hr.tileID.canonical.x*jr+Dt)/ea+hr.tileID.wrap,(hr.tileID.canonical.y*jr+Yt)/ea,this.getElevation(hr.tileID,Dt,Yt,jr))}depthAtPoint(R){let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl;return we.bindFramebuffer.set(this.getFramebuffer("depth").framebuffer),Se.readPixels(R.x,this.painter.height/devicePixelRatio-R.y-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null),(ae[0]/16777216+ae[1]/65536+ae[2]/256+ae[3])/256}getTerrainMesh(){if(this._mesh)return this._mesh;let R=this.painter.context,ae=new t.bd,we=new t.aY,Se=this.meshSize,De=t.X/Se,ft=Se*Se;for(let hr=0;hr<=Se;hr++)for(let jr=0;jr<=Se;jr++)ae.emplaceBack(jr*De,hr*De,0);for(let hr=0;hr<ft;hr+=Se+1)for(let jr=0;jr<Se;jr++)we.emplaceBack(jr+hr,Se+jr+hr+1,Se+jr+hr+2),we.emplaceBack(jr+hr,Se+jr+hr+2,jr+hr+1);let bt=ae.length,Dt=bt+2*(Se+1);for(let hr of[0,1])for(let jr=0;jr<=Se;jr++)for(let ea of[0,1])ae.emplaceBack(jr*De,hr*t.X,ea);for(let hr=0;hr<2*Se;hr+=2)we.emplaceBack(Dt+hr,Dt+hr+1,Dt+hr+3),we.emplaceBack(Dt+hr,Dt+hr+3,Dt+hr+2),we.emplaceBack(bt+hr,bt+hr+3,bt+hr+1),we.emplaceBack(bt+hr,bt+hr+2,bt+hr+3);let Yt=ae.length,cr=Yt+2*(Se+1);for(let hr of[0,1])for(let jr=0;jr<=Se;jr++)for(let ea of[0,1])ae.emplaceBack(hr*t.X,jr*De,ea);for(let hr=0;hr<2*Se;hr+=2)we.emplaceBack(Yt+hr,Yt+hr+1,Yt+hr+3),we.emplaceBack(Yt+hr,Yt+hr+3,Yt+hr+2),we.emplaceBack(cr+hr,cr+hr+3,cr+hr+1),we.emplaceBack(cr+hr,cr+hr+2,cr+hr+3);return this._mesh=new Cu(R.createVertexBuffer(ae,co.members),R.createIndexBuffer(we),t.a0.simpleSegment(0,0,ae.length,we.length)),this._mesh}getMeshFrameDelta(R){return 2*Math.PI*t.be/Math.pow(2,R)/5}getMinTileElevationForLngLatZoom(R,ae){var we;let{tileID:Se}=this._getOverscaledTileIDFromLngLatZoom(R,ae);return(we=this.getMinMaxElevation(Se).minElevation)!==null&&we!==void 0?we:0}getMinMaxElevation(R){let ae=this.getTerrainData(R).tile,we={minElevation:null,maxElevation:null};return ae&&ae.dem&&(we.minElevation=ae.dem.min*this.exaggeration,we.maxElevation=ae.dem.max*this.exaggeration),we}_getOverscaledTileIDFromLngLatZoom(R,ae){let we=t.Z.fromLngLat(R.wrap()),Se=(1<<ae)*t.X,De=we.x*Se,ft=we.y*Se,bt=Math.floor(De/t.X),Dt=Math.floor(ft/t.X);return{tileID:new t.S(ae,0,ae,bt,Dt),mercatorX:De,mercatorY:ft}}}class Xs{constructor(R,ae,we){this._context=R,this._size=ae,this._tileSize=we,this._objects=[],this._recentlyUsed=[],this._stamp=0}destruct(){for(let R of this._objects)R.texture.destroy(),R.fbo.destroy()}_createObject(R){let ae=this._context.createFramebuffer(this._tileSize,this._tileSize,!0,!0),we=new u(this._context,{width:this._tileSize,height:this._tileSize,data:null},this._context.gl.RGBA);return we.bind(this._context.gl.LINEAR,this._context.gl.CLAMP_TO_EDGE),ae.depthAttachment.set(this._context.createRenderbuffer(this._context.gl.DEPTH_STENCIL,this._tileSize,this._tileSize)),ae.colorAttachment.set(we.texture),{id:R,fbo:ae,texture:we,stamp:-1,inUse:!1}}getObjectForId(R){return this._objects[R]}useObject(R){R.inUse=!0,this._recentlyUsed=this._recentlyUsed.filter(ae=>R.id!==ae),this._recentlyUsed.push(R.id)}stampObject(R){R.stamp=++this._stamp}getOrCreateFreeObject(){for(let ae of this._recentlyUsed)if(!this._objects[ae].inUse)return this._objects[ae];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let R=this._createObject(this._objects.length);return this._objects.push(R),R}freeObject(R){R.inUse=!1}freeAllObjects(){for(let R of this._objects)this.freeObject(R)}isFull(){return!(this._objects.length<this._size)&&this._objects.some(R=>!R.inUse)===!1}}let Ms={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Hs{constructor(R,ae){this.painter=R,this.terrain=ae,this.pool=new Xs(R.context,30,ae.sourceCache.tileSize*ae.qualityFactor)}destruct(){this.pool.destruct()}getTexture(R){return this.pool.getObjectForId(R.rtt[this._stacks.length-1].id).texture}prepareForRender(R,ae){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=R._order.filter(we=>!R._layers[we].isHidden(ae)),this._coordsDescendingInv={};for(let we in R.sourceCaches){this._coordsDescendingInv[we]={};let Se=R.sourceCaches[we].getVisibleCoordinates();for(let De of Se){let ft=this.terrain.sourceCache.getTerrainCoords(De);for(let bt in ft)this._coordsDescendingInv[we][bt]||(this._coordsDescendingInv[we][bt]=[]),this._coordsDescendingInv[we][bt].push(ft[bt])}}this._coordsDescendingInvStr={};for(let we of R._order){let Se=R._layers[we],De=Se.source;if(Ms[Se.type]&&!this._coordsDescendingInvStr[De]){this._coordsDescendingInvStr[De]={};for(let ft in this._coordsDescendingInv[De])this._coordsDescendingInvStr[De][ft]=this._coordsDescendingInv[De][ft].map(bt=>bt.key).sort().join()}}for(let we of this._renderableTiles)for(let Se in this._coordsDescendingInvStr){let De=this._coordsDescendingInvStr[Se][we.tileID.key];De&&De!==we.rttCoords[Se]&&(we.rtt=[])}}renderLayer(R){if(R.isHidden(this.painter.transform.zoom))return!1;let ae=R.type,we=this.painter,Se=this._renderableLayerIds[this._renderableLayerIds.length-1]===R.id;if(Ms[ae]&&(this._prevType&&Ms[this._prevType]||this._stacks.push([]),this._prevType=ae,this._stacks[this._stacks.length-1].push(R.id),!Se))return!0;if(Ms[this._prevType]||Ms[ae]&&Se){this._prevType=ae;let De=this._stacks.length-1,ft=this._stacks[De]||[];for(let bt of this._renderableTiles){if(this.pool.isFull()&&(ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(bt),bt.rtt[De]){let Yt=this.pool.getObjectForId(bt.rtt[De].id);if(Yt.stamp===bt.rtt[De].stamp){this.pool.useObject(Yt);continue}}let Dt=this.pool.getOrCreateFreeObject();this.pool.useObject(Dt),this.pool.stampObject(Dt),bt.rtt[De]={id:Dt.id,stamp:Dt.stamp},we.context.bindFramebuffer.set(Dt.fbo.framebuffer),we.context.clear({color:t.aM.transparent,stencil:0}),we.currentStencilSource=void 0;for(let Yt=0;Yt<ft.length;Yt++){let cr=we.style._layers[ft[Yt]],hr=cr.source?this._coordsDescendingInv[cr.source][bt.tileID.key]:[bt.tileID];we.context.viewport.set([0,0,Dt.fbo.width,Dt.fbo.height]),we._renderTileClippingMasks(cr,hr),we.renderLayer(we,we.style.sourceCaches[cr.source],cr,hr),cr.source&&(bt.rttCoords[cr.source]=this._coordsDescendingInvStr[cr.source][bt.tileID.key])}}return ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),Ms[ae]}return!1}}let vs={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"MapLibre logo","Map.Title":"Map","Marker.Title":"Map marker","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","Popup.Close":"Close popup","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm","TerrainControl.Enable":"Enable terrain","TerrainControl.Disable":"Disable terrain","CooperativeGesturesHandler.WindowsHelpText":"Use Ctrl + scroll to zoom the map","CooperativeGesturesHandler.MacHelpText":"Use \u2318 + scroll to zoom the map","CooperativeGesturesHandler.MobileHelpText":"Use two fingers to move the map"},Il=r,fl={hash:!1,interactive:!0,bearingSnap:7,attributionControl:Jn,maplibreLogo:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,refreshExpiredTiles:!0,scrollZoom:!0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,trackResize:!0,center:[0,0],zoom:0,bearing:0,pitch:0,renderWorldCopies:!0,maxTileCacheSize:null,maxTileCacheZoomLevels:t.a.MAX_TILE_CACHE_ZOOM_LEVELS,transformRequest:null,transformCameraUpdate:null,fadeDuration:300,crossSourceCollisions:!0,clickTolerance:3,localIdeographFontFamily:"sans-serif",pitchWithRotate:!0,validateStyle:!0,maxCanvasSize:[4096,4096],cancelPendingTileRequestsWhileZooming:!0},tl=Oe=>{Oe.touchstart=Oe.dragStart,Oe.touchmoveWindow=Oe.dragMove,Oe.touchend=Oe.dragEnd},Ln={showCompass:!0,showZoom:!0,visualizePitch:!1};class Ao{constructor(R,ae,we=!1){this.mousedown=ft=>{this.startMouse(t.e({},ft,{ctrlKey:!0,preventDefault:()=>ft.preventDefault()}),n.mousePos(this.element,ft)),n.addEventListener(window,"mousemove",this.mousemove),n.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=ft=>{this.moveMouse(ft,n.mousePos(this.element,ft))},this.mouseup=ft=>{this.mouseRotate.dragEnd(ft),this.mousePitch&&this.mousePitch.dragEnd(ft),this.offTemp()},this.touchstart=ft=>{ft.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.startTouch(ft,this._startPos),n.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.addEventListener(window,"touchend",this.touchend))},this.touchmove=ft=>{ft.targetTouches.length!==1?this.reset():(this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.moveTouch(ft,this._lastPos))},this.touchend=ft=>{ft.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),delete this._startPos,delete this._lastPos,this.offTemp()},this.reset=()=>{this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let Se=R.dragRotate._mouseRotate.getClickTolerance(),De=R.dragRotate._mousePitch.getClickTolerance();this.element=ae,this.mouseRotate=Vl({clickTolerance:Se,enable:!0}),this.touchRotate=(({enable:ft,clickTolerance:bt,bearingDegreesPerPixelMoved:Dt=.8})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({bearingDelta:(hr.x-cr.x)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:Se,enable:!0}),this.map=R,we&&(this.mousePitch=Qf({clickTolerance:De,enable:!0}),this.touchPitch=(({enable:ft,clickTolerance:bt,pitchDegreesPerPixelMoved:Dt=-.5})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({pitchDelta:(hr.y-cr.y)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:De,enable:!0})),n.addEventListener(ae,"mousedown",this.mousedown),n.addEventListener(ae,"touchstart",this.touchstart,{passive:!1}),n.addEventListener(ae,"touchcancel",this.reset)}startMouse(R,ae){this.mouseRotate.dragStart(R,ae),this.mousePitch&&this.mousePitch.dragStart(R,ae),n.disableDrag()}startTouch(R,ae){this.touchRotate.dragStart(R,ae),this.touchPitch&&this.touchPitch.dragStart(R,ae),n.disableDrag()}moveMouse(R,ae){let we=this.map,{bearingDelta:Se}=this.mouseRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.mousePitch){let{pitchDelta:De}=this.mousePitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}moveTouch(R,ae){let we=this.map,{bearingDelta:Se}=this.touchRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.touchPitch){let{pitchDelta:De}=this.touchPitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}off(){let R=this.element;n.removeEventListener(R,"mousedown",this.mousedown),n.removeEventListener(R,"touchstart",this.touchstart,{passive:!1}),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend),n.removeEventListener(R,"touchcancel",this.reset),this.offTemp()}offTemp(){n.enableDrag(),n.removeEventListener(window,"mousemove",this.mousemove),n.removeEventListener(window,"mouseup",this.mouseup),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend)}}let js;function Ts(Oe,R,ae){let we=new t.N(Oe.lng,Oe.lat);if(Oe=new t.N(Oe.lng,Oe.lat),R){let Se=new t.N(Oe.lng-360,Oe.lat),De=new t.N(Oe.lng+360,Oe.lat),ft=ae.locationPoint(Oe).distSqr(R);ae.locationPoint(Se).distSqr(R)<ft?Oe=Se:ae.locationPoint(De).distSqr(R)<ft&&(Oe=De)}for(;Math.abs(Oe.lng-ae.center.lng)>180;){let Se=ae.locationPoint(Oe);if(Se.x>=0&&Se.y>=0&&Se.x<=ae.width&&Se.y<=ae.height)break;Oe.lng>ae.center.lng?Oe.lng-=360:Oe.lng+=360}return Oe.lng!==we.lng&&ae.locationPoint(Oe).y>ae.height/2-ae.getHorizon()?Oe:we}let nu={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Pu(Oe,R,ae){let we=Oe.classList;for(let Se in nu)we.remove(`maplibregl-${ae}-anchor-${Se}`);we.add(`maplibregl-${ae}-anchor-${R}`)}class ec extends t.E{constructor(R){if(super(),this._onKeyPress=ae=>{let we=ae.code,Se=ae.charCode||ae.keyCode;we!=="Space"&&we!=="Enter"&&Se!==32&&Se!==13||this.togglePopup()},this._onMapClick=ae=>{let we=ae.originalEvent.target,Se=this._element;this._popup&&(we===Se||Se.contains(we))&&this.togglePopup()},this._update=ae=>{var we;if(!this._map)return;let Se=this._map.loaded()&&!this._map.isMoving();(ae?.type==="terrain"||ae?.type==="render"&&!Se)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Ts(this._lngLat,this._flatPos,this._map.transform):(we=this._lngLat)===null||we===void 0?void 0:we.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let De="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?De=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(De=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let ft="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?ft="rotateX(0deg)":this._pitchAlignment==="map"&&(ft=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||ae&&ae.type!=="moveend"||(this._pos=this._pos.round()),n.setTransform(this._element,`${nu[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${ft} ${De}`),i.frameAsync(new AbortController).then(()=>{this._updateOpacity(ae&&ae.type==="moveend")}).catch(()=>{})},this._onMove=ae=>{if(!this._isDragging){let we=this._clickTolerance||this._map._clickTolerance;this._isDragging=ae.point.dist(this._pointerdownPos)>=we}this._isDragging&&(this._pos=ae.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new t.k("dragstart"))),this.fire(new t.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new t.k("dragend")),this._state="inactive"},this._addDragHandler=ae=>{this._element.contains(ae.originalEvent.target)&&(ae.preventDefault(),this._positionDelta=ae.point.sub(this._pos).add(this._offset),this._pointerdownPos=ae.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=R&&R.anchor||"center",this._color=R&&R.color||"#3FB1CE",this._scale=R&&R.scale||1,this._draggable=R&&R.draggable||!1,this._clickTolerance=R&&R.clickTolerance||0,this._subpixelPositioning=R&&R.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=R&&R.rotation||0,this._rotationAlignment=R&&R.rotationAlignment||"auto",this._pitchAlignment=R&&R.pitchAlignment&&R.pitchAlignment!=="auto"?R.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(R?.opacity,R?.opacityWhenCovered),R&&R.element)this._element=R.element,this._offset=t.P.convert(R&&R.offset||[0,0]);else{this._defaultMarker=!0,this._element=n.create("div");let ae=n.createNS("http://www.w3.org/2000/svg","svg"),we=41,Se=27;ae.setAttributeNS(null,"display","block"),ae.setAttributeNS(null,"height",`${we}px`),ae.setAttributeNS(null,"width",`${Se}px`),ae.setAttributeNS(null,"viewBox",`0 0 ${Se} ${we}`);let De=n.createNS("http://www.w3.org/2000/svg","g");De.setAttributeNS(null,"stroke","none"),De.setAttributeNS(null,"stroke-width","1"),De.setAttributeNS(null,"fill","none"),De.setAttributeNS(null,"fill-rule","evenodd");let ft=n.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"fill-rule","nonzero");let bt=n.createNS("http://www.w3.org/2000/svg","g");bt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),bt.setAttributeNS(null,"fill","#000000");let Dt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let ht of Dt){let At=n.createNS("http://www.w3.org/2000/svg","ellipse");At.setAttributeNS(null,"opacity","0.04"),At.setAttributeNS(null,"cx","10.5"),At.setAttributeNS(null,"cy","5.80029008"),At.setAttributeNS(null,"rx",ht.rx),At.setAttributeNS(null,"ry",ht.ry),bt.appendChild(At)}let Yt=n.createNS("http://www.w3.org/2000/svg","g");Yt.setAttributeNS(null,"fill",this._color);let cr=n.createNS("http://www.w3.org/2000/svg","path");cr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Yt.appendChild(cr);let hr=n.createNS("http://www.w3.org/2000/svg","g");hr.setAttributeNS(null,"opacity","0.25"),hr.setAttributeNS(null,"fill","#000000");let jr=n.createNS("http://www.w3.org/2000/svg","path");jr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),hr.appendChild(jr);let ea=n.createNS("http://www.w3.org/2000/svg","g");ea.setAttributeNS(null,"transform","translate(6.0, 7.0)"),ea.setAttributeNS(null,"fill","#FFFFFF");let qe=n.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Je=n.createNS("http://www.w3.org/2000/svg","circle");Je.setAttributeNS(null,"fill","#000000"),Je.setAttributeNS(null,"opacity","0.25"),Je.setAttributeNS(null,"cx","5.5"),Je.setAttributeNS(null,"cy","5.5"),Je.setAttributeNS(null,"r","5.4999962");let ot=n.createNS("http://www.w3.org/2000/svg","circle");ot.setAttributeNS(null,"fill","#FFFFFF"),ot.setAttributeNS(null,"cx","5.5"),ot.setAttributeNS(null,"cy","5.5"),ot.setAttributeNS(null,"r","5.4999962"),qe.appendChild(Je),qe.appendChild(ot),ft.appendChild(bt),ft.appendChild(Yt),ft.appendChild(hr),ft.appendChild(ea),ft.appendChild(qe),ae.appendChild(ft),ae.setAttributeNS(null,"height",we*this._scale+"px"),ae.setAttributeNS(null,"width",Se*this._scale+"px"),this._element.appendChild(ae),this._offset=t.P.convert(R&&R.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",ae=>{ae.preventDefault()}),this._element.addEventListener("mousedown",ae=>{ae.preventDefault()}),Pu(this._element,this._anchor,"marker"),R&&R.className)for(let ae of R.className.split(" "))this._element.classList.add(ae);this._popup=null}addTo(R){return this.remove(),this._map=R,this._element.setAttribute("aria-label",R._getUIString("Marker.Title")),R.getCanvasContainer().appendChild(this._element),R.on("move",this._update),R.on("moveend",this._update),R.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),n.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(R){return this._lngLat=t.N.convert(R),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(R){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),R){if(!("offset"in R.options)){let Se=Math.abs(13.5)/Math.SQRT2;R.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[Se,-1*(38.1-13.5+Se)],"bottom-right":[-Se,-1*(38.1-13.5+Se)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=R,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(R){return this._subpixelPositioning=R,this}getPopup(){return this._popup}togglePopup(){let R=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:R?(R.isOpen()?R.remove():(R.setLngLat(this._lngLat),R.addTo(this._map)),this):this}_updateOpacity(R=!1){var ae,we;if(!(!((ae=this._map)===null||ae===void 0)&&ae.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(R)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let Se=this._map,De=Se.terrain.depthAtPoint(this._pos),ft=Se.terrain.getElevationForLngLatZoom(this._lngLat,Se.transform.tileZoom);if(Se.transform.lngLatToCameraDepth(this._lngLat,ft)-De<.006)return void(this._element.style.opacity=this._opacity);let bt=-this._offset.y/Se.transform._pixelPerMeter,Dt=Math.sin(Se.getPitch()*Math.PI/180)*bt,Yt=Se.terrain.depthAtPoint(new t.P(this._pos.x,this._pos.y-this._offset.y)),cr=Se.transform.lngLatToCameraDepth(this._lngLat,ft+Dt)-Yt>.006;!((we=this._popup)===null||we===void 0)&&we.isOpen()&&cr&&this._popup.remove(),this._element.style.opacity=cr?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(R){return this._offset=t.P.convert(R),this._update(),this}addClassName(R){this._element.classList.add(R)}removeClassName(R){this._element.classList.remove(R)}toggleClassName(R){return this._element.classList.toggle(R)}setDraggable(R){return this._draggable=!!R,this._map&&(R?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(R){return this._rotation=R||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(R){return this._rotationAlignment=R||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(R){return this._pitchAlignment=R&&R!=="auto"?R:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(R,ae){return R===void 0&&ae===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),R!==void 0&&(this._opacity=R),ae!==void 0&&(this._opacityWhenCovered=ae),this._map&&this._updateOpacity(!0),this}}let tf={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},yu=0,Bc=!1,Iu={maxWidth:100,unit:"metric"};function Ac(Oe,R,ae){let we=ae&&ae.maxWidth||100,Se=Oe._container.clientHeight/2,De=Oe.unproject([0,Se]),ft=Oe.unproject([we,Se]),bt=De.distanceTo(ft);if(ae&&ae.unit==="imperial"){let Dt=3.2808*bt;Dt>5280?ro(R,we,Dt/5280,Oe._getUIString("ScaleControl.Miles")):ro(R,we,Dt,Oe._getUIString("ScaleControl.Feet"))}else ae&&ae.unit==="nautical"?ro(R,we,bt/1852,Oe._getUIString("ScaleControl.NauticalMiles")):bt>=1e3?ro(R,we,bt/1e3,Oe._getUIString("ScaleControl.Kilometers")):ro(R,we,bt,Oe._getUIString("ScaleControl.Meters"))}function ro(Oe,R,ae,we){let Se=function(De){let ft=Math.pow(10,`${Math.floor(De)}`.length-1),bt=De/ft;return bt=bt>=10?10:bt>=5?5:bt>=3?3:bt>=2?2:bt>=1?1:function(Dt){let Yt=Math.pow(10,Math.ceil(-Math.log(Dt)/Math.LN10));return Math.round(Dt*Yt)/Yt}(bt),ft*bt}(ae);Oe.style.width=R*(Se/ae)+"px",Oe.innerHTML=`${Se}&nbsp;${we}`}let Po={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Nc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(Oe){if(Oe){if(typeof Oe=="number"){let R=Math.round(Math.abs(Oe)/Math.SQRT2);return{center:new t.P(0,0),top:new t.P(0,Oe),"top-left":new t.P(R,R),"top-right":new t.P(-R,R),bottom:new t.P(0,-Oe),"bottom-left":new t.P(R,-R),"bottom-right":new t.P(-R,-R),left:new t.P(Oe,0),right:new t.P(-Oe,0)}}if(Oe instanceof t.P||Array.isArray(Oe)){let R=t.P.convert(Oe);return{center:R,top:R,"top-left":R,"top-right":R,bottom:R,"bottom-left":R,"bottom-right":R,left:R,right:R}}return{center:t.P.convert(Oe.center||[0,0]),top:t.P.convert(Oe.top||[0,0]),"top-left":t.P.convert(Oe["top-left"]||[0,0]),"top-right":t.P.convert(Oe["top-right"]||[0,0]),bottom:t.P.convert(Oe.bottom||[0,0]),"bottom-left":t.P.convert(Oe["bottom-left"]||[0,0]),"bottom-right":t.P.convert(Oe["bottom-right"]||[0,0]),left:t.P.convert(Oe.left||[0,0]),right:t.P.convert(Oe.right||[0,0])}}return hc(new t.P(0,0))}let pc=r;e.AJAXError=t.bh,e.Evented=t.E,e.LngLat=t.N,e.MercatorCoordinate=t.Z,e.Point=t.P,e.addProtocol=t.bi,e.config=t.a,e.removeProtocol=t.bj,e.AttributionControl=no,e.BoxZoomHandler=gu,e.CanvasSource=et,e.CooperativeGesturesHandler=_i,e.DoubleClickZoomHandler=Ka,e.DragPanHandler=ki,e.DragRotateHandler=Bi,e.EdgeInsets=$u,e.FullscreenControl=class extends t.E{constructor(Oe={}){super(),this._onFullscreenChange=()=>{var R;let ae=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((R=ae?.shadowRoot)===null||R===void 0)&&R.fullscreenElement;)ae=ae.shadowRoot.fullscreenElement;ae===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,Oe&&Oe.container&&(Oe.container instanceof HTMLElement?this._container=Oe.container:t.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(Oe){return this._map=Oe,this._container||(this._container=this._map.getContainer()),this._controlContainer=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){n.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let Oe=this._fullscreenButton=n.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);n.create("span","maplibregl-ctrl-icon",Oe).setAttribute("aria-hidden","true"),Oe.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let Oe=this._getTitle();this._fullscreenButton.setAttribute("aria-label",Oe),this._fullscreenButton.title=Oe}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new t.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new t.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},e.GeoJSONSource=Ie,e.GeolocateControl=class extends t.E{constructor(Oe){super(),this._onSuccess=R=>{if(this._map){if(this._isOutOfMapMaxBounds(R))return this._setErrorState(),this.fire(new t.k("outofmaxbounds",R)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=R,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(R),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(R),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new t.k("geolocate",R)),this._finish()}},this._updateCamera=R=>{let ae=new t.N(R.coords.longitude,R.coords.latitude),we=R.coords.accuracy,Se=this._map.getBearing(),De=t.e({bearing:Se},this.options.fitBoundsOptions),ft=ie.fromLngLat(ae,we);this._map.fitBounds(ft,De,{geolocateSource:!0})},this._updateMarker=R=>{if(R){let ae=new t.N(R.coords.longitude,R.coords.latitude);this._accuracyCircleMarker.setLngLat(ae).addTo(this._map),this._userLocationDotMarker.setLngLat(ae).addTo(this._map),this._accuracy=R.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=R=>{if(this._map){if(this.options.trackUserLocation)if(R.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(R.code===3&&Bc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new t.k("error",R)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",R=>R.preventDefault()),this._geolocateButton=n.create("button","maplibregl-ctrl-geolocate",this._container),n.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=R=>{if(this._map){if(R===!1){t.w("Geolocation support is not available so the GeolocateControl will be disabled.");let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}else{let ae=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=n.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new ec({element:this._dotElement}),this._circleElement=n.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new ec({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",ae=>{ae.geolocateSource||this._watchState!=="ACTIVE_LOCK"||ae.originalEvent&&ae.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new t.k("trackuserlocationend")),this.fire(new t.k("userlocationlostfocus")))})}},this.options=t.e({},tf,Oe)}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return t._(this,arguments,void 0,function*(R=!1){if(js!==void 0&&!R)return js;if(window.navigator.permissions===void 0)return js=!!window.navigator.geolocation,js;try{js=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{js=!!window.navigator.geolocation}return js})}().then(R=>this._finishSetupUI(R)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),n.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,yu=0,Bc=!1}_isOutOfMapMaxBounds(Oe){let R=this._map.getMaxBounds(),ae=Oe.coords;return R&&(ae.longitude<R.getWest()||ae.longitude>R.getEast()||ae.latitude<R.getSouth()||ae.latitude>R.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let Oe=this._map.getBounds(),R=Oe.getSouthEast(),ae=Oe.getNorthEast(),we=R.distanceTo(ae),Se=Math.ceil(this._accuracy/(we/this._map._container.clientHeight)*2);this._circleElement.style.width=`${Se}px`,this._circleElement.style.height=`${Se}px`}trigger(){if(!this._setup)return t.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":yu--,Bc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new t.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.k("trackuserlocationstart")),this.fire(new t.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let Oe;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),yu++,yu>1?(Oe={maximumAge:6e5,timeout:0},Bc=!0):(Oe=this.options.positionOptions,Bc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,Oe)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},e.Hash=Sh,e.ImageSource=at,e.KeyboardHandler=fr,e.LngLatBounds=ie,e.LogoControl=en,e.Map=class extends Wn{constructor(Oe){t.bf.mark(t.bg.create);let R=Object.assign(Object.assign({},fl),Oe);if(R.minZoom!=null&&R.maxZoom!=null&&R.minZoom>R.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(R.minPitch!=null&&R.maxPitch!=null&&R.minPitch>R.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(R.minPitch!=null&&R.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(R.maxPitch!=null&&R.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new xl(R.minZoom,R.maxZoom,R.minPitch,R.maxPitch,R.renderWorldCopies),{bearingSnap:R.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Ri,this._controls=[],this._mapId=t.a4(),this._contextLost=ae=>{ae.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new t.k("webglcontextlost",{originalEvent:ae}))},this._contextRestored=ae=>{this._setupPainter(),this.resize(),this._update(),this.fire(new t.k("webglcontextrestored",{originalEvent:ae}))},this._onMapScroll=ae=>{if(ae.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=R.interactive,this._maxTileCacheSize=R.maxTileCacheSize,this._maxTileCacheZoomLevels=R.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=R.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=R.preserveDrawingBuffer===!0,this._antialias=R.antialias===!0,this._trackResize=R.trackResize===!0,this._bearingSnap=R.bearingSnap,this._refreshExpiredTiles=R.refreshExpiredTiles===!0,this._fadeDuration=R.fadeDuration,this._crossSourceCollisions=R.crossSourceCollisions===!0,this._collectResourceTiming=R.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},vs),R.locale),this._clickTolerance=R.clickTolerance,this._overridePixelRatio=R.pixelRatio,this._maxCanvasSize=R.maxCanvasSize,this.transformCameraUpdate=R.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=R.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=l.addThrottleControl(()=>this.isMoving()),this._requestManager=new _(R.transformRequest),typeof R.container=="string"){if(this._container=document.getElementById(R.container),!this._container)throw new Error(`Container '${R.container}' not found.`)}else{if(!(R.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=R.container}if(R.maxBounds&&this.setMaxBounds(R.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let ae=!1,we=hh(Se=>{this._trackResize&&!this._removed&&(this.resize(Se),this.redraw())},50);this._resizeObserver=new ResizeObserver(Se=>{ae?we(Se):ae=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Kn(this,R),this._hash=R.hash&&new Sh(typeof R.hash=="string"&&R.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:R.center,zoom:R.zoom,bearing:R.bearing,pitch:R.pitch}),R.bounds&&(this.resize(),this.fitBounds(R.bounds,t.e({},R.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=R.localIdeographFontFamily,this._validateStyle=R.validateStyle,R.style&&this.setStyle(R.style,{localIdeographFontFamily:R.localIdeographFontFamily}),R.attributionControl&&this.addControl(new no(typeof R.attributionControl=="boolean"?void 0:R.attributionControl)),R.maplibreLogo&&this.addControl(new en,R.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",ae=>{this._update(ae.dataType==="style"),this.fire(new t.k(`${ae.dataType}data`,ae))}),this.on("dataloading",ae=>{this.fire(new t.k(`${ae.dataType}dataloading`,ae))}),this.on("dataabort",ae=>{this.fire(new t.k("sourcedataabort",ae))})}_getMapId(){return this._mapId}addControl(Oe,R){if(R===void 0&&(R=Oe.getDefaultPosition?Oe.getDefaultPosition():"top-right"),!Oe||!Oe.onAdd)return this.fire(new t.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let ae=Oe.onAdd(this);this._controls.push(Oe);let we=this._controlPositions[R];return R.indexOf("bottom")!==-1?we.insertBefore(ae,we.firstChild):we.appendChild(ae),this}removeControl(Oe){if(!Oe||!Oe.onRemove)return this.fire(new t.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let R=this._controls.indexOf(Oe);return R>-1&&this._controls.splice(R,1),Oe.onRemove(this),this}hasControl(Oe){return this._controls.indexOf(Oe)>-1}calculateCameraOptionsFromTo(Oe,R,ae,we){return we==null&&this.terrain&&(we=this.terrain.getElevationForLngLatZoom(ae,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(Oe,R,ae,we)}resize(Oe){var R;let ae=this._containerDimensions(),we=ae[0],Se=ae[1],De=this._getClampedPixelRatio(we,Se);if(this._resizeCanvas(we,Se,De),this.painter.resize(we,Se,De),this.painter.overLimit()){let bt=this.painter.context.gl;this._maxCanvasSize=[bt.drawingBufferWidth,bt.drawingBufferHeight];let Dt=this._getClampedPixelRatio(we,Se);this._resizeCanvas(we,Se,Dt),this.painter.resize(we,Se,Dt)}this.transform.resize(we,Se),(R=this._requestedCameraState)===null||R===void 0||R.resize(we,Se);let ft=!this._moving;return ft&&(this.stop(),this.fire(new t.k("movestart",Oe)).fire(new t.k("move",Oe))),this.fire(new t.k("resize",Oe)),ft&&this.fire(new t.k("moveend",Oe)),this}_getClampedPixelRatio(Oe,R){let{0:ae,1:we}=this._maxCanvasSize,Se=this.getPixelRatio(),De=Oe*Se,ft=R*Se;return Math.min(De>ae?ae/De:1,ft>we?we/ft:1)*Se}getPixelRatio(){var Oe;return(Oe=this._overridePixelRatio)!==null&&Oe!==void 0?Oe:devicePixelRatio}setPixelRatio(Oe){this._overridePixelRatio=Oe,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(Oe){return this.transform.setMaxBounds(ie.convert(Oe)),this._update()}setMinZoom(Oe){if((Oe=Oe??-2)>=-2&&Oe<=this.transform.maxZoom)return this.transform.minZoom=Oe,this._update(),this.getZoom()<Oe&&this.setZoom(Oe),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")}getMinZoom(){return this.transform.minZoom}setMaxZoom(Oe){if((Oe=Oe??22)>=this.transform.minZoom)return this.transform.maxZoom=Oe,this._update(),this.getZoom()>Oe&&this.setZoom(Oe),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(Oe){if((Oe=Oe??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(Oe>=0&&Oe<=this.transform.maxPitch)return this.transform.minPitch=Oe,this._update(),this.getPitch()<Oe&&this.setPitch(Oe),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")}getMinPitch(){return this.transform.minPitch}setMaxPitch(Oe){if((Oe=Oe??60)>85)throw new Error("maxPitch must be less than or equal to 85");if(Oe>=this.transform.minPitch)return this.transform.maxPitch=Oe,this._update(),this.getPitch()>Oe&&this.setPitch(Oe),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(Oe){return this.transform.renderWorldCopies=Oe,this._update()}project(Oe){return this.transform.locationPoint(t.N.convert(Oe),this.style&&this.terrain)}unproject(Oe){return this.transform.pointLocation(t.P.convert(Oe),this.terrain)}isMoving(){var Oe;return this._moving||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isMoving())}isZooming(){var Oe;return this._zooming||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isZooming())}isRotating(){var Oe;return this._rotating||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isRotating())}_createDelegatedListener(Oe,R,ae){if(Oe==="mouseenter"||Oe==="mouseover"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:De=>{let ft=R.filter(Dt=>this.getLayer(Dt)),bt=ft.length!==0?this.queryRenderedFeatures(De.point,{layers:ft}):[];bt.length?we||(we=!0,ae.call(this,new au(Oe,this,De.originalEvent,{features:bt}))):we=!1},mouseout:()=>{we=!1}}}}if(Oe==="mouseleave"||Oe==="mouseout"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:ft=>{let bt=R.filter(Dt=>this.getLayer(Dt));(bt.length!==0?this.queryRenderedFeatures(ft.point,{layers:bt}):[]).length?we=!0:we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))},mouseout:ft=>{we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))}}}}{let we=Se=>{let De=R.filter(bt=>this.getLayer(bt)),ft=De.length!==0?this.queryRenderedFeatures(Se.point,{layers:De}):[];ft.length&&(Se.features=ft,ae.call(this,Se),delete Se.features)};return{layers:R,listener:ae,delegates:{[Oe]:we}}}}_saveDelegatedListener(Oe,R){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[Oe]=this._delegatedListeners[Oe]||[],this._delegatedListeners[Oe].push(R)}_removeDelegatedListener(Oe,R,ae){if(!this._delegatedListeners||!this._delegatedListeners[Oe])return;let we=this._delegatedListeners[Oe];for(let Se=0;Se<we.length;Se++){let De=we[Se];if(De.listener===ae&&De.layers.length===R.length&&De.layers.every(ft=>R.includes(ft))){for(let ft in De.delegates)this.off(ft,De.delegates[ft]);return void we.splice(Se,1)}}}on(Oe,R,ae){if(ae===void 0)return super.on(Oe,R);let we=this._createDelegatedListener(Oe,typeof R=="string"?[R]:R,ae);this._saveDelegatedListener(Oe,we);for(let Se in we.delegates)this.on(Se,we.delegates[Se]);return this}once(Oe,R,ae){if(ae===void 0)return super.once(Oe,R);let we=typeof R=="string"?[R]:R,Se=this._createDelegatedListener(Oe,we,ae);for(let De in Se.delegates){let ft=Se.delegates[De];Se.delegates[De]=(...bt)=>{this._removeDelegatedListener(Oe,we,ae),ft(...bt)}}this._saveDelegatedListener(Oe,Se);for(let De in Se.delegates)this.once(De,Se.delegates[De]);return this}off(Oe,R,ae){return ae===void 0?super.off(Oe,R):(this._removeDelegatedListener(Oe,typeof R=="string"?[R]:R,ae),this)}queryRenderedFeatures(Oe,R){if(!this.style)return[];let ae,we=Oe instanceof t.P||Array.isArray(Oe),Se=we?Oe:[[0,0],[this.transform.width,this.transform.height]];if(R=R||(we?{}:Oe)||{},Se instanceof t.P||typeof Se[0]=="number")ae=[t.P.convert(Se)];else{let De=t.P.convert(Se[0]),ft=t.P.convert(Se[1]);ae=[De,new t.P(ft.x,De.y),ft,new t.P(De.x,ft.y),De]}return this.style.queryRenderedFeatures(ae,R,this.transform)}querySourceFeatures(Oe,R){return this.style.querySourceFeatures(Oe,R)}setStyle(Oe,R){return(R=t.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},R)).diff!==!1&&R.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&Oe?(this._diffStyle(Oe,R),this):(this._localIdeographFontFamily=R.localIdeographFontFamily,this._updateStyle(Oe,R))}setTransformRequest(Oe){return this._requestManager.setTransformRequest(Oe),this}_getUIString(Oe){let R=this._locale[Oe];if(R==null)throw new Error(`Missing UI string '${Oe}'`);return R}_updateStyle(Oe,R){if(R.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(Oe,R));let ae=this.style&&R.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!Oe)),Oe?(this.style=new Jr(this,R||{}),this.style.setEventedParent(this,{style:this.style}),typeof Oe=="string"?this.style.loadURL(Oe,R,ae):this.style.loadJSON(Oe,R,ae),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Jr(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(Oe,R){if(typeof Oe=="string"){let ae=this._requestManager.transformRequest(Oe,"Style");t.h(ae,new AbortController).then(we=>{this._updateDiff(we.data,R)}).catch(we=>{we&&this.fire(new t.j(we))})}else typeof Oe=="object"&&this._updateDiff(Oe,R)}_updateDiff(Oe,R){try{this.style.setState(Oe,R)&&this._update(!0)}catch(ae){t.w(`Unable to perform style diff: ${ae.message||ae.error||ae}. Rebuilding the style from scratch.`),this._updateStyle(Oe,R)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():t.w("There is no style added to the map.")}addSource(Oe,R){return this._lazyInitEmptyStyle(),this.style.addSource(Oe,R),this._update(!0)}isSourceLoaded(Oe){let R=this.style&&this.style.sourceCaches[Oe];if(R!==void 0)return R.loaded();this.fire(new t.j(new Error(`There is no source with ID '${Oe}'`)))}setTerrain(Oe){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),Oe){let R=this.style.sourceCaches[Oe.source];if(!R)throw new Error(`cannot load terrain, because there exists no source with ID: ${Oe.source}`);this.terrain===null&&R.reload();for(let ae in this.style._layers){let we=this.style._layers[ae];we.type==="hillshade"&&we.source===Oe.source&&t.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new bs(this.painter,R,Oe),this.painter.renderToTexture=new Hs(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=ae=>{ae.dataType==="style"?this.terrain.sourceCache.freeRtt():ae.dataType==="source"&&ae.tile&&(ae.sourceId!==Oe.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(ae.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new t.k("terrain",{terrain:Oe})),this}getTerrain(){var Oe,R;return(R=(Oe=this.terrain)===null||Oe===void 0?void 0:Oe.options)!==null&&R!==void 0?R:null}areTilesLoaded(){let Oe=this.style&&this.style.sourceCaches;for(let R in Oe){let ae=Oe[R]._tiles;for(let we in ae){let Se=ae[we];if(Se.state!=="loaded"&&Se.state!=="errored")return!1}}return!0}removeSource(Oe){return this.style.removeSource(Oe),this._update(!0)}getSource(Oe){return this.style.getSource(Oe)}addImage(Oe,R,ae={}){let{pixelRatio:we=1,sdf:Se=!1,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt}=ae;if(this._lazyInitEmptyStyle(),!(R instanceof HTMLImageElement||t.b(R))){if(R.width===void 0||R.height===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:cr,height:hr,data:jr}=R,ea=R;return this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},new Uint8Array(jr)),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0,userImage:ea}),ea.onAdd&&ea.onAdd(this,Oe),this}}{let{width:cr,height:hr,data:jr}=i.getImageData(R);this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},jr),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0})}}updateImage(Oe,R){let ae=this.style.getImage(Oe);if(!ae)return this.fire(new t.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let we=R instanceof HTMLImageElement||t.b(R)?i.getImageData(R):R,{width:Se,height:De,data:ft}=we;if(Se===void 0||De===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Se!==ae.data.width||De!==ae.data.height)return this.fire(new t.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let bt=!(R instanceof HTMLImageElement||t.b(R));return ae.data.replace(ft,bt),this.style.updateImage(Oe,ae),this}getImage(Oe){return this.style.getImage(Oe)}hasImage(Oe){return Oe?!!this.style.getImage(Oe):(this.fire(new t.j(new Error("Missing required image id"))),!1)}removeImage(Oe){this.style.removeImage(Oe)}loadImage(Oe){return l.getImage(this._requestManager.transformRequest(Oe,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(Oe,R){return this._lazyInitEmptyStyle(),this.style.addLayer(Oe,R),this._update(!0)}moveLayer(Oe,R){return this.style.moveLayer(Oe,R),this._update(!0)}removeLayer(Oe){return this.style.removeLayer(Oe),this._update(!0)}getLayer(Oe){return this.style.getLayer(Oe)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(Oe,R,ae){return this.style.setLayerZoomRange(Oe,R,ae),this._update(!0)}setFilter(Oe,R,ae={}){return this.style.setFilter(Oe,R,ae),this._update(!0)}getFilter(Oe){return this.style.getFilter(Oe)}setPaintProperty(Oe,R,ae,we={}){return this.style.setPaintProperty(Oe,R,ae,we),this._update(!0)}getPaintProperty(Oe,R){return this.style.getPaintProperty(Oe,R)}setLayoutProperty(Oe,R,ae,we={}){return this.style.setLayoutProperty(Oe,R,ae,we),this._update(!0)}getLayoutProperty(Oe,R){return this.style.getLayoutProperty(Oe,R)}setGlyphs(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(Oe,R),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(Oe,R,ae={}){return this._lazyInitEmptyStyle(),this.style.addSprite(Oe,R,ae,we=>{we||this._update(!0)}),this}removeSprite(Oe){return this._lazyInitEmptyStyle(),this.style.removeSprite(Oe),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setSprite(Oe,R,ae=>{ae||this._update(!0)}),this}setLight(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setLight(Oe,R),this._update(!0)}getLight(){return this.style.getLight()}setSky(Oe){return this._lazyInitEmptyStyle(),this.style.setSky(Oe),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(Oe,R){return this.style.setFeatureState(Oe,R),this._update()}removeFeatureState(Oe,R){return this.style.removeFeatureState(Oe,R),this._update()}getFeatureState(Oe){return this.style.getFeatureState(Oe)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let Oe=0,R=0;return this._container&&(Oe=this._container.clientWidth||400,R=this._container.clientHeight||300),[Oe,R]}_setupContainer(){let Oe=this._container;Oe.classList.add("maplibregl-map");let R=this._canvasContainer=n.create("div","maplibregl-canvas-container",Oe);this._interactive&&R.classList.add("maplibregl-interactive"),this._canvas=n.create("canvas","maplibregl-canvas",R),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let ae=this._containerDimensions(),we=this._getClampedPixelRatio(ae[0],ae[1]);this._resizeCanvas(ae[0],ae[1],we);let Se=this._controlContainer=n.create("div","maplibregl-control-container",Oe),De=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(ft=>{De[ft]=n.create("div",`maplibregl-ctrl-${ft} `,Se)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(Oe,R,ae){this._canvas.width=Math.floor(ae*Oe),this._canvas.height=Math.floor(ae*R),this._canvas.style.width=`${Oe}px`,this._canvas.style.height=`${R}px`}_setupPainter(){let Oe={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},R=null;this._canvas.addEventListener("webglcontextcreationerror",we=>{R={requestedAttributes:Oe},we&&(R.statusMessage=we.statusMessage,R.type=we.type)},{once:!0});let ae=this._canvas.getContext("webgl2",Oe)||this._canvas.getContext("webgl",Oe);if(!ae){let we="Failed to initialize WebGL";throw R?(R.message=we,new Error(JSON.stringify(R))):new Error(we)}this.painter=new xc(ae,this.transform),s.testSupport(ae)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(Oe){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||Oe,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(Oe){return this._update(),this._renderTaskQueue.add(Oe)}_cancelRenderFrame(Oe){this._renderTaskQueue.remove(Oe)}_render(Oe){let R=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(Oe),this._removed)return;let ae=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let Se=this.transform.zoom,De=i.now();this.style.zoomHistory.update(Se,De);let ft=new t.z(Se,{now:De,fadeDuration:R,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),bt=ft.crossFadingFactor();bt===1&&bt===this._crossFadingFactor||(ae=!0,this._crossFadingFactor=bt),this.style.update(ft)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,R,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:R,showPadding:this.showPadding}),this.fire(new t.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,t.bf.mark(t.bg.load),this.fire(new t.k("load"))),this.style&&(this.style.hasTransitions()||ae)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let we=this._sourcesDirty||this._styleDirty||this._placementDirty;return we||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.k("idle")),!this._loaded||this._fullyLoaded||we||(this._fullyLoaded=!0,t.bf.mark(t.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var Oe;this._hash&&this._hash.remove();for(let ae of this._controls)ae.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),l.removeThrottleControl(this._imageQueueHandle),(Oe=this._resizeObserver)===null||Oe===void 0||Oe.disconnect();let R=this.painter.context.gl.getExtension("WEBGL_lose_context");R?.loseContext&&R.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),n.remove(this._canvasContainer),n.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),t.bf.clearMetrics(),this._removed=!0,this.fire(new t.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(Oe=>{t.bf.frame(Oe),this._frameRequest=null,this._render(Oe)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(Oe){this._showTileBoundaries!==Oe&&(this._showTileBoundaries=Oe,this._update())}get showPadding(){return!!this._showPadding}set showPadding(Oe){this._showPadding!==Oe&&(this._showPadding=Oe,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(Oe){this._showCollisionBoxes!==Oe&&(this._showCollisionBoxes=Oe,Oe?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(Oe){this._showOverdrawInspector!==Oe&&(this._showOverdrawInspector=Oe,this._update())}get repaint(){return!!this._repaint}set repaint(Oe){this._repaint!==Oe&&(this._repaint=Oe,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(Oe){this._vertices=Oe,this._update()}get version(){return Il}getCameraTargetElevation(){return this.transform.elevation}},e.MapMouseEvent=au,e.MapTouchEvent=$c,e.MapWheelEvent=Mh,e.Marker=ec,e.NavigationControl=class{constructor(Oe){this._updateZoomButtons=()=>{let R=this._map.getZoom(),ae=R===this._map.getMaxZoom(),we=R===this._map.getMinZoom();this._zoomInButton.disabled=ae,this._zoomOutButton.disabled=we,this._zoomInButton.setAttribute("aria-disabled",ae.toString()),this._zoomOutButton.setAttribute("aria-disabled",we.toString())},this._rotateCompassArrow=()=>{let R=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=R},this._setButtonTitle=(R,ae)=>{let we=this._map._getUIString(`NavigationControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)},this.options=t.e({},Ln,Oe),this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",R=>R.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",R=>this._map.zoomIn({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",R=>this._map.zoomOut({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",R=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:R}):this._map.resetNorth({},{originalEvent:R})}),this._compassIcon=n.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(Oe){return this._map=Oe,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ao(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){n.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(Oe,R){let ae=n.create("button",Oe,this._container);return ae.type="button",ae.addEventListener("click",R),ae}},e.Popup=class extends t.E{constructor(Oe){super(),this.remove=()=>(this._content&&n.remove(this._content),this._container&&(n.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new t.k("close"))),this),this._onMouseUp=R=>{this._update(R.point)},this._onMouseMove=R=>{this._update(R.point)},this._onDrag=R=>{this._update(R.point)},this._update=R=>{var ae;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=n.create("div","maplibregl-popup",this._map.getContainer()),this._tip=n.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let bt of this.options.className.split(" "))this._container.classList.add(bt);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Ts(this._lngLat,this._flatPos,this._map.transform):(ae=this._lngLat)===null||ae===void 0?void 0:ae.wrap(),this._trackPointer&&!R)return;let we=this._flatPos=this._pos=this._trackPointer&&R?R:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&R?R:this._map.transform.locationPoint(this._lngLat));let Se=this.options.anchor,De=hc(this.options.offset);if(!Se){let bt=this._container.offsetWidth,Dt=this._container.offsetHeight,Yt;Yt=we.y+De.bottom.y<Dt?["top"]:we.y>this._map.transform.height-Dt?["bottom"]:[],we.x<bt/2?Yt.push("left"):we.x>this._map.transform.width-bt/2&&Yt.push("right"),Se=Yt.length===0?"bottom":Yt.join("-")}let ft=we.add(De[Se]);this.options.subpixelPositioning||(ft=ft.round()),n.setTransform(this._container,`${nu[Se]} translate(${ft.x}px,${ft.y}px)`),Pu(this._container,Se,"popup")},this._onClose=()=>{this.remove()},this.options=t.e(Object.create(Po),Oe)}addTo(Oe){return this._map&&this.remove(),this._map=Oe,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new t.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(Oe){return this._lngLat=t.N.convert(Oe),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(Oe){return this.setDOMContent(document.createTextNode(Oe))}setHTML(Oe){let R=document.createDocumentFragment(),ae=document.createElement("body"),we;for(ae.innerHTML=Oe;we=ae.firstChild,we;)R.appendChild(we);return this.setDOMContent(R)}getMaxWidth(){var Oe;return(Oe=this._container)===null||Oe===void 0?void 0:Oe.style.maxWidth}setMaxWidth(Oe){return this.options.maxWidth=Oe,this._update(),this}setDOMContent(Oe){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=n.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(Oe),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(Oe){return this._container&&this._container.classList.add(Oe),this}removeClassName(Oe){return this._container&&this._container.classList.remove(Oe),this}setOffset(Oe){return this.options.offset=Oe,this._update(),this}toggleClassName(Oe){if(this._container)return this._container.classList.toggle(Oe)}setSubpixelPositioning(Oe){this.options.subpixelPositioning=Oe}_createCloseButton(){this.options.closeButton&&(this._closeButton=n.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let Oe=this._container.querySelector(Nc);Oe&&Oe.focus()}},e.RasterDEMTileSource=Be,e.RasterTileSource=Ae,e.ScaleControl=class{constructor(Oe){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=R=>{this.options.unit=R,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Iu),Oe)}getDefaultPosition(){return"bottom-left"}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-scale",Oe.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){n.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},e.ScrollZoomHandler=ba,e.Style=Jr,e.TerrainControl=class{constructor(Oe){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=Oe}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=n.create("button","maplibregl-ctrl-terrain",this._container),n.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){n.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},e.TwoFingersTouchPitchHandler=ef,e.TwoFingersTouchRotateHandler=Oc,e.TwoFingersTouchZoomHandler=iu,e.TwoFingersTouchZoomRotateHandler=li,e.VectorTileSource=be,e.VideoSource=it,e.addSourceType=(Oe,R)=>t._(void 0,void 0,void 0,function*(){if(Me(Oe))throw new Error(`A source type called "${Oe}" already exists.`);((ae,we)=>{lt[ae]=we})(Oe,R)}),e.clearPrewarmedResources=function(){let Oe=he;Oe&&(Oe.isPreloaded()&&Oe.numActive()===1?(Oe.release(Q),he=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},e.getMaxParallelImageRequests=function(){return t.a.MAX_PARALLEL_IMAGE_REQUESTS},e.getRTLTextPluginStatus=function(){return tt().getRTLTextPluginStatus()},e.getVersion=function(){return pc},e.getWorkerCount=function(){return ue.workerCount},e.getWorkerUrl=function(){return t.a.WORKER_URL},e.importScriptInWorkers=function(Oe){return Z().broadcast("IS",Oe)},e.prewarm=function(){$().acquire(Q)},e.setMaxParallelImageRequests=function(Oe){t.a.MAX_PARALLEL_IMAGE_REQUESTS=Oe},e.setRTLTextPlugin=function(Oe,R){return tt().setRTLTextPlugin(Oe,R)},e.setWorkerCount=function(Oe){ue.workerCount=Oe},e.setWorkerUrl=function(Oe){t.a.WORKER_URL=Oe}});var M=g;return M})}}),Tq=Ye({"src/plots/map/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=Ck(),M=_g();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s<n.length;s++){var c=n[s].id;if(typeof c=="string"&&c.indexOf(M.traceLayerPrefix)===0){i=c;break}}return i},t.updateLayer=function(i){var n=this.subplot,s=o(i),c=this.lookupBelow(),h=this.findFollowingMapLayerId(c);this.removeLayer(),r(i)&&n.addLayer({id:this.idLayer,source:this.idSource,"source-layer":i.sourcelayer||"",type:i.type,minzoom:i.minzoom,maxzoom:i.maxzoom,layout:s.layout,paint:s.paint},h),this.layerType=i.type,this.below=c},t.updateStyle=function(i){if(r(i)){var n=o(i);this.subplot.setOptions(this.idLayer,"setLayoutProperty",n.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",n.paint)}},t.removeLayer=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer)},t.dispose=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer),i.getSource(this.idSource)&&i.removeSource(this.idSource)};function r(i){if(!i.visible)return!1;var n=i.source;if(Array.isArray(n)&&n.length>0){for(var s=0;s<n.length;s++)if(typeof n[s]!="string"||n[s].length===0)return!1;return!0}return g.isPlainObject(n)||typeof n=="string"&&n.length>0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),Aq=Ye({"src/plots/map/map.js"(X,H){"use strict";var g=wq(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=_g(),p=Tq();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y;u.map?y=new Promise(function(f,P){u.updateMap(m,b,f,P)}):y=new Promise(function(f,P){u.createMap(m,b,f,P)}),d.push(y)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style),L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0})),B={};F.on("styleimagemissing",function(I){var N=I.id;if(!B[N]&&N.includes("-15")){B[N]=!0;var U=new Image(15,15);U.onload=function(){F.addImage(N,U)},U.crossOrigin="Anonymous",U.src="https://unpkg.com/maki@2.1.0/icons/"+N+".svg"}}),F.setTransformRequest(function(I){return I=I.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:I}}),F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var O=[];O.push(new Promise(function(I){F.once("load",I)})),O=O.concat(A.fetchTraceGeoData(m)),Promise.all(O).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y<m.length;y++){var z=m[y][0].trace,F=z._module;typeof z.below=="string"?f=z.below:F.getBelow&&(f=F.getBelow(z,this)),f===""&&(L=!0),P["trace-"+z.uid]=f||""}for(y=0;y<u.length;y++){var B=u[y];typeof B.below=="string"?f=B.below:L?f="traces":f="",P["layout-"+y]=f}var O={},I,N;for(I in P)f=P[I],O[f]?O[f].push(I):O[f]=[I];for(f in O){var U=O[f];if(U.length>1)for(y=0;y<U.length;y++)I=U[y],I.indexOf("trace-")===0?(N=I.split("trace-")[1],this.traceHash[N]&&(this.traceHash[N].below=null)):I.indexOf("layout-")===0&&(N=I.split("layout-")[1],this.layerList[N]&&(this.layerList[N].below=null))}};var _={choroplethmap:0,densitymap:1,scattermap:2};l.updateData=function(m){var b=this.traceHash,d,u,y,f,P=m.slice().sort(function(O,I){return _[O[0].trace.type]-_[I[0].trace.type]});for(y=0;y<P.length;y++){var L=P[y];u=L[0].trace,d=b[u.uid];var z=!1;d&&(d.type===u.type?(d.update(L),z=!0):d.dispose()),!z&&u._module&&(b[u.uid]=u._module.plot(this,L))}var F=Object.keys(b);e:for(y=0;y<F.length;y++){var B=F[y];for(f=0;f<m.length;f++)if(u=m[f][0].trace,B===u.uid)continue e;d=b[B],d.dispose(),delete b[B]}},l.updateLayout=function(m){var b=this.map,d=m[this.id];!this.dragging&&!this.wheeling&&(b.setCenter(E(d.center)),b.setZoom(d.zoom),b.setBearing(d.bearing),b.setPitch(d.pitch)),this.updateLayers(m),this.updateFramework(m),this.updateFx(m),this.map.resize(),this.gd._context._scrollZoom.map?b.scrollZoom.enable():b.scrollZoom.disable()},l.resolveOnRender=function(m){var b=this.map;b.on("render",function d(){b.loaded()&&(b.off("render",d),setTimeout(m,10))})},l.rejectOnError=function(m){var b=this.map;function d(){m(new Error(v.mapOnErrorMsg))}b.once("error",d),b.once("style.error",d),b.once("source.error",d),b.once("tile.error",d),b.once("layer.error",d)},l.createFramework=function(m){var b=this,d=b.div=document.createElement("div");d.id=b.uid,d.style.position="absolute",b.container.appendChild(d),b.xaxis={_id:"x",c2p:function(u){return b.project(u).x}},b.yaxis={_id:"y",c2p:function(u){return b.project(u).y}},b.updateFramework(m),b.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},e.setConvert(b.mockAxis,m)},l.initFx=function(m,b){var d=this,u=d.gd,y=d.map;y.on("moveend",function(L){if(d.map){var z=u._fullLayout;if(L.originalEvent||d.wheeling){var F=z[d.id];M.call("_storeDirectGUIEdit",u.layout,z._preGUI,d.getViewEdits(F));var B=d.getView();F._input.center=F.center=B.center,F._input.zoom=F.zoom=B.zoom,F._input.bearing=F.bearing=B.bearing,F._input.pitch=F.pitch=B.pitch,u.emit("plotly_relayout",d.getViewEditsWithDerived(B))}L.originalEvent&&L.originalEvent.type==="mouseup"?d.dragging=!1:d.wheeling&&(d.wheeling=!1),z&&z._rehover&&z._rehover()}}),y.on("wheel",function(){d.wheeling=!0}),y.on("mousemove",function(L){var z=d.div.getBoundingClientRect(),F=[L.originalEvent.offsetX,L.originalEvent.offsetY];L.target.getBoundingClientRect=function(){return z},d.xaxis.p2c=function(){return y.unproject(F).lng},d.yaxis.p2c=function(){return y.unproject(F).lat},u._fullLayout._rehover=function(){u._fullLayout._hoversubplot===d.id&&u._fullLayout[d.id]&&r.hover(u,L,d.id)},r.hover(u,L,d.id),u._fullLayout._hoversubplot=d.id});function f(){r.loneUnhover(b._hoverlayer)}y.on("dragstart",function(){d.dragging=!0,f()}),y.on("zoomstart",f),y.on("mouseout",function(){u._fullLayout._hoversubplot=null});function P(){var L=d.getView();u.emit("plotly_relayouting",d.getViewEditsWithDerived(L))}y.on("drag",P),y.on("zoom",P),y.on("dblclick",function(){var L=u._fullLayout[d.id];M.call("_storeDirectGUIEdit",u.layout,u._fullLayout._preGUI,d.getViewEdits(L));var z=d.viewInitial;y.setCenter(E(z.center)),y.setZoom(z.zoom),y.setBearing(z.bearing),y.setPitch(z.pitch);var F=d.getView();L._input.center=L.center=F.center,L._input.zoom=L.zoom=F.zoom,L._input.bearing=L.bearing=F.bearing,L._input.pitch=L.pitch=F.pitch,u.emit("plotly_doubleclick",null),u.emit("plotly_relayout",d.getViewEditsWithDerived(F))}),d.clearOutline=function(){c(d.dragOptions),s(d.dragOptions.gd)},d.onClickInPanFn=function(L){return function(z){var F=u._fullLayout.clickmode;F.indexOf("select")>-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;y<u.length;y++)u[y].dispose();for(u=this.layerList=[],y=0;y<d.length;y++)u.push(p(this,y,d[y]))}else for(y=0;y<d.length;y++)u[y].update(d[y])},l.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},l.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},l.setOptions=function(m,b,d){for(var u in d)this.map[b](m,u,d[u])},l.getMapLayers=function(){return this.map.getStyle().layers},l.addLayer=function(m,b){var d=this.map;if(typeof b=="string"){if(b===""){d.addLayer(m,b);return}for(var u=this.getMapLayers(),y=0;y<u.length;y++)if(b===u[y].id){d.addLayer(m,b);return}x.warn(["Trying to add layer with *below* value",b,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}d.addLayer(m)},l.project=function(m){return this.map.project(new g.LngLat(m[0],m[1]))},l.getView=function(){var m=this.map,b=m.getCenter(),d=b.lng,u=b.lat,y={lon:d,lat:u},f=m.getCanvas(),P=parseInt(f.style.width),L=parseInt(f.style.height);return{center:y,zoom:m.getZoom(),bearing:m.getBearing(),pitch:m.getPitch(),_derived:{coordinates:[m.unproject([0,0]).toArray(),m.unproject([P,0]).toArray(),m.unproject([P,L]).toArray(),m.unproject([0,L]).toArray()]}}},l.getViewEdits=function(m){for(var b=this.id,d=["center","zoom","bearing","pitch"],u={},y=0;y<d.length;y++){var f=d[y];u[b+"."+f]=m[f]}return u},l.getViewEditsWithDerived=function(m){var b=this.id,d=this.getViewEdits(m);return d[b+"._derived"]=m._derived,d};function w(m){var b={};return x.isPlainObject(m)?(b.id=m.id,b.style=m):typeof m=="string"?(b.id=m,v.stylesMap[m]?b.style=v.stylesMap[m]:b.style=m):(b.id=v.styleValueDflt,b.style=S(v.styleValueDflt)),b.transition={duration:0,delay:0},b}function S(m){return v.styleUrlPrefix+m+"-"+v.styleUrlSuffix}function E(m){return[m.lon,m.lat]}H.exports=T}}),Sq=Ye({"src/plots/map/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=up(),M=Mx();H.exports=function(o,a,i){x(o,a,i,{type:"map",attributes:M,handleDefaults:e,partition:"y"})};function e(r,o,a){a("style"),a("center.lon"),a("center.lat"),a("zoom"),a("bearing"),a("pitch");var i=a("bounds.west"),n=a("bounds.east"),s=a("bounds.south"),c=a("bounds.north");(i===void 0||n===void 0||s===void 0||c===void 0)&&delete o.bounds,A(r,o,{name:"layers",handleItemDefaults:t}),o._input=r}function t(r,o){function a(v,p){return g.coerce(r,o,M.layers,v,p)}var i=a("visible");if(i){var n=a("sourcetype"),s=n==="raster"||n==="image";a("source"),a("sourceattribution"),n==="vector"&&a("sourcelayer"),n==="image"&&a("coordinates");var c;s&&(c="raster");var h=a("type",c);s&&h!=="raster"&&(h=o.type="raster",g.log("Source types *raster* and *image* must drawn *raster* layer type.")),a("below"),a("color"),a("opacity"),a("minzoom"),a("maxzoom"),h==="circle"&&a("circle.radius"),h==="line"&&(a("line.width"),a("line.dash")),h==="fill"&&a("fill.outlinecolor"),h==="symbol"&&(a("symbol.icon"),a("symbol.iconsize"),a("symbol.text"),g.coerceFont(a,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),a("symbol.textposition"),a("symbol.placement"))}}}}),kT=Ye({"src/plots/map/index.js"(X){"use strict";var H=ta(),g=H.strTranslate,x=H.strScale,A=jh().getSubplotCalcData,M=vd(),e=_n(),t=Bo(),r=jl(),o=Aq(),a="map";X.name=a,X.attr="subplot",X.idRoot=a,X.idRegex=X.attrRegex=H.counterRegex(a),X.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}},X.layoutAttributes=Mx(),X.supplyLayoutDefaults=Sq(),X.plot=function(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[a],v=0;v<h.length;v++){var p=h[v],T=A(c,a,p),l=s[p],_=l._subplot;_||(_=new o(n,p),s[p]._subplot=_),_.viewInitial||(_.viewInitial={center:H.extendFlat({},l.center),zoom:l.zoom,bearing:l.bearing,pitch:l.pitch}),_.plot(T,s,n._promises)}},X.clean=function(i,n,s,c){for(var h=c._subplots[a]||[],v=0;v<h.length;v++){var p=h[v];!n[p]&&c[p]._subplot&&c[p]._subplot.destroy()}},X.toSVG=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=n._size,h=0;h<s.length;h++){var v=n[s[h]],p=v.domain,T=v._subplot,l=T.toImage("png"),_=n._glimages.append("svg:image");_.attr({xmlns:M.svg,"xlink:href":l,x:c.l+c.w*p.x[0],y:c.t+c.h*(1-p.y[1]),width:c.w*(p.x[1]-p.x[0]),height:c.h*(p.y[1]-p.y[0]),preserveAspectRatio:"none"});var w=e.select(v._subplot.div),S=w.select(".maplibregl-ctrl-attrib").text().replace("Improve this map",""),E=n._glimages.append("g"),m=E.append("text");m.text(S).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":S});var b=t.bBox(m.node()),d=c.w*(p.x[1]-p.x[0]);if(b.width>d/2){var u=S.split("|").join("<br>");m.text(u).attr("data-unformatted",u).call(r.convertToTspans,i),b=t.bBox(m.node())}m.attr("transform",g(-3,-b.height+8)),E.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var y=1;b.width+6>d&&(y=d/(b.width+6));var f=[c.l+c.w*p.x[1],c.t+c.h*(1-p.y[0])];E.attr("transform",g(f[0],f[1])+x(y))}},X.updateFx=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=0;c<s.length;c++){var h=n[s[c]]._subplot;h.updateFx(n)}}}}),Mq=Ye({"src/traces/scattermap/index.js"(X,H){"use strict";H.exports={attributes:MT(),supplyDefaults:gq(),colorbar:cp(),formatLabels:kk(),calc:aT(),plot:_q(),hoverPoints:ET().hoverPoints,eventData:xq(),selectPoints:bq(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.update(x)}},moduleType:"trace",name:"scattermap",basePlotModule:kT(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}}}),Eq=Ye({"lib/scattermap.js"(X,H){"use strict";H.exports=Mq()}}),Lk=Ye({"src/traces/choroplethmap/attributes.js"(X,H){"use strict";var g=M1(),x=tu(),A=xs().hovertemplateAttrs,M=Pl(),e=Oo().extendFlat;H.exports=e({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:e({},g.featureidkey,{}),below:{valType:"string",editType:"plot"},text:g.text,hovertext:g.hovertext,marker:{line:{color:e({},g.marker.line.color,{editType:"plot"}),width:e({},g.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:e({},g.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:e({},g.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:e({},g.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:g.hoverinfo,hovertemplate:A({},{keys:["properties"]}),showlegend:e({},M.showlegend,{dflt:!1})},x("",{cLetter:"z",editTypeOverride:"calc"}))}}),kq=Ye({"src/traces/choroplethmap/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Lk();H.exports=function(e,t,r,o){function a(h,v){return g.coerce(e,t,A,h,v)}var i=a("locations"),n=a("z"),s=a("geojson");if(!g.isArrayOrTypedArray(i)||!i.length||!g.isArrayOrTypedArray(n)||!n.length||!(typeof s=="string"&&s!==""||g.isPlainObject(s))){t.visible=!1;return}a("featureidkey"),t._length=Math.min(i.length,n.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),Pk=Ye({"src/traces/choroplethmap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Su(),M=Bo(),e=dg().makeBlank,t=vg();function r(a){var i=a[0].trace,n=i.visible===!0&&i._length!==0,s={layout:{visibility:"none"},paint:{}},c={layout:{visibility:"none"},paint:{}},h=i._opts={fill:s,line:c,geojson:e()};if(!n)return h;var v=t.extractTraceFeature(a);if(!v)return h;var p=A.makeColorScaleFuncFromTrace(i),T=i.marker,l=T.line||{},_;x.isArrayOrTypedArray(T.opacity)&&(_=function(y){var f=y.mo;return g(f)?+x.constrain(f,0,1):0});var w;x.isArrayOrTypedArray(l.color)&&(w=function(y){return y.mlc});var S;x.isArrayOrTypedArray(l.width)&&(S=function(y){return y.mlw});for(var E=0;E<a.length;E++){var m=a[E],b=m.fOut;if(b){var d=b.properties;d.fc=p(m.z),_&&(d.mo=_(m)),w&&(d.mlc=w(m)),S&&(d.mlw=S(m)),m.ct=d.ct,m._polygons=t.feature2polygons(b)}}var u=_?{type:"identity",property:"mo"}:T.opacity;return x.extendFlat(s.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":u}),x.extendFlat(c.paint,{"line-color":w?{type:"identity",property:"mlc"}:l.color,"line-width":S?{type:"identity",property:"mlw"}:l.width,"line-opacity":u}),s.layout.visibility="visible",c.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:v},o(a),h}function o(a){var i=a[0].trace,n=i._opts,s;if(i.selectedpoints){for(var c=M.makeSelectedPointStyleFns(i),h=0;h<a.length;h++){var v=a[h];v.fOut&&(v.fOut.properties.mo2=c.selectedOpacityFn(v))}s={type:"identity",property:"mo2"}}else s=x.isArrayOrTypedArray(i.marker.opacity)?{type:"identity",property:"mo"}:i.marker.opacity;return x.extendFlat(n.fill.paint,{"fill-opacity":s}),x.extendFlat(n.line.paint,{"line-opacity":s}),n}H.exports={convert:r,convertOnSelect:o}}}),Cq=Ye({"src/traces/choroplethmap/plot.js"(X,H){"use strict";var g=Pk().convert,x=Pk().convertOnSelect,A=_g().traceLayerPrefix;function M(t,r){this.type="choroplethmap",this.subplot=t,this.uid=r,this.sourceId="source-"+r,this.layerList=[["fill",A+r+"-fill"],["line",A+r+"-line"]],this.below=null}var e=M.prototype;e.update=function(t){this._update(g(t)),t[0].trace._glTrace=this},e.updateOnSelect=function(t){this._update(x(t))},e._update=function(t){var r=this.subplot,o=this.layerList,a=r.belowLookup["trace-"+this.uid];r.map.getSource(this.sourceId).setData(t.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(t,a),this.below=a);for(var i=0;i<o.length;i++){var n=o[i],s=n[0],c=n[1],h=t[s];r.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&r.setOptions(c,"setPaintProperty",h.paint)}},e._addLayers=function(t,r){for(var o=this.subplot,a=this.layerList,i=this.sourceId,n=0;n<a.length;n++){var s=a[n],c=s[0],h=t[c];o.addLayer({type:c,id:s[1],source:i,layout:h.layout,paint:h.paint},r)}},e._removeLayers=function(){for(var t=this.subplot.map,r=this.layerList,o=r.length-1;o>=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),Lq=Ye({"src/traces/choroplethmap/index.js"(X,H){"use strict";H.exports={attributes:Lk(),supplyDefaults:kq(),colorbar:ag(),calc:sT(),plot:Cq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.updateOnSelect(x)}},getBelow:function(g,x){for(var A=x.getMapLayers(),M=A.length-2;M>=0;M--){var e=A[M].id;if(typeof e=="string"&&e.indexOf("water")===0){for(var t=M+1;t<A.length;t++)if(e=A[t].id,typeof e=="string"&&e.indexOf("plotly-")===-1)return e}}},moduleType:"trace",name:"choroplethmap",basePlotModule:kT(),categories:["map","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_map"}}}}),Pq=Ye({"lib/choroplethmap.js"(X,H){"use strict";H.exports=Lq()}}),Ik=Ye({"src/traces/densitymap/attributes.js"(X,H){"use strict";var g=tu(),x=xs().hovertemplateAttrs,A=Pl(),M=MT(),e=Oo().extendFlat;H.exports=e({lon:M.lon,lat:M.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:M.text,hovertext:M.hovertext,hoverinfo:e({},A.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:x(),showlegend:e({},A.showlegend,{dflt:!1})},g("",{cLetter:"z",editTypeOverride:"calc"}))}}),Iq=Ye({"src/traces/densitymap/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Ik();H.exports=function(e,t,r,o){function a(c,h){return g.coerce(e,t,A,c,h)}var i=a("lon")||[],n=a("lat")||[],s=Math.min(i.length,n.length);if(!s){t.visible=!1;return}t._length=s,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),x(e,t,o,a,{prefix:"",cLetter:"z"})}}}),Rq=Ye({"src/traces/densitymap/calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=jp(),e=ta()._;H.exports=function(r,o){for(var a=o._length,i=new Array(a),n=o.z,s=x(n)&&n.length,c=0;c<a;c++){var h=i[c]={},v=o.lon[c],p=o.lat[c];if(h.lonlat=g(v)&&g(p)?[+v,+p]:[A,A],s){var T=n[c];h.z=g(T)?T:A}}return M(r,o,{vals:s?n:[0,1],containerStr:"",cLetter:"z"}),a&&(i[0].t={labels:{lat:e(r,"lat:")+" ",lon:e(r,"lon:")+" "}}),i}}}),Dq=Ye({"src/traces/densitymap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Su(),e=ks().BADNUM,t=dg().makeBlank;H.exports=function(o){var a=o[0].trace,i=a.visible===!0&&a._length!==0,n={layout:{visibility:"none"},paint:{}},s=a._opts={heatmap:n,geojson:t()};if(!i)return s;var c=[],h,v=a.z,p=a.radius,T=x.isArrayOrTypedArray(v)&&v.length,l=x.isArrayOrTypedArray(p);for(h=0;h<o.length;h++){var _=o[h],w=_.lonlat;if(w[0]!==e){var S={};if(T){var E=_.z;S.z=E!==e?E:0}l&&(S.r=g(p[h])&&p[h]>0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h<b.length;h++)y.push(b[h][0],b[h][1]);var f=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return x.extendFlat(s.heatmap.paint,{"heatmap-weight":T?f:1/(m.max-m.min),"heatmap-color":y,"heatmap-radius":l?{type:"identity",property:"r"}:a.radius,"heatmap-opacity":a.opacity}),s.geojson={type:"FeatureCollection",features:c},s.heatmap.layout.visibility="visible",s}}}),zq=Ye({"src/traces/densitymap/plot.js"(X,H){"use strict";var g=Dq(),x=_g().traceLayerPrefix;function A(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",x+t+"-heatmap"]],this.below=null}var M=A.prototype;M.update=function(e){var t=this.subplot,r=this.layerList,o=g(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(o.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(o,a),this.below=a);for(var i=0;i<r.length;i++){var n=r[i],s=n[0],c=n[1],h=o[s];t.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&t.setOptions(c,"setPaintProperty",h.paint)}},M._addLayers=function(e,t){for(var r=this.subplot,o=this.layerList,a=this.sourceId,i=0;i<o.length;i++){var n=o[i],s=n[0],c=e[s];r.addLayer({type:s,id:n[1],source:a,layout:c.layout,paint:c.paint},t)}},M._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),Fq=Ye({"src/traces/densitymap/hover.js"(X,H){"use strict";var g=Co(),x=ET().hoverPoints,A=ET().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),Oq=Ye({"src/traces/densitymap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),Bq=Ye({"src/traces/densitymap/index.js"(X,H){"use strict";H.exports={attributes:Ik(),supplyDefaults:Iq(),colorbar:ag(),formatLabels:kk(),calc:Rq(),plot:zq(),hoverPoints:Fq(),eventData:Oq(),getBelow:function(g,x){for(var A=x.getMapLayers(),M=0;M<A.length;M++){var e=A[M],t=e.id;if(e.type==="symbol"&&typeof t=="string"&&t.indexOf("plotly-")===-1)return t}},moduleType:"trace",name:"densitymap",basePlotModule:kT(),categories:["map","gl","showLegend"],meta:{hr_name:"density_map"}}}}),Nq=Ye({"lib/densitymap.js"(X,H){"use strict";H.exports=Bq()}}),Rk=Ye({"src/traces/sankey/attributes.js"(X,H){"use strict";var g=Au(),x=Pl(),A=Gf(),M=Yy(),e=Wu().attributes,t=xs().hovertemplateAttrs,r=tu(),o=cl().templatedArray,a=Cc().descriptionOnlyNumbers,i=Oo().extendFlat,n=Ou().overrideAll,s=H.exports=n({hoverinfo:i({},x.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:M.hoverlabel,domain:e({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:a("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:g({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:A.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:M.hoverlabel,hovertemplate:t({},{keys:["value","label"]}),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:A.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:M.hoverlabel,hovertemplate:t({},{keys:["value","label"]}),colorscales:o("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:i(r().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")}}),Uq=Ye({"src/traces/sankey/defaults.js"(X,H){"use strict";var g=ta(),x=Rk(),A=Fn(),M=bh(),e=Wu().defaults,t=S_(),r=cl(),o=up();H.exports=function(n,s,c,h){function v(L,z){return g.coerce(n,s,x,L,z)}var p=g.extendDeep(h.hoverlabel,n.hoverlabel),T=n.node,l=r.newContainer(s,"node");function _(L,z){return g.coerce(T,l,x.node,L,z)}_("label"),_("groups"),_("x"),_("y"),_("pad"),_("thickness"),_("line.color"),_("line.width"),_("hoverinfo",n.hoverinfo),t(T,l,_,p),_("hovertemplate"),_("align");var w=h.colorway,S=function(L){return w[L%w.length]};_("color",l.label.map(function(L,z){return A.addOpacity(S(z),.8)})),_("customdata");var E=n.link||{},m=r.newContainer(s,"link");function b(L,z){return g.coerce(E,m,x.link,L,z)}b("label"),b("arrowlen"),b("source"),b("target"),b("value"),b("line.color"),b("line.width"),b("hoverinfo",n.hoverinfo),t(E,m,b,p),b("hovertemplate");var d=M(h.paper_bgcolor).getLuminance()<.333,u=d?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",y=b("color",u);function f(L){var z=M(L);if(!z.isValid())return L;var F=z.getAlpha();return F<=.8?z.setAlpha(F+.2):z=d?z.brighten():z.darken(),z.toRgbString()}b("hovercolor",Array.isArray(y)?y.map(f):f(y)),b("customdata"),o(E,m,{name:"colorscales",handleItemDefaults:a}),e(s,h,v),v("orientation"),v("valueformat"),v("valuesuffix");var P;l.x.length&&l.y.length&&(P="freeform"),v("arrangement",P),g.coerceFont(v,"textfont",h.font,{autoShadowDflt:!0}),s._length=null};function a(i,n){function s(c,h){return g.coerce(i,n,x.link.colorscales,c,h)}s("label"),s("cmin"),s("cmax"),s("colorscale")}}}),Dk=Ye({"node_modules/strongly-connected-components/scc.js"(X,H){"use strict";H.exports=g;function g(x){for(var A=x.length,M=new Array(A),e=new Array(A),t=new Array(A),r=new Array(A),o=new Array(A),a=new Array(A),i=0;i<A;++i)M[i]=-1,e[i]=0,t[i]=!1,r[i]=0,o[i]=-1,a[i]=[];var n=0,s=[],c=[];function h(l){var _=[l],w=[l];for(M[l]=e[l]=n,t[l]=!0,n+=1;w.length>0;){l=w[w.length-1];var S=x[l];if(r[l]<S.length){for(var E=r[l];E<S.length;++E){var m=S[E];if(M[m]<0){M[m]=e[m]=n,t[m]=!0,n+=1,_.push(m),w.push(m);break}else t[m]&&(e[l]=Math.min(e[l],e[m])|0);o[m]>=0&&a[l].push(o[m])}r[l]=E}else{if(e[l]===M[l]){for(var b=[],d=[],u=0,E=_.length-1;E>=0;--E){var y=_[E];if(t[y]=!1,b.push(y),d.push(a[y]),u+=a[y].length,o[y]=s.length,y===l){_.length=E;break}}s.push(b);for(var f=new Array(u),E=0;E<d.length;E++)for(var P=0;P<d[E].length;P++)f[--u]=d[E][P];c.push(f)}w.pop()}}}for(var i=0;i<A;++i)M[i]<0&&h(i);for(var v,i=0;i<c.length;i++){var p=c[i];if(p.length!==0){p.sort(function(_,w){return _-w}),v=[p[0]];for(var T=1;T<p.length;T++)p[T]!==p[T-1]&&v.push(p[T]);c[i]=v}}return{components:s,adjacencyList:c}}}}),jq=Ye({"src/traces/sankey/calc.js"(X,H){"use strict";var g=Dk(),x=ta(),A=kv().wrap,M=x.isArrayOrTypedArray,e=x.isIndex,t=Su();function r(a){var i=a.node,n=a.link,s=[],c=M(n.color),h=M(n.hovercolor),v=M(n.customdata),p={},T={},l=n.colorscales.length,_;for(_=0;_<l;_++){var w=n.colorscales[_],S=t.extractScale(w,{cLetter:"c"}),E=t.makeColorScaleFunc(S);T[w.label]=E}var m=0;for(_=0;_<n.value.length;_++)n.source[_]>m&&(m=n.source[_]),n.target[_]>m&&(m=n.target[_]);var b=m+1;a.node._count=b;var d,u=a.node.groups,y={};for(_=0;_<u.length;_++){var f=u[_];for(d=0;d<f.length;d++){var P=f[d],L=b+_;y.hasOwnProperty(P)?x.warn("Node "+P+" is already part of a group."):y[P]=L}}var z={source:[],target:[]};for(_=0;_<n.value.length;_++){var F=n.value[_],B=n.source[_],O=n.target[_];if(F>0&&e(B,b)&&e(O,b)&&!(y.hasOwnProperty(B)&&y.hasOwnProperty(O)&&y[B]===y[O])){y.hasOwnProperty(O)&&(O=y[O]),y.hasOwnProperty(B)&&(B=y[B]),B=+B,O=+O,p[B]=p[O]=!0;var I="";n.label&&n.label[_]&&(I=n.label[_]);var N=null;I&&T.hasOwnProperty(I)&&(N=T[I]),s.push({pointNumber:_,label:I,color:c?n.color[_]:n.color,hovercolor:h?n.hovercolor[_]:n.hovercolor,customdata:v?n.customdata[_]:n.customdata,concentrationscale:N,source:B,target:O,value:+F}),z.source.push(B),z.target.push(O)}}var U=b+u.length,W=M(i.color),Q=M(i.customdata),ue=[];for(_=0;_<U;_++)if(p[_]){var se=i.label[_];ue.push({group:_>b-1,childrenNodes:[],pointNumber:_,label:se,color:W?i.color[_]:i.color,customdata:Q?i.customdata[_]:i.customdata})}var he=!1;return o(U,z.source,z.target)&&(he=!0),{circular:he,links:s,nodes:ue,groups:u,groupLookup:y}}function o(a,i,n){for(var s=x.init2dArray(a,0),c=0;c<Math.min(i.length,n.length);c++)if(x.isIndex(i[c],a)&&x.isIndex(n[c],a)){if(i[c]===n[c])return!0;s[i[c]].push(n[c])}var h=g(s);return h.components.some(function(v){return v.length>1})}H.exports=function(i,n){var s=r(n);return A({circular:s.circular,_nodes:s.nodes,_links:s.links,_groups:s.groups,_groupLookup:s.groupLookup})}}}),Vq=Ye({"node_modules/d3-quadtree/dist/d3-quadtree.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){var d=+this._x.call(null,b),u=+this._y.call(null,b);return A(this.cover(d,u),d,u,b)}function A(b,d,u,y){if(isNaN(d)||isNaN(u))return b;var f,P=b._root,L={data:y},z=b._x0,F=b._y0,B=b._x1,O=b._y1,I,N,U,W,Q,ue,se,he;if(!P)return b._root=L,b;for(;P.length;)if((Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N,f=P,!(P=P[se=ue<<1|Q]))return f[se]=L,b;if(U=+b._x.call(null,P.data),W=+b._y.call(null,P.data),d===U&&u===W)return L.next=P,f?f[se]=L:b._root=L,b;do f=f?f[se]=new Array(4):b._root=new Array(4),(Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N;while((se=ue<<1|Q)===(he=(W>=N)<<1|U>=I));return f[he]=P,f[se]=L,b}function M(b){var d,u,y=b.length,f,P,L=new Array(y),z=new Array(y),F=1/0,B=1/0,O=-1/0,I=-1/0;for(u=0;u<y;++u)isNaN(f=+this._x.call(null,d=b[u]))||isNaN(P=+this._y.call(null,d))||(L[u]=f,z[u]=P,f<F&&(F=f),f>O&&(O=f),P<B&&(B=P),P>I&&(I=P));if(F>O||B>I)return this;for(this.cover(F,B).cover(O,I),u=0;u<y;++u)A(this,L[u],z[u],b[u]);return this}function e(b,d){if(isNaN(b=+b)||isNaN(d=+d))return this;var u=this._x0,y=this._y0,f=this._x1,P=this._y1;if(isNaN(u))f=(u=Math.floor(b))+1,P=(y=Math.floor(d))+1;else{for(var L=f-u,z=this._root,F,B;u>b||b>=f||y>d||d>=P;)switch(B=(d<y)<<1|b<u,F=new Array(4),F[B]=z,z=F,L*=2,B){case 0:f=u+L,P=y+L;break;case 1:u=f-L,P=y+L;break;case 2:f=u+L,y=P-L;break;case 3:u=f-L,y=P-L;break}this._root&&this._root.length&&(this._root=z)}return this._x0=u,this._y0=y,this._x1=f,this._y1=P,this}function t(){var b=[];return this.visit(function(d){if(!d.length)do b.push(d.data);while(d=d.next)}),b}function r(b){return arguments.length?this.cover(+b[0][0],+b[0][1]).cover(+b[1][0],+b[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function o(b,d,u,y,f){this.node=b,this.x0=d,this.y0=u,this.x1=y,this.y1=f}function a(b,d,u){var y,f=this._x0,P=this._y0,L,z,F,B,O=this._x1,I=this._y1,N=[],U=this._root,W,Q;for(U&&N.push(new o(U,f,P,O,I)),u==null?u=1/0:(f=b-u,P=d-u,O=b+u,I=d+u,u*=u);W=N.pop();)if(!(!(U=W.node)||(L=W.x0)>O||(z=W.y0)>I||(F=W.x1)<f||(B=W.y1)<P))if(U.length){var ue=(L+F)/2,se=(z+B)/2;N.push(new o(U[3],ue,se,F,B),new o(U[2],L,se,ue,B),new o(U[1],ue,z,F,se),new o(U[0],L,z,ue,se)),(Q=(d>=se)<<1|b>=ue)&&(W=N[N.length-1],N[N.length-1]=N[N.length-1-Q],N[N.length-1-Q]=W)}else{var he=b-+this._x.call(null,U.data),G=d-+this._y.call(null,U.data),$=he*he+G*G;if($<u){var J=Math.sqrt(u=$);f=b-J,P=d-J,O=b+J,I=d+J,y=U.data}}return y}function i(b){if(isNaN(O=+this._x.call(null,b))||isNaN(I=+this._y.call(null,b)))return this;var d,u=this._root,y,f,P,L=this._x0,z=this._y0,F=this._x1,B=this._y1,O,I,N,U,W,Q,ue,se;if(!u)return this;if(u.length)for(;;){if((W=O>=(N=(L+F)/2))?L=N:F=N,(Q=I>=(U=(z+B)/2))?z=U:B=U,d=u,!(u=u[ue=Q<<1|W]))return this;if(!u.length)break;(d[ue+1&3]||d[ue+2&3]||d[ue+3&3])&&(y=d,se=ue)}for(;u.data!==b;)if(f=u,!(u=u.next))return this;return(P=u.next)&&delete u.next,f?(P?f.next=P:delete f.next,this):d?(P?d[ue]=P:delete d[ue],(u=d[0]||d[1]||d[2]||d[3])&&u===(d[3]||d[2]||d[1]||d[0])&&!u.length&&(y?y[se]=u:this._root=u),this):(this._root=P,this)}function n(b){for(var d=0,u=b.length;d<u;++d)this.remove(b[d]);return this}function s(){return this._root}function c(){var b=0;return this.visit(function(d){if(!d.length)do++b;while(d=d.next)}),b}function h(b){var d=[],u,y=this._root,f,P,L,z,F;for(y&&d.push(new o(y,this._x0,this._y0,this._x1,this._y1));u=d.pop();)if(!b(y=u.node,P=u.x0,L=u.y0,z=u.x1,F=u.y1)&&y.length){var B=(P+z)/2,O=(L+F)/2;(f=y[3])&&d.push(new o(f,B,O,z,F)),(f=y[2])&&d.push(new o(f,P,O,B,F)),(f=y[1])&&d.push(new o(f,B,L,z,O)),(f=y[0])&&d.push(new o(f,P,L,B,O))}return this}function v(b){var d=[],u=[],y;for(this._root&&d.push(new o(this._root,this._x0,this._y0,this._x1,this._y1));y=d.pop();){var f=y.node;if(f.length){var P,L=y.x0,z=y.y0,F=y.x1,B=y.y1,O=(L+F)/2,I=(z+B)/2;(P=f[0])&&d.push(new o(P,L,z,O,I)),(P=f[1])&&d.push(new o(P,O,z,F,I)),(P=f[2])&&d.push(new o(P,L,I,O,B)),(P=f[3])&&d.push(new o(P,O,I,F,B))}u.push(y)}for(;y=u.pop();)b(y.node,y.x0,y.y0,y.x1,y.y1);return this}function p(b){return b[0]}function T(b){return arguments.length?(this._x=b,this):this._x}function l(b){return b[1]}function _(b){return arguments.length?(this._y=b,this):this._y}function w(b,d,u){var y=new S(d??p,u??l,NaN,NaN,NaN,NaN);return b==null?y:y.addAll(b)}function S(b,d,u,y,f,P){this._x=b,this._y=d,this._x0=u,this._y0=y,this._x1=f,this._y1=P,this._root=void 0}function E(b){for(var d={data:b.data},u=d;b=b.next;)u=u.next={data:b.data};return d}var m=w.prototype=S.prototype;m.copy=function(){var b=new S(this._x,this._y,this._x0,this._y0,this._x1,this._y1),d=this._root,u,y;if(!d)return b;if(!d.length)return b._root=E(d),b;for(u=[{source:d,target:b._root=new Array(4)}];d=u.pop();)for(var f=0;f<4;++f)(y=d.source[f])&&(y.length?u.push({source:y,target:d.target[f]=new Array(4)}):d.target[f]=E(y));return b},m.add=x,m.addAll=M,m.cover=e,m.data=t,m.extent=r,m.find=a,m.remove=i,m.removeAll=n,m.root=s,m.size=c,m.visit=h,m.visitAfter=v,m.x=T,m.y=_,g.quadtree=w,Object.defineProperty(g,"__esModule",{value:!0})})}}),CT=Ye({"node_modules/d3-collection/dist/d3-collection.js"(X,H){(function(g,x){x(typeof X=="object"&&typeof H<"u"?X:g.d3=g.d3||{})})(X,function(g){"use strict";var x="$";function A(){}A.prototype=M.prototype={constructor:A,has:function(p){return x+p in this},get:function(p){return this[x+p]},set:function(p,T){return this[x+p]=T,this},remove:function(p){var T=x+p;return T in this&&delete this[T]},clear:function(){for(var p in this)p[0]===x&&delete this[p]},keys:function(){var p=[];for(var T in this)T[0]===x&&p.push(T.slice(1));return p},values:function(){var p=[];for(var T in this)T[0]===x&&p.push(this[T]);return p},entries:function(){var p=[];for(var T in this)T[0]===x&&p.push({key:T.slice(1),value:this[T]});return p},size:function(){var p=0;for(var T in this)T[0]===x&&++p;return p},empty:function(){for(var p in this)if(p[0]===x)return!1;return!0},each:function(p){for(var T in this)T[0]===x&&p(this[T],T.slice(1),this)}};function M(p,T){var l=new A;if(p instanceof A)p.each(function(m,b){l.set(b,m)});else if(Array.isArray(p)){var _=-1,w=p.length,S;if(T==null)for(;++_<w;)l.set(_,p[_]);else for(;++_<w;)l.set(T(S=p[_],_,p),S)}else if(p)for(var E in p)l.set(E,p[E]);return l}function e(){var p=[],T=[],l,_,w;function S(m,b,d,u){if(b>=p.length)return l!=null&&m.sort(l),_!=null?_(m):m;for(var y=-1,f=m.length,P=p[b++],L,z,F=M(),B,O=d();++y<f;)(B=F.get(L=P(z=m[y])+""))?B.push(z):F.set(L,[z]);return F.each(function(I,N){u(O,N,S(I,b,d,u))}),O}function E(m,b){if(++b>p.length)return m;var d,u=T[b-1];return _!=null&&b>=p.length?d=m.entries():(d=[],m.each(function(y,f){d.push({key:f,values:E(y,b)})})),u!=null?d.sort(function(y,f){return u(y.key,f.key)}):d}return w={object:function(m){return S(m,0,t,r)},map:function(m){return S(m,0,o,a)},entries:function(m){return E(S(m,0,o,a),0)},key:function(m){return p.push(m),w},sortKeys:function(m){return T[p.length-1]=m,w},sortValues:function(m){return l=m,w},rollup:function(m){return _=m,w}}}function t(){return{}}function r(p,T,l){p[T]=l}function o(){return M()}function a(p,T,l){p.set(T,l)}function i(){}var n=M.prototype;i.prototype=s.prototype={constructor:i,has:n.has,add:function(p){return p+="",this[x+p]=p,this},remove:n.remove,clear:n.clear,values:n.keys,size:n.size,empty:n.empty,each:n.each};function s(p,T){var l=new i;if(p instanceof i)p.each(function(S){l.add(S)});else if(p){var _=-1,w=p.length;if(T==null)for(;++_<w;)l.add(p[_]);else for(;++_<w;)l.add(T(p[_],_,p))}return l}function c(p){var T=[];for(var l in p)T.push(l);return T}function h(p){var T=[];for(var l in p)T.push(p[l]);return T}function v(p){var T=[];for(var l in p)T.push({key:l,value:p[l]});return T}g.nest=e,g.set=s,g.map=M,g.keys=c,g.values=h,g.entries=v,Object.defineProperty(g,"__esModule",{value:!0})})}}),qq=Ye({"node_modules/d3-dispatch/dist/d3-dispatch.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x={value:function(){}};function A(){for(var o=0,a=arguments.length,i={},n;o<a;++o){if(!(n=arguments[o]+"")||n in i||/[\s.]/.test(n))throw new Error("illegal type: "+n);i[n]=[]}return new M(i)}function M(o){this._=o}function e(o,a){return o.trim().split(/^|\s+/).map(function(i){var n="",s=i.indexOf(".");if(s>=0&&(n=i.slice(s+1),i=i.slice(0,s)),i&&!a.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:n}})}M.prototype=A.prototype={constructor:M,on:function(o,a){var i=this._,n=e(o+"",i),s,c=-1,h=n.length;if(arguments.length<2){for(;++c<h;)if((s=(o=n[c]).type)&&(s=t(i[s],o.name)))return s;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++c<h;)if(s=(o=n[c]).type)i[s]=r(i[s],o.name,a);else if(a==null)for(s in i)i[s]=r(i[s],o.name,null);return this},copy:function(){var o={},a=this._;for(var i in a)o[i]=a[i].slice();return new M(o)},call:function(o,a){if((s=arguments.length-2)>0)for(var i=new Array(s),n=0,s,c;n<s;++n)i[n]=arguments[n+2];if(!this._.hasOwnProperty(o))throw new Error("unknown type: "+o);for(c=this._[o],n=0,s=c.length;n<s;++n)c[n].value.apply(a,i)},apply:function(o,a,i){if(!this._.hasOwnProperty(o))throw new Error("unknown type: "+o);for(var n=this._[o],s=0,c=n.length;s<c;++s)n[s].value.apply(a,i)}};function t(o,a){for(var i=0,n=o.length,s;i<n;++i)if((s=o[i]).name===a)return s.value}function r(o,a,i){for(var n=0,s=o.length;n<s;++n)if(o[n].name===a){o[n]=x,o=o.slice(0,n).concat(o.slice(n+1));break}return i!=null&&o.push({name:a,value:i}),o}g.dispatch=A,Object.defineProperty(g,"__esModule",{value:!0})})}}),Hq=Ye({"node_modules/d3-timer/dist/d3-timer.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=0,A=0,M=0,e=1e3,t,r,o=0,a=0,i=0,n=typeof performance=="object"&&performance.now?performance:Date,s=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(b){setTimeout(b,17)};function c(){return a||(s(h),a=n.now()+i)}function h(){a=0}function v(){this._call=this._time=this._next=null}v.prototype=p.prototype={constructor:v,restart:function(b,d,u){if(typeof b!="function")throw new TypeError("callback is not a function");u=(u==null?c():+u)+(d==null?0:+d),!this._next&&r!==this&&(r?r._next=this:t=this,r=this),this._call=b,this._time=u,S()},stop:function(){this._call&&(this._call=null,this._time=1/0,S())}};function p(b,d,u){var y=new v;return y.restart(b,d,u),y}function T(){c(),++x;for(var b=t,d;b;)(d=a-b._time)>=0&&b._call.call(null,d),b=b._next;--x}function l(){a=(o=n.now())+i,x=A=0;try{T()}finally{x=0,w(),a=0}}function _(){var b=n.now(),d=b-o;d>e&&(i-=d,o=b)}function w(){for(var b,d=t,u,y=1/0;d;)d._call?(y>d._time&&(y=d._time),b=d,d=d._next):(u=d._next,d._next=null,d=b?b._next=u:t=u);r=b,S(y)}function S(b){if(!x){A&&(A=clearTimeout(A));var d=b-a;d>24?(b<1/0&&(A=setTimeout(l,b-n.now()-i)),M&&(M=clearInterval(M))):(M||(o=n.now(),M=setInterval(_,e)),x=1,s(l))}}function E(b,d,u){var y=new v;return d=d==null?0:+d,y.restart(function(f){y.stop(),b(f+d)},d,u),y}function m(b,d,u){var y=new v,f=d;return d==null?(y.restart(b,d,u),y):(d=+d,u=u==null?c():+u,y.restart(function P(L){L+=f,y.restart(P,f+=d,u),b(L)},d,u),y)}g.interval=m,g.now=c,g.timeout=E,g.timer=p,g.timerFlush=T,Object.defineProperty(g,"__esModule",{value:!0})})}}),Gq=Ye({"node_modules/d3-force/dist/d3-force.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Vq(),CT(),qq(),Hq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,g.d3)})(X,function(g,x,A,M,e){"use strict";function t(b,d){var u;b==null&&(b=0),d==null&&(d=0);function y(){var f,P=u.length,L,z=0,F=0;for(f=0;f<P;++f)L=u[f],z+=L.x,F+=L.y;for(z=z/P-b,F=F/P-d,f=0;f<P;++f)L=u[f],L.x-=z,L.y-=F}return y.initialize=function(f){u=f},y.x=function(f){return arguments.length?(b=+f,y):b},y.y=function(f){return arguments.length?(d=+f,y):d},y}function r(b){return function(){return b}}function o(){return(Math.random()-.5)*1e-6}function a(b){return b.x+b.vx}function i(b){return b.y+b.vy}function n(b){var d,u,y=1,f=1;typeof b!="function"&&(b=r(b==null?1:+b));function P(){for(var F,B=d.length,O,I,N,U,W,Q,ue=0;ue<f;++ue)for(O=x.quadtree(d,a,i).visitAfter(L),F=0;F<B;++F)I=d[F],W=u[I.index],Q=W*W,N=I.x+I.vx,U=I.y+I.vy,O.visit(se);function se(he,G,$,J,Z){var re=he.data,ne=he.r,j=W+ne;if(re){if(re.index>I.index){var ee=N-re.x-re.vx,ie=U-re.y-re.vy,fe=ee*ee+ie*ie;fe<j*j&&(ee===0&&(ee=o(),fe+=ee*ee),ie===0&&(ie=o(),fe+=ie*ie),fe=(j-(fe=Math.sqrt(fe)))/fe*y,I.vx+=(ee*=fe)*(j=(ne*=ne)/(Q+ne)),I.vy+=(ie*=fe)*j,re.vx-=ee*(j=1-j),re.vy-=ie*j)}return}return G>N+j||J<N-j||$>U+j||Z<U-j}}function L(F){if(F.data)return F.r=u[F.data.index];for(var B=F.r=0;B<4;++B)F[B]&&F[B].r>F.r&&(F.r=F[B].r)}function z(){if(d){var F,B=d.length,O;for(u=new Array(B),F=0;F<B;++F)O=d[F],u[O.index]=+b(O,F,d)}}return P.initialize=function(F){d=F,z()},P.iterations=function(F){return arguments.length?(f=+F,P):f},P.strength=function(F){return arguments.length?(y=+F,P):y},P.radius=function(F){return arguments.length?(b=typeof F=="function"?F:r(+F),z(),P):b},P}function s(b){return b.index}function c(b,d){var u=b.get(d);if(!u)throw new Error("missing: "+d);return u}function h(b){var d=s,u=O,y,f=r(30),P,L,z,F,B=1;b==null&&(b=[]);function O(Q){return 1/Math.min(z[Q.source.index],z[Q.target.index])}function I(Q){for(var ue=0,se=b.length;ue<B;++ue)for(var he=0,G,$,J,Z,re,ne,j;he<se;++he)G=b[he],$=G.source,J=G.target,Z=J.x+J.vx-$.x-$.vx||o(),re=J.y+J.vy-$.y-$.vy||o(),ne=Math.sqrt(Z*Z+re*re),ne=(ne-P[he])/ne*Q*y[he],Z*=ne,re*=ne,J.vx-=Z*(j=F[he]),J.vy-=re*j,$.vx+=Z*(j=1-j),$.vy+=re*j}function N(){if(L){var Q,ue=L.length,se=b.length,he=A.map(L,d),G;for(Q=0,z=new Array(ue);Q<se;++Q)G=b[Q],G.index=Q,typeof G.source!="object"&&(G.source=c(he,G.source)),typeof G.target!="object"&&(G.target=c(he,G.target)),z[G.source.index]=(z[G.source.index]||0)+1,z[G.target.index]=(z[G.target.index]||0)+1;for(Q=0,F=new Array(se);Q<se;++Q)G=b[Q],F[Q]=z[G.source.index]/(z[G.source.index]+z[G.target.index]);y=new Array(se),U(),P=new Array(se),W()}}function U(){if(L)for(var Q=0,ue=b.length;Q<ue;++Q)y[Q]=+u(b[Q],Q,b)}function W(){if(L)for(var Q=0,ue=b.length;Q<ue;++Q)P[Q]=+f(b[Q],Q,b)}return I.initialize=function(Q){L=Q,N()},I.links=function(Q){return arguments.length?(b=Q,N(),I):b},I.id=function(Q){return arguments.length?(d=Q,I):d},I.iterations=function(Q){return arguments.length?(B=+Q,I):B},I.strength=function(Q){return arguments.length?(u=typeof Q=="function"?Q:r(+Q),U(),I):u},I.distance=function(Q){return arguments.length?(f=typeof Q=="function"?Q:r(+Q),W(),I):f},I}function v(b){return b.x}function p(b){return b.y}var T=10,l=Math.PI*(3-Math.sqrt(5));function _(b){var d,u=1,y=.001,f=1-Math.pow(y,1/300),P=0,L=.6,z=A.map(),F=e.timer(O),B=M.dispatch("tick","end");b==null&&(b=[]);function O(){I(),B.call("tick",d),u<y&&(F.stop(),B.call("end",d))}function I(W){var Q,ue=b.length,se;W===void 0&&(W=1);for(var he=0;he<W;++he)for(u+=(P-u)*f,z.each(function(G){G(u)}),Q=0;Q<ue;++Q)se=b[Q],se.fx==null?se.x+=se.vx*=L:(se.x=se.fx,se.vx=0),se.fy==null?se.y+=se.vy*=L:(se.y=se.fy,se.vy=0);return d}function N(){for(var W=0,Q=b.length,ue;W<Q;++W){if(ue=b[W],ue.index=W,ue.fx!=null&&(ue.x=ue.fx),ue.fy!=null&&(ue.y=ue.fy),isNaN(ue.x)||isNaN(ue.y)){var se=T*Math.sqrt(W),he=W*l;ue.x=se*Math.cos(he),ue.y=se*Math.sin(he)}(isNaN(ue.vx)||isNaN(ue.vy))&&(ue.vx=ue.vy=0)}}function U(W){return W.initialize&&W.initialize(b),W}return N(),d={tick:I,restart:function(){return F.restart(O),d},stop:function(){return F.stop(),d},nodes:function(W){return arguments.length?(b=W,N(),z.each(U),d):b},alpha:function(W){return arguments.length?(u=+W,d):u},alphaMin:function(W){return arguments.length?(y=+W,d):y},alphaDecay:function(W){return arguments.length?(f=+W,d):+f},alphaTarget:function(W){return arguments.length?(P=+W,d):P},velocityDecay:function(W){return arguments.length?(L=1-W,d):1-L},force:function(W,Q){return arguments.length>1?(Q==null?z.remove(W):z.set(W,U(Q)),d):z.get(W)},find:function(W,Q,ue){var se=0,he=b.length,G,$,J,Z,re;for(ue==null?ue=1/0:ue*=ue,se=0;se<he;++se)Z=b[se],G=W-Z.x,$=Q-Z.y,J=G*G+$*$,J<ue&&(re=Z,ue=J);return re},on:function(W,Q){return arguments.length>1?(B.on(W,Q),d):B.on(W)}}}function w(){var b,d,u,y=r(-30),f,P=1,L=1/0,z=.81;function F(N){var U,W=b.length,Q=x.quadtree(b,v,p).visitAfter(O);for(u=N,U=0;U<W;++U)d=b[U],Q.visit(I)}function B(){if(b){var N,U=b.length,W;for(f=new Array(U),N=0;N<U;++N)W=b[N],f[W.index]=+y(W,N,b)}}function O(N){var U=0,W,Q,ue=0,se,he,G;if(N.length){for(se=he=G=0;G<4;++G)(W=N[G])&&(Q=Math.abs(W.value))&&(U+=W.value,ue+=Q,se+=Q*W.x,he+=Q*W.y);N.x=se/ue,N.y=he/ue}else{W=N,W.x=W.data.x,W.y=W.data.y;do U+=f[W.data.index];while(W=W.next)}N.value=U}function I(N,U,W,Q){if(!N.value)return!0;var ue=N.x-d.x,se=N.y-d.y,he=Q-U,G=ue*ue+se*se;if(he*he/z<G)return G<L&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),G<P&&(G=Math.sqrt(P*G)),d.vx+=ue*N.value*u/G,d.vy+=se*N.value*u/G),!0;if(N.length||G>=L)return;(N.data!==d||N.next)&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),G<P&&(G=Math.sqrt(P*G)));do N.data!==d&&(he=f[N.data.index]*u/G,d.vx+=ue*he,d.vy+=se*he);while(N=N.next)}return F.initialize=function(N){b=N,B()},F.strength=function(N){return arguments.length?(y=typeof N=="function"?N:r(+N),B(),F):y},F.distanceMin=function(N){return arguments.length?(P=N*N,F):Math.sqrt(P)},F.distanceMax=function(N){return arguments.length?(L=N*N,F):Math.sqrt(L)},F.theta=function(N){return arguments.length?(z=N*N,F):Math.sqrt(z)},F}function S(b,d,u){var y,f=r(.1),P,L;typeof b!="function"&&(b=r(+b)),d==null&&(d=0),u==null&&(u=0);function z(B){for(var O=0,I=y.length;O<I;++O){var N=y[O],U=N.x-d||1e-6,W=N.y-u||1e-6,Q=Math.sqrt(U*U+W*W),ue=(L[O]-Q)*P[O]*B/Q;N.vx+=U*ue,N.vy+=W*ue}}function F(){if(y){var B,O=y.length;for(P=new Array(O),L=new Array(O),B=0;B<O;++B)L[B]=+b(y[B],B,y),P[B]=isNaN(L[B])?0:+f(y[B],B,y)}}return z.initialize=function(B){y=B,F()},z.strength=function(B){return arguments.length?(f=typeof B=="function"?B:r(+B),F(),z):f},z.radius=function(B){return arguments.length?(b=typeof B=="function"?B:r(+B),F(),z):b},z.x=function(B){return arguments.length?(d=+B,z):d},z.y=function(B){return arguments.length?(u=+B,z):u},z}function E(b){var d=r(.1),u,y,f;typeof b!="function"&&(b=r(b==null?0:+b));function P(z){for(var F=0,B=u.length,O;F<B;++F)O=u[F],O.vx+=(f[F]-O.x)*y[F]*z}function L(){if(u){var z,F=u.length;for(y=new Array(F),f=new Array(F),z=0;z<F;++z)y[z]=isNaN(f[z]=+b(u[z],z,u))?0:+d(u[z],z,u)}}return P.initialize=function(z){u=z,L()},P.strength=function(z){return arguments.length?(d=typeof z=="function"?z:r(+z),L(),P):d},P.x=function(z){return arguments.length?(b=typeof z=="function"?z:r(+z),L(),P):b},P}function m(b){var d=r(.1),u,y,f;typeof b!="function"&&(b=r(b==null?0:+b));function P(z){for(var F=0,B=u.length,O;F<B;++F)O=u[F],O.vy+=(f[F]-O.y)*y[F]*z}function L(){if(u){var z,F=u.length;for(y=new Array(F),f=new Array(F),z=0;z<F;++z)y[z]=isNaN(f[z]=+b(u[z],z,u))?0:+d(u[z],z,u)}}return P.initialize=function(z){u=z,L()},P.strength=function(z){return arguments.length?(d=typeof z=="function"?z:r(+z),L(),P):d},P.y=function(z){return arguments.length?(b=typeof z=="function"?z:r(+z),L(),P):b},P}g.forceCenter=t,g.forceCollide=n,g.forceLink=h,g.forceManyBody=w,g.forceRadial=S,g.forceSimulation=_,g.forceX=E,g.forceY=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),Wq=Ye({"node_modules/d3-path/dist/d3-path.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=Math.PI,A=2*x,M=1e-6,e=A-M;function t(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function r(){return new t}t.prototype=r.prototype={constructor:t,moveTo:function(o,a){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(o,a){this._+="L"+(this._x1=+o)+","+(this._y1=+a)},quadraticCurveTo:function(o,a,i,n){this._+="Q"+ +o+","+ +a+","+(this._x1=+i)+","+(this._y1=+n)},bezierCurveTo:function(o,a,i,n,s,c){this._+="C"+ +o+","+ +a+","+ +i+","+ +n+","+(this._x1=+s)+","+(this._y1=+c)},arcTo:function(o,a,i,n,s){o=+o,a=+a,i=+i,n=+n,s=+s;var c=this._x1,h=this._y1,v=i-o,p=n-a,T=c-o,l=h-a,_=T*T+l*l;if(s<0)throw new Error("negative radius: "+s);if(this._x1===null)this._+="M"+(this._x1=o)+","+(this._y1=a);else if(_>M)if(!(Math.abs(l*v-p*T)>M)||!s)this._+="L"+(this._x1=o)+","+(this._y1=a);else{var w=i-c,S=n-h,E=v*v+p*p,m=w*w+S*S,b=Math.sqrt(E),d=Math.sqrt(_),u=s*Math.tan((x-Math.acos((E+_-m)/(2*b*d)))/2),y=u/d,f=u/b;Math.abs(y-1)>M&&(this._+="L"+(o+y*T)+","+(a+y*l)),this._+="A"+s+","+s+",0,0,"+ +(l*w>T*S)+","+(this._x1=o+f*v)+","+(this._y1=a+f*p)}},arc:function(o,a,i,n,s,c){o=+o,a=+a,i=+i,c=!!c;var h=i*Math.cos(n),v=i*Math.sin(n),p=o+h,T=a+v,l=1^c,_=c?n-s:s-n;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+p+","+T:(Math.abs(this._x1-p)>M||Math.abs(this._y1-T)>M)&&(this._+="L"+p+","+T),i&&(_<0&&(_=_%A+A),_>e?this._+="A"+i+","+i+",0,1,"+l+","+(o-h)+","+(a-v)+"A"+i+","+i+",0,1,"+l+","+(this._x1=p)+","+(this._y1=T):_>M&&(this._+="A"+i+","+i+",0,"+ +(_>=x)+","+l+","+(this._x1=o+i*Math.cos(s))+","+(this._y1=a+i*Math.sin(s))))},rect:function(o,a,i,n){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)+"h"+ +i+"v"+ +n+"h"+-i+"Z"},toString:function(){return this._}},g.path=r,Object.defineProperty(g,"__esModule",{value:!0})})}}),zk=Ye({"node_modules/d3-shape/dist/d3-shape.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Wq()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(kt){return function(){return kt}}var M=Math.abs,e=Math.atan2,t=Math.cos,r=Math.max,o=Math.min,a=Math.sin,i=Math.sqrt,n=1e-12,s=Math.PI,c=s/2,h=2*s;function v(kt){return kt>1?0:kt<-1?s:Math.acos(kt)}function p(kt){return kt>=1?c:kt<=-1?-c:Math.asin(kt)}function T(kt){return kt.innerRadius}function l(kt){return kt.outerRadius}function _(kt){return kt.startAngle}function w(kt){return kt.endAngle}function S(kt){return kt&&kt.padAngle}function E(kt,ir,mr,$r,ma,Ba,Ca,da){var Sa=mr-kt,Ti=$r-ir,ai=Ca-ma,an=da-Ba,sn=an*Sa-ai*Ti;if(!(sn*sn<n))return sn=(ai*(ir-Ba)-an*(kt-ma))/sn,[kt+sn*Sa,ir+sn*Ti]}function m(kt,ir,mr,$r,ma,Ba,Ca){var da=kt-mr,Sa=ir-$r,Ti=(Ca?Ba:-Ba)/i(da*da+Sa*Sa),ai=Ti*Sa,an=-Ti*da,sn=kt+ai,Mn=ir+an,On=mr+ai,$n=$r+an,Cn=(sn+On)/2,Lo=(Mn+$n)/2,Xi=On-sn,Jo=$n-Mn,zo=Xi*Xi+Jo*Jo,as=ma-Ba,Pn=sn*$n-On*Mn,go=(Jo<0?-1:1)*i(r(0,as*as*zo-Pn*Pn)),In=(Pn*Jo-Xi*go)/zo,Do=(-Pn*Xi-Jo*go)/zo,Ho=(Pn*Jo+Xi*go)/zo,Qo=(-Pn*Xi+Jo*go)/zo,Xn=In-Cn,po=Do-Lo,ys=Ho-Cn,Is=Qo-Lo;return Xn*Xn+po*po>ys*ys+Is*Is&&(In=Ho,Do=Qo),{cx:In,cy:Do,x01:-ai,y01:-an,x11:In*(ma/as-1),y11:Do*(ma/as-1)}}function b(){var kt=T,ir=l,mr=A(0),$r=null,ma=_,Ba=w,Ca=S,da=null;function Sa(){var Ti,ai,an=+kt.apply(this,arguments),sn=+ir.apply(this,arguments),Mn=ma.apply(this,arguments)-c,On=Ba.apply(this,arguments)-c,$n=M(On-Mn),Cn=On>Mn;if(da||(da=Ti=x.path()),sn<an&&(ai=sn,sn=an,an=ai),!(sn>n))da.moveTo(0,0);else if($n>h-n)da.moveTo(sn*t(Mn),sn*a(Mn)),da.arc(0,0,sn,Mn,On,!Cn),an>n&&(da.moveTo(an*t(On),an*a(On)),da.arc(0,0,an,On,Mn,Cn));else{var Lo=Mn,Xi=On,Jo=Mn,zo=On,as=$n,Pn=$n,go=Ca.apply(this,arguments)/2,In=go>n&&($r?+$r.apply(this,arguments):i(an*an+sn*sn)),Do=o(M(sn-an)/2,+mr.apply(this,arguments)),Ho=Do,Qo=Do,Xn,po;if(In>n){var ys=p(In/an*a(go)),Is=p(In/sn*a(go));(as-=ys*2)>n?(ys*=Cn?1:-1,Jo+=ys,zo-=ys):(as=0,Jo=zo=(Mn+On)/2),(Pn-=Is*2)>n?(Is*=Cn?1:-1,Lo+=Is,Xi-=Is):(Pn=0,Lo=Xi=(Mn+On)/2)}var Fs=sn*t(Lo),$o=sn*a(Lo),fi=an*t(zo),mn=an*a(zo);if(Do>n){var ol=sn*t(Xi),Os=sn*a(Xi),so=an*t(Jo),Ns=an*a(Jo),fs;if($n<s&&(fs=E(Fs,$o,so,Ns,ol,Os,fi,mn))){var al=Fs-fs[0],vl=$o-fs[1],ji=ol-fs[0],To=Os-fs[1],Yn=1/a(v((al*ji+vl*To)/(i(al*al+vl*vl)*i(ji*ji+To*To)))/2),_s=i(fs[0]*fs[0]+fs[1]*fs[1]);Ho=o(Do,(an-_s)/(Yn-1)),Qo=o(Do,(sn-_s)/(Yn+1))}}Pn>n?Qo>n?(Xn=m(so,Ns,Fs,$o,sn,Qo,Cn),po=m(ol,Os,fi,mn,sn,Qo,Cn),da.moveTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Qo<Do?da.arc(Xn.cx,Xn.cy,Qo,e(Xn.y01,Xn.x01),e(po.y01,po.x01),!Cn):(da.arc(Xn.cx,Xn.cy,Qo,e(Xn.y01,Xn.x01),e(Xn.y11,Xn.x11),!Cn),da.arc(0,0,sn,e(Xn.cy+Xn.y11,Xn.cx+Xn.x11),e(po.cy+po.y11,po.cx+po.x11),!Cn),da.arc(po.cx,po.cy,Qo,e(po.y11,po.x11),e(po.y01,po.x01),!Cn))):(da.moveTo(Fs,$o),da.arc(0,0,sn,Lo,Xi,!Cn)):da.moveTo(Fs,$o),!(an>n)||!(as>n)?da.lineTo(fi,mn):Ho>n?(Xn=m(fi,mn,ol,Os,an,-Ho,Cn),po=m(Fs,$o,so,Ns,an,-Ho,Cn),da.lineTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Ho<Do?da.arc(Xn.cx,Xn.cy,Ho,e(Xn.y01,Xn.x01),e(po.y01,po.x01),!Cn):(da.arc(Xn.cx,Xn.cy,Ho,e(Xn.y01,Xn.x01),e(Xn.y11,Xn.x11),!Cn),da.arc(0,0,an,e(Xn.cy+Xn.y11,Xn.cx+Xn.x11),e(po.cy+po.y11,po.cx+po.x11),Cn),da.arc(po.cx,po.cy,Ho,e(po.y11,po.x11),e(po.y01,po.x01),!Cn))):da.arc(0,0,an,zo,Jo,Cn)}if(da.closePath(),Ti)return da=null,Ti+""||null}return Sa.centroid=function(){var Ti=(+kt.apply(this,arguments)+ +ir.apply(this,arguments))/2,ai=(+ma.apply(this,arguments)+ +Ba.apply(this,arguments))/2-s/2;return[t(ai)*Ti,a(ai)*Ti]},Sa.innerRadius=function(Ti){return arguments.length?(kt=typeof Ti=="function"?Ti:A(+Ti),Sa):kt},Sa.outerRadius=function(Ti){return arguments.length?(ir=typeof Ti=="function"?Ti:A(+Ti),Sa):ir},Sa.cornerRadius=function(Ti){return arguments.length?(mr=typeof Ti=="function"?Ti:A(+Ti),Sa):mr},Sa.padRadius=function(Ti){return arguments.length?($r=Ti==null?null:typeof Ti=="function"?Ti:A(+Ti),Sa):$r},Sa.startAngle=function(Ti){return arguments.length?(ma=typeof Ti=="function"?Ti:A(+Ti),Sa):ma},Sa.endAngle=function(Ti){return arguments.length?(Ba=typeof Ti=="function"?Ti:A(+Ti),Sa):Ba},Sa.padAngle=function(Ti){return arguments.length?(Ca=typeof Ti=="function"?Ti:A(+Ti),Sa):Ca},Sa.context=function(Ti){return arguments.length?(da=Ti??null,Sa):da},Sa}function d(kt){this._context=kt}d.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:this._context.lineTo(kt,ir);break}}};function u(kt){return new d(kt)}function y(kt){return kt[0]}function f(kt){return kt[1]}function P(){var kt=y,ir=f,mr=A(!0),$r=null,ma=u,Ba=null;function Ca(da){var Sa,Ti=da.length,ai,an=!1,sn;for($r==null&&(Ba=ma(sn=x.path())),Sa=0;Sa<=Ti;++Sa)!(Sa<Ti&&mr(ai=da[Sa],Sa,da))===an&&((an=!an)?Ba.lineStart():Ba.lineEnd()),an&&Ba.point(+kt(ai,Sa,da),+ir(ai,Sa,da));if(sn)return Ba=null,sn+""||null}return Ca.x=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.y=function(da){return arguments.length?(ir=typeof da=="function"?da:A(+da),Ca):ir},Ca.defined=function(da){return arguments.length?(mr=typeof da=="function"?da:A(!!da),Ca):mr},Ca.curve=function(da){return arguments.length?(ma=da,$r!=null&&(Ba=ma($r)),Ca):ma},Ca.context=function(da){return arguments.length?(da==null?$r=Ba=null:Ba=ma($r=da),Ca):$r},Ca}function L(){var kt=y,ir=null,mr=A(0),$r=f,ma=A(!0),Ba=null,Ca=u,da=null;function Sa(ai){var an,sn,Mn,On=ai.length,$n,Cn=!1,Lo,Xi=new Array(On),Jo=new Array(On);for(Ba==null&&(da=Ca(Lo=x.path())),an=0;an<=On;++an){if(!(an<On&&ma($n=ai[an],an,ai))===Cn)if(Cn=!Cn)sn=an,da.areaStart(),da.lineStart();else{for(da.lineEnd(),da.lineStart(),Mn=an-1;Mn>=sn;--Mn)da.point(Xi[Mn],Jo[Mn]);da.lineEnd(),da.areaEnd()}Cn&&(Xi[an]=+kt($n,an,ai),Jo[an]=+mr($n,an,ai),da.point(ir?+ir($n,an,ai):Xi[an],$r?+$r($n,an,ai):Jo[an]))}if(Lo)return da=null,Lo+""||null}function Ti(){return P().defined(ma).curve(Ca).context(Ba)}return Sa.x=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),ir=null,Sa):kt},Sa.x0=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),Sa):kt},Sa.x1=function(ai){return arguments.length?(ir=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):ir},Sa.y=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),$r=null,Sa):mr},Sa.y0=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),Sa):mr},Sa.y1=function(ai){return arguments.length?($r=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):$r},Sa.lineX0=Sa.lineY0=function(){return Ti().x(kt).y(mr)},Sa.lineY1=function(){return Ti().x(kt).y($r)},Sa.lineX1=function(){return Ti().x(ir).y(mr)},Sa.defined=function(ai){return arguments.length?(ma=typeof ai=="function"?ai:A(!!ai),Sa):ma},Sa.curve=function(ai){return arguments.length?(Ca=ai,Ba!=null&&(da=Ca(Ba)),Sa):Ca},Sa.context=function(ai){return arguments.length?(ai==null?Ba=da=null:da=Ca(Ba=ai),Sa):Ba},Sa}function z(kt,ir){return ir<kt?-1:ir>kt?1:ir>=kt?0:NaN}function F(kt){return kt}function B(){var kt=F,ir=z,mr=null,$r=A(0),ma=A(h),Ba=A(0);function Ca(da){var Sa,Ti=da.length,ai,an,sn=0,Mn=new Array(Ti),On=new Array(Ti),$n=+$r.apply(this,arguments),Cn=Math.min(h,Math.max(-h,ma.apply(this,arguments)-$n)),Lo,Xi=Math.min(Math.abs(Cn)/Ti,Ba.apply(this,arguments)),Jo=Xi*(Cn<0?-1:1),zo;for(Sa=0;Sa<Ti;++Sa)(zo=On[Mn[Sa]=Sa]=+kt(da[Sa],Sa,da))>0&&(sn+=zo);for(ir!=null?Mn.sort(function(as,Pn){return ir(On[as],On[Pn])}):mr!=null&&Mn.sort(function(as,Pn){return mr(da[as],da[Pn])}),Sa=0,an=sn?(Cn-Ti*Jo)/sn:0;Sa<Ti;++Sa,$n=Lo)ai=Mn[Sa],zo=On[ai],Lo=$n+(zo>0?zo*an:0)+Jo,On[ai]={data:da[ai],index:Sa,value:zo,startAngle:$n,endAngle:Lo,padAngle:Xi};return On}return Ca.value=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.sortValues=function(da){return arguments.length?(ir=da,mr=null,Ca):ir},Ca.sort=function(da){return arguments.length?(mr=da,ir=null,Ca):mr},Ca.startAngle=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.endAngle=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.padAngle=function(da){return arguments.length?(Ba=typeof da=="function"?da:A(+da),Ca):Ba},Ca}var O=N(u);function I(kt){this._curve=kt}I.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(kt,ir){this._curve.point(ir*Math.sin(kt),ir*-Math.cos(kt))}};function N(kt){function ir(mr){return new I(kt(mr))}return ir._curve=kt,ir}function U(kt){var ir=kt.curve;return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt.curve=function(mr){return arguments.length?ir(N(mr)):ir()._curve},kt}function W(){return U(P().curve(O))}function Q(){var kt=L().curve(O),ir=kt.curve,mr=kt.lineX0,$r=kt.lineX1,ma=kt.lineY0,Ba=kt.lineY1;return kt.angle=kt.x,delete kt.x,kt.startAngle=kt.x0,delete kt.x0,kt.endAngle=kt.x1,delete kt.x1,kt.radius=kt.y,delete kt.y,kt.innerRadius=kt.y0,delete kt.y0,kt.outerRadius=kt.y1,delete kt.y1,kt.lineStartAngle=function(){return U(mr())},delete kt.lineX0,kt.lineEndAngle=function(){return U($r())},delete kt.lineX1,kt.lineInnerRadius=function(){return U(ma())},delete kt.lineY0,kt.lineOuterRadius=function(){return U(Ba())},delete kt.lineY1,kt.curve=function(Ca){return arguments.length?ir(N(Ca)):ir()._curve},kt}function ue(kt,ir){return[(ir=+ir)*Math.cos(kt-=Math.PI/2),ir*Math.sin(kt)]}var se=Array.prototype.slice;function he(kt){return kt.source}function G(kt){return kt.target}function $(kt){var ir=he,mr=G,$r=y,ma=f,Ba=null;function Ca(){var da,Sa=se.call(arguments),Ti=ir.apply(this,Sa),ai=mr.apply(this,Sa);if(Ba||(Ba=da=x.path()),kt(Ba,+$r.apply(this,(Sa[0]=Ti,Sa)),+ma.apply(this,Sa),+$r.apply(this,(Sa[0]=ai,Sa)),+ma.apply(this,Sa)),da)return Ba=null,da+""||null}return Ca.source=function(da){return arguments.length?(ir=da,Ca):ir},Ca.target=function(da){return arguments.length?(mr=da,Ca):mr},Ca.x=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.y=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.context=function(da){return arguments.length?(Ba=da??null,Ca):Ba},Ca}function J(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir=(ir+$r)/2,mr,ir,ma,$r,ma)}function Z(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir,mr=(mr+ma)/2,$r,mr,$r,ma)}function re(kt,ir,mr,$r,ma){var Ba=ue(ir,mr),Ca=ue(ir,mr=(mr+ma)/2),da=ue($r,mr),Sa=ue($r,ma);kt.moveTo(Ba[0],Ba[1]),kt.bezierCurveTo(Ca[0],Ca[1],da[0],da[1],Sa[0],Sa[1])}function ne(){return $(J)}function j(){return $(Z)}function ee(){var kt=$(re);return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt}var ie={draw:function(kt,ir){var mr=Math.sqrt(ir/s);kt.moveTo(mr,0),kt.arc(0,0,mr,0,h)}},fe={draw:function(kt,ir){var mr=Math.sqrt(ir/5)/2;kt.moveTo(-3*mr,-mr),kt.lineTo(-mr,-mr),kt.lineTo(-mr,-3*mr),kt.lineTo(mr,-3*mr),kt.lineTo(mr,-mr),kt.lineTo(3*mr,-mr),kt.lineTo(3*mr,mr),kt.lineTo(mr,mr),kt.lineTo(mr,3*mr),kt.lineTo(-mr,3*mr),kt.lineTo(-mr,mr),kt.lineTo(-3*mr,mr),kt.closePath()}},be=Math.sqrt(1/3),Ae=be*2,Be={draw:function(kt,ir){var mr=Math.sqrt(ir/Ae),$r=mr*be;kt.moveTo(0,-mr),kt.lineTo($r,0),kt.lineTo(0,mr),kt.lineTo(-$r,0),kt.closePath()}},Ie=.8908130915292852,Ze=Math.sin(s/10)/Math.sin(7*s/10),at=Math.sin(h/10)*Ze,it=-Math.cos(h/10)*Ze,et={draw:function(kt,ir){var mr=Math.sqrt(ir*Ie),$r=at*mr,ma=it*mr;kt.moveTo(0,-mr),kt.lineTo($r,ma);for(var Ba=1;Ba<5;++Ba){var Ca=h*Ba/5,da=Math.cos(Ca),Sa=Math.sin(Ca);kt.lineTo(Sa*mr,-da*mr),kt.lineTo(da*$r-Sa*ma,Sa*$r+da*ma)}kt.closePath()}},lt={draw:function(kt,ir){var mr=Math.sqrt(ir),$r=-mr/2;kt.rect($r,$r,mr,mr)}},Me=Math.sqrt(3),ge={draw:function(kt,ir){var mr=-Math.sqrt(ir/(Me*3));kt.moveTo(0,mr*2),kt.lineTo(-Me*mr,-mr),kt.lineTo(Me*mr,-mr),kt.closePath()}},ce=-.5,ze=Math.sqrt(3)/2,tt=1/Math.sqrt(12),nt=(tt/2+1)*3,Qe={draw:function(kt,ir){var mr=Math.sqrt(ir/nt),$r=mr/2,ma=mr*tt,Ba=$r,Ca=mr*tt+mr,da=-Ba,Sa=Ca;kt.moveTo($r,ma),kt.lineTo(Ba,Ca),kt.lineTo(da,Sa),kt.lineTo(ce*$r-ze*ma,ze*$r+ce*ma),kt.lineTo(ce*Ba-ze*Ca,ze*Ba+ce*Ca),kt.lineTo(ce*da-ze*Sa,ze*da+ce*Sa),kt.lineTo(ce*$r+ze*ma,ce*ma-ze*$r),kt.lineTo(ce*Ba+ze*Ca,ce*Ca-ze*Ba),kt.lineTo(ce*da+ze*Sa,ce*Sa-ze*da),kt.closePath()}},Ct=[ie,fe,Be,lt,et,ge,Qe];function St(){var kt=A(ie),ir=A(64),mr=null;function $r(){var ma;if(mr||(mr=ma=x.path()),kt.apply(this,arguments).draw(mr,+ir.apply(this,arguments)),ma)return mr=null,ma+""||null}return $r.type=function(ma){return arguments.length?(kt=typeof ma=="function"?ma:A(ma),$r):kt},$r.size=function(ma){return arguments.length?(ir=typeof ma=="function"?ma:A(+ma),$r):ir},$r.context=function(ma){return arguments.length?(mr=ma??null,$r):mr},$r}function Ot(){}function jt(kt,ir,mr){kt._context.bezierCurveTo((2*kt._x0+kt._x1)/3,(2*kt._y0+kt._y1)/3,(kt._x0+2*kt._x1)/3,(kt._y0+2*kt._y1)/3,(kt._x0+4*kt._x1+ir)/6,(kt._y0+4*kt._y1+mr)/6)}function ur(kt){this._context=kt}ur.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:jt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function ar(kt){return new ur(kt)}function Cr(kt){this._context=kt}Cr.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x2=kt,this._y2=ir;break;case 1:this._point=2,this._x3=kt,this._y3=ir;break;case 2:this._point=3,this._x4=kt,this._y4=ir,this._context.moveTo((this._x0+4*this._x1+kt)/6,(this._y0+4*this._y1+ir)/6);break;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function vr(kt){return new Cr(kt)}function _r(kt){this._context=kt}_r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var mr=(this._x0+4*this._x1+kt)/6,$r=(this._y0+4*this._y1+ir)/6;this._line?this._context.lineTo(mr,$r):this._context.moveTo(mr,$r);break;case 3:this._point=4;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function yt(kt){return new _r(kt)}function Fe(kt,ir){this._basis=new ur(kt),this._beta=ir}Fe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length-1;if(mr>0)for(var $r=kt[0],ma=ir[0],Ba=kt[mr]-$r,Ca=ir[mr]-ma,da=-1,Sa;++da<=mr;)Sa=da/mr,this._basis.point(this._beta*kt[da]+(1-this._beta)*($r+Sa*Ba),this._beta*ir[da]+(1-this._beta)*(ma+Sa*Ca));this._x=this._y=null,this._basis.lineEnd()},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};var Ke=function kt(ir){function mr($r){return ir===1?new ur($r):new Fe($r,ir)}return mr.beta=function($r){return kt(+$r)},mr}(.85);function Ne(kt,ir,mr){kt._context.bezierCurveTo(kt._x1+kt._k*(kt._x2-kt._x0),kt._y1+kt._k*(kt._y2-kt._y0),kt._x2+kt._k*(kt._x1-ir),kt._y2+kt._k*(kt._y1-mr),kt._x2,kt._y2)}function Ee(kt,ir){this._context=kt,this._k=(1-ir)/6}Ee.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ne(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2,this._x1=kt,this._y1=ir;break;case 2:this._point=3;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Ve=function kt(ir){function mr($r){return new Ee($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function ke(kt,ir){this._context=kt,this._k=(1-ir)/6}ke.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Te=function kt(ir){function mr($r){return new ke($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function Le(kt,ir){this._context=kt,this._k=(1-ir)/6}Le.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var rt=function kt(ir){function mr($r){return new Le($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function dt(kt,ir,mr){var $r=kt._x1,ma=kt._y1,Ba=kt._x2,Ca=kt._y2;if(kt._l01_a>n){var da=2*kt._l01_2a+3*kt._l01_a*kt._l12_a+kt._l12_2a,Sa=3*kt._l01_a*(kt._l01_a+kt._l12_a);$r=($r*da-kt._x0*kt._l12_2a+kt._x2*kt._l01_2a)/Sa,ma=(ma*da-kt._y0*kt._l12_2a+kt._y2*kt._l01_2a)/Sa}if(kt._l23_a>n){var Ti=2*kt._l23_2a+3*kt._l23_a*kt._l12_a+kt._l12_2a,ai=3*kt._l23_a*(kt._l23_a+kt._l12_a);Ba=(Ba*Ti+kt._x1*kt._l23_2a-ir*kt._l12_2a)/ai,Ca=(Ca*Ti+kt._y1*kt._l23_2a-mr*kt._l12_2a)/ai}kt._context.bezierCurveTo($r,ma,Ba,Ca,kt._x2,kt._y2)}function xt(kt,ir){this._context=kt,this._alpha=ir}xt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var It=function kt(ir){function mr($r){return ir?new xt($r,ir):new Ee($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Bt(kt,ir){this._context=kt,this._alpha=ir}Bt.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Gt=function kt(ir){function mr($r){return ir?new Bt($r,ir):new ke($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Kt(kt,ir){this._context=kt,this._alpha=ir}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var sr=function kt(ir){function mr($r){return ir?new Kt($r,ir):new Le($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function sa(kt){this._context=kt}sa.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(kt,ir){kt=+kt,ir=+ir,this._point?this._context.lineTo(kt,ir):(this._point=1,this._context.moveTo(kt,ir))}};function Aa(kt){return new sa(kt)}function La(kt){return kt<0?-1:1}function ka(kt,ir,mr){var $r=kt._x1-kt._x0,ma=ir-kt._x1,Ba=(kt._y1-kt._y0)/($r||ma<0&&-0),Ca=(mr-kt._y1)/(ma||$r<0&&-0),da=(Ba*ma+Ca*$r)/($r+ma);return(La(Ba)+La(Ca))*Math.min(Math.abs(Ba),Math.abs(Ca),.5*Math.abs(da))||0}function Ga(kt,ir){var mr=kt._x1-kt._x0;return mr?(3*(kt._y1-kt._y0)/mr-ir)/2:ir}function Ma(kt,ir,mr){var $r=kt._x0,ma=kt._y0,Ba=kt._x1,Ca=kt._y1,da=(Ba-$r)/3;kt._context.bezierCurveTo($r+da,ma+da*ir,Ba-da,Ca-da*mr,Ba,Ca)}function Ua(kt){this._context=kt}Ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Ma(this,this._t0,Ga(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){var mr=NaN;if(kt=+kt,ir=+ir,!(kt===this._x1&&ir===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,Ma(this,Ga(this,mr=ka(this,kt,ir)),mr);break;default:Ma(this,this._t0,mr=ka(this,kt,ir));break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir,this._t0=mr}}};function ni(kt){this._context=new Wt(kt)}(ni.prototype=Object.create(Ua.prototype)).point=function(kt,ir){Ua.prototype.point.call(this,ir,kt)};function Wt(kt){this._context=kt}Wt.prototype={moveTo:function(kt,ir){this._context.moveTo(ir,kt)},closePath:function(){this._context.closePath()},lineTo:function(kt,ir){this._context.lineTo(ir,kt)},bezierCurveTo:function(kt,ir,mr,$r,ma,Ba){this._context.bezierCurveTo(ir,kt,$r,mr,Ba,ma)}};function zt(kt){return new Ua(kt)}function Vt(kt){return new ni(kt)}function Ut(kt){this._context=kt}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length;if(mr)if(this._line?this._context.lineTo(kt[0],ir[0]):this._context.moveTo(kt[0],ir[0]),mr===2)this._context.lineTo(kt[1],ir[1]);else for(var $r=xr(kt),ma=xr(ir),Ba=0,Ca=1;Ca<mr;++Ba,++Ca)this._context.bezierCurveTo($r[0][Ba],ma[0][Ba],$r[1][Ba],ma[1][Ba],kt[Ca],ir[Ca]);(this._line||this._line!==0&&mr===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};function xr(kt){var ir,mr=kt.length-1,$r,ma=new Array(mr),Ba=new Array(mr),Ca=new Array(mr);for(ma[0]=0,Ba[0]=2,Ca[0]=kt[0]+2*kt[1],ir=1;ir<mr-1;++ir)ma[ir]=1,Ba[ir]=4,Ca[ir]=4*kt[ir]+2*kt[ir+1];for(ma[mr-1]=2,Ba[mr-1]=7,Ca[mr-1]=8*kt[mr-1]+kt[mr],ir=1;ir<mr;++ir)$r=ma[ir]/Ba[ir-1],Ba[ir]-=$r,Ca[ir]-=$r*Ca[ir-1];for(ma[mr-1]=Ca[mr-1]/Ba[mr-1],ir=mr-2;ir>=0;--ir)ma[ir]=(Ca[ir]-ma[ir+1])/Ba[ir];for(Ba[mr-1]=(kt[mr]+ma[mr-1])/2,ir=0;ir<mr-1;++ir)Ba[ir]=2*kt[ir+1]-ma[ir+1];return[ma,Ba]}function Zr(kt){return new Ut(kt)}function pa(kt,ir){this._context=kt,this._t=ir}pa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,ir),this._context.lineTo(kt,ir);else{var mr=this._x*(1-this._t)+kt*this._t;this._context.lineTo(mr,this._y),this._context.lineTo(mr,ir)}break}}this._x=kt,this._y=ir}};function Xr(kt){return new pa(kt,.5)}function Ea(kt){return new pa(kt,0)}function Fa(kt){return new pa(kt,1)}function qa(kt,ir){if((Ca=kt.length)>1)for(var mr=1,$r,ma,Ba=kt[ir[0]],Ca,da=Ba.length;mr<Ca;++mr)for(ma=Ba,Ba=kt[ir[mr]],$r=0;$r<da;++$r)Ba[$r][1]+=Ba[$r][0]=isNaN(ma[$r][1])?ma[$r][0]:ma[$r][1]}function ya(kt){for(var ir=kt.length,mr=new Array(ir);--ir>=0;)mr[ir]=ir;return mr}function $a(kt,ir){return kt[ir]}function mt(){var kt=A([]),ir=ya,mr=qa,$r=$a;function ma(Ba){var Ca=kt.apply(this,arguments),da,Sa=Ba.length,Ti=Ca.length,ai=new Array(Ti),an;for(da=0;da<Ti;++da){for(var sn=Ca[da],Mn=ai[da]=new Array(Sa),On=0,$n;On<Sa;++On)Mn[On]=$n=[0,+$r(Ba[On],sn,On,Ba)],$n.data=Ba[On];Mn.key=sn}for(da=0,an=ir(ai);da<Ti;++da)ai[an[da]].index=da;return mr(ai,an),ai}return ma.keys=function(Ba){return arguments.length?(kt=typeof Ba=="function"?Ba:A(se.call(Ba)),ma):kt},ma.value=function(Ba){return arguments.length?($r=typeof Ba=="function"?Ba:A(+Ba),ma):$r},ma.order=function(Ba){return arguments.length?(ir=Ba==null?ya:typeof Ba=="function"?Ba:A(se.call(Ba)),ma):ir},ma.offset=function(Ba){return arguments.length?(mr=Ba??qa,ma):mr},ma}function gt(kt,ir){if(($r=kt.length)>0){for(var mr,$r,ma=0,Ba=kt[0].length,Ca;ma<Ba;++ma){for(Ca=mr=0;mr<$r;++mr)Ca+=kt[mr][ma][1]||0;if(Ca)for(mr=0;mr<$r;++mr)kt[mr][ma][1]/=Ca}qa(kt,ir)}}function Er(kt,ir){if((Sa=kt.length)>0)for(var mr,$r=0,ma,Ba,Ca,da,Sa,Ti=kt[ir[0]].length;$r<Ti;++$r)for(Ca=da=0,mr=0;mr<Sa;++mr)(Ba=(ma=kt[ir[mr]][$r])[1]-ma[0])>0?(ma[0]=Ca,ma[1]=Ca+=Ba):Ba<0?(ma[1]=da,ma[0]=da+=Ba):(ma[0]=0,ma[1]=Ba)}function kr(kt,ir){if((ma=kt.length)>0){for(var mr=0,$r=kt[ir[0]],ma,Ba=$r.length;mr<Ba;++mr){for(var Ca=0,da=0;Ca<ma;++Ca)da+=kt[Ca][mr][1]||0;$r[mr][1]+=$r[mr][0]=-da/2}qa(kt,ir)}}function br(kt,ir){if(!(!((Ca=kt.length)>0)||!((Ba=(ma=kt[ir[0]]).length)>0))){for(var mr=0,$r=1,ma,Ba,Ca;$r<Ba;++$r){for(var da=0,Sa=0,Ti=0;da<Ca;++da){for(var ai=kt[ir[da]],an=ai[$r][1]||0,sn=ai[$r-1][1]||0,Mn=(an-sn)/2,On=0;On<da;++On){var $n=kt[ir[On]],Cn=$n[$r][1]||0,Lo=$n[$r-1][1]||0;Mn+=Cn-Lo}Sa+=an,Ti+=Mn*an}ma[$r-1][1]+=ma[$r-1][0]=mr,Sa&&(mr-=Ti/Sa)}ma[$r-1][1]+=ma[$r-1][0]=mr,qa(kt,ir)}}function Tr(kt){var ir=kt.map(Mr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Mr(kt){for(var ir=-1,mr=0,$r=kt.length,ma,Ba=-1/0;++ir<$r;)(ma=+kt[ir][1])>Ba&&(Ba=ma,mr=ir);return mr}function Fr(kt){var ir=kt.map(Lr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Lr(kt){for(var ir=0,mr=-1,$r=kt.length,ma;++mr<$r;)(ma=+kt[mr][1])&&(ir+=ma);return ir}function Jr(kt){return Fr(kt).reverse()}function oa(kt){var ir=kt.length,mr,$r,ma=kt.map(Lr),Ba=Tr(kt),Ca=0,da=0,Sa=[],Ti=[];for(mr=0;mr<ir;++mr)$r=Ba[mr],Ca<da?(Ca+=ma[$r],Sa.push($r)):(da+=ma[$r],Ti.push($r));return Ti.reverse().concat(Sa)}function ca(kt){return ya(kt).reverse()}g.arc=b,g.area=L,g.areaRadial=Q,g.curveBasis=ar,g.curveBasisClosed=vr,g.curveBasisOpen=yt,g.curveBundle=Ke,g.curveCardinal=Ve,g.curveCardinalClosed=Te,g.curveCardinalOpen=rt,g.curveCatmullRom=It,g.curveCatmullRomClosed=Gt,g.curveCatmullRomOpen=sr,g.curveLinear=u,g.curveLinearClosed=Aa,g.curveMonotoneX=zt,g.curveMonotoneY=Vt,g.curveNatural=Zr,g.curveStep=Xr,g.curveStepAfter=Fa,g.curveStepBefore=Ea,g.line=P,g.lineRadial=W,g.linkHorizontal=ne,g.linkRadial=ee,g.linkVertical=j,g.pie=B,g.pointRadial=ue,g.radialArea=Q,g.radialLine=W,g.stack=mt,g.stackOffsetDiverging=Er,g.stackOffsetExpand=gt,g.stackOffsetNone=qa,g.stackOffsetSilhouette=kr,g.stackOffsetWiggle=br,g.stackOrderAppearance=Tr,g.stackOrderAscending=Fr,g.stackOrderDescending=Jr,g.stackOrderInsideOut=oa,g.stackOrderNone=ya,g.stackOrderReverse=ca,g.symbol=St,g.symbolCircle=ie,g.symbolCross=fe,g.symbolDiamond=Be,g.symbolSquare=lt,g.symbolStar=et,g.symbolTriangle=ge,g.symbolWye=Qe,g.symbols=Ct,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zq=Ye({"node_modules/@plotly/d3-sankey/build/d3-sankey.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx(),CT(),zk()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3)})(X,function(g,x,A,M){"use strict";function e(u){return u.target.depth}function t(u){return u.depth}function r(u,y){return y-1-u.height}function o(u,y){return u.sourceLinks.length?u.depth:y-1}function a(u){return u.targetLinks.length?u.depth:u.sourceLinks.length?x.min(u.sourceLinks,e)-1:0}function i(u){return function(){return u}}function n(u,y){return c(u.source,y.source)||u.index-y.index}function s(u,y){return c(u.target,y.target)||u.index-y.index}function c(u,y){return u.y0-y.y0}function h(u){return u.value}function v(u){return(u.y0+u.y1)/2}function p(u){return v(u.source)*u.value}function T(u){return v(u.target)*u.value}function l(u){return u.index}function _(u){return u.nodes}function w(u){return u.links}function S(u,y){var f=u.get(y);if(!f)throw new Error("missing: "+y);return f}var E=function(){var u=0,y=0,f=1,P=1,L=24,z=8,F=l,B=o,O=_,I=w,N=32,U=2/3;function W(){var $={nodes:O.apply(null,arguments),links:I.apply(null,arguments)};return Q($),ue($),se($),he($,N),G($),$}W.update=function($){return G($),$},W.nodeId=function($){return arguments.length?(F=typeof $=="function"?$:i($),W):F},W.nodeAlign=function($){return arguments.length?(B=typeof $=="function"?$:i($),W):B},W.nodeWidth=function($){return arguments.length?(L=+$,W):L},W.nodePadding=function($){return arguments.length?(z=+$,W):z},W.nodes=function($){return arguments.length?(O=typeof $=="function"?$:i($),W):O},W.links=function($){return arguments.length?(I=typeof $=="function"?$:i($),W):I},W.size=function($){return arguments.length?(u=y=0,f=+$[0],P=+$[1],W):[f-u,P-y]},W.extent=function($){return arguments.length?(u=+$[0][0],f=+$[1][0],y=+$[0][1],P=+$[1][1],W):[[u,y],[f,P]]},W.iterations=function($){return arguments.length?(N=+$,W):N};function Q($){$.nodes.forEach(function(Z,re){Z.index=re,Z.sourceLinks=[],Z.targetLinks=[]});var J=A.map($.nodes,F);$.links.forEach(function(Z,re){Z.index=re;var ne=Z.source,j=Z.target;typeof ne!="object"&&(ne=Z.source=S(J,ne)),typeof j!="object"&&(j=Z.target=S(J,j)),ne.sourceLinks.push(Z),j.targetLinks.push(Z)})}function ue($){$.nodes.forEach(function(J){J.value=Math.max(x.sum(J.sourceLinks,h),x.sum(J.targetLinks,h))})}function se($){var J,Z,re;for(J=$.nodes,Z=[],re=0;J.length;++re,J=Z,Z=[])J.forEach(function(j){j.depth=re,j.sourceLinks.forEach(function(ee){Z.indexOf(ee.target)<0&&Z.push(ee.target)})});for(J=$.nodes,Z=[],re=0;J.length;++re,J=Z,Z=[])J.forEach(function(j){j.height=re,j.targetLinks.forEach(function(ee){Z.indexOf(ee.source)<0&&Z.push(ee.source)})});var ne=(f-u-L)/(re-1);$.nodes.forEach(function(j){j.x1=(j.x0=u+Math.max(0,Math.min(re-1,Math.floor(B.call(null,j,re))))*ne)+L})}function he($){var J=A.nest().key(function(fe){return fe.x0}).sortKeys(x.ascending).entries($.nodes).map(function(fe){return fe.values});ne(),ie();for(var Z=1,re=N;re>0;--re)ee(Z*=.99),ie(),j(Z),ie();function ne(){var fe=x.max(J,function(Be){return Be.length}),be=U*(P-y)/(fe-1);z>be&&(z=be);var Ae=x.min(J,function(Be){return(P-y-(Be.length-1)*z)/x.sum(Be,h)});J.forEach(function(Be){Be.forEach(function(Ie,Ze){Ie.y1=(Ie.y0=Ze)+Ie.value*Ae})}),$.links.forEach(function(Be){Be.width=Be.value*Ae})}function j(fe){J.forEach(function(be){be.forEach(function(Ae){if(Ae.targetLinks.length){var Be=(x.sum(Ae.targetLinks,p)/x.sum(Ae.targetLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ee(fe){J.slice().reverse().forEach(function(be){be.forEach(function(Ae){if(Ae.sourceLinks.length){var Be=(x.sum(Ae.sourceLinks,T)/x.sum(Ae.sourceLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ie(){J.forEach(function(fe){var be,Ae,Be=y,Ie=fe.length,Ze;for(fe.sort(c),Ze=0;Ze<Ie;++Ze)be=fe[Ze],Ae=Be-be.y0,Ae>0&&(be.y0+=Ae,be.y1+=Ae),Be=be.y1+z;if(Ae=Be-z-P,Ae>0)for(Be=be.y0-=Ae,be.y1-=Ae,Ze=Ie-2;Ze>=0;--Ze)be=fe[Ze],Ae=be.y1+z-Be,Ae>0&&(be.y0-=Ae,be.y1-=Ae),Be=be.y0})}}function G($){$.nodes.forEach(function(J){J.sourceLinks.sort(s),J.targetLinks.sort(n)}),$.nodes.forEach(function(J){var Z=J.y0,re=Z;J.sourceLinks.forEach(function(ne){ne.y0=Z+ne.width/2,Z+=ne.width}),J.targetLinks.forEach(function(ne){ne.y1=re+ne.width/2,re+=ne.width})})}return W};function m(u){return[u.source.x1,u.y0]}function b(u){return[u.target.x0,u.y1]}var d=function(){return M.linkHorizontal().source(m).target(b)};g.sankey=E,g.sankeyCenter=a,g.sankeyLeft=t,g.sankeyRight=r,g.sankeyJustify=o,g.sankeyLinkHorizontal=d,Object.defineProperty(g,"__esModule",{value:!0})})}}),Xq=Ye({"node_modules/elementary-circuits-directed-graph/johnson.js"(X,H){var g=Dk();H.exports=function(A,M){var e=[],t=[],r=[],o={},a=[],i;function n(S){r[S]=!1,o.hasOwnProperty(S)&&Object.keys(o[S]).forEach(function(E){delete o[S][E],r[E]&&n(E)})}function s(S){var E=!1;t.push(S),r[S]=!0;var m,b;for(m=0;m<a[S].length;m++)b=a[S][m],b===i?(c(i,t),E=!0):r[b]||(E=s(b));if(E)n(S);else for(m=0;m<a[S].length;m++){b=a[S][m];var d=o[b];d||(d={},o[b]=d),d[b]=!0}return t.pop(),E}function c(S,E){var m=[].concat(E).concat(S);M?M(s):e.push(m)}function h(S){for(var E=0;E<A.length;E++)E<S&&(A[E]=[]),A[E]=A[E].filter(function(m){return m>=S})}function v(S){h(S);for(var E=A,m=g(E),b=m.components.filter(function(z){return z.length>1}),d=1/0,u,y=0;y<b.length;y++)for(var f=0;f<b[y].length;f++)b[y][f]<d&&(d=b[y][f],u=y);var P=b[u];if(!P)return!1;var L=A.map(function(z,F){return P.indexOf(F)===-1?[]:z.filter(function(B){return P.indexOf(B)!==-1})});return{leastVertex:d,adjList:L}}i=0;for(var p=A.length;i<p;){var T=v(i);if(i=T.leastVertex,a=T.adjList,a){for(var l=0;l<a.length;l++)for(var _=0;_<a[l].length;_++){var w=a[l][_];r[+w]=!1,o[w]={}}s(i),i=i+1}else i=p}if(!M)return e}}}),Yq=Ye({"node_modules/@plotly/d3-sankey-circular/dist/d3-sankey-circular.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx(),CT(),zk(),Xq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,null)})(X,function(g,x,A,M,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;function t(Ie){return Ie.target.depth}function r(Ie){return Ie.depth}function o(Ie,Ze){return Ze-1-Ie.height}function a(Ie,Ze){return Ie.sourceLinks.length?Ie.depth:Ze-1}function i(Ie){return Ie.targetLinks.length?Ie.depth:Ie.sourceLinks.length?x.min(Ie.sourceLinks,t)-1:0}function n(Ie){return function(){return Ie}}var s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ie){return typeof Ie}:function(Ie){return Ie&&typeof Symbol=="function"&&Ie.constructor===Symbol&&Ie!==Symbol.prototype?"symbol":typeof Ie};function c(Ie,Ze){return v(Ie.source,Ze.source)||Ie.index-Ze.index}function h(Ie,Ze){return v(Ie.target,Ze.target)||Ie.index-Ze.index}function v(Ie,Ze){return Ie.partOfCycle===Ze.partOfCycle?Ie.y0-Ze.y0:Ie.circularLinkType==="top"||Ze.circularLinkType==="bottom"?-1:1}function p(Ie){return Ie.value}function T(Ie){return(Ie.y0+Ie.y1)/2}function l(Ie){return T(Ie.source)}function _(Ie){return T(Ie.target)}function w(Ie){return Ie.index}function S(Ie){return Ie.nodes}function E(Ie){return Ie.links}function m(Ie,Ze){var at=Ie.get(Ze);if(!at)throw new Error("missing: "+Ze);return at}function b(Ie,Ze){return Ze(Ie)}var d=25,u=10,y=.3;function f(){var Ie=0,Ze=0,at=1,it=1,et=24,lt,Me=w,ge=a,ce=S,ze=E,tt=32,nt=2,Qe,Ct=null;function St(){var yt={nodes:ce.apply(null,arguments),links:ze.apply(null,arguments)};Ot(yt),P(yt,Me,Ct),jt(yt),Cr(yt),L(yt,Me),vr(yt,tt,Me),_r(yt);for(var Fe=4,Ke=0;Ke<Fe;Ke++)ee(yt,it,Me),ie(yt,it,Me),re(yt,Ze,it,Me),ee(yt,it,Me),ie(yt,it,Me);return Be(yt,Ze,it),N(yt,nt,it,Me),yt}St.nodeId=function(yt){return arguments.length?(Me=typeof yt=="function"?yt:n(yt),St):Me},St.nodeAlign=function(yt){return arguments.length?(ge=typeof yt=="function"?yt:n(yt),St):ge},St.nodeWidth=function(yt){return arguments.length?(et=+yt,St):et},St.nodePadding=function(yt){return arguments.length?(lt=+yt,St):lt},St.nodes=function(yt){return arguments.length?(ce=typeof yt=="function"?yt:n(yt),St):ce},St.links=function(yt){return arguments.length?(ze=typeof yt=="function"?yt:n(yt),St):ze},St.size=function(yt){return arguments.length?(Ie=Ze=0,at=+yt[0],it=+yt[1],St):[at-Ie,it-Ze]},St.extent=function(yt){return arguments.length?(Ie=+yt[0][0],at=+yt[1][0],Ze=+yt[0][1],it=+yt[1][1],St):[[Ie,Ze],[at,it]]},St.iterations=function(yt){return arguments.length?(tt=+yt,St):tt},St.circularLinkGap=function(yt){return arguments.length?(nt=+yt,St):nt},St.nodePaddingRatio=function(yt){return arguments.length?(Qe=+yt,St):Qe},St.sortNodes=function(yt){return arguments.length?(Ct=yt,St):Ct},St.update=function(yt){return L(yt,Me),_r(yt),yt.links.forEach(function(Fe){Fe.circular&&(Fe.circularLinkType=Fe.y0+Fe.y1<it?"top":"bottom",Fe.source.circularLinkType=Fe.circularLinkType,Fe.target.circularLinkType=Fe.circularLinkType)}),ee(yt,it,Me,!1),ie(yt,it,Me),N(yt,nt,it,Me),yt};function Ot(yt){yt.nodes.forEach(function(Ke,Ne){Ke.index=Ne,Ke.sourceLinks=[],Ke.targetLinks=[]});var Fe=A.map(yt.nodes,Me);return yt.links.forEach(function(Ke,Ne){Ke.index=Ne;var Ee=Ke.source,Ve=Ke.target;(typeof Ee>"u"?"undefined":s(Ee))!=="object"&&(Ee=Ke.source=m(Fe,Ee)),(typeof Ve>"u"?"undefined":s(Ve))!=="object"&&(Ve=Ke.target=m(Fe,Ve)),Ee.sourceLinks.push(Ke),Ve.targetLinks.push(Ke)}),yt}function jt(yt){yt.nodes.forEach(function(Fe){Fe.partOfCycle=!1,Fe.value=Math.max(x.sum(Fe.sourceLinks,p),x.sum(Fe.targetLinks,p)),Fe.sourceLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)}),Fe.targetLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)})})}function ur(yt){var Fe=0,Ke=0,Ne=0,Ee=0,Ve=x.max(yt.nodes,function(ke){return ke.column});return yt.links.forEach(function(ke){ke.circular&&(ke.circularLinkType=="top"?Fe=Fe+ke.width:Ke=Ke+ke.width,ke.target.column==0&&(Ee=Ee+ke.width),ke.source.column==Ve&&(Ne=Ne+ke.width))}),Fe=Fe>0?Fe+d+u:Fe,Ke=Ke>0?Ke+d+u:Ke,Ne=Ne>0?Ne+d+u:Ne,Ee=Ee>0?Ee+d+u:Ee,{top:Fe,bottom:Ke,left:Ee,right:Ne}}function ar(yt,Fe){var Ke=x.max(yt.nodes,function(rt){return rt.column}),Ne=at-Ie,Ee=it-Ze,Ve=Ne+Fe.right+Fe.left,ke=Ee+Fe.top+Fe.bottom,Te=Ne/Ve,Le=Ee/ke;return Ie=Ie*Te+Fe.left,at=Fe.right==0?at:at*Te,Ze=Ze*Le+Fe.top,it=it*Le,yt.nodes.forEach(function(rt){rt.x0=Ie+rt.column*((at-Ie-et)/Ke),rt.x1=rt.x0+et}),Le}function Cr(yt){var Fe,Ke,Ne;for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.depth=Ne,Ee.sourceLinks.forEach(function(Ve){Ke.indexOf(Ve.target)<0&&!Ve.circular&&Ke.push(Ve.target)})});for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.height=Ne,Ee.targetLinks.forEach(function(Ve){Ke.indexOf(Ve.source)<0&&!Ve.circular&&Ke.push(Ve.source)})});yt.nodes.forEach(function(Ee){Ee.column=Math.floor(ge.call(null,Ee,Ne))})}function vr(yt,Fe,Ke){var Ne=A.nest().key(function(rt){return rt.column}).sortKeys(x.ascending).entries(yt.nodes).map(function(rt){return rt.values});ke(Ke),Le();for(var Ee=1,Ve=Fe;Ve>0;--Ve)Te(Ee*=.99,Ke),Le();function ke(rt){if(Qe){var dt=1/0;Ne.forEach(function(Gt){var Kt=it*Qe/(Gt.length+1);dt=Kt<dt?Kt:dt}),lt=dt}var xt=x.min(Ne,function(Gt){return(it-Ze-(Gt.length-1)*lt)/x.sum(Gt,p)});xt=xt*y,yt.links.forEach(function(Gt){Gt.width=Gt.value*xt});var It=ur(yt),Bt=ar(yt,It);xt=xt*Bt,yt.links.forEach(function(Gt){Gt.width=Gt.value*xt}),Ne.forEach(function(Gt){var Kt=Gt.length;Gt.forEach(function(sr,sa){sr.depth==Ne.length-1&&Kt==1||sr.depth==0&&Kt==1?(sr.y0=it/2-sr.value*xt,sr.y1=sr.y0+sr.value*xt):sr.partOfCycle?B(sr,rt)==0?(sr.y0=it/2+sa,sr.y1=sr.y0+sr.value*xt):sr.circularLinkType=="top"?(sr.y0=Ze+sa,sr.y1=sr.y0+sr.value*xt):(sr.y0=it-sr.value*xt-sa,sr.y1=sr.y0+sr.value*xt):It.top==0||It.bottom==0?(sr.y0=(it-Ze)/Kt*sa,sr.y1=sr.y0+sr.value*xt):(sr.y0=(it-Ze)/2-Kt/2+sa,sr.y1=sr.y0+sr.value*xt)})})}function Te(rt,dt){var xt=Ne.length;Ne.forEach(function(It){var Bt=It.length,Gt=It[0].depth;It.forEach(function(Kt){var sr;if((Kt.sourceLinks.length||Kt.targetLinks.length)&&!(Kt.partOfCycle&&B(Kt,dt)>0))if(Gt==0&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else if(Gt==xt-1&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else{var sa=0,Aa=x.mean(Kt.sourceLinks,_),La=x.mean(Kt.targetLinks,l);Aa&&La?sa=(Aa+La)/2:sa=Aa||La;var ka=(sa-T(Kt))*rt;Kt.y0+=ka,Kt.y1+=ka}})})}function Le(){Ne.forEach(function(rt){var dt,xt,It=Ze,Bt=rt.length,Gt;for(rt.sort(v),Gt=0;Gt<Bt;++Gt)dt=rt[Gt],xt=It-dt.y0,xt>0&&(dt.y0+=xt,dt.y1+=xt),It=dt.y1+lt;if(xt=It-lt-it,xt>0)for(It=dt.y0-=xt,dt.y1-=xt,Gt=Bt-2;Gt>=0;--Gt)dt=rt[Gt],xt=dt.y1+lt-It,xt>0&&(dt.y0-=xt,dt.y1-=xt),It=dt.y0})}}function _r(yt){yt.nodes.forEach(function(Fe){Fe.sourceLinks.sort(h),Fe.targetLinks.sort(c)}),yt.nodes.forEach(function(Fe){var Ke=Fe.y0,Ne=Ke,Ee=Fe.y1,Ve=Ee;Fe.sourceLinks.forEach(function(ke){ke.circular?(ke.y0=Ee-ke.width/2,Ee=Ee-ke.width):(ke.y0=Ke+ke.width/2,Ke+=ke.width)}),Fe.targetLinks.forEach(function(ke){ke.circular?(ke.y1=Ve-ke.width/2,Ve=Ve-ke.width):(ke.y1=Ne+ke.width/2,Ne+=ke.width)})})}return St}function P(Ie,Ze,at){var it=0;if(at===null){for(var et=[],lt=0;lt<Ie.links.length;lt++){var Me=Ie.links[lt],ge=Me.source.index,ce=Me.target.index;et[ge]||(et[ge]=[]),et[ce]||(et[ce]=[]),et[ge].indexOf(ce)===-1&&et[ge].push(ce)}var ze=e(et);ze.sort(function(Ct,St){return Ct.length-St.length});var tt={};for(lt=0;lt<ze.length;lt++){var nt=ze[lt],Qe=nt.slice(-2);tt[Qe[0]]||(tt[Qe[0]]={}),tt[Qe[0]][Qe[1]]=!0}Ie.links.forEach(function(Ct){var St=Ct.target.index,Ot=Ct.source.index;St===Ot||tt[Ot]&&tt[Ot][St]?(Ct.circular=!0,Ct.circularLinkID=it,it=it+1):Ct.circular=!1})}else Ie.links.forEach(function(Ct){Ct.source[at]<Ct.target[at]?Ct.circular=!1:(Ct.circular=!0,Ct.circularLinkID=it,it=it+1)})}function L(Ie,Ze){var at=0,it=0;Ie.links.forEach(function(et){et.circular&&(et.source.circularLinkType||et.target.circularLinkType?et.circularLinkType=et.source.circularLinkType?et.source.circularLinkType:et.target.circularLinkType:et.circularLinkType=at<it?"top":"bottom",et.circularLinkType=="top"?at=at+1:it=it+1,Ie.nodes.forEach(function(lt){(b(lt,Ze)==b(et.source,Ze)||b(lt,Ze)==b(et.target,Ze))&&(lt.circularLinkType=et.circularLinkType)}))}),Ie.links.forEach(function(et){et.circular&&(et.source.circularLinkType==et.target.circularLinkType&&(et.circularLinkType=et.source.circularLinkType),Ae(et,Ze)&&(et.circularLinkType=et.source.circularLinkType))})}function z(Ie){var Ze=Math.abs(Ie.y1-Ie.y0),at=Math.abs(Ie.target.x0-Ie.source.x1);return Math.atan(at/Ze)}function F(Ie,Ze){return Ie.source.column<Ze.target.column?!1:!(Ie.target.column>Ze.source.column)}function B(Ie,Ze){var at=0;Ie.sourceLinks.forEach(function(et){at=et.circular&&!Ae(et,Ze)?at+1:at});var it=0;return Ie.targetLinks.forEach(function(et){it=et.circular&&!Ae(et,Ze)?it+1:it}),at+it}function O(Ie){var Ze=Ie.source.sourceLinks,at=0;Ze.forEach(function(lt){at=lt.circular?at+1:at});var it=Ie.target.targetLinks,et=0;return it.forEach(function(lt){et=lt.circular?et+1:et}),!(at>1||et>1)}function I(Ie,Ze,at){return Ie.sort(W),Ie.forEach(function(it,et){var lt=0;if(Ae(it,at)&&O(it))it.circularPathData.verticalBuffer=lt+it.width/2;else{var Me=0;for(Me;Me<et;Me++)if(F(Ie[et],Ie[Me])){var ge=Ie[Me].circularPathData.verticalBuffer+Ie[Me].width/2+Ze;lt=ge>lt?ge:lt}it.circularPathData.verticalBuffer=lt+it.width/2}}),Ie}function N(Ie,Ze,at,it){var et=5,lt=x.min(Ie.links,function(ce){return ce.source.y0});Ie.links.forEach(function(ce){ce.circular&&(ce.circularPathData={})});var Me=Ie.links.filter(function(ce){return ce.circularLinkType=="top"});I(Me,Ze,it);var ge=Ie.links.filter(function(ce){return ce.circularLinkType=="bottom"});I(ge,Ze,it),Ie.links.forEach(function(ce){if(ce.circular){if(ce.circularPathData.arcRadius=ce.width+u,ce.circularPathData.leftNodeBuffer=et,ce.circularPathData.rightNodeBuffer=et,ce.circularPathData.sourceWidth=ce.source.x1-ce.source.x0,ce.circularPathData.sourceX=ce.source.x0+ce.circularPathData.sourceWidth,ce.circularPathData.targetX=ce.target.x0,ce.circularPathData.sourceY=ce.y0,ce.circularPathData.targetY=ce.y1,Ae(ce,it)&&O(ce))ce.circularPathData.leftSmallArcRadius=u+ce.width/2,ce.circularPathData.leftLargeArcRadius=u+ce.width/2,ce.circularPathData.rightSmallArcRadius=u+ce.width/2,ce.circularPathData.rightLargeArcRadius=u+ce.width/2,ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=ce.source.y1+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=ce.source.y0-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius);else{var ze=ce.source.column,tt=ce.circularLinkType,nt=Ie.links.filter(function(St){return St.source.column==ze&&St.circularLinkType==tt});ce.circularLinkType=="bottom"?nt.sort(ue):nt.sort(Q);var Qe=0;nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.leftSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.leftLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ze=ce.target.column,nt=Ie.links.filter(function(St){return St.target.column==ze&&St.circularLinkType==tt}),ce.circularLinkType=="bottom"?nt.sort(he):nt.sort(se),Qe=0,nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.rightSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.rightLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=Math.max(at,ce.source.y1,ce.target.y1)+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=lt-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius)}ce.circularPathData.leftInnerExtent=ce.circularPathData.sourceX+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightInnerExtent=ce.circularPathData.targetX-ce.circularPathData.rightNodeBuffer,ce.circularPathData.leftFullExtent=ce.circularPathData.sourceX+ce.circularPathData.leftLargeArcRadius+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightFullExtent=ce.circularPathData.targetX-ce.circularPathData.rightLargeArcRadius-ce.circularPathData.rightNodeBuffer}if(ce.circular)ce.path=U(ce);else{var Ct=M.linkHorizontal().source(function(St){var Ot=St.source.x0+(St.source.x1-St.source.x0),jt=St.y0;return[Ot,jt]}).target(function(St){var Ot=St.target.x0,jt=St.y1;return[Ot,jt]});ce.path=Ct(ce)}})}function U(Ie){var Ze="";return Ie.circularLinkType=="top"?Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 0 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY-Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 0 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 0 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY-Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 0 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY:Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 1 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY+Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 1 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 1 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY+Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 1 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY,Ze}function W(Ie,Ze){return G(Ie)==G(Ze)?Ie.circularLinkType=="bottom"?ue(Ie,Ze):Q(Ie,Ze):G(Ze)-G(Ie)}function Q(Ie,Ze){return Ie.y0-Ze.y0}function ue(Ie,Ze){return Ze.y0-Ie.y0}function se(Ie,Ze){return Ie.y1-Ze.y1}function he(Ie,Ze){return Ze.y1-Ie.y1}function G(Ie){return Ie.target.column-Ie.source.column}function $(Ie){return Ie.target.x0-Ie.source.x1}function J(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1+it:Ie.y1-it;return et}function Z(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1-it:Ie.y1+it;return et}function re(Ie,Ze,at,it){Ie.links.forEach(function(et){if(!et.circular&&et.target.column-et.source.column>1){var lt=et.source.column+1,Me=et.target.column-1,ge=1,ce=Me-lt+1;for(ge=1;lt<=Me;lt++,ge++)Ie.nodes.forEach(function(ze){if(ze.column==lt){var tt=ge/(ce+1),nt=Math.pow(1-tt,3),Qe=3*tt*Math.pow(1-tt,2),Ct=3*Math.pow(tt,2)*(1-tt),St=Math.pow(tt,3),Ot=nt*et.y0+Qe*et.y0+Ct*et.y1+St*et.y1,jt=Ot-et.width/2,ur=Ot+et.width/2,ar;jt>ze.y0&&jt<ze.y1?(ar=ze.y1-jt+10,ar=ze.circularLinkType=="bottom"?ar:-ar,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||ne(ze,Cr)&&j(Cr,ar,Ze,at)})):ur>ze.y0&&ur<ze.y1?(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0<ze.y1&&Cr.y1>ze.y1&&j(Cr,ar,Ze,at)})):jt<ze.y0&&ur>ze.y1&&(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0<ze.y1&&Cr.y1>ze.y1&&j(Cr,ar,Ze,at)}))}})}})}function ne(Ie,Ze){return Ie.y0>Ze.y0&&Ie.y0<Ze.y1||Ie.y1>Ze.y0&&Ie.y1<Ze.y1?!0:Ie.y0<Ze.y0&&Ie.y1>Ze.y1}function j(Ie,Ze,at,it){return Ie.y0+Ze>=at&&Ie.y1+Ze<=it&&(Ie.y0=Ie.y0+Ze,Ie.y1=Ie.y1+Ze,Ie.targetLinks.forEach(function(et){et.y1=et.y1+Ze}),Ie.sourceLinks.forEach(function(et){et.y0=et.y0+Ze})),Ie}function ee(Ie,Ze,at,it){Ie.nodes.forEach(function(et){it&&et.y+(et.y1-et.y0)>Ze&&(et.y=et.y-(et.y+(et.y1-et.y0)-Ze));var lt=Ie.links.filter(function(ce){return b(ce.source,at)==b(et,at)}),Me=lt.length;Me>1&&lt.sort(function(ce,ze){if(!ce.circular&&!ze.circular){if(ce.target.column==ze.target.column)return ce.y1-ze.y1;if(fe(ce,ze)){if(ce.target.column>ze.target.column){var tt=Z(ze,ce);return ce.y1-tt}if(ze.target.column>ce.target.column){var nt=Z(ce,ze);return nt-ze.y1}}else return ce.y1-ze.y1}if(ce.circular&&!ze.circular)return ce.circularLinkType=="top"?-1:1;if(ze.circular&&!ce.circular)return ze.circularLinkType=="top"?1:-1;if(ce.circular&&ze.circular)return ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="top"?ce.target.column===ze.target.column?ce.target.y1-ze.target.y1:ze.target.column-ce.target.column:ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="bottom"?ce.target.column===ze.target.column?ze.target.y1-ce.target.y1:ce.target.column-ze.target.column:ce.circularLinkType=="top"?-1:1});var ge=et.y0;lt.forEach(function(ce){ce.y0=ge+ce.width/2,ge=ge+ce.width}),lt.forEach(function(ce,ze){if(ce.circularLinkType=="bottom"){var tt=ze+1,nt=0;for(tt;tt<Me;tt++)nt=nt+lt[tt].width;ce.y0=et.y1-nt-ce.width/2}})})}function ie(Ie,Ze,at){Ie.nodes.forEach(function(it){var et=Ie.links.filter(function(ge){return b(ge.target,at)==b(it,at)}),lt=et.length;lt>1&&et.sort(function(ge,ce){if(!ge.circular&&!ce.circular){if(ge.source.column==ce.source.column)return ge.y0-ce.y0;if(fe(ge,ce)){if(ce.source.column<ge.source.column){var ze=J(ce,ge);return ge.y0-ze}if(ge.source.column<ce.source.column){var tt=J(ge,ce);return tt-ce.y0}}else return ge.y0-ce.y0}if(ge.circular&&!ce.circular)return ge.circularLinkType=="top"?-1:1;if(ce.circular&&!ge.circular)return ce.circularLinkType=="top"?1:-1;if(ge.circular&&ce.circular)return ge.circularLinkType===ce.circularLinkType&&ge.circularLinkType=="top"?ge.source.column===ce.source.column?ge.source.y1-ce.source.y1:ge.source.column-ce.source.column:ge.circularLinkType===ce.circularLinkType&&ge.circularLinkType=="bottom"?ge.source.column===ce.source.column?ge.source.y1-ce.source.y1:ce.source.column-ge.source.column:ge.circularLinkType=="top"?-1:1});var Me=it.y0;et.forEach(function(ge){ge.y1=Me+ge.width/2,Me=Me+ge.width}),et.forEach(function(ge,ce){if(ge.circularLinkType=="bottom"){var ze=ce+1,tt=0;for(ze;ze<lt;ze++)tt=tt+et[ze].width;ge.y1=it.y1-tt-ge.width/2}})})}function fe(Ie,Ze){return be(Ie)==be(Ze)}function be(Ie){return Ie.y0-Ie.y1>0?"up":"down"}function Ae(Ie,Ze){return b(Ie.source,Ze)==b(Ie.target,Ze)}function Be(Ie,Ze,at){var it=Ie.nodes,et=Ie.links,lt=!1,Me=!1;if(et.forEach(function(Qe){Qe.circularLinkType=="top"?lt=!0:Qe.circularLinkType=="bottom"&&(Me=!0)}),lt==!1||Me==!1){var ge=x.min(it,function(Qe){return Qe.y0}),ce=x.max(it,function(Qe){return Qe.y1}),ze=ce-ge,tt=at-Ze,nt=tt/ze;it.forEach(function(Qe){var Ct=(Qe.y1-Qe.y0)*nt;Qe.y0=(Qe.y0-ge)*nt,Qe.y1=Qe.y0+Ct}),et.forEach(function(Qe){Qe.y0=(Qe.y0-ge)*nt,Qe.y1=(Qe.y1-ge)*nt,Qe.width=Qe.width*nt})}}g.sankeyCircular=f,g.sankeyCenter=i,g.sankeyLeft=r,g.sankeyRight=o,g.sankeyJustify=a,Object.defineProperty(g,"__esModule",{value:!0})})}}),Fk=Ye({"src/traces/sankey/constants.js"(X,H){"use strict";H.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}}}),Kq=Ye({"src/traces/sankey/render.js"(X,H){"use strict";var g=Gq(),x=(f0(),Hf(fg)).interpolateNumber,A=_n(),M=Zq(),e=Yq(),t=Fk(),r=bh(),o=Fn(),a=Bo(),i=ta(),n=i.strTranslate,s=i.strRotate,c=kv(),h=c.keyFun,v=c.repeat,p=c.unwrap,T=jl(),l=Hn(),_=oh(),w=_.CAP_SHIFT,S=_.LINE_SPACING,E=3;function m(J,Z,re){var ne=p(Z),j=ne.trace,ee=j.domain,ie=j.orientation==="h",fe=j.node.pad,be=j.node.thickness,Ae={justify:M.sankeyJustify,left:M.sankeyLeft,right:M.sankeyRight,center:M.sankeyCenter}[j.node.align],Be=J.width*(ee.x[1]-ee.x[0]),Ie=J.height*(ee.y[1]-ee.y[0]),Ze=ne._nodes,at=ne._links,it=ne.circular,et;it?et=e.sankeyCircular().circularLinkGap(0):et=M.sankey(),et.iterations(t.sankeyIterations).size(ie?[Be,Ie]:[Ie,Be]).nodeWidth(be).nodePadding(fe).nodeId(function(Cr){return Cr.pointNumber}).nodeAlign(Ae).nodes(Ze).links(at);var lt=et();et.nodePadding()<fe&&i.warn("node.pad was reduced to ",et.nodePadding()," to fit within the figure.");var Me,ge,ce;for(var ze in ne._groupLookup){var tt=parseInt(ne._groupLookup[ze]),nt;for(Me=0;Me<lt.nodes.length;Me++)if(lt.nodes[Me].pointNumber===tt){nt=lt.nodes[Me];break}if(nt){var Qe={pointNumber:parseInt(ze),x0:nt.x0,x1:nt.x1,y0:nt.y0,y1:nt.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};lt.nodes.unshift(Qe),nt.childrenNodes.unshift(Qe)}}function Ct(){for(Me=0;Me<lt.nodes.length;Me++){var Cr=lt.nodes[Me],vr={},_r,yt;for(ge=0;ge<Cr.targetLinks.length;ge++)yt=Cr.targetLinks[ge],_r=yt.source.pointNumber+":"+yt.target.pointNumber,vr.hasOwnProperty(_r)||(vr[_r]=[]),vr[_r].push(yt);var Fe=Object.keys(vr);for(ge=0;ge<Fe.length;ge++){_r=Fe[ge];var Ke=vr[_r],Ne=0,Ee={};for(ce=0;ce<Ke.length;ce++)yt=Ke[ce],Ee[yt.label]||(Ee[yt.label]=0),Ee[yt.label]+=yt.value,Ne+=yt.value;for(ce=0;ce<Ke.length;ce++)yt=Ke[ce],yt.flow={value:Ne,labelConcentration:Ee[yt.label]/Ne,concentration:yt.value/Ne,links:Ke},yt.concentrationscale&&(yt.color=r(yt.concentrationscale(yt.flow.labelConcentration)))}var Ve=0;for(ge=0;ge<Cr.sourceLinks.length;ge++)Ve+=Cr.sourceLinks[ge].value;for(ge=0;ge<Cr.sourceLinks.length;ge++)yt=Cr.sourceLinks[ge],yt.concentrationOut=yt.value/Ve;var ke=0;for(ge=0;ge<Cr.targetLinks.length;ge++)ke+=Cr.targetLinks[ge].value;for(ge=0;ge<Cr.targetLinks.length;ge++)yt=Cr.targetLinks[ge],yt.concenrationIn=yt.value/ke}}Ct();function St(Cr){Cr.forEach(function(vr){var _r,yt,Fe=0,Ke=vr.length,Ne;for(vr.sort(function(Ee,Ve){return Ee.y0-Ve.y0}),Ne=0;Ne<Ke;++Ne)_r=vr[Ne],_r.y0>=Fe||(yt=Fe-_r.y0,yt>1e-6&&(_r.y0+=yt,_r.y1+=yt)),Fe=_r.y1+fe})}function Ot(Cr){var vr=Cr.map(function(Ve,ke){return{x0:Ve.x0,index:ke}}).sort(function(Ve,ke){return Ve.x0-ke.x0}),_r=[],yt=-1,Fe,Ke=-1/0,Ne;for(Me=0;Me<vr.length;Me++){var Ee=Cr[vr[Me].index];Ee.x0>Ke+be&&(yt+=1,Fe=Ee.x0),Ke=Ee.x0,_r[yt]||(_r[yt]=[]),_r[yt].push(Ee),Ne=Fe-Ee.x0,Ee.x0+=Ne,Ee.x1+=Ne}return _r}if(j.node.x.length&&j.node.y.length){for(Me=0;Me<Math.min(j.node.x.length,j.node.y.length,lt.nodes.length);Me++)if(j.node.x[Me]&&j.node.y[Me]){var jt=[j.node.x[Me]*Be,j.node.y[Me]*Ie];lt.nodes[Me].x0=jt[0]-be/2,lt.nodes[Me].x1=jt[0]+be/2;var ur=lt.nodes[Me].y1-lt.nodes[Me].y0;lt.nodes[Me].y0=jt[1]-ur/2,lt.nodes[Me].y1=jt[1]+ur/2}if(j.arrangement==="snap"){Ze=lt.nodes;var ar=Ot(Ze);St(ar)}et.update(lt)}return{circular:it,key:re,trace:j,guid:i.randstr(),horizontal:ie,width:Be,height:Ie,nodePad:j.node.pad,nodeLineColor:j.node.line.color,nodeLineWidth:j.node.line.width,linkLineColor:j.link.line.color,linkLineWidth:j.link.line.width,linkArrowLength:j.link.arrowlen,valueFormat:j.valueformat,valueSuffix:j.valuesuffix,textFont:j.textfont,translateX:ee.x[0]*J.width+J.margin.l,translateY:J.height-ee.y[1]*J.height+J.margin.t,dragParallel:ie?Ie:Be,dragPerpendicular:ie?Be:Ie,arrangement:j.arrangement,sankey:et,graph:lt,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function b(J,Z,re){var ne=r(Z.color),j=r(Z.hovercolor),ee=Z.source.label+"|"+Z.target.label,ie=ee+"__"+re;return Z.trace=J.trace,Z.curveNumber=J.trace.index,{circular:J.circular,key:ie,traceId:J.key,pointNumber:Z.pointNumber,link:Z,tinyColorHue:o.tinyRGB(ne),tinyColorAlpha:ne.getAlpha(),tinyColorHoverHue:o.tinyRGB(j),tinyColorHoverAlpha:j.getAlpha(),linkPath:u,linkLineColor:J.linkLineColor,linkLineWidth:J.linkLineWidth,linkArrowLength:J.linkArrowLength,valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,parent:J,interactionState:J.interactionState,flow:Z.flow}}function d(J,Z){var re="",ne=J.width/2,j=J.circularPathData,ee=j.sourceX+j.verticalBuffer<j.targetX,ie=j.rightFullExtent-j.rightLargeArcRadius-Z<=j.leftFullExtent-ne,fe=Math.abs(j.rightFullExtent-j.leftFullExtent-ne)<ne;return J.circularLinkType==="top"?(re="M "+(j.targetX-Z)+" "+(j.targetY+ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+"A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY-j.rightSmallArcRadius)+"L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius+ne))+" L "+(j.rightFullExtent+ne-(j.rightLargeArcRadius-ne)-Z)+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius+ne))+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius-ne))+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius-ne))+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY-j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.sourceY+ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.leftInnerExtent+" "+(j.sourceY-ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 0 "+(j.leftFullExtent-ne)+" "+(j.sourceY-j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent-ne)+" "+(j.verticalFullExtent+ne)+"L"+(j.rightFullExtent+ne-Z)+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent-ne-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY-j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" L "+(j.targetX-Z)+" "+(j.targetY-ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"):(re="M "+(j.targetX-Z)+" "+(j.targetY-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-ne-Z)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent-Z-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.leftInnerExtent+" "+(j.sourceY+ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent+ne-Z+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent-Z-ne)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+" L "+(j.targetX-Z)+" "+(j.targetY+ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"),re}function u(){var J=.5;function Z(re){var ne=re.linkArrowLength;if(re.link.circular)return d(re.link,ne);var j=Math.abs((re.link.target.x0-re.link.source.x1)/2);ne>j&&(ne=j);var ee=re.link.source.x1,ie=re.link.target.x0-ne,fe=x(ee,ie),be=fe(J),Ae=fe(1-J),Be=re.link.y0-re.link.width/2,Ie=re.link.y0+re.link.width/2,Ze=re.link.y1-re.link.width/2,at=re.link.y1+re.link.width/2,it="M"+ee+","+Be,et="C"+be+","+Be+" "+Ae+","+Ze+" "+ie+","+Ze,lt="C"+Ae+","+at+" "+be+","+Ie+" "+ee+","+Ie,Me=ne>0?"L"+(ie+ne)+","+(Ze+re.link.width/2):"";return Me+="L"+ie+","+at,it+et+Me+lt+"Z"}return Z}function y(J,Z){var re=r(Z.color),ne=t.nodePadAcross,j=J.nodePad/2;Z.dx=Z.x1-Z.x0,Z.dy=Z.y1-Z.y0;var ee=Z.dx,ie=Math.max(.5,Z.dy),fe="node_"+Z.pointNumber;return Z.group&&(fe=i.randstr()),Z.trace=J.trace,Z.curveNumber=J.trace.index,{index:Z.pointNumber,key:fe,partOfGroup:Z.partOfGroup||!1,group:Z.group,traceId:J.key,trace:J.trace,node:Z,nodePad:J.nodePad,nodeLineColor:J.nodeLineColor,nodeLineWidth:J.nodeLineWidth,textFont:J.textFont,size:J.horizontal?J.height:J.width,visibleWidth:Math.ceil(ee),visibleHeight:ie,zoneX:-ne,zoneY:-j,zoneWidth:ee+2*ne,zoneHeight:ie+2*j,labelY:J.horizontal?Z.dy/2+1:Z.dx/2+1,left:Z.originalLayer===1,sizeAcross:J.width,forceLayouts:J.forceLayouts,horizontal:J.horizontal,darkBackground:re.getBrightness()<=128,tinyColorHue:o.tinyRGB(re),tinyColorAlpha:re.getAlpha(),valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,graph:J.graph,arrangement:J.arrangement,uniqueNodeLabelPathId:[J.guid,J.key,fe].join("_"),interactionState:J.interactionState,figure:J}}function f(J){J.attr("transform",function(Z){return n(Z.node.x0.toFixed(3),Z.node.y0.toFixed(3))})}function P(J){J.call(f)}function L(J,Z){J.call(P),Z.attr("d",u())}function z(J){J.attr("width",function(Z){return Z.node.x1-Z.node.x0}).attr("height",function(Z){return Z.visibleHeight})}function F(J){return J.link.width>1||J.linkLineWidth>0}function B(J){var Z=n(J.translateX,J.translateY);return Z+(J.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function O(J,Z,re){J.on(".basic",null).on("mouseover.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.hover(this,ne,Z),ne.interactionState.hovered=[this,ne])}).on("mousemove.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.follow(this,ne),ne.interactionState.hovered=[this,ne])}).on("mouseout.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1)}).on("click.basic",function(ne){ne.interactionState.hovered&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1),!ne.interactionState.dragInProgress&&!ne.partOfGroup&&re.select(this,ne,Z)})}function I(J,Z,re,ne){var j=A.behavior.drag().origin(function(ee){return{x:ee.node.x0+ee.visibleWidth/2,y:ee.node.y0+ee.visibleHeight/2}}).on("dragstart",function(ee){if(ee.arrangement!=="fixed"&&(i.ensureSingle(ne._fullLayout._infolayer,"g","dragcover",function(fe){ne._fullLayout._dragCover=fe}),i.raiseToTop(this),ee.interactionState.dragInProgress=ee.node,se(ee.node),ee.interactionState.hovered&&(re.nodeEvents.unhover.apply(0,ee.interactionState.hovered),ee.interactionState.hovered=!1),ee.arrangement==="snap")){var ie=ee.traceId+"|"+ee.key;ee.forceLayouts[ie]?ee.forceLayouts[ie].alpha(1):N(J,ie,ee,ne),U(J,Z,ee,ie,ne)}}).on("drag",function(ee){if(ee.arrangement!=="fixed"){var ie=A.event.x,fe=A.event.y;ee.arrangement==="snap"?(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2,ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2):(ee.arrangement==="freeform"&&(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2),fe=Math.max(0,Math.min(ee.size-ee.visibleHeight/2,fe)),ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2),se(ee.node),ee.arrangement!=="snap"&&(ee.sankey.update(ee.graph),L(J.filter(he(ee)),Z))}}).on("dragend",function(ee){if(ee.arrangement!=="fixed"){ee.interactionState.dragInProgress=!1;for(var ie=0;ie<ee.node.childrenNodes.length;ie++)ee.node.childrenNodes[ie].x=ee.node.x,ee.node.childrenNodes[ie].y=ee.node.y;ee.arrangement!=="snap"&&Q(ee,ne)}});J.on(".drag",null).call(j)}function N(J,Z,re,ne){G(re.graph.nodes);var j=re.graph.nodes.filter(function(ee){return ee.originalX===re.node.originalX}).filter(function(ee){return!ee.partOfGroup});re.forceLayouts[Z]=g.forceSimulation(j).alphaDecay(0).force("collide",g.forceCollide().radius(function(ee){return ee.dy/2+re.nodePad/2}).strength(1).iterations(t.forceIterations)).force("constrain",W(J,Z,j,re,ne)).stop()}function U(J,Z,re,ne,j){window.requestAnimationFrame(function ee(){var ie;for(ie=0;ie<t.forceTicksPerFrame;ie++)re.forceLayouts[ne].tick();var fe=re.graph.nodes;if($(fe),re.sankey.update(re.graph),L(J.filter(he(re)),Z),re.forceLayouts[ne].alpha()>0)window.requestAnimationFrame(ee);else{var be=re.node.originalX;re.node.x0=be-re.visibleWidth/2,re.node.x1=be+re.visibleWidth/2,Q(re,j)}})}function W(J,Z,re,ne){return function(){for(var ee=0,ie=0;ie<re.length;ie++){var fe=re[ie];fe===ne.interactionState.dragInProgress?(fe.x=fe.lastDraggedX,fe.y=fe.lastDraggedY):(fe.vx=(fe.originalX-fe.x)/t.forceTicksPerFrame,fe.y=Math.min(ne.size-fe.dy/2,Math.max(fe.dy/2,fe.y))),ee=Math.max(ee,Math.abs(fe.vx),Math.abs(fe.vy))}!ne.interactionState.dragInProgress&&ee<.1&&ne.forceLayouts[Z].alpha()>0&&ne.forceLayouts[Z].alpha(0)}}function Q(J,Z){for(var re=[],ne=[],j=0;j<J.graph.nodes.length;j++){var ee=(J.graph.nodes[j].x0+J.graph.nodes[j].x1)/2,ie=(J.graph.nodes[j].y0+J.graph.nodes[j].y1)/2;re.push(ee/J.figure.width),ne.push(ie/J.figure.height)}l.call("_guiRestyle",Z,{"node.x":[re],"node.y":[ne]},J.trace.index).then(function(){Z._fullLayout._dragCover&&Z._fullLayout._dragCover.remove()})}function ue(J){var Z=[],re;for(re=0;re<J.length;re++)J[re].originalX=(J[re].x0+J[re].x1)/2,J[re].originalY=(J[re].y0+J[re].y1)/2,Z.indexOf(J[re].originalX)===-1&&Z.push(J[re].originalX);for(Z.sort(function(ne,j){return ne-j}),re=0;re<J.length;re++)J[re].originalLayerIndex=Z.indexOf(J[re].originalX),J[re].originalLayer=J[re].originalLayerIndex/(Z.length-1)}function se(J){J.lastDraggedX=J.x0+J.dx/2,J.lastDraggedY=J.y0+J.dy/2}function he(J){return function(Z){return Z.node.originalX===J.node.originalX}}function G(J){for(var Z=0;Z<J.length;Z++)J[Z].y=(J[Z].y0+J[Z].y1)/2,J[Z].x=(J[Z].x0+J[Z].x1)/2}function $(J){for(var Z=0;Z<J.length;Z++)J[Z].y0=J[Z].y-J[Z].dy/2,J[Z].y1=J[Z].y0+J[Z].dy,J[Z].x0=J[Z].x-J[Z].dx/2,J[Z].x1=J[Z].x0+J[Z].dx}H.exports=function(J,Z,re,ne,j){var ee=J._context.staticPlot,ie=!1;i.ensureSingle(J._fullLayout._infolayer,"g","first-render",function(){ie=!0});var fe=J._fullLayout._dragCover,be=re.filter(function(lt){return p(lt).trace.visible}).map(m.bind(null,ne)),Ae=Z.selectAll("."+t.cn.sankey).data(be,h);Ae.exit().remove(),Ae.enter().append("g").classed(t.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events",ee?"none":"auto").attr("transform",B),Ae.each(function(lt,Me){J._fullData[Me]._sankey=lt;var ge="bgsankey-"+lt.trace.uid+"-"+Me;i.ensureSingle(J._fullLayout._draggers,"rect",ge),J._fullData[Me]._bgRect=A.select("."+ge),J._fullData[Me]._bgRect.style("pointer-events",ee?"none":"all").attr("width",lt.width).attr("height",lt.height).attr("x",lt.translateX).attr("y",lt.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})}),Ae.transition().ease(t.ease).duration(t.duration).attr("transform",B);var Be=Ae.selectAll("."+t.cn.sankeyLinks).data(v,h);Be.enter().append("g").classed(t.cn.sankeyLinks,!0).style("fill","none");var Ie=Be.selectAll("."+t.cn.sankeyLink).data(function(lt){var Me=lt.graph.links;return Me.filter(function(ge){return ge.value}).map(b.bind(null,lt))},h);Ie.enter().append("path").classed(t.cn.sankeyLink,!0).call(O,Ae,j.linkEvents),Ie.style("stroke",function(lt){return F(lt)?o.tinyRGB(r(lt.linkLineColor)):lt.tinyColorHue}).style("stroke-opacity",function(lt){return F(lt)?o.opacity(lt.linkLineColor):lt.tinyColorAlpha}).style("fill",function(lt){return lt.tinyColorHue}).style("fill-opacity",function(lt){return lt.tinyColorAlpha}).style("stroke-width",function(lt){return F(lt)?lt.linkLineWidth:1}).attr("d",u()),Ie.style("opacity",function(){return J._context.staticPlot||ie||fe?1:0}).transition().ease(t.ease).duration(t.duration).style("opacity",1),Ie.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var Ze=Ae.selectAll("."+t.cn.sankeyNodeSet).data(v,h);Ze.enter().append("g").classed(t.cn.sankeyNodeSet,!0),Ze.style("cursor",function(lt){switch(lt.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}});var at=Ze.selectAll("."+t.cn.sankeyNode).data(function(lt){var Me=lt.graph.nodes;return ue(Me),Me.map(y.bind(null,lt))},h);at.enter().append("g").classed(t.cn.sankeyNode,!0).call(f).style("opacity",function(lt){return(J._context.staticPlot||ie)&&!lt.partOfGroup?1:0}),at.call(O,Ae,j.nodeEvents).call(I,Ie,j,J),at.transition().ease(t.ease).duration(t.duration).call(f).style("opacity",function(lt){return lt.partOfGroup?0:1}),at.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var it=at.selectAll("."+t.cn.nodeRect).data(v);it.enter().append("rect").classed(t.cn.nodeRect,!0).call(z),it.style("stroke-width",function(lt){return lt.nodeLineWidth}).style("stroke",function(lt){return o.tinyRGB(r(lt.nodeLineColor))}).style("stroke-opacity",function(lt){return o.opacity(lt.nodeLineColor)}).style("fill",function(lt){return lt.tinyColorHue}).style("fill-opacity",function(lt){return lt.tinyColorAlpha}),it.transition().ease(t.ease).duration(t.duration).call(z);var et=at.selectAll("."+t.cn.nodeLabel).data(v);et.enter().append("text").classed(t.cn.nodeLabel,!0).style("cursor","default"),et.attr("data-notex",1).text(function(lt){return lt.node.label}).each(function(lt){var Me=A.select(this);a.font(Me,lt.textFont),T.convertToTspans(Me,J)}).attr("text-anchor",function(lt){return lt.horizontal&&lt.left?"end":"start"}).attr("transform",function(lt){var Me=A.select(this),ge=T.lineCount(Me),ce=lt.textFont.size*((ge-1)*S-w),ze=lt.nodeLineWidth/2+E,tt=((lt.horizontal?lt.visibleHeight:lt.visibleWidth)-ce)/2;lt.horizontal&&(lt.left?ze=-ze:ze+=lt.visibleWidth);var nt=lt.horizontal?"":"scale(-1,1)"+s(90);return n(lt.horizontal?ze:tt,lt.horizontal?tt:ze)+nt}),et.transition().ease(t.ease).duration(t.duration)}}}),Ok=Ye({"src/traces/sankey/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=Kq(),e=Lc(),t=Fn(),r=Fk().cn,o=x._;function a(w){return w!==""}function i(w,S){return w.filter(function(E){return E.key===S.traceId})}function n(w,S){g.select(w).select("path").style("fill-opacity",S),g.select(w).select("rect").style("fill-opacity",S)}function s(w){g.select(w).select("text.name").style("fill","black")}function c(w){return function(S){return w.node.sourceLinks.indexOf(S.link)!==-1||w.node.targetLinks.indexOf(S.link)!==-1}}function h(w){return function(S){return S.node.sourceLinks.indexOf(w.link)!==-1||S.node.targetLinks.indexOf(w.link)!==-1}}function v(w,S,E){S&&E&&i(E,S).selectAll("."+r.sankeyLink).filter(c(S)).call(T.bind(0,S,E,!1))}function p(w,S,E){S&&E&&i(E,S).selectAll("."+r.sankeyLink).filter(c(S)).call(l.bind(0,S,E,!1))}function T(w,S,E,m){m.style("fill",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverHue}).style("fill-opacity",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverAlpha}),m.each(function(b){var d=b.link.label;d!==""&&i(S,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===d}).style("fill",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverHue}).style("fill-opacity",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverAlpha})}),E&&i(S,w).selectAll("."+r.sankeyNode).filter(h(w)).call(v)}function l(w,S,E,m){m.style("fill",function(b){return b.tinyColorHue}).style("fill-opacity",function(b){return b.tinyColorAlpha}),m.each(function(b){var d=b.link.label;d!==""&&i(S,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===d}).style("fill",function(u){return u.tinyColorHue}).style("fill-opacity",function(u){return u.tinyColorAlpha})}),E&&i(S,w).selectAll(r.sankeyNode).filter(h(w)).call(p)}function _(w,S){var E=w.hoverlabel||{},m=x.nestedProperty(E,S).get();return Array.isArray(m)?!1:m}H.exports=function(S,E){for(var m=S._fullLayout,b=m._paper,d=m._size,u=0;u<S._fullData.length;u++)if(S._fullData[u].visible&&S._fullData[u].type===r.sankey&&!S._fullData[u]._viewInitial){var y=S._fullData[u].node;S._fullData[u]._viewInitial={node:{groups:y.groups.slice(),x:y.x.slice(),y:y.y.slice()}}}var f=function(se,he){var G=he.link;G.originalEvent=g.event,S._hoverdata=[G],e.click(S,{target:!0})},P=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(T.bind(0,he,G,!0)),he.link.trace.link.hoverinfo!=="skip"&&(he.link.fullData=he.link.trace,S.emit("plotly_hover",{event:g.event,points:[he.link]})))},L=o(S,"source:")+" ",z=o(S,"target:")+" ",F=o(S,"concentration:")+" ",B=o(S,"incoming flow count:")+" ",O=o(S,"outgoing flow count:")+" ",I=function(se,he){if(S._fullLayout.hovermode===!1)return;var G=he.link.trace.link;if(G.hoverinfo==="none"||G.hoverinfo==="skip")return;var $=[];function J(fe){var be,Ae;fe.circular?(be=(fe.circularPathData.leftInnerExtent+fe.circularPathData.rightInnerExtent)/2,Ae=fe.circularPathData.verticalFullExtent):(be=(fe.source.x1+fe.target.x0)/2,Ae=(fe.y0+fe.y1)/2);var Be=[be,Ae];return fe.trace.orientation==="v"&&Be.reverse(),Be[0]+=he.parent.translateX,Be[1]+=he.parent.translateY,Be}for(var Z=0,re=0;re<he.flow.links.length;re++){var ne=he.flow.links[re];if(!(S._fullLayout.hovermode==="closest"&&he.link.pointNumber!==ne.pointNumber)){he.link.pointNumber===ne.pointNumber&&(Z=re),ne.fullData=ne.trace,G=he.link.trace.link;var j=J(ne),ee={valueLabel:A(he.valueFormat)(ne.value)+he.valueSuffix};$.push({x:j[0],y:j[1],name:ee.valueLabel,text:[ne.label||"",L+ne.source.label,z+ne.target.label,ne.concentrationscale?F+A("%0.2f")(ne.flow.labelConcentration):""].filter(a).join("<br>"),color:_(G,"bgcolor")||t.addOpacity(ne.color,1),borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:g.event.x<j[0]?"right":"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[ne]})}}var ie=e.loneHover($,{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S,anchorIndex:Z});ie.each(function(){var fe=this;he.link.concentrationscale||n(fe,.65),s(fe)})},N=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(l.bind(0,he,G,!0)),he.link.trace.link.hoverinfo!=="skip"&&(he.link.fullData=he.link.trace,S.emit("plotly_unhover",{event:g.event,points:[he.link]})),e.loneUnhover(m._hoverlayer.node()))},U=function(se,he,G){var $=he.node;$.originalEvent=g.event,S._hoverdata=[$],g.select(se).call(p,he,G),e.click(S,{target:!0})},W=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(v,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_hover",{event:g.event,points:[he.node]})))},Q=function(se,he){if(S._fullLayout.hovermode!==!1){var G=he.node.trace.node;if(!(G.hoverinfo==="none"||G.hoverinfo==="skip")){var $=g.select(se).select("."+r.nodeRect),J=S._fullLayout._paperdiv.node().getBoundingClientRect(),Z=$.node().getBoundingClientRect(),re=Z.left-2-J.left,ne=Z.right+2-J.left,j=Z.top+Z.height/4-J.top,ee={valueLabel:A(he.valueFormat)(he.node.value)+he.valueSuffix};he.node.fullData=he.node.trace,S._fullLayout._calcInverseTransform(S);var ie=S._fullLayout._invScaleX,fe=S._fullLayout._invScaleY,be=e.loneHover({x0:ie*re,x1:ie*ne,y:fe*j,name:A(he.valueFormat)(he.node.value)+he.valueSuffix,text:[he.node.label,B+he.node.targetLinks.length,O+he.node.sourceLinks.length].filter(a).join("<br>"),color:_(G,"bgcolor")||he.tinyColorHue,borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[he.node]},{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S});n(be,.85),s(be)}}},ue=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(p,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_unhover",{event:g.event,points:[he.node]})),e.loneUnhover(m._hoverlayer.node()))};M(S,b,E,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{linkEvents:{hover:P,follow:I,unhover:N,select:f},nodeEvents:{hover:W,follow:Q,unhover:ue,select:U}})}}}),Jq=Ye({"src/traces/sankey/base_plot.js"(X){"use strict";var H=Ou().overrideAll,g=jh().getModuleCalcData,x=Ok(),A=Zm(),M=Kd(),e=bp(),t=ff().prepSelect,r=ta(),o=Hn(),a="sankey";X.name=a,X.baseLayoutAttrOverrides=H({hoverlabel:A.hoverlabel},"plot","nested"),X.plot=function(n){var s=g(n.calcdata,a)[0];x(n,s),X.updateFx(n)},X.clean=function(n,s,c,h){var v=h._has&&h._has(a),p=s._has&&s._has(a);v&&!p&&(h._paperdiv.selectAll(".sankey").remove(),h._paperdiv.selectAll(".bgsankey").remove())},X.updateFx=function(n){for(var s=0;s<n._fullData.length;s++)i(n,s)};function i(n,s){var c=n._fullData[s],h=n._fullLayout,v=h.dragmode,p=h.dragmode==="pan"?"move":"crosshair",T=c._bgRect;if(T&&!(v==="pan"||v==="zoom")){M(T,p);var l={_id:"x",c2p:r.identity,_offset:c._sankey.translateX,_length:c._sankey.width},_={_id:"y",c2p:r.identity,_offset:c._sankey.translateY,_length:c._sankey.height},w={gd:n,element:T.node(),plotinfo:{id:s,xaxis:l,yaxis:_,fillRangeItems:r.noop},subplot:s,xaxes:[l],yaxes:[_],doneFnCompleted:function(S){var E=n._fullData[s],m,b=E.node.groups.slice(),d=[];function u(L){for(var z=E._sankey.graph.nodes,F=0;F<z.length;F++)if(z[F].pointNumber===L)return z[F]}for(var y=0;y<S.length;y++){var f=u(S[y].pointNumber);if(f)if(f.group){for(var P=0;P<f.childrenNodes.length;P++)d.push(f.childrenNodes[P].pointNumber);b[f.pointNumber-E.node._count]=!1}else d.push(f.pointNumber)}m=b.filter(Boolean).concat([d]),o.call("_guiRestyle",n,{"node.groups":[m]},s)}};w.prepFn=function(S,E,m){t(S,E,m,w,v)},e.init(w)}}}}),$q=Ye({"src/traces/sankey/select.js"(X,H){"use strict";H.exports=function(x,A){for(var M=x.cd,e=[],t=M[0].trace,r=t._sankey.graph.nodes,o=0;o<r.length;o++){var a=r[o];if(!a.partOfGroup){var i=[(a.x0+a.x1)/2,(a.y0+a.y1)/2];t.orientation==="v"&&i.reverse(),A&&A.contains(i,!1,o,x)&&e.push({pointNumber:a.pointNumber})}}return e}}}),Qq=Ye({"src/traces/sankey/index.js"(X,H){"use strict";H.exports={attributes:Rk(),supplyDefaults:Uq(),calc:jq(),plot:Ok(),moduleType:"trace",name:"sankey",basePlotModule:Jq(),selectPoints:$q(),categories:["noOpacity"],meta:{}}}}),eH=Ye({"lib/sankey.js"(X,H){"use strict";H.exports=Qq()}}),tH=Ye({"src/traces/indicator/base_plot.js"(X){"use strict";var H=Gu();X.name="indicator",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),Bk=Ye({"src/traces/indicator/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Oo().extendDeep,A=Ou().overrideAll,M=Au(),e=Gf(),t=Wu().attributes,r=Vh(),o=cl().templatedArray,a=p1(),i=Cc().descriptionOnlyNumbers,n=M({editType:"plot",colorEditType:"plot"}),s={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:e.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},c={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},h=o("step",x({},s,{range:c}));H.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:t({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:g({},n,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:i("value")},font:g({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:i("value")},increasing:{symbol:{valType:"string",dflt:a.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:a.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:a.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:a.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:g({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:x({},s,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:e.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:A({range:c,visible:g({},r.visible,{dflt:!0}),tickmode:r.minor.tickmode,nticks:r.nticks,tick0:r.tick0,dtick:r.dtick,tickvals:r.tickvals,ticktext:r.ticktext,ticks:g({},r.ticks,{dflt:"outside"}),ticklen:r.ticklen,tickwidth:r.tickwidth,tickcolor:r.tickcolor,ticklabelstep:r.ticklabelstep,showticklabels:r.showticklabels,labelalias:r.labelalias,tickfont:M({}),tickangle:r.tickangle,tickformat:r.tickformat,tickformatstops:r.tickformatstops,tickprefix:r.tickprefix,showtickprefix:r.showtickprefix,ticksuffix:r.ticksuffix,showticksuffix:r.showticksuffix,separatethousands:r.separatethousands,exponentformat:r.exponentformat,minexponent:r.minexponent,showexponent:r.showexponent,editType:"plot"},"plot"),steps:h,threshold:{line:{color:g({},s.line.color,{}),width:g({},s.line.width,{dflt:1}),editType:"plot"},thickness:g({},s.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}}}),Nk=Ye({"src/traces/indicator/constants.js"(X,H){"use strict";H.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}}}),rH=Ye({"src/traces/indicator/defaults.js"(X,H){"use strict";var g=ta(),x=Bk(),A=Wu().defaults,M=cl(),e=up(),t=Nk(),r=Zg(),o=e1(),a=$m(),i=Qm();function n(c,h,v,p){function T(I,N){return g.coerce(c,h,x,I,N)}A(h,p,T),T("mode"),h._hasNumber=h.mode.indexOf("number")!==-1,h._hasDelta=h.mode.indexOf("delta")!==-1,h._hasGauge=h.mode.indexOf("gauge")!==-1;var l=T("value");h._range=[0,typeof l=="number"?1.5*l:1];var _=new Array(2),w;if(h._hasNumber){T("number.valueformat");var S=g.extendFlat({},p.font);S.size=void 0,g.coerceFont(T,"number.font",S),h.number.font.size===void 0&&(h.number.font.size=t.defaultNumberFontSize,_[0]=!0),T("number.prefix"),T("number.suffix"),w=h.number.font.size}var E;if(h._hasDelta){var m=g.extendFlat({},p.font);m.size=void 0,g.coerceFont(T,"delta.font",m),h.delta.font.size===void 0&&(h.delta.font.size=(h._hasNumber?.5:1)*(w||t.defaultNumberFontSize),_[1]=!0),T("delta.reference",h.value),T("delta.relative"),T("delta.valueformat",h.delta.relative?"2%":""),T("delta.increasing.symbol"),T("delta.increasing.color"),T("delta.decreasing.symbol"),T("delta.decreasing.color"),T("delta.position"),T("delta.prefix"),T("delta.suffix"),E=h.delta.font.size}h._scaleNumbers=(!h._hasNumber||_[0])&&(!h._hasDelta||_[1])||!1;var b=g.extendFlat({},p.font);b.size=.25*(w||E||t.defaultNumberFontSize),g.coerceFont(T,"title.font",b),T("title.text");var d,u,y,f;function P(I,N){return g.coerce(d,u,x.gauge,I,N)}function L(I,N){return g.coerce(y,f,x.gauge.axis,I,N)}if(h._hasGauge){d=c.gauge,d||(d={}),u=M.newContainer(h,"gauge"),P("shape");var z=h._isBullet=h.gauge.shape==="bullet";z||T("title.align","center");var F=h._isAngular=h.gauge.shape==="angular";F||T("align","center"),P("bgcolor",p.paper_bgcolor),P("borderwidth"),P("bordercolor"),P("bar.color"),P("bar.line.color"),P("bar.line.width");var B=t.valueThickness*(h.gauge.shape==="bullet"?.5:1);P("bar.thickness",B),e(d,u,{name:"steps",handleItemDefaults:s}),P("threshold.value"),P("threshold.thickness"),P("threshold.line.width"),P("threshold.line.color"),y={},d&&(y=d.axis||{}),f=M.newContainer(u,"axis"),L("visible"),h._range=L("range",h._range);var O={font:p.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};r(y,f,L,"linear"),i(y,f,L,"linear",O),a(y,f,L,"linear",O),o(y,f,L,O)}else T("title.align","center"),T("align","center"),h._isAngular=h._isBullet=!1;h._length=null}function s(c,h){function v(p,T){return g.coerce(c,h,x.gauge.steps,p,T)}v("color"),v("line.color"),v("line.width"),v("range"),v("thickness")}H.exports={supplyDefaults:n}}}),aH=Ye({"src/traces/indicator/calc.js"(X,H){"use strict";function g(x,A){var M=[],e=A.value;typeof A._lastValue!="number"&&(A._lastValue=A.value);var t=A._lastValue,r=t;return A._hasDelta&&typeof A.delta.reference=="number"&&(r=A.delta.reference),M[0]={y:e,lastY:t,delta:e-r,relativeDelta:(e-r)/r},M}H.exports={calc:g}}}),iH=Ye({"src/traces/indicator/plot.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=(f0(),Hf(fg)).interpolateNumber,M=ta(),e=M.strScale,t=M.strTranslate,r=M.rad2deg,o=oh().MID_SHIFT,a=Bo(),i=Nk(),n=jl(),s=Co(),c=R_(),h=I2(),v=Vh(),p=Fn(),T={left:"start",center:"middle",right:"end"},l={left:0,center:.5,right:1},_=/[yzafpnµmkMGTPEZY]/;function w(z){return z&&z.duration>0}H.exports=function(F,B,O,I){var N=F._fullLayout,U;w(O)&&I&&(U=I()),M.makeTraceGroups(N._indicatorlayer,B,"trace").each(function(W){var Q=W[0],ue=Q.trace,se=g.select(this),he=ue._hasGauge,G=ue._isAngular,$=ue._isBullet,J=ue.domain,Z={w:N._size.w*(J.x[1]-J.x[0]),h:N._size.h*(J.y[1]-J.y[0]),l:N._size.l+N._size.w*J.x[0],r:N._size.r+N._size.w*(1-J.x[1]),t:N._size.t+N._size.h*(1-J.y[1]),b:N._size.b+N._size.h*J.y[0]},re=Z.l+Z.w/2,ne=Z.t+Z.h/2,j=Math.min(Z.w/2,Z.h),ee=i.innerRadius*j,ie,fe,be,Ae=ue.align||"center";if(fe=ne,!he)ie=Z.l+l[Ae]*Z.w,be=function(ce){return y(ce,Z.w,Z.h)};else if(G&&(ie=re,fe=ne+j/2,be=function(ce){return f(ce,.9*ee)}),$){var Be=i.bulletPadding,Ie=1-i.bulletNumberDomainSize+Be;ie=Z.l+(Ie+(1-Ie)*l[Ae])*Z.w,be=function(ce){return y(ce,(i.bulletNumberDomainSize-Be)*Z.w,Z.h)}}m(F,se,W,{numbersX:ie,numbersY:fe,numbersScaler:be,transitionOpts:O,onComplete:U});var Ze,at;he&&(Ze={range:ue.gauge.axis.range,color:ue.gauge.bgcolor,line:{color:ue.gauge.bordercolor,width:0},thickness:1},at={range:ue.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:ue.gauge.bordercolor,width:ue.gauge.borderwidth},thickness:1});var it=se.selectAll("g.angular").data(G?W:[]);it.exit().remove();var et=se.selectAll("g.angularaxis").data(G?W:[]);et.exit().remove(),G&&E(F,se,W,{radius:j,innerRadius:ee,gauge:it,layer:et,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var lt=se.selectAll("g.bullet").data($?W:[]);lt.exit().remove();var Me=se.selectAll("g.bulletaxis").data($?W:[]);Me.exit().remove(),$&&S(F,se,W,{gauge:lt,layer:Me,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var ge=se.selectAll("text.title").data(W);ge.exit().remove(),ge.enter().append("text").classed("title",!0),ge.attr("text-anchor",function(){return $?T.right:T[ue.title.align]}).text(ue.title.text).call(a.font,ue.title.font).call(n.convertToTspans,F),ge.attr("transform",function(){var ce=Z.l+Z.w*l[ue.title.align],ze,tt=i.titlePadding,nt=a.bBox(ge.node());if(he){if(G)if(ue.gauge.axis.visible){var Qe=a.bBox(et.node());ze=Qe.top-tt-nt.bottom}else ze=Z.t+Z.h/2-j/2-nt.bottom-tt;$&&(ze=fe-(nt.top+nt.bottom)/2,ce=Z.l-i.bulletPadding*Z.w)}else ze=ue._numbersTop-tt-nt.bottom;return t(ce,ze)})})};function S(z,F,B,O){var I=B[0].trace,N=O.gauge,U=O.layer,W=O.gaugeBg,Q=O.gaugeOutline,ue=O.size,se=I.domain,he=O.transitionOpts,G=O.onComplete,$,J,Z,re,ne;N.enter().append("g").classed("bullet",!0),N.attr("transform",t(ue.l,ue.t)),U.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),U.selectAll("g.xbulletaxistick,path,text").remove();var j=ue.h,ee=I.gauge.bar.thickness*j,ie=se.x[0],fe=se.x[0]+(se.x[1]-se.x[0])*(I._hasNumber||I._hasDelta?1-i.bulletNumberDomainSize:1);$=u(z,I.gauge.axis),$._id="xbulletaxis",$.domain=[ie,fe],$.setScale(),J=s.calcTicks($),Z=s.makeTransTickFn($),re=s.getTickSigns($)[2],ne=ue.t+ue.h,$.visible&&(s.drawTicks(z,$,{vals:$.ticks==="inside"?s.clipEnds($,J):J,layer:U,path:s.makeTickPath($,ne,re),transFn:Z}),s.drawLabels(z,$,{vals:J,layer:U,transFn:Z,labelFns:s.makeLabelFns($,ne)}));function be(et){et.attr("width",function(lt){return Math.max(0,$.c2p(lt.range[1])-$.c2p(lt.range[0]))}).attr("x",function(lt){return $.c2p(lt.range[0])}).attr("y",function(lt){return .5*(1-lt.thickness)*j}).attr("height",function(lt){return lt.thickness*j})}var Ae=[W].concat(I.gauge.steps),Be=N.selectAll("g.bg-bullet").data(Ae);Be.enter().append("g").classed("bg-bullet",!0).append("rect"),Be.select("rect").call(be).call(b),Be.exit().remove();var Ie=N.selectAll("g.value-bullet").data([I.gauge.bar]);Ie.enter().append("g").classed("value-bullet",!0).append("rect"),Ie.select("rect").attr("height",ee).attr("y",(j-ee)/2).call(b),w(he)?Ie.select("rect").transition().duration(he.duration).ease(he.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()}).attr("width",Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y)))):Ie.select("rect").attr("width",typeof B[0].y=="number"?Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y))):0),Ie.exit().remove();var Ze=B.filter(function(){return I.gauge.threshold.value||I.gauge.threshold.value===0}),at=N.selectAll("g.threshold-bullet").data(Ze);at.enter().append("g").classed("threshold-bullet",!0).append("line"),at.select("line").attr("x1",$.c2p(I.gauge.threshold.value)).attr("x2",$.c2p(I.gauge.threshold.value)).attr("y1",(1-I.gauge.threshold.thickness)/2*j).attr("y2",(1-(1-I.gauge.threshold.thickness)/2)*j).call(p.stroke,I.gauge.threshold.line.color).style("stroke-width",I.gauge.threshold.line.width),at.exit().remove();var it=N.selectAll("g.gauge-outline").data([Q]);it.enter().append("g").classed("gauge-outline",!0).append("rect"),it.select("rect").call(be).call(b),it.exit().remove()}function E(z,F,B,O){var I=B[0].trace,N=O.size,U=O.radius,W=O.innerRadius,Q=O.gaugeBg,ue=O.gaugeOutline,se=[N.l+N.w/2,N.t+N.h/2+U/2],he=O.gauge,G=O.layer,$=O.transitionOpts,J=O.onComplete,Z=Math.PI/2;function re(Ct){var St=I.gauge.axis.range[0],Ot=I.gauge.axis.range[1],jt=(Ct-St)/(Ot-St)*Math.PI-Z;return jt<-Z?-Z:jt>Z?Z:jt}function ne(Ct){return g.svg.arc().innerRadius((W+U)/2-Ct/2*(U-W)).outerRadius((W+U)/2+Ct/2*(U-W)).startAngle(-Z)}function j(Ct){Ct.attr("d",function(St){return ne(St.thickness).startAngle(re(St.range[0])).endAngle(re(St.range[1]))()})}var ee,ie,fe,be;he.enter().append("g").classed("angular",!0),he.attr("transform",t(se[0],se[1])),G.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),G.selectAll("g.xangularaxistick,path,text").remove(),ee=u(z,I.gauge.axis),ee.type="linear",ee.range=I.gauge.axis.range,ee._id="xangularaxis",ee.ticklabeloverflow="allow",ee.setScale();var Ae=function(Ct){return(ee.range[0]-Ct.x)/(ee.range[1]-ee.range[0])*Math.PI+Math.PI},Be={},Ie=s.makeLabelFns(ee,0),Ze=Ie.labelStandoff;Be.xFn=function(Ct){var St=Ae(Ct);return Math.cos(St)*Ze},Be.yFn=function(Ct){var St=Ae(Ct),Ot=Math.sin(St)>0?.2:1;return-Math.sin(St)*(Ze+Ct.fontSize*Ot)+Math.abs(Math.cos(St))*(Ct.fontSize*o)},Be.anchorFn=function(Ct){var St=Ae(Ct),Ot=Math.cos(St);return Math.abs(Ot)<.1?"middle":Ot>0?"start":"end"},Be.heightFn=function(Ct,St,Ot){var jt=Ae(Ct);return-.5*(1+Math.sin(jt))*Ot};var at=function(Ct){return t(se[0]+U*Math.cos(Ct),se[1]-U*Math.sin(Ct))};fe=function(Ct){return at(Ae(Ct))};var it=function(Ct){var St=Ae(Ct);return at(St)+"rotate("+-r(St)+")"};if(ie=s.calcTicks(ee),be=s.getTickSigns(ee)[2],ee.visible){be=ee.ticks==="inside"?-1:1;var et=(ee.linewidth||1)/2;s.drawTicks(z,ee,{vals:ie,layer:G,path:"M"+be*et+",0h"+be*ee.ticklen,transFn:it}),s.drawLabels(z,ee,{vals:ie,layer:G,transFn:fe,labelFns:Be})}var lt=[Q].concat(I.gauge.steps),Me=he.selectAll("g.bg-arc").data(lt);Me.enter().append("g").classed("bg-arc",!0).append("path"),Me.select("path").call(j).call(b),Me.exit().remove();var ge=ne(I.gauge.bar.thickness),ce=he.selectAll("g.value-arc").data([I.gauge.bar]);ce.enter().append("g").classed("value-arc",!0).append("path");var ze=ce.select("path");w($)?(ze.transition().duration($.duration).ease($.easing).each("end",function(){J&&J()}).each("interrupt",function(){J&&J()}).attrTween("d",d(ge,re(B[0].lastY),re(B[0].y))),I._lastValue=B[0].y):ze.attr("d",typeof B[0].y=="number"?ge.endAngle(re(B[0].y)):"M0,0Z"),ze.call(b),ce.exit().remove(),lt=[];var tt=I.gauge.threshold.value;(tt||tt===0)&&lt.push({range:[tt,tt],color:I.gauge.threshold.color,line:{color:I.gauge.threshold.line.color,width:I.gauge.threshold.line.width},thickness:I.gauge.threshold.thickness});var nt=he.selectAll("g.threshold-arc").data(lt);nt.enter().append("g").classed("threshold-arc",!0).append("path"),nt.select("path").call(j).call(b),nt.exit().remove();var Qe=he.selectAll("g.gauge-outline").data([ue]);Qe.enter().append("g").classed("gauge-outline",!0).append("path"),Qe.select("path").call(j).call(b),Qe.exit().remove()}function m(z,F,B,O){var I=B[0].trace,N=O.numbersX,U=O.numbersY,W=I.align||"center",Q=T[W],ue=O.transitionOpts,se=O.onComplete,he=M.ensureSingle(F,"g","numbers"),G,$,J,Z=[];I._hasNumber&&Z.push("number"),I._hasDelta&&(Z.push("delta"),I.delta.position==="left"&&Z.reverse());var re=he.selectAll("text").data(Z);re.enter().append("text"),re.attr("text-anchor",function(){return Q}).attr("class",function(at){return at}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),re.exit().remove();function ne(at,it,et,lt){if(at.match("s")&&et>=0!=lt>=0&&!it(et).slice(-1).match(_)&&!it(lt).slice(-1).match(_)){var Me=at.slice().replace("s","f").replace(/\d+/,function(ce){return parseInt(ce)-1}),ge=u(z,{tickformat:Me});return function(ce){return Math.abs(ce)<1?s.tickText(ge,ce).text:it(ce)}}else return it}function j(){var at=u(z,{tickformat:I.number.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(ce){return s.tickText(at,ce).text},et=I.number.suffix,lt=I.number.prefix,Me=he.select("text.number");function ge(){var ce=typeof B[0].y=="number"?lt+it(B[0].y)+et:"-";Me.text(ce).call(a.font,I.number.font).call(n.convertToTspans,z)}return w(ue)?Me.transition().duration(ue.duration).ease(ue.easing).each("end",function(){ge(),se&&se()}).each("interrupt",function(){ge(),se&&se()}).attrTween("text",function(){var ce=g.select(this),ze=A(B[0].lastY,B[0].y);I._lastValue=B[0].y;var tt=ne(I.number.valueformat,it,B[0].lastY,B[0].y);return function(nt){ce.text(lt+tt(ze(nt))+et)}}):ge(),G=P(lt+it(B[0].y)+et,I.number.font,Q,z),Me}function ee(){var at=u(z,{tickformat:I.delta.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(nt){return s.tickText(at,nt).text},et=I.delta.suffix,lt=I.delta.prefix,Me=function(nt){var Qe=I.delta.relative?nt.relativeDelta:nt.delta;return Qe},ge=function(nt,Qe){return nt===0||typeof nt!="number"||isNaN(nt)?"-":(nt>0?I.delta.increasing.symbol:I.delta.decreasing.symbol)+lt+Qe(nt)+et},ce=function(nt){return nt.delta>=0?I.delta.increasing.color:I.delta.decreasing.color};I._deltaLastValue===void 0&&(I._deltaLastValue=Me(B[0]));var ze=he.select("text.delta");ze.call(a.font,I.delta.font).call(p.fill,ce({delta:I._deltaLastValue}));function tt(){ze.text(ge(Me(B[0]),it)).call(p.fill,ce(B[0])).call(n.convertToTspans,z)}return w(ue)?ze.transition().duration(ue.duration).ease(ue.easing).tween("text",function(){var nt=g.select(this),Qe=Me(B[0]),Ct=I._deltaLastValue,St=ne(I.delta.valueformat,it,Ct,Qe),Ot=A(Ct,Qe);return I._deltaLastValue=Qe,function(jt){nt.text(ge(Ot(jt),St)),nt.call(p.fill,ce({delta:Ot(jt)}))}}).each("end",function(){tt(),se&&se()}).each("interrupt",function(){tt(),se&&se()}):tt(),$=P(ge(Me(B[0]),it),I.delta.font,Q,z),ze}var ie=I.mode+I.align,fe;if(I._hasDelta&&(fe=ee(),ie+=I.delta.position+I.delta.font.size+I.delta.font.family+I.delta.valueformat,ie+=I.delta.increasing.symbol+I.delta.decreasing.symbol,J=$),I._hasNumber&&(j(),ie+=I.number.font.size+I.number.font.family+I.number.valueformat+I.number.suffix+I.number.prefix,J=G),I._hasDelta&&I._hasNumber){var be=[(G.left+G.right)/2,(G.top+G.bottom)/2],Ae=[($.left+$.right)/2,($.top+$.bottom)/2],Be,Ie,Ze=.75*I.delta.font.size;I.delta.position==="left"&&(Be=L(I,"deltaPos",0,-1*(G.width*l[I.align]+$.width*(1-l[I.align])+Ze),ie,Math.min),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:$.left+Be,right:G.right,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="right"&&(Be=L(I,"deltaPos",0,G.width*(1-l[I.align])+$.width*l[I.align]+Ze,ie,Math.max),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:G.left,right:$.right+Be,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="bottom"&&(Be=null,Ie=$.height,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height,bottom:G.bottom+$.height}),I.delta.position==="top"&&(Be=null,Ie=G.top,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height-$.height,bottom:G.bottom}),fe.attr({dx:Be,dy:Ie})}(I._hasNumber||I._hasDelta)&&he.attr("transform",function(){var at=O.numbersScaler(J);ie+=at[2];var it=L(I,"numbersScale",1,at[0],ie,Math.min),et;I._scaleNumbers||(it=1),I._isAngular?et=U-it*J.bottom:et=U-it*(J.top+J.bottom)/2,I._numbersTop=it*J.top+et;var lt=J[W];W==="center"&&(lt=(J.left+J.right)/2);var Me=N-it*lt;return Me=L(I,"numbersTranslate",0,Me,ie,Math.max),t(Me,et)+e(it)})}function b(z){z.each(function(F){p.stroke(g.select(this),F.line.color)}).each(function(F){p.fill(g.select(this),F.color)}).style("stroke-width",function(F){return F.line.width})}function d(z,F,B){return function(){var O=x(F,B);return function(I){return z.endAngle(O(I))()}}}function u(z,F,B){var O=z._fullLayout,I=M.extendFlat({type:"linear",ticks:"outside",range:B,showline:!0},F),N={type:"linear",_id:"x"+F._id},U={letter:"x",font:O.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function W(Q,ue){return M.coerce(I,N,v,Q,ue)}return c(I,N,W,U,O),h(I,N,W,U),N}function y(z,F,B){var O=Math.min(F/z.width,B/z.height);return[O,z,F+"x"+B]}function f(z,F){var B=Math.sqrt(z.width/2*(z.width/2)+z.height*z.height),O=F/B;return[O,z,F]}function P(z,F,B,O){var I=document.createElementNS("http://www.w3.org/2000/svg","text"),N=g.select(I);return N.text(z).attr("x",0).attr("y",0).attr("text-anchor",B).attr("data-unformatted",z).call(n.convertToTspans,O).call(a.font,F),a.bBox(N.node())}function L(z,F,B,O,I,N){var U="_cache"+F;z[U]&&z[U].key===I||(z[U]={key:I,value:B});var W=M.aggNums(N,null,[z[U].value,O],2);return z[U].value=W,W}}}),nH=Ye({"src/traces/indicator/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"indicator",basePlotModule:tH(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:Bk(),supplyDefaults:rH().supplyDefaults,calc:aH().calc,plot:iH(),meta:{}}}}),oH=Ye({"lib/indicator.js"(X,H){"use strict";H.exports=nH()}}),Uk=Ye({"src/traces/table/attributes.js"(X,H){"use strict";var g=Kg(),x=Oo().extendFlat,A=Ou().overrideAll,M=Au(),e=Wu().attributes,t=Cc().descriptionOnlyNumbers,r=H.exports=A({domain:e({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},M({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:x({},g.align,{arrayOk:!0}),line:{width:{valType:"number",arrayOk:!0,dflt:1},color:{valType:"color",arrayOk:!0,dflt:"grey"}},fill:{color:{valType:"color",arrayOk:!0,dflt:"white"}},font:x({},M({arrayOk:!0}))}},"calc","from-root")}}),sH=Ye({"src/traces/table/defaults.js"(X,H){"use strict";var g=ta(),x=Uk(),A=Wu().defaults;function M(e,t){for(var r=e.columnorder||[],o=e.header.values.length,a=r.slice(0,o),i=a.slice().sort(function(c,h){return c-h}),n=a.map(function(c){return i.indexOf(c)}),s=n.length;s<o;s++)n.push(s);t("columnorder",n)}H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(r,a,i),i("columnwidth"),i("header.values"),i("header.format"),i("header.align"),i("header.prefix"),i("header.suffix"),i("header.height"),i("header.line.width"),i("header.line.color"),i("header.fill.color"),g.coerceFont(i,"header.font",a.font),M(r,i),i("cells.values"),i("cells.format"),i("cells.align"),i("cells.prefix"),i("cells.suffix"),i("cells.height"),i("cells.line.width"),i("cells.line.color"),i("cells.fill.color"),g.coerceFont(i,"cells.font",a.font),r._length=null}}}),lH=Ye({"src/traces/table/calc.js"(X,H){"use strict";var g=kv().wrap;H.exports=function(){return g({})}}}),jk=Ye({"src/traces/table/constants.js"(X,H){"use strict";H.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"<br>",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:"cubic-out",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:"cubic-out",uplift:5,wrapSpacer:" ",wrapSplitCharacter:" ",cn:{table:"table",tableControlView:"table-control-view",scrollBackground:"scroll-background",yColumn:"y-column",columnBlock:"column-block",scrollAreaClip:"scroll-area-clip",scrollAreaClipRect:"scroll-area-clip-rect",columnBoundary:"column-boundary",columnBoundaryClippath:"column-boundary-clippath",columnBoundaryRect:"column-boundary-rect",columnCells:"column-cells",columnCell:"column-cell",cellRect:"cell-rect",cellText:"cell-text",cellTextHolder:"cell-text-holder",scrollbarKit:"scrollbar-kit",scrollbar:"scrollbar",scrollbarSlider:"scrollbar-slider",scrollbarGlyph:"scrollbar-glyph",scrollbarCaptureZone:"scrollbar-capture-zone"}}}}),uH=Ye({"src/traces/table/data_preparation_helper.js"(X,H){"use strict";var g=jk(),x=Oo().extendFlat,A=jo(),M=xp().isTypedArray,e=xp().isArrayOrTypedArray;H.exports=function(v,p){var T=o(p.cells.values),l=function(Q){return Q.slice(p.header.values.length,Q.length)},_=o(p.header.values);_.length&&!_[0].length&&(_[0]=[""],_=o(_));var w=_.concat(l(T).map(function(){return a((_[0]||[""]).length)})),S=p.domain,E=Math.floor(v._fullLayout._size.w*(S.x[1]-S.x[0])),m=Math.floor(v._fullLayout._size.h*(S.y[1]-S.y[0])),b=p.header.values.length?w[0].map(function(){return p.header.height}):[g.emptyHeaderHeight],d=T.length?T[0].map(function(){return p.cells.height}):[],u=b.reduce(r,0),y=m-u,f=y+g.uplift,P=s(d,f),L=s(b,u),z=n(L,[]),F=n(P,z),B={},O=p._fullInput.columnorder;e(O)&&(O=Array.from(O)),O=O.concat(l(T.map(function(Q,ue){return ue})));var I=w.map(function(Q,ue){var se=e(p.columnwidth)?p.columnwidth[Math.min(ue,p.columnwidth.length-1)]:p.columnwidth;return A(se)?Number(se):1}),N=I.reduce(r,0);I=I.map(function(Q){return Q/N*E});var U=Math.max(t(p.header.line.width),t(p.cells.line.width)),W={key:p.uid+v._context.staticPlot,translateX:S.x[0]*v._fullLayout._size.w,translateY:v._fullLayout._size.h*(1-S.y[1]),size:v._fullLayout._size,width:E,maxLineWidth:U,height:m,columnOrder:O,groupHeight:m,rowBlocks:F,headerRowBlocks:z,scrollY:0,cells:x({},p.cells,{values:T}),headerCells:x({},p.header,{values:w}),gdColumns:w.map(function(Q){return Q[0]}),gdColumnsOriginalOrder:w.map(function(Q){return Q[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:w.map(function(Q,ue){var se=B[Q];B[Q]=(se||0)+1;var he=Q+"__"+B[Q];return{key:he,label:Q,specIndex:ue,xIndex:O[ue],xScale:i,x:void 0,calcdata:void 0,columnWidth:I[ue]}})};return W.columns.forEach(function(Q){Q.calcdata=W,Q.x=i(Q)}),W};function t(h){if(e(h)){for(var v=0,p=0;p<h.length;p++)v=Math.max(v,t(h[p]));return v}return h}function r(h,v){return h+v}function o(h){var v=h.slice(),p=1/0,T=0,l;for(l=0;l<v.length;l++)M(v[l])?v[l]=Array.from(v[l]):e(v[l])||(v[l]=[v[l]]),p=Math.min(p,v[l].length),T=Math.max(T,v[l].length);if(p!==T)for(l=0;l<v.length;l++){var _=T-v[l].length;_&&(v[l]=v[l].concat(a(_)))}return v}function a(h){for(var v=new Array(h),p=0;p<h;p++)v[p]="";return v}function i(h){return h.calcdata.columns.reduce(function(v,p){return p.xIndex<h.xIndex?v+p.columnWidth:v},0)}function n(h,v){var p=Object.keys(h);return p.map(function(T){return x({},h[T],{auxiliaryBlocks:v})})}function s(h,v){for(var p={},T,l=0,_=0,w=c(),S=0,E=0,m=0;m<h.length;m++)T=h[m],w.rows.push({rowIndex:m,rowHeight:T}),_+=T,(_>=v||m===h.length-1)&&(p[l]=w,w.key=E++,w.firstRowIndex=S,w.lastRowIndex=m,w=c(),l+=_,S=m+1,_=0);return p}function c(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}}}),cH=Ye({"src/traces/table/data_split_helpers.js"(X){"use strict";var H=Oo().extendFlat;X.splitToPanels=function(x){var A=[0,0],M=H({},x,{key:"header",type:"header",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!0,values:x.calcdata.headerCells.values[x.specIndex],rowBlocks:x.calcdata.headerRowBlocks,calcdata:H({},x.calcdata,{cells:x.calcdata.headerCells})}),e=H({},x,{key:"cells1",type:"cells",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks}),t=H({},x,{key:"cells2",type:"cells",page:1,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks});return[e,t,M]},X.splitToCells=function(x){var A=g(x);return(x.values||[]).slice(A[0],A[1]).map(function(M,e){var t=typeof M=="string"&&M.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:e+t,key:A[0]+e,column:x,calcdata:x.calcdata,page:x.page,rowBlocks:x.rowBlocks,value:M}})};function g(x){var A=x.rowBlocks[x.page],M=A?A.rows[0].rowIndex:0,e=A?M+A.rows.length:0;return[M,e]}}}),Vk=Ye({"src/traces/table/plot.js"(X,H){"use strict";var g=jk(),x=_n(),A=ta(),M=A.numberFormat,e=kv(),t=Bo(),r=jl(),o=ta().raiseToTop,a=ta().strTranslate,i=ta().cancelTransition,n=uH(),s=cH(),c=Fn();H.exports=function(ie,fe){var be=!ie._context.staticPlot,Ae=ie._fullLayout._paper.selectAll("."+g.cn.table).data(fe.map(function(Qe){var Ct=e.unwrap(Qe),St=Ct.trace;return n(ie,St)}),e.keyFun);Ae.exit().remove(),Ae.enter().append("g").classed(g.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),Ae.attr("width",function(Qe){return Qe.width+Qe.size.l+Qe.size.r}).attr("height",function(Qe){return Qe.height+Qe.size.t+Qe.size.b}).attr("transform",function(Qe){return a(Qe.translateX,Qe.translateY)});var Be=Ae.selectAll("."+g.cn.tableControlView).data(e.repeat,e.keyFun),Ie=Be.enter().append("g").classed(g.cn.tableControlView,!0).style("box-sizing","content-box");if(be){var Ze="onwheel"in document?"wheel":"mousewheel";Ie.on("mousemove",function(Qe){Be.filter(function(Ct){return Qe===Ct}).call(l,ie)}).on(Ze,function(Qe){if(!Qe.scrollbarState.wheeling){Qe.scrollbarState.wheeling=!0;var Ct=Qe.scrollY+x.event.deltaY,St=Q(ie,Be,null,Ct)(Qe);St||(x.event.stopPropagation(),x.event.preventDefault()),Qe.scrollbarState.wheeling=!1}}).call(l,ie,!0)}Be.attr("transform",function(Qe){return a(Qe.size.l,Qe.size.t)});var at=Be.selectAll("."+g.cn.scrollBackground).data(e.repeat,e.keyFun);at.enter().append("rect").classed(g.cn.scrollBackground,!0).attr("fill","none"),at.attr("width",function(Qe){return Qe.width}).attr("height",function(Qe){return Qe.height}),Be.each(function(Qe){t.setClipUrl(x.select(this),v(ie,Qe),ie)});var it=Be.selectAll("."+g.cn.yColumn).data(function(Qe){return Qe.columns},e.keyFun);it.enter().append("g").classed(g.cn.yColumn,!0),it.exit().remove(),it.attr("transform",function(Qe){return a(Qe.x,0)}),be&&it.call(x.behavior.drag().origin(function(Qe){var Ct=x.select(this);return B(Ct,Qe,-g.uplift),o(this),Qe.calcdata.columnDragInProgress=!0,l(Be.filter(function(St){return Qe.calcdata.key===St.key}),ie),Qe}).on("drag",function(Qe){var Ct=x.select(this),St=function(ur){return(Qe===ur?x.event.x:ur.x)+ur.columnWidth/2};Qe.x=Math.max(-g.overdrag,Math.min(Qe.calcdata.width+g.overdrag-Qe.columnWidth,x.event.x));var Ot=T(it).filter(function(ur){return ur.calcdata.key===Qe.calcdata.key}),jt=Ot.sort(function(ur,ar){return St(ur)-St(ar)});jt.forEach(function(ur,ar){ur.xIndex=ar,ur.x=Qe===ur?ur.x:ur.xScale(ur)}),it.filter(function(ur){return Qe!==ur}).transition().ease(g.transitionEase).duration(g.transitionDuration).attr("transform",function(ur){return a(ur.x,0)}),Ct.call(i).attr("transform",a(Qe.x,-g.uplift))}).on("dragend",function(Qe){var Ct=x.select(this),St=Qe.calcdata;Qe.x=Qe.xScale(Qe),Qe.calcdata.columnDragInProgress=!1,B(Ct,Qe,0),z(ie,St,St.columns.map(function(Ot){return Ot.xIndex}))})),it.each(function(Qe){t.setClipUrl(x.select(this),p(ie,Qe),ie)});var et=it.selectAll("."+g.cn.columnBlock).data(s.splitToPanels,e.keyFun);et.enter().append("g").classed(g.cn.columnBlock,!0).attr("id",function(Qe){return Qe.key}),et.style("cursor",function(Qe){return Qe.dragHandle?"ew-resize":Qe.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var lt=et.filter(I),Me=et.filter(O);be&&Me.call(x.behavior.drag().origin(function(Qe){return x.event.stopPropagation(),Qe}).on("drag",Q(ie,Be,-1)).on("dragend",function(){})),_(ie,Be,lt,et),_(ie,Be,Me,et);var ge=Be.selectAll("."+g.cn.scrollAreaClip).data(e.repeat,e.keyFun);ge.enter().append("clipPath").classed(g.cn.scrollAreaClip,!0).attr("id",function(Qe){return v(ie,Qe)});var ce=ge.selectAll("."+g.cn.scrollAreaClipRect).data(e.repeat,e.keyFun);ce.enter().append("rect").classed(g.cn.scrollAreaClipRect,!0).attr("x",-g.overdrag).attr("y",-g.uplift).attr("fill","none"),ce.attr("width",function(Qe){return Qe.width+2*g.overdrag}).attr("height",function(Qe){return Qe.height+g.uplift});var ze=it.selectAll("."+g.cn.columnBoundary).data(e.repeat,e.keyFun);ze.enter().append("g").classed(g.cn.columnBoundary,!0);var tt=it.selectAll("."+g.cn.columnBoundaryClippath).data(e.repeat,e.keyFun);tt.enter().append("clipPath").classed(g.cn.columnBoundaryClippath,!0),tt.attr("id",function(Qe){return p(ie,Qe)});var nt=tt.selectAll("."+g.cn.columnBoundaryRect).data(e.repeat,e.keyFun);nt.enter().append("rect").classed(g.cn.columnBoundaryRect,!0).attr("fill","none"),nt.attr("width",function(Qe){return Qe.columnWidth+2*h(Qe)}).attr("height",function(Qe){return Qe.calcdata.height+2*h(Qe)+g.uplift}).attr("x",function(Qe){return-h(Qe)}).attr("y",function(Qe){return-h(Qe)}),W(null,Me,Be)};function h(ee){return Math.ceil(ee.calcdata.maxLineWidth/2)}function v(ee,ie){return"clip"+ee._fullLayout._uid+"_scrollAreaBottomClip_"+ie.key}function p(ee,ie){return"clip"+ee._fullLayout._uid+"_columnBoundaryClippath_"+ie.calcdata.key+"_"+ie.specIndex}function T(ee){return[].concat.apply([],ee.map(function(ie){return ie})).map(function(ie){return ie.__data__})}function l(ee,ie,fe){function be(it){var et=it.rowBlocks;return J(et,et.length-1)+(et.length?Z(et[et.length-1],1/0):1)}var Ae=ee.selectAll("."+g.cn.scrollbarKit).data(e.repeat,e.keyFun);Ae.enter().append("g").classed(g.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),Ae.each(function(it){var et=it.scrollbarState;et.totalHeight=be(it),et.scrollableAreaHeight=it.groupHeight-N(it),et.currentlyVisibleHeight=Math.min(et.totalHeight,et.scrollableAreaHeight),et.ratio=et.currentlyVisibleHeight/et.totalHeight,et.barLength=Math.max(et.ratio*et.currentlyVisibleHeight,g.goldenRatio*g.scrollbarWidth),et.barWiggleRoom=et.currentlyVisibleHeight-et.barLength,et.wiggleRoom=Math.max(0,et.totalHeight-et.scrollableAreaHeight),et.topY=et.barWiggleRoom===0?0:it.scrollY/et.wiggleRoom*et.barWiggleRoom,et.bottomY=et.topY+et.barLength,et.dragMultiplier=et.wiggleRoom/et.barWiggleRoom}).attr("transform",function(it){var et=it.width+g.scrollbarWidth/2+g.scrollbarOffset;return a(et,N(it))});var Be=Ae.selectAll("."+g.cn.scrollbar).data(e.repeat,e.keyFun);Be.enter().append("g").classed(g.cn.scrollbar,!0);var Ie=Be.selectAll("."+g.cn.scrollbarSlider).data(e.repeat,e.keyFun);Ie.enter().append("g").classed(g.cn.scrollbarSlider,!0),Ie.attr("transform",function(it){return a(0,it.scrollbarState.topY||0)});var Ze=Ie.selectAll("."+g.cn.scrollbarGlyph).data(e.repeat,e.keyFun);Ze.enter().append("line").classed(g.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",g.scrollbarWidth).attr("stroke-linecap","round").attr("y1",g.scrollbarWidth/2),Ze.attr("y2",function(it){return it.scrollbarState.barLength-g.scrollbarWidth/2}).attr("stroke-opacity",function(it){return it.columnDragInProgress||!it.scrollbarState.barWiggleRoom||fe?0:.4}),Ze.transition().delay(0).duration(0),Ze.transition().delay(g.scrollbarHideDelay).duration(g.scrollbarHideDuration).attr("stroke-opacity",0);var at=Be.selectAll("."+g.cn.scrollbarCaptureZone).data(e.repeat,e.keyFun);at.enter().append("line").classed(g.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",g.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(it){var et=x.event.y,lt=this.getBoundingClientRect(),Me=it.scrollbarState,ge=et-lt.top,ce=x.scale.linear().domain([0,Me.scrollableAreaHeight]).range([0,Me.totalHeight]).clamp(!0);Me.topY<=ge&&ge<=Me.bottomY||Q(ie,ee,null,ce(ge-Me.barLength/2))(it)}).call(x.behavior.drag().origin(function(it){return x.event.stopPropagation(),it.scrollbarState.scrollbarScrollInProgress=!0,it}).on("drag",Q(ie,ee)).on("dragend",function(){})),at.attr("y2",function(it){return it.scrollbarState.scrollableAreaHeight}),ie._context.staticPlot&&(Ze.remove(),at.remove())}function _(ee,ie,fe,be){var Ae=w(fe),Be=S(Ae);d(Be);var Ie=E(Be);y(Ie);var Ze=b(Be),at=m(Ze);u(at),f(at,ie,be,ee),$(Be)}function w(ee){var ie=ee.selectAll("."+g.cn.columnCells).data(e.repeat,e.keyFun);return ie.enter().append("g").classed(g.cn.columnCells,!0),ie.exit().remove(),ie}function S(ee){var ie=ee.selectAll("."+g.cn.columnCell).data(s.splitToCells,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.columnCell,!0),ie.exit().remove(),ie}function E(ee){var ie=ee.selectAll("."+g.cn.cellRect).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("rect").classed(g.cn.cellRect,!0),ie}function m(ee){var ie=ee.selectAll("."+g.cn.cellText).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("text").classed(g.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){x.event.stopPropagation()}),ie}function b(ee){var ie=ee.selectAll("."+g.cn.cellTextHolder).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),ie}function d(ee){ee.each(function(ie,fe){var be=ie.calcdata.cells.font,Ae=ie.column.specIndex,Be={size:F(be.size,Ae,fe),color:F(be.color,Ae,fe),family:F(be.family,Ae,fe),weight:F(be.weight,Ae,fe),style:F(be.style,Ae,fe),variant:F(be.variant,Ae,fe),textcase:F(be.textcase,Ae,fe),lineposition:F(be.lineposition,Ae,fe),shadow:F(be.shadow,Ae,fe)};ie.rowNumber=ie.key,ie.align=F(ie.calcdata.cells.align,Ae,fe),ie.cellBorderWidth=F(ie.calcdata.cells.line.width,Ae,fe),ie.font=Be})}function u(ee){ee.each(function(ie){t.font(x.select(this),ie.font)})}function y(ee){ee.attr("width",function(ie){return ie.column.columnWidth}).attr("stroke-width",function(ie){return ie.cellBorderWidth}).each(function(ie){var fe=x.select(this);c.stroke(fe,F(ie.calcdata.cells.line.color,ie.column.specIndex,ie.rowNumber)),c.fill(fe,F(ie.calcdata.cells.fill.color,ie.column.specIndex,ie.rowNumber))})}function f(ee,ie,fe,be){ee.text(function(Ae){var Be=Ae.column.specIndex,Ie=Ae.rowNumber,Ze=Ae.value,at=typeof Ze=="string",it=at&&Ze.match(/<br>/i),et=!at||it;Ae.mayHaveMarkup=at&&Ze.match(/[<&>]/);var lt=P(Ze);Ae.latex=lt;var Me=lt?"":F(Ae.calcdata.cells.prefix,Be,Ie)||"",ge=lt?"":F(Ae.calcdata.cells.suffix,Be,Ie)||"",ce=lt?null:F(Ae.calcdata.cells.format,Be,Ie)||null,ze=Me+(ce?M(ce)(Ae.value):Ae.value)+ge,tt;Ae.wrappingNeeded=!Ae.wrapped&&!et&&!lt&&(tt=L(ze)),Ae.cellHeightMayIncrease=it||lt||Ae.mayHaveMarkup||(tt===void 0?L(ze):tt),Ae.needsConvertToTspans=Ae.mayHaveMarkup||Ae.wrappingNeeded||Ae.latex;var nt;if(Ae.wrappingNeeded){var Qe=g.wrapSplitCharacter===" "?ze.replace(/<a href=/ig,"<a_href="):ze,Ct=Qe.split(g.wrapSplitCharacter),St=g.wrapSplitCharacter===" "?Ct.map(function(Ot){return Ot.replace(/<a_href=/ig,"<a href=")}):Ct;Ae.fragments=St.map(function(Ot){return{text:Ot,width:null}}),Ae.fragments.push({fragment:g.wrapSpacer,width:null}),nt=St.join(g.lineBreaker)+g.lineBreaker+g.wrapSpacer}else delete Ae.fragments,nt=ze;return nt}).attr("dy",function(Ae){return Ae.needsConvertToTspans?0:"0.75em"}).each(function(Ae){var Be=this,Ie=x.select(Be),Ze=Ae.wrappingNeeded?se:he;Ae.needsConvertToTspans?r.convertToTspans(Ie,be,Ze(fe,Be,ie,be,Ae)):x.select(Be.parentNode).attr("transform",function(at){return a(G(at),g.cellPad)}).attr("text-anchor",function(at){return{left:"start",center:"middle",right:"end"}[at.align]})})}function P(ee){return typeof ee=="string"&&ee.match(g.latexCheck)}function L(ee){return ee.indexOf(g.wrapSplitCharacter)!==-1}function z(ee,ie,fe){var be=ie.gdColumnsOriginalOrder;ie.gdColumns.sort(function(Ae,Be){return fe[be.indexOf(Ae)]-fe[be.indexOf(Be)]}),ie.columnorder=fe,ee.emit("plotly_restyle")}function F(ee,ie,fe){if(A.isArrayOrTypedArray(ee)){var be=ee[Math.min(ie,ee.length-1)];return A.isArrayOrTypedArray(be)?be[Math.min(fe,be.length-1)]:be}else return ee}function B(ee,ie,fe){ee.transition().ease(g.releaseTransitionEase).duration(g.releaseTransitionDuration).attr("transform",a(ie.x,fe))}function O(ee){return ee.type==="cells"}function I(ee){return ee.type==="header"}function N(ee){var ie=ee.rowBlocks.length?ee.rowBlocks[0].auxiliaryBlocks:[];return ie.reduce(function(fe,be){return fe+Z(be,1/0)},0)}function U(ee,ie,fe){for(var be=[],Ae=0,Be=0;Be<ee.length;Be++){for(var Ie=ee[Be],Ze=Ie.rows,at=0,it=0;it<Ze.length;it++)at+=Ze[it].rowHeight;Ie.allRowsHeight=at;var et=Ae+at,lt=ie,Me=lt+fe;lt<et&&Me>Ae&&be.push(Be),Ae+=at}return be}function W(ee,ie,fe){var be=T(ie)[0];if(be!==void 0){var Ae=be.rowBlocks,Be=be.calcdata,Ie=J(Ae,Ae.length),Ze=be.calcdata.groupHeight-N(be),at=Be.scrollY=Math.max(0,Math.min(Ie-Ze,Be.scrollY)),it=U(Ae,at,Ze);it.length===1&&(it[0]===Ae.length-1?it.unshift(it[0]-1):it.push(it[0]+1)),it[0]%2&&it.reverse(),ie.each(function(et,lt){et.page=it[lt],et.scrollY=at}),ie.attr("transform",function(et){var lt=J(et.rowBlocks,et.page)-et.scrollY;return a(0,lt)}),ee&&(ue(ee,fe,ie,it,be.prevPages,be,0),ue(ee,fe,ie,it,be.prevPages,be,1),l(fe,ee))}}function Q(ee,ie,fe,be){return function(Be){var Ie=Be.calcdata?Be.calcdata:Be,Ze=ie.filter(function(lt){return Ie.key===lt.key}),at=fe||Ie.scrollbarState.dragMultiplier,it=Ie.scrollY;Ie.scrollY=be===void 0?Ie.scrollY+at*x.event.dy:be;var et=Ze.selectAll("."+g.cn.yColumn).selectAll("."+g.cn.columnBlock).filter(O);return W(ee,et,Ze),Ie.scrollY===it}}function ue(ee,ie,fe,be,Ae,Be,Ie){var Ze=be[Ie]!==Ae[Ie];Ze&&(clearTimeout(Be.currentRepaint[Ie]),Be.currentRepaint[Ie]=setTimeout(function(){var at=fe.filter(function(it,et){return et===Ie&&be[et]!==Ae[et]});_(ee,ie,at,fe),Ae[Ie]=be[Ie]}))}function se(ee,ie,fe,be){return function(){var Be=x.select(ie.parentNode);Be.each(function(Ie){var Ze=Ie.fragments;Be.selectAll("tspan.line").each(function(ze,tt){Ze[tt].width=this.getComputedTextLength()});var at=Ze[Ze.length-1].width,it=Ze.slice(0,-1),et=[],lt,Me,ge=0,ce=Ie.column.columnWidth-2*g.cellPad;for(Ie.value="";it.length;)lt=it.shift(),Me=lt.width+at,ge+Me>ce&&(Ie.value+=et.join(g.wrapSpacer)+g.lineBreaker,et=[],ge=0),et.push(lt.text),ge+=Me;ge&&(Ie.value+=et.join(g.wrapSpacer)),Ie.wrapped=!0}),Be.selectAll("tspan.line").remove(),f(Be.select("."+g.cn.cellText),fe,ee,be),x.select(ie.parentNode.parentNode).call($)}}function he(ee,ie,fe,be,Ae){return function(){if(!Ae.settledY){var Ie=x.select(ie.parentNode),Ze=ne(Ae),at=Ae.key-Ze.firstRowIndex,it=Ze.rows[at].rowHeight,et=Ae.cellHeightMayIncrease?ie.parentNode.getBoundingClientRect().height+2*g.cellPad:it,lt=Math.max(et,it),Me=lt-Ze.rows[at].rowHeight;Me&&(Ze.rows[at].rowHeight=lt,ee.selectAll("."+g.cn.columnCell).call($),W(null,ee.filter(O),0),l(fe,be,!0)),Ie.attr("transform",function(){var ge=this,ce=ge.parentNode,ze=ce.getBoundingClientRect(),tt=x.select(ge.parentNode).select("."+g.cn.cellRect).node().getBoundingClientRect(),nt=ge.transform.baseVal.consolidate(),Qe=tt.top-ze.top+(nt?nt.matrix.f:g.cellPad);return a(G(Ae,x.select(ge.parentNode).select("."+g.cn.cellTextHolder).node().getBoundingClientRect().width),Qe)}),Ae.settledY=!0}}}function G(ee,ie){switch(ee.align){case"left":return g.cellPad;case"right":return ee.column.columnWidth-(ie||0)-g.cellPad;case"center":return(ee.column.columnWidth-(ie||0))/2;default:return g.cellPad}}function $(ee){ee.attr("transform",function(ie){var fe=ie.rowBlocks[0].auxiliaryBlocks.reduce(function(Ie,Ze){return Ie+Z(Ze,1/0)},0),be=ne(ie),Ae=Z(be,ie.key),Be=Ae+fe;return a(0,Be)}).selectAll("."+g.cn.cellRect).attr("height",function(ie){return j(ne(ie),ie.key).rowHeight})}function J(ee,ie){for(var fe=0,be=ie-1;be>=0;be--)fe+=re(ee[be]);return fe}function Z(ee,ie){for(var fe=0,be=0;be<ee.rows.length&&ee.rows[be].rowIndex<ie;be++)fe+=ee.rows[be].rowHeight;return fe}function re(ee){var ie=ee.allRowsHeight;if(ie!==void 0)return ie;for(var fe=0,be=0;be<ee.rows.length;be++)fe+=ee.rows[be].rowHeight;return ee.allRowsHeight=fe,fe}function ne(ee){return ee.rowBlocks[ee.page]}function j(ee,ie){return ee.rows[ie-ee.firstRowIndex]}}}),fH=Ye({"src/traces/table/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=Vk(),x="table";X.name=x,X.plot=function(A){var M=H(A.calcdata,x)[0];M.length&&g(A,M)},X.clean=function(A,M,e,t){var r=t._has&&t._has(x),o=M._has&&M._has(x);r&&!o&&t._paperdiv.selectAll(".table").remove()}}}),hH=Ye({"src/traces/table/index.js"(X,H){"use strict";H.exports={attributes:Uk(),supplyDefaults:sH(),calc:lH(),plot:Vk(),moduleType:"trace",name:"table",basePlotModule:fH(),categories:["noOpacity"],meta:{}}}}),pH=Ye({"lib/table.js"(X,H){"use strict";H.exports=hH()}}),dH=Ye({"src/traces/carpet/axis_attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Vh(),M=Cc().descriptionWithDates,e=Ou().overrideAll,t=Uh().dash,r=Oo().extendFlat;H.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:g({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:A.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:r({},A.labelalias,{editType:"calc"}),tickfont:g({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:M("tick label")},tickformatstops:e(A.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:x.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:r({},t,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:r({},t,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:x.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}}}),LT=Ye({"src/traces/carpet/attributes.js"(X,H){"use strict";var g=Au(),x=dH(),A=Gf(),M=g({editType:"calc"}),e=Pc().zorder;M.family.dflt='"Open Sans", verdana, arial, sans-serif',M.size.dflt=12,M.color.dflt=A.defaultLine,H.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:x,baxis:x,font:M,color:{valType:"color",dflt:A.defaultLine,editType:"plot"},zorder:e}}}),vH=Ye({"src/traces/carpet/xy_defaults.js"(X,H){"use strict";var g=ta().isArray1D;H.exports=function(A,M,e){var t=e("x"),r=t&&t.length,o=e("y"),a=o&&o.length;if(!r&&!a)return!1;if(M._cheater=!t,(!r||g(t))&&(!a||g(o))){var i=r?t.length:1/0;a&&(i=Math.min(i,o.length)),M.a&&M.a.length&&(i=Math.min(i,M.a.length)),M.b&&M.b.length&&(i=Math.min(i,M.b.length)),M._length=i}else M._length=null;return!0}}}),mH=Ye({"src/traces/carpet/axis_defaults.js"(X,H){"use strict";var g=LT(),x=Fn().addOpacity,A=Hn(),M=ta(),e=Zg(),t=$m(),r=Qm(),o=P2(),a=wv(),i=r1();H.exports=function(c,h,v){var p=v.letter,T=v.font||{},l=g[p+"axis"];function _(U,W){return M.coerce(c,h,l,U,W)}function w(U,W){return M.coerce2(c,h,l,U,W)}v.name&&(h._name=v.name,h._id=v.name),_("autotypenumbers",v.autotypenumbersDflt);var S=_("type");if(S==="-"&&(v.data&&n(h,v.data),h.type==="-"?h.type="linear":S=c.type=h.type),_("smoothing"),_("cheatertype"),_("showticklabels"),_("labelprefix",p+" = "),_("labelsuffix"),_("showtickprefix"),_("showticksuffix"),_("separatethousands"),_("tickformat"),_("exponentformat"),_("minexponent"),_("showexponent"),_("categoryorder"),_("tickmode"),_("tickvals"),_("ticktext"),_("tick0"),_("dtick"),h.tickmode==="array"&&(_("arraytick0"),_("arraydtick")),_("labelpadding"),h._hovertitle=p,S==="date"){var E=A.getComponentMethod("calendars","handleDefaults");E(c,h,"calendar",v.calendar)}a(h,v.fullLayout),h.c2p=M.identity;var m=_("color",v.dfltColor),b=m===c.color?m:T.color,d=_("title.text");d&&(M.coerceFont(_,"title.font",T,{overrideDflt:{size:M.bigFont(T.size),color:b}}),_("title.offset")),_("tickangle");var u=_("autorange",!h.isValidRange(c.range));u&&_("rangemode"),_("range"),h.cleanRange(),_("fixedrange"),e(c,h,_,S),r(c,h,_,S,v),t(c,h,_,S,v),o(c,h,_,{data:v.data,dataAttr:p});var y=w("gridcolor",x(m,.3)),f=w("gridwidth"),P=w("griddash"),L=_("showgrid");L||(delete h.gridcolor,delete h.gridwidth,delete h.griddash);var z=w("startlinecolor",m),F=w("startlinewidth",f),B=_("startline",h.showgrid||!!z||!!F);B||(delete h.startlinecolor,delete h.startlinewidth);var O=w("endlinecolor",m),I=w("endlinewidth",f),N=_("endline",h.showgrid||!!O||!!I);return N||(delete h.endlinecolor,delete h.endlinewidth),L?(_("minorgridcount"),_("minorgridwidth",f),_("minorgriddash",P),_("minorgridcolor",x(y,.06)),h.minorgridcount||(delete h.minorgridwidth,delete h.minorgriddash,delete h.minorgridcolor)):(delete h.gridcolor,delete h.gridwidth,delete h.griddash),h.showticklabels==="none"&&(delete h.tickfont,delete h.tickangle,delete h.showexponent,delete h.exponentformat,delete h.minexponent,delete h.tickformat,delete h.showticksuffix,delete h.showtickprefix),h.showticksuffix||delete h.ticksuffix,h.showtickprefix||delete h.tickprefix,_("tickmode"),h};function n(s,c){if(s.type==="-"){var h=s._id,v=h.charAt(0),p=v+"calendar",T=s[p];s.type=i(c,T,{autotypenumbers:s.autotypenumbers})}}}}),gH=Ye({"src/traces/carpet/ab_defaults.js"(X,H){"use strict";var g=mH(),x=cl();H.exports=function(e,t,r,o,a){var i=o("a");i||(o("da"),o("a0"));var n=o("b");n||(o("db"),o("b0")),A(e,t,r,a)};function A(M,e,t,r){var o=["aaxis","baxis"];o.forEach(function(a){var i=a.charAt(0),n=M[a]||{},s=x.newContainer(e,a),c={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:i+"axis",letter:i,font:e.font,name:a,data:M[i],calendar:e.calendar,dfltColor:r,bgColor:t.paper_bgcolor,autotypenumbersDflt:t.autotypenumbers,fullLayout:t};g(n,s,c),s._categories=s._categories||[],!M[a]&&n.type!=="-"&&(M[a]={type:n.type})})}}}),yH=Ye({"src/traces/carpet/defaults.js"(X,H){"use strict";var g=ta(),x=vH(),A=gH(),M=LT(),e=Gf();H.exports=function(r,o,a,i){function n(h,v){return g.coerce(r,o,M,h,v)}o._clipPathId="clip"+o.uid+"carpet";var s=n("color",e.defaultLine);if(g.coerceFont(n,"font",i.font),n("carpet"),A(r,o,i,n,s),!o.a||!o.b){o.visible=!1;return}o.a.length<3&&(o.aaxis.smoothing=0),o.b.length<3&&(o.baxis.smoothing=0);var c=x(r,o,n);c||(o.visible=!1),o._cheater&&n("cheaterslope"),n("zorder")}}}),qk=Ye({"src/traces/carpet/map_1d_array.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(A,M,e){var t;for(g(A)?A.length>M.length&&(A=A.slice(0,M.length)):A=[],t=0;t<M.length;t++)A[t]=e(M[t]);return A}}}),Hk=Ye({"src/traces/carpet/makepath.js"(X,H){"use strict";H.exports=function(x,A,M){if(x.length===0)return"";var e,t=[],r=M?3:1;for(e=0;e<x.length;e+=r)t.push(x[e]+","+A[e]),M&&e<x.length-r&&(t.push("C"),t.push([x[e+1]+","+A[e+1],x[e+2]+","+A[e+2]+" "].join(" ")));return t.join(M?"":"L")}}}),_H=Ye({"src/traces/carpet/orient_text.js"(X,H){"use strict";H.exports=function(x,A,M,e,t,r){var o=t[0]*x.dpdx(A),a=t[1]*x.dpdy(M),i=1,n=1;if(r){var s=Math.sqrt(t[0]*t[0]+t[1]*t[1]),c=Math.sqrt(r[0]*r[0]+r[1]*r[1]),h=(t[0]*r[0]+t[1]*r[1])/s/c;n=Math.max(0,h)}var v=Math.atan2(a,o)*180/Math.PI;return v<-90?(v+=180,i=-i):v>90&&(v-=180,i=-i),{angle:v,flip:i,p:x.c2p(e,A,M),offsetMultplier:n}}}}),xH=Ye({"src/traces/carpet/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=qk(),M=Hk(),e=_H(),t=jl(),r=ta(),o=r.strRotate,a=r.strTranslate,i=oh();H.exports=function(_,w,S,E){var m=_._context.staticPlot,b=w.xaxis,d=w.yaxis,u=_._fullLayout,y=u._clips;r.makeTraceGroups(E,S,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace,F=z.aaxis,B=z.baxis,O=r.ensureSingle(P,"g","minorlayer"),I=r.ensureSingle(P,"g","majorlayer"),N=r.ensureSingle(P,"g","boundarylayer"),U=r.ensureSingle(P,"g","labellayer");P.style("opacity",z.opacity),s(b,d,I,F,"a",F._gridlines,!0,m),s(b,d,I,B,"b",B._gridlines,!0,m),s(b,d,O,F,"a",F._minorgridlines,!0,m),s(b,d,O,B,"b",B._minorgridlines,!0,m),s(b,d,N,F,"a-boundary",F._boundarylines,m),s(b,d,N,B,"b-boundary",B._boundarylines,m);var W=c(_,b,d,z,L,U,F._labels,"a-label"),Q=c(_,b,d,z,L,U,B._labels,"b-label");h(_,U,z,L,b,d,W,Q),n(z,L,y,b,d)})};function n(l,_,w,S,E){var m,b,d,u,y=w.select("#"+l._clipPathId);y.size()||(y=w.append("clipPath").classed("carpetclip",!0));var f=r.ensureSingle(y,"path","carpetboundary"),P=_.clipsegments,L=[];for(u=0;u<P.length;u++)m=P[u],b=A([],m.x,S.c2p),d=A([],m.y,E.c2p),L.push(M(b,d,m.bicubic));var z="M"+L.join("L")+"Z";y.attr("id",l._clipPathId),f.attr("d",z)}function s(l,_,w,S,E,m,b){var d="const-"+E+"-lines",u=w.selectAll("."+d).data(m);u.enter().append("path").classed(d,!0).style("vector-effect",b?"none":"non-scaling-stroke"),u.each(function(y){var f=y,P=f.x,L=f.y,z=A([],P,l.c2p),F=A([],L,_.c2p),B="M"+M(z,F,f.smoothing),O=g.select(this);O.attr("d",B).style("stroke-width",f.width).style("stroke",f.color).style("stroke-dasharray",x.dashStyle(f.dash,f.width)).style("fill","none")}),u.exit().remove()}function c(l,_,w,S,E,m,b,d){var u=m.selectAll("text."+d).data(b);u.enter().append("text").classed(d,!0);var y=0,f={};return u.each(function(P,L){var z;if(P.axis.tickangle==="auto")z=e(S,_,w,P.xy,P.dxy);else{var F=(P.axis.tickangle+180)*Math.PI/180;z=e(S,_,w,P.xy,[Math.cos(F),Math.sin(F)])}L||(f={angle:z.angle,flip:z.flip});var B=(P.endAnchor?-1:1)*z.flip,O=g.select(this).attr({"text-anchor":B>0?"start":"end","data-notex":1}).call(x.font,P.font).text(P.text).call(t.convertToTspans,l),I=x.bBox(this);O.attr("transform",a(z.p[0],z.p[1])+o(z.angle)+a(P.axis.labelpadding*B,I.height*.3)),y=Math.max(y,I.width+P.axis.labelpadding)}),u.exit().remove(),f.maxExtent=y,f}function h(l,_,w,S,E,m,b,d){var u,y,f,P,L=r.aggNums(Math.min,null,w.a),z=r.aggNums(Math.max,null,w.a),F=r.aggNums(Math.min,null,w.b),B=r.aggNums(Math.max,null,w.b);u=.5*(L+z),y=F,f=w.ab2xy(u,y,!0),P=w.dxyda_rough(u,y),b.angle===void 0&&r.extendFlat(b,e(w,E,m,f,w.dxydb_rough(u,y))),T(l,_,w,S,f,P,w.aaxis,E,m,b,"a-title"),u=L,y=.5*(F+B),f=w.ab2xy(u,y,!0),P=w.dxydb_rough(u,y),d.angle===void 0&&r.extendFlat(d,e(w,E,m,f,w.dxyda_rough(u,y))),T(l,_,w,S,f,P,w.baxis,E,m,d,"b-title")}var v=i.LINE_SPACING,p=(1-i.MID_SHIFT)/v+1;function T(l,_,w,S,E,m,b,d,u,y,f){var P=[];b.title.text&&P.push(b.title.text);var L=_.selectAll("text."+f).data(P),z=y.maxExtent;L.enter().append("text").classed(f,!0),L.each(function(){var F=e(w,d,u,E,m);["start","both"].indexOf(b.showticklabels)===-1&&(z=0);var B=b.title.font.size;z+=B+b.title.offset;var O=y.angle+(y.flip<0?180:0),I=(O-F.angle+450)%360,N=I>90&&I<270,U=g.select(this);U.text(b.title.text).call(t.convertToTspans,l),N&&(z=(-t.lineCount(U)+p)*v*B-z),U.attr("transform",a(F.p[0],F.p[1])+o(F.angle)+a(0,z)).attr("text-anchor","middle").call(x.font,b.title.font)}),L.exit().remove()}}}),bH=Ye({"src/traces/carpet/cheater_basis.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M){var e,t,r,o,a,i,n=[],s=g(x)?x.length:x,c=g(A)?A.length:A,h=g(x)?x:null,v=g(A)?A:null;h&&(r=(h.length-1)/(h[h.length-1]-h[0])/(s-1)),v&&(o=(v.length-1)/(v[v.length-1]-v[0])/(c-1));var p,T=1/0,l=-1/0;for(t=0;t<c;t++)for(n[t]=[],i=v?(v[t]-v[0])*o:t/(c-1),e=0;e<s;e++)a=h?(h[e]-h[0])*r:e/(s-1),p=a-i*M,T=Math.min(p,T),l=Math.max(p,l),n[t][e]=p;var _=1/(l-T),w=-T*_;for(t=0;t<c;t++)for(e=0;e<s;e++)n[t][e]=_*n[t][e]+w;return n}}}),wH=Ye({"src/traces/carpet/array_minmax.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(A){return x(A,0)};function x(A,M){if(!g(A)||M>=10)return null;for(var e=1/0,t=-1/0,r=A.length,o=0;o<r;o++){var a=A[o];if(g(a)){var i=x(a,M+1);i&&(e=Math.min(i[0],e),t=Math.max(i[1],t))}else e=Math.min(a,e),t=Math.max(a,t)}return[e,t]}}}),TH=Ye({"src/traces/carpet/calc_gridlines.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e,t){var r,o,a,i,n,s,c,h,v,p,T,l,_,w,S=M["_"+e],E=M[e+"axis"],m=E._gridlines=[],b=E._minorgridlines=[],d=E._boundarylines=[],u=M["_"+t],y=M[t+"axis"];E.tickmode==="array"&&(E.tickvals=S.slice());var f=M._xctrl,P=M._yctrl,L=f[0].length,z=f.length,F=M._a.length,B=M._b.length;g.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var O=E.smoothing?3:1;function I(U){var W,Q,ue,se,he,G,$,J,Z,re,ne,j,ee=[],ie=[],fe={};if(e==="b")for(Q=M.b2j(U),ue=Math.floor(Math.max(0,Math.min(B-2,Q))),se=Q-ue,fe.length=B,fe.crossLength=F,fe.xy=function(be){return M.evalxy([],be,Q)},fe.dxy=function(be,Ae){return M.dxydi([],be,ue,Ae,se)},W=0;W<F;W++)G=Math.min(F-2,W),$=W-G,J=M.evalxy([],W,Q),y.smoothing&&W>0&&(Z=M.dxydi([],W-1,ue,0,se),ee.push(he[0]+Z[0]/3),ie.push(he[1]+Z[1]/3),re=M.dxydi([],W-1,ue,1,se),ee.push(J[0]-re[0]/3),ie.push(J[1]-re[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;else for(W=M.a2i(U),G=Math.floor(Math.max(0,Math.min(F-2,W))),$=W-G,fe.length=F,fe.crossLength=B,fe.xy=function(be){return M.evalxy([],W,be)},fe.dxy=function(be,Ae){return M.dxydj([],G,be,$,Ae)},Q=0;Q<B;Q++)ue=Math.min(B-2,Q),se=Q-ue,J=M.evalxy([],W,Q),y.smoothing&&Q>0&&(ne=M.dxydj([],G,Q-1,$,0),ee.push(he[0]+ne[0]/3),ie.push(he[1]+ne[1]/3),j=M.dxydj([],G,Q-1,$,1),ee.push(J[0]-j[0]/3),ie.push(J[1]-j[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;return fe.axisLetter=e,fe.axis=E,fe.crossAxis=y,fe.value=U,fe.constvar=t,fe.index=h,fe.x=ee,fe.y=ie,fe.smoothing=y.smoothing,fe}function N(U){var W,Q,ue,se,he,G=[],$=[],J={};if(J.length=S.length,J.crossLength=u.length,e==="b")for(ue=Math.max(0,Math.min(B-2,U)),he=Math.min(1,Math.max(0,U-ue)),J.xy=function(Z){return M.evalxy([],Z,U)},J.dxy=function(Z,re){return M.dxydi([],Z,ue,re,he)},W=0;W<L;W++)G[W]=f[U*O][W],$[W]=P[U*O][W];else for(Q=Math.max(0,Math.min(F-2,U)),se=Math.min(1,Math.max(0,U-Q)),J.xy=function(Z){return M.evalxy([],U,Z)},J.dxy=function(Z,re){return M.dxydj([],Q,Z,se,re)},W=0;W<z;W++)G[W]=f[W][U*O],$[W]=P[W][U*O];return J.axisLetter=e,J.axis=E,J.crossAxis=y,J.value=S[U],J.constvar=t,J.index=U,J.x=G,J.y=$,J.smoothing=y.smoothing,J}if(E.tickmode==="array"){for(i=5e-15,n=[Math.floor((S.length-1-E.arraytick0)/E.arraydtick*(1+i)),Math.ceil(-E.arraytick0/E.arraydtick/(1+i))].sort(function(U,W){return U-W}),s=n[0]-1,c=n[1]+1,h=s;h<c;h++)o=E.arraytick0+E.arraydtick*h,!(o<0||o>S.length-1)&&m.push(x(N(o),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s;h<c;h++)if(a=E.arraytick0+E.arraydtick*h,T=Math.min(a+E.arraydtick,S.length-1),!(a<0||a>S.length-1)&&!(T<0||T>S.length-1))for(l=S[a],_=S[T],r=0;r<E.minorgridcount;r++)w=T-a,!(w<=0)&&(p=l+(_-l)*(r+1)/(E.minorgridcount+1)*(E.arraydtick/w),!(p<S[0]||p>S[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&d.push(x(N(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(N(S.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(i=5e-15,n=[Math.floor((S[S.length-1]-E.tick0)/E.dtick*(1+i)),Math.ceil((S[0]-E.tick0)/E.dtick/(1+i))].sort(function(U,W){return U-W}),s=n[0],c=n[1],h=s;h<=c;h++)v=E.tick0+E.dtick*h,m.push(x(I(v),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s-1;h<c+1;h++)for(v=E.tick0+E.dtick*h,r=0;r<E.minorgridcount;r++)p=v+E.dtick*(r+1)/(E.minorgridcount+1),!(p<S[0]||p>S[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&d.push(x(I(S[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(I(S[S.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}}}),AH=Ye({"src/traces/carpet/calc_labels.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e){var t,r,o,a,i,n=e._labels=[],s=e._gridlines;for(t=0;t<s.length;t++)i=s[t],["start","both"].indexOf(e.showticklabels)!==-1&&(r=g.tickText(e,i.value),x(r,{prefix:o,suffix:a,endAnchor:!0,xy:i.xy(0),dxy:i.dxy(0,0),axis:i.axis,length:i.crossAxis.length,font:i.axis.tickfont,isFirst:t===0,isLast:t===s.length-1}),n.push(r)),["end","both"].indexOf(e.showticklabels)!==-1&&(r=g.tickText(e,i.value),x(r,{endAnchor:!1,xy:i.xy(i.crossLength-1),dxy:i.dxy(i.crossLength-2,1),axis:i.axis,length:i.crossAxis.length,font:i.axis.tickfont,isFirst:t===0,isLast:t===s.length-1}),n.push(r))}}}),SH=Ye({"src/traces/carpet/calc_clippath.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t,r,o,a=[],i=!!M.smoothing,n=!!e.smoothing,s=x[0].length-1,c=x.length-1;for(t=0,r=[],o=[];t<=s;t++)r[t]=x[0][t],o[t]=A[0][t];for(a.push({x:r,y:o,bicubic:i}),t=0,r=[],o=[];t<=c;t++)r[t]=x[t][s],o[t]=A[t][s];for(a.push({x:r,y:o,bicubic:n}),t=s,r=[],o=[];t>=0;t--)r[s-t]=x[c][t],o[s-t]=A[c][t];for(a.push({x:r,y:o,bicubic:i}),t=c,r=[],o=[];t>=0;t--)r[c-t]=x[t][0],o[c-t]=A[t][0];return a.push({x:r,y:o,bicubic:n}),a}}}),MH=Ye({"src/traces/carpet/smooth_fill_2d_array.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e){var t,r,o,a=[],i=[],n=A[0].length,s=A.length;function c(Q,ue){var se=0,he,G=0;return Q>0&&(he=A[ue][Q-1])!==void 0&&(G++,se+=he),Q<n-1&&(he=A[ue][Q+1])!==void 0&&(G++,se+=he),ue>0&&(he=A[ue-1][Q])!==void 0&&(G++,se+=he),ue<s-1&&(he=A[ue+1][Q])!==void 0&&(G++,se+=he),se/Math.max(1,G)}var h=0;for(t=0;t<n;t++)for(r=0;r<s;r++)A[r][t]===void 0&&(a.push(t),i.push(r),A[r][t]=c(t,r)),h=Math.max(h,Math.abs(A[r][t]));if(!a.length)return A;var v,p,T,l,_,w,S,E,m,b,d,u=1e-5,y=0,f=100,P=0,L=a.length;do{for(y=0,o=0;o<L;o++){t=a[o],r=i[o];var z=0,F=0,B,O,I,N,U,W;t===0?(U=Math.min(n-1,2),I=M[U],N=M[1],B=A[r][U],O=A[r][1],F+=O+(O-B)*(M[0]-N)/(N-I),z++):t===n-1&&(U=Math.max(0,n-3),I=M[U],N=M[n-2],B=A[r][U],O=A[r][n-2],F+=O+(O-B)*(M[n-1]-N)/(N-I),z++),(t===0||t===n-1)&&r>0&&r<s-1&&(v=e[r+1]-e[r],p=e[r]-e[r-1],F+=(p*A[r+1][t]+v*A[r-1][t])/(p+v),z++),r===0?(W=Math.min(s-1,2),I=e[W],N=e[1],B=A[W][t],O=A[1][t],F+=O+(O-B)*(e[0]-N)/(N-I),z++):r===s-1&&(W=Math.max(0,s-3),I=e[W],N=e[s-2],B=A[W][t],O=A[s-2][t],F+=O+(O-B)*(e[s-1]-N)/(N-I),z++),(r===0||r===s-1)&&t>0&&t<n-1&&(v=M[t+1]-M[t],p=M[t]-M[t-1],F+=(p*A[r][t+1]+v*A[r][t-1])/(p+v),z++),z?F/=z:(T=M[t+1]-M[t],l=M[t]-M[t-1],_=e[r+1]-e[r],w=e[r]-e[r-1],S=T*l*(T+l),E=_*w*(_+w),F=(S*(w*A[r+1][t]+_*A[r-1][t])+E*(l*A[r][t+1]+T*A[r][t-1]))/(E*(l+T)+S*(w+_))),m=F-A[r][t],b=m/h,y+=b*b,d=z?0:.85,A[r][t]+=m*(1+d)}y=Math.sqrt(y)}while(P++<f&&y>u);return g.log("Smoother converged to",y,"after",P,"iterations"),A}}}),EH=Ye({"src/traces/carpet/constants.js"(X,H){"use strict";H.exports={RELATIVE_CULL_TOLERANCE:1e-6}}}),kH=Ye({"src/traces/carpet/catmull_rom.js"(X,H){"use strict";var g=.5;H.exports=function(A,M,e,t){var r=A[0]-M[0],o=A[1]-M[1],a=e[0]-M[0],i=e[1]-M[1],n=Math.pow(r*r+o*o,g/2),s=Math.pow(a*a+i*i,g/2),c=(s*s*r-n*n*a)*t,h=(s*s*o-n*n*i)*t,v=s*(n+s)*3,p=n*(n+s)*3;return[[M[0]+(v&&c/v),M[1]+(v&&h/v)],[M[0]-(p&&c/p),M[1]-(p&&h/p)]]}}}),CH=Ye({"src/traces/carpet/compute_control_points.js"(X,H){"use strict";var g=kH(),x=ta().ensureArray;function A(M,e,t){var r=-.5*t[0]+1.5*e[0],o=-.5*t[1]+1.5*e[1];return[(2*r+M[0])/3,(2*o+M[1])/3]}H.exports=function(e,t,r,o,a,i){var n,s,c,h,v,p,T,l,_,w,S=r[0].length,E=r.length,m=a?3*S-2:S,b=i?3*E-2:E;for(e=x(e,b),t=x(t,b),c=0;c<b;c++)e[c]=x(e[c],m),t[c]=x(t[c],m);for(s=0,h=0;s<E;s++,h+=i?3:1)for(v=e[h],p=t[h],T=r[s],l=o[s],n=0,c=0;n<S;n++,c+=a?3:1)v[c]=T[n],p[c]=l[n];if(a)for(s=0,h=0;s<E;s++,h+=i?3:1){for(n=1,c=3;n<S-1;n++,c+=3)_=g([r[s][n-1],o[s][n-1]],[r[s][n],o[s][n]],[r[s][n+1],o[s][n+1]],a),e[h][c-1]=_[0][0],t[h][c-1]=_[0][1],e[h][c+1]=_[1][0],t[h][c+1]=_[1][1];w=A([e[h][0],t[h][0]],[e[h][2],t[h][2]],[e[h][3],t[h][3]]),e[h][1]=w[0],t[h][1]=w[1],w=A([e[h][m-1],t[h][m-1]],[e[h][m-3],t[h][m-3]],[e[h][m-4],t[h][m-4]]),e[h][m-2]=w[0],t[h][m-2]=w[1]}if(i)for(c=0;c<m;c++){for(h=3;h<b-3;h+=3)_=g([e[h-3][c],t[h-3][c]],[e[h][c],t[h][c]],[e[h+3][c],t[h+3][c]],i),e[h-1][c]=_[0][0],t[h-1][c]=_[0][1],e[h+1][c]=_[1][0],t[h+1][c]=_[1][1];w=A([e[0][c],t[0][c]],[e[2][c],t[2][c]],[e[3][c],t[3][c]]),e[1][c]=w[0],t[1][c]=w[1],w=A([e[b-1][c],t[b-1][c]],[e[b-3][c],t[b-3][c]],[e[b-4][c],t[b-4][c]]),e[b-2][c]=w[0],t[b-2][c]=w[1]}if(a&&i)for(h=1;h<b;h+=(h+1)%3===0?2:1){for(c=3;c<m-3;c+=3)_=g([e[h][c-3],t[h][c-3]],[e[h][c],t[h][c]],[e[h][c+3],t[h][c+3]],a),e[h][c-1]=.5*(e[h][c-1]+_[0][0]),t[h][c-1]=.5*(t[h][c-1]+_[0][1]),e[h][c+1]=.5*(e[h][c+1]+_[1][0]),t[h][c+1]=.5*(t[h][c+1]+_[1][1]);w=A([e[h][0],t[h][0]],[e[h][2],t[h][2]],[e[h][3],t[h][3]]),e[h][1]=.5*(e[h][1]+w[0]),t[h][1]=.5*(t[h][1]+w[1]),w=A([e[h][m-1],t[h][m-1]],[e[h][m-3],t[h][m-3]],[e[h][m-4],t[h][m-4]]),e[h][m-2]=.5*(e[h][m-2]+w[0]),t[h][m-2]=.5*(t[h][m-2]+w[1])}return[e,t]}}}),LH=Ye({"src/traces/carpet/create_spline_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A,M,e){var t=x-2,r=A-2;return M&&e?function(o,a,i){o||(o=[]);var n,s,c,h,v,p,T=Math.max(0,Math.min(Math.floor(a),t)),l=Math.max(0,Math.min(Math.floor(i),r)),_=Math.max(0,Math.min(1,a-T)),w=Math.max(0,Math.min(1,i-l));T*=3,l*=3;var S=_*_,E=S*_,m=1-_,b=m*m,d=b*m,u=w*w,y=u*w,f=1-w,P=f*f,L=P*f;for(p=0;p<g.length;p++)v=g[p],n=d*v[l][T]+3*(b*_*v[l][T+1]+m*S*v[l][T+2])+E*v[l][T+3],s=d*v[l+1][T]+3*(b*_*v[l+1][T+1]+m*S*v[l+1][T+2])+E*v[l+1][T+3],c=d*v[l+2][T]+3*(b*_*v[l+2][T+1]+m*S*v[l+2][T+2])+E*v[l+2][T+3],h=d*v[l+3][T]+3*(b*_*v[l+3][T+1]+m*S*v[l+3][T+2])+E*v[l+3][T+3],o[p]=L*n+3*(P*w*s+f*u*c)+y*h;return o}:M?function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_,w;n*=3;var S=c*c,E=S*c,m=1-c,b=m*m,d=b*m,u=1-h;for(_=0;_<g.length;_++)w=g[_],v=u*w[s][n]+h*w[s+1][n],p=u*w[s][n+1]+h*w[s+1][n+1],T=u*w[s][n+2]+h*w[s+1][n+1],l=u*w[s][n+3]+h*w[s+1][n+1],o[_]=d*v+3*(b*c*p+m*S*T)+E*l;return o}:e?function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_,w;s*=3;var S=h*h,E=S*h,m=1-h,b=m*m,d=b*m,u=1-c;for(_=0;_<g.length;_++)w=g[_],v=u*w[s][n]+c*w[s][n+1],p=u*w[s+1][n]+c*w[s+1][n+1],T=u*w[s+2][n]+c*w[s+2][n+1],l=u*w[s+3][n]+c*w[s+3][n+1],o[_]=d*v+3*(b*h*p+m*S*T)+E*l;return o}:function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_=1-h,w=1-c;for(T=0;T<g.length;T++)l=g[T],v=w*l[s][n]+c*l[s][n+1],p=w*l[s+1][n]+c*l[s+1][n+1],o[T]=_*v+h*p;return o}}}}),PH=Ye({"src/traces/carpet/create_i_derivative_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A){return x&&A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3,t*=3;var v=r*r,p=1-r,T=p*p,l=p*r*2,_=-3*T,w=3*(T-l),S=3*(l-v),E=3*v,m=o*o,b=m*o,d=1-o,u=d*d,y=u*d;for(h=0;h<g.length;h++)c=g[h],a=_*c[t][e]+w*c[t][e+1]+S*c[t][e+2]+E*c[t][e+3],i=_*c[t+1][e]+w*c[t+1][e+1]+S*c[t+1][e+2]+E*c[t+1][e+3],n=_*c[t+2][e]+w*c[t+2][e+1]+S*c[t+2][e+2]+E*c[t+2][e+3],s=_*c[t+3][e]+w*c[t+3][e+1]+S*c[t+3][e+2]+E*c[t+3][e+3],M[h]=y*a+3*(u*o*i+d*m*n)+b*s;return M}:x?function(M,e,t,r,o){M||(M=[]);var a,i,n,s;e*=3;var c=r*r,h=1-r,v=h*h,p=h*r*2,T=-3*v,l=3*(v-p),_=3*(p-c),w=3*c,S=1-o;for(n=0;n<g.length;n++)s=g[n],a=T*s[t][e]+l*s[t][e+1]+_*s[t][e+2]+w*s[t][e+3],i=T*s[t+1][e]+l*s[t+1][e+1]+_*s[t+1][e+2]+w*s[t+1][e+3],M[n]=S*a+o*i;return M}:A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;t*=3;var v=o*o,p=v*o,T=1-o,l=T*T,_=l*T;for(c=0;c<g.length;c++)h=g[c],a=h[t][e+1]-h[t][e],i=h[t+1][e+1]-h[t+1][e],n=h[t+2][e+1]-h[t+2][e],s=h[t+3][e+1]-h[t+3][e],M[c]=_*a+3*(l*o*i+T*v*n)+p*s;return M}:function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c=1-o;for(n=0;n<g.length;n++)s=g[n],a=s[t][e+1]-s[t][e],i=s[t+1][e+1]-s[t+1][e],M[n]=c*a+o*i;return M}}}}),IH=Ye({"src/traces/carpet/create_j_derivative_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A){return x&&A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3,t*=3;var v=r*r,p=v*r,T=1-r,l=T*T,_=l*T,w=o*o,S=1-o,E=S*S,m=S*o*2,b=-3*E,d=3*(E-m),u=3*(m-w),y=3*w;for(h=0;h<g.length;h++)c=g[h],a=b*c[t][e]+d*c[t+1][e]+u*c[t+2][e]+y*c[t+3][e],i=b*c[t][e+1]+d*c[t+1][e+1]+u*c[t+2][e+1]+y*c[t+3][e+1],n=b*c[t][e+2]+d*c[t+1][e+2]+u*c[t+2][e+2]+y*c[t+3][e+2],s=b*c[t][e+3]+d*c[t+1][e+3]+u*c[t+2][e+3]+y*c[t+3][e+3],M[h]=_*a+3*(l*r*i+T*v*n)+p*s;return M}:x?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3;var v=o*o,p=v*o,T=1-o,l=T*T,_=l*T;for(c=0;c<g.length;c++)h=g[c],a=h[t+1][e]-h[t][e],i=h[t+1][e+1]-h[t][e+1],n=h[t+1][e+2]-h[t][e+2],s=h[t+1][e+3]-h[t][e+3],M[c]=_*a+3*(l*o*i+T*v*n)+p*s;return M}:A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s;t*=3;var c=1-r,h=o*o,v=1-o,p=v*v,T=v*o*2,l=-3*p,_=3*(p-T),w=3*(T-h),S=3*h;for(n=0;n<g.length;n++)s=g[n],a=l*s[t][e]+_*s[t+1][e]+w*s[t+2][e]+S*s[t+3][e],i=l*s[t][e+1]+_*s[t+1][e+1]+w*s[t+2][e+1]+S*s[t+3][e+1],M[n]=c*a+r*i;return M}:function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c=1-r;for(n=0;n<g.length;n++)s=g[n],a=s[t+1][e]-s[t][e],i=s[t+1][e+1]-s[t][e+1],M[n]=c*a+r*i;return M}}}}),RH=Ye({"src/traces/carpet/set_convert.js"(X,H){"use strict";var g=EH(),x=v2().findBin,A=CH(),M=LH(),e=PH(),t=IH();H.exports=function(o){var a=o._a,i=o._b,n=a.length,s=i.length,c=o.aaxis,h=o.baxis,v=a[0],p=a[n-1],T=i[0],l=i[s-1],_=a[a.length-1]-a[0],w=i[i.length-1]-i[0],S=_*g.RELATIVE_CULL_TOLERANCE,E=w*g.RELATIVE_CULL_TOLERANCE;v-=S,p+=S,T-=E,l+=E,o.isVisible=function(m,b){return m>v&&m<p&&b>T&&b<l},o.isOccluded=function(m,b){return m<v||m>p||b<T||b>l},o.setScale=function(){var m=o._x,b=o._y,d=A(o._xctrl,o._yctrl,m,b,c.smoothing,h.smoothing);o._xctrl=d[0],o._yctrl=d[1],o.evalxy=M([o._xctrl,o._yctrl],n,s,c.smoothing,h.smoothing),o.dxydi=e([o._xctrl,o._yctrl],c.smoothing,h.smoothing),o.dxydj=t([o._xctrl,o._yctrl],c.smoothing,h.smoothing)},o.i2a=function(m){var b=Math.max(0,Math.floor(m[0]),n-2),d=m[0]-b;return(1-d)*a[b]+d*a[b+1]},o.j2b=function(m){var b=Math.max(0,Math.floor(m[1]),n-2),d=m[1]-b;return(1-d)*i[b]+d*i[b+1]},o.ij2ab=function(m){return[o.i2a(m[0]),o.j2b(m[1])]},o.a2i=function(m){var b=Math.max(0,Math.min(x(m,a),n-2)),d=a[b],u=a[b+1];return Math.max(0,Math.min(n-1,b+(m-d)/(u-d)))},o.b2j=function(m){var b=Math.max(0,Math.min(x(m,i),s-2)),d=i[b],u=i[b+1];return Math.max(0,Math.min(s-1,b+(m-d)/(u-d)))},o.ab2ij=function(m){return[o.a2i(m[0]),o.b2j(m[1])]},o.i2c=function(m,b){return o.evalxy([],m,b)},o.ab2xy=function(m,b,d){if(!d&&(m<a[0]||m>a[n-1]|b<i[0]||b>i[s-1]))return[!1,!1];var u=o.a2i(m),y=o.b2j(b),f=o.evalxy([],u,y);if(d){var P=0,L=0,z=[],F,B,O,I;m<a[0]?(F=0,B=0,P=(m-a[0])/(a[1]-a[0])):m>a[n-1]?(F=n-2,B=1,P=(m-a[n-1])/(a[n-1]-a[n-2])):(F=Math.max(0,Math.min(n-2,Math.floor(u))),B=u-F),b<i[0]?(O=0,I=0,L=(b-i[0])/(i[1]-i[0])):b>i[s-1]?(O=s-2,I=1,L=(b-i[s-1])/(i[s-1]-i[s-2])):(O=Math.max(0,Math.min(s-2,Math.floor(y))),I=y-O),P&&(o.dxydi(z,F,O,B,I),f[0]+=z[0]*P,f[1]+=z[1]*P),L&&(o.dxydj(z,F,O,B,I),f[0]+=z[0]*L,f[1]+=z[1]*L)}return f},o.c2p=function(m,b,d){return[b.c2p(m[0]),d.c2p(m[1])]},o.p2x=function(m,b,d){return[b.p2c(m[0]),d.p2c(m[1])]},o.dadi=function(m){var b=Math.max(0,Math.min(a.length-2,m));return a[b+1]-a[b]},o.dbdj=function(m){var b=Math.max(0,Math.min(i.length-2,m));return i[b+1]-i[b]},o.dxyda=function(m,b,d,u){var y=o.dxydi(null,m,b,d,u),f=o.dadi(m,d);return[y[0]/f,y[1]/f]},o.dxydb=function(m,b,d,u){var y=o.dxydj(null,m,b,d,u),f=o.dbdj(b,u);return[y[0]/f,y[1]/f]},o.dxyda_rough=function(m,b,d){var u=_*(d||.1),y=o.ab2xy(m+u,b,!0),f=o.ab2xy(m-u,b,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dxydb_rough=function(m,b,d){var u=w*(d||.1),y=o.ab2xy(m,b+u,!0),f=o.ab2xy(m,b-u,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dpdx=function(m){return m._m},o.dpdy=function(m){return m._m}}}}),DH=Ye({"src/traces/carpet/calc.js"(X,H){"use strict";var g=Co(),x=ta().isArray1D,A=bH(),M=wH(),e=TH(),t=AH(),r=SH(),o=X2(),a=MH(),i=Z2(),n=RH();H.exports=function(c,h){var v=g.getFromId(c,h.xaxis),p=g.getFromId(c,h.yaxis),T=h.aaxis,l=h.baxis,_=h.x,w=h.y,S=[];_&&x(_)&&S.push("x"),w&&x(w)&&S.push("y"),S.length&&i(h,T,l,"a","b",S);var E=h._a=h._a||h.a,m=h._b=h._b||h.b;_=h._x||h.x,w=h._y||h.y;var b={};if(h._cheater){var d=T.cheatertype==="index"?E.length:E,u=l.cheatertype==="index"?m.length:m;_=A(d,u,h.cheaterslope)}h._x=_=o(_),h._y=w=o(w),a(_,E,m),a(w,E,m),n(h),h.setScale();var y=M(_),f=M(w),P=.5*(y[1]-y[0]),L=.5*(y[1]+y[0]),z=.5*(f[1]-f[0]),F=.5*(f[1]+f[0]),B=1.3;return y=[L-P*B,L+P*B],f=[F-z*B,F+z*B],h._extremes[v._id]=g.findExtremes(v,y,{padded:!0}),h._extremes[p._id]=g.findExtremes(p,f,{padded:!0}),e(h,"a","b"),e(h,"b","a"),t(h,T),t(h,l),b.clipsegments=r(h._xctrl,h._yctrl,T,l),b.x=_,b.y=w,b.a=E,b.b=m,[b]}}}),zH=Ye({"src/traces/carpet/index.js"(X,H){"use strict";H.exports={attributes:LT(),supplyDefaults:yH(),plot:xH(),calc:DH(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}}}),FH=Ye({"lib/carpet.js"(X,H){"use strict";H.exports=zH()}}),Gk=Ye({"src/traces/scattercarpet/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Pl(),M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=tu(),r=Oo().extendFlat,o=x.marker,a=x.line,i=o.line;H.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:r({},x.mode,{dflt:"markers"}),text:r({},x.text,{}),texttemplate:e({editType:"plot"},{keys:["a","b","text"]}),hovertext:r({},x.hovertext,{}),line:{color:a.color,width:a.width,dash:a.dash,backoff:a.backoff,shape:r({},a.shape,{values:["linear","spline"]}),smoothing:a.smoothing,editType:"calc"},connectgaps:x.connectgaps,fill:r({},x.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:g(),marker:r({symbol:o.symbol,opacity:o.opacity,maxdisplayed:o.maxdisplayed,angle:o.angle,angleref:o.angleref,standoff:o.standoff,size:o.size,sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,line:r({width:i.width,editType:"calc"},t("marker.line")),gradient:o.gradient,editType:"calc"},t("marker")),textfont:x.textfont,textposition:x.textposition,selected:x.selected,unselected:x.unselected,hoverinfo:r({},A.hoverinfo,{flags:["a","b","text","name"]}),hoveron:x.hoveron,hovertemplate:M(),zorder:x.zorder}}}),OH=Ye({"src/traces/scattercarpet/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=Gk();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}v("carpet"),s.xaxis="x",s.yaxis="y";var p=v("a"),T=v("b"),l=Math.min(p.length,T.length);if(!l){s.visible=!1;return}s._length=l,v("text"),v("texttemplate"),v("hovertext");var _=l<x.PTS_LINESONLY?"lines+markers":"lines";v("mode",_),A.hasMarkers(s)&&M(n,s,c,h,v,{gradient:!0}),A.hasLines(s)&&(e(n,s,c,h,v,{backoff:!0}),t(n,s,v),v("connectgaps")),A.hasText(s)&&r(n,s,h,v);var w=[];(A.hasMarkers(s)||A.hasText(s))&&(v("marker.maxdisplayed"),w.push("points")),v("fill"),s.fill!=="none"&&(o(n,s,c,v),A.hasLines(s)||t(n,s,v)),(s.fill==="tonext"||s.fill==="toself")&&w.push("fills");var S=v("hoveron",w.join("+")||"points");S!=="fills"&&v("hovertemplate"),v("zorder"),g.coerceSelectionMarkerOpacity(s,v)}}}),BH=Ye({"src/traces/scattercarpet/format_labels.js"(X,H){"use strict";H.exports=function(x,A){var M={},e=A._carpet,t=e.ab2ij([x.a,x.b]),r=Math.floor(t[0]),o=t[0]-r,a=Math.floor(t[1]),i=t[1]-a,n=e.evalxy([],r,a,o,i);return M.yLabel=n[1].toFixed(3),M}}}),PT=Ye({"src/traces/carpet/lookup_carpetid.js"(X,H){"use strict";H.exports=function(g,x){for(var A=g._fullData.length,M,e=0;e<A;e++){var t=g._fullData[e];if(t.index!==x.index&&t.type==="carpet"&&(M||(M=t),t.carpet===x.carpet))return t}return M}}}),NH=Ye({"src/traces/scattercarpet/calc.js"(X,H){"use strict";var g=jo(),x=Fd(),A=Av(),M=Od(),e=Bd().calcMarkerSize,t=PT();H.exports=function(o,a){var i=a._carpetTrace=t(o,a);if(!(!i||!i.visible||i.visible==="legendonly")){var n;a.xaxis=i.xaxis,a.yaxis=i.yaxis;var s=a._length,c=new Array(s),h,v,p=!1;for(n=0;n<s;n++)if(h=a.a[n],v=a.b[n],g(h)&&g(v)){var T=i.ab2xy(+h,+v,!0),l=i.isVisible(+h,+v);l||(p=!0),c[n]={x:T[0],y:T[1],a:h,b:v,vis:l}}else c[n]={x:!1,y:!1};return a._needsCull=p,c[0].carpet=i,c[0].trace=a,e(a,s),x(o,a),A(c,a),M(c,a),c}}}}),UH=Ye({"src/traces/scattercarpet/plot.js"(X,H){"use strict";var g=o1(),x=Co(),A=Bo();H.exports=function(e,t,r,o){var a,i,n,s=r[0][0].carpet,c=x.getFromId(e,s.xaxis||"x"),h=x.getFromId(e,s.yaxis||"y"),v={xaxis:c,yaxis:h,plot:t.plot};for(a=0;a<r.length;a++)i=r[a][0].trace,i._xA=c,i._yA=h;for(g(e,v,r,o),a=0;a<r.length;a++)i=r[a][0].trace,n=o.selectAll("g.trace"+i.uid+" .js-line"),A.setClipUrl(n,r[a][0].carpet._clipPathId,e)}}}),jH=Ye({"src/traces/scattercarpet/hover.js"(X,H){"use strict";var g=l1(),x=ta().fillText;H.exports=function(M,e,t,r){var o=g(M,e,t,r);if(!o||o[0].index===!1)return;var a=o[0];if(a.index===void 0){var i=1-a.y0/M.ya._length,n=M.xa._length,s=n*i/2,c=n-s;return a.x0=Math.max(Math.min(a.x0,c),s),a.x1=Math.max(Math.min(a.x1,c),s),o}var h=a.cd[a.index];a.a=h.a,a.b=h.b,a.xLabelVal=void 0,a.yLabelVal=void 0;var v=a.trace,p=v._carpet,T=v._module.formatLabels(h,v);a.yLabel=T.yLabel,delete a.text;var l=[];function _(E,m){var b;E.labelprefix&&E.labelprefix.length>0?b=E.labelprefix.replace(/ = $/,""):b=E._hovertitle,l.push(b+": "+m.toFixed(3)+E.labelsuffix)}if(!v.hovertemplate){var w=h.hi||v.hoverinfo,S=w.split("+");S.indexOf("all")!==-1&&(S=["a","b","text"]),S.indexOf("a")!==-1&&_(p.aaxis,h.a),S.indexOf("b")!==-1&&_(p.baxis,h.b),l.push("y: "+a.yLabel),S.indexOf("text")!==-1&&x(h,v,l),a.extraText=l.join("<br>")}return o}}}),VH=Ye({"src/traces/scattercarpet/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=e[t];return x.a=r.a,x.b=r.b,x.y=r.y,x}}}),qH=Ye({"src/traces/scattercarpet/index.js"(X,H){"use strict";H.exports={attributes:Gk(),supplyDefaults:OH(),colorbar:cp(),formatLabels:BH(),calc:NH(),plot:UH(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:jH(),selectPoints:u1(),eventData:VH(),moduleType:"trace",name:"scattercarpet",basePlotModule:Pf(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}}}),HH=Ye({"lib/scattercarpet.js"(X,H){"use strict";H.exports=qH()}}),Wk=Ye({"src/traces/contourcarpet/attributes.js"(X,H){"use strict";var g=h1(),x=U_(),A=tu(),M=Oo().extendFlat,e=x.contours;H.exports=M({carpet:{valType:"string",editType:"calc"},z:g.z,a:g.x,a0:g.x0,da:g.dx,b:g.y,b0:g.y0,db:g.dy,text:g.text,hovertext:g.hovertext,transpose:g.transpose,atype:g.xtype,btype:g.ytype,fillcolor:x.fillcolor,autocontour:x.autocontour,ncontours:x.ncontours,contours:{type:e.type,start:e.start,end:e.end,size:e.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:e.showlines,showlabels:e.showlabels,labelfont:e.labelfont,labelformat:e.labelformat,operation:e.operation,value:e.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:x.line.color,width:x.line.width,dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},zorder:x.zorder},A("",{cLetter:"z",autoColorDflt:!1}))}}),Zk=Ye({"src/traces/contourcarpet/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Wk(),M=bM(),e=o3(),t=s3();H.exports=function(o,a,i,n){function s(p,T){return g.coerce(o,a,A,p,T)}function c(p){return g.coerce2(o,a,A,p)}if(s("carpet"),o.a&&o.b){var h=x(o,a,s,n,"a","b");if(!h){a.visible=!1;return}s("text");var v=s("contours.type")==="constraint";v?M(o,a,s,n,i,{hasHover:!1}):(e(o,a,s,c),t(o,a,s,n,{hasHover:!1}))}else a._defaultColor=i,a._length=null;s("zorder")}}}),GH=Ye({"src/traces/contourcarpet/calc.js"(X,H){"use strict";var g=jp(),x=ta(),A=Z2(),M=X2(),e=Y2(),t=K2(),r=nM(),o=Zk(),a=PT(),i=hM();H.exports=function(c,h){var v=h._carpetTrace=a(c,h);if(!(!v||!v.visible||v.visible==="legendonly")){if(!h.a||!h.b){var p=c.data[v.index],T=c.data[h.index];T.a||(T.a=p.a),T.b||(T.b=p.b),o(T,h,h._defaultColor,c._fullLayout)}var l=n(c,h);return i(h,h._z),l}};function n(s,c){var h=c._carpetTrace,v=h.aaxis,p=h.baxis,T,l,_,w,S,E,m;v._minDtick=0,p._minDtick=0,x.isArray1D(c.z)&&A(c,v,p,"a","b",["z"]),T=c._a=c._a||c.a,w=c._b=c._b||c.b,T=T?v.makeCalcdata(c,"_a"):[],w=w?p.makeCalcdata(c,"_b"):[],l=c.a0||0,_=c.da||1,S=c.b0||0,E=c.db||1,m=c._z=M(c._z||c.z,c.transpose),c._emptypoints=t(m),e(m,c._emptypoints);var b=x.maxRowLength(m),d=c.xtype==="scaled"?"":T,u=r(c,d,l,_,b,v),y=c.ytype==="scaled"?"":w,f=r(c,y,S,E,m.length,p),P={a:u,b:f,z:m};return c.contours.type==="levels"&&c.contours.coloring!=="none"&&g(s,c,{vals:m,containerStr:"",cLetter:"z"}),[P]}}}),WH=Ye({"src/traces/carpet/axis_aligned_line.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M,e){var t,r,o,a,i,n,s,c,h,v,p,T,l,_=g(M)?"a":"b",w=_==="a"?x.aaxis:x.baxis,S=w.smoothing,E=_==="a"?x.a2i:x.b2j,m=_==="a"?M:e,b=_==="a"?e:M,d=_==="a"?A.a.length:A.b.length,u=_==="a"?A.b.length:A.a.length,y=Math.floor(_==="a"?x.b2j(b):x.a2i(b)),f=_==="a"?function(ue){return x.evalxy([],ue,y)}:function(ue){return x.evalxy([],y,ue)};S&&(o=Math.max(0,Math.min(u-2,y)),a=y-o,r=_==="a"?function(ue,se){return x.dxydi([],ue,o,se,a)}:function(ue,se){return x.dxydj([],o,ue,a,se)});var P=E(m[0]),L=E(m[1]),z=P<L?1:-1,F=(L-P)*1e-8,B=z>0?Math.floor:Math.ceil,O=z>0?Math.ceil:Math.floor,I=z>0?Math.min:Math.max,N=z>0?Math.max:Math.min,U=B(P+F),W=O(L-F);s=f(P);var Q=[[s]];for(t=U;t*z<W*z;t+=z)i=[],p=N(P,t),T=I(L,t+z),l=T-p,n=Math.max(0,Math.min(d-2,Math.floor(.5*(p+T)))),c=f(T),S&&(h=r(n,p-n),v=r(n,T-n),i.push([s[0]+h[0]/3*l,s[1]+h[1]/3*l]),i.push([c[0]-v[0]/3*l,c[1]-v[1]/3*l])),i.push(c),Q.push(i),s=c;return Q}}}),ZH=Ye({"src/traces/contourcarpet/plot.js"(X,H){"use strict";var g=_n(),x=qk(),A=Hk(),M=Bo(),e=ta(),t=dM(),r=vM(),o=l3(),a=V_(),i=gM(),n=mM(),s=yM(),c=PT(),h=WH();H.exports=function(d,u,y,f){var P=u.xaxis,L=u.yaxis;e.makeTraceGroups(f,y,"contour").each(function(z){var F=g.select(this),B=z[0],O=B.trace,I=O._carpetTrace=c(d,O),N=d.calcdata[I.index][0];if(!I.visible||I.visible==="legendonly")return;var U=B.a,W=B.b,Q=O.contours,ue=n(Q,u,B),se=Q.type==="constraint",he=Q._operation,G=se?he==="="?"lines":"fill":Q.coloring;function $(Be){var Ie=I.ab2xy(Be[0],Be[1],!0);return[P.c2p(Ie[0]),L.c2p(Ie[1])]}var J=[[U[0],W[W.length-1]],[U[U.length-1],W[W.length-1]],[U[U.length-1],W[0]],[U[0],W[0]]];t(ue);var Z=(U[U.length-1]-U[0])*1e-8,re=(W[W.length-1]-W[0])*1e-8;r(ue,Z,re);var ne=ue;Q.type==="constraint"&&(ne=i(ue,he)),v(ue,$);var j,ee,ie,fe,be=[];for(fe=N.clipsegments.length-1;fe>=0;fe--)j=N.clipsegments[fe],ee=x([],j.x,P.c2p),ie=x([],j.y,L.c2p),ee.reverse(),ie.reverse(),be.push(A(ee,ie,j.bicubic));var Ae="M"+be.join("L")+"Z";S(F,N.clipsegments,P,L,se,G),E(O,F,P,L,ne,J,$,I,N,G,Ae),p(F,ue,d,B,Q,u,I),M.setClipUrl(F,I._clipPathId,d)})};function v(b,d){var u,y,f,P,L,z,F,B,O;for(u=0;u<b.length;u++){for(P=b[u],L=P.pedgepaths=[],z=P.ppaths=[],y=0;y<P.edgepaths.length;y++){for(O=P.edgepaths[y],F=[],f=0;f<O.length;f++)F[f]=d(O[f]);L.push(F)}for(y=0;y<P.paths.length;y++){for(O=P.paths[y],B=[],f=0;f<O.length;f++)B[f]=d(O[f]);z.push(B)}}}function p(b,d,u,y,f,P,L){var z=u._context.staticPlot,F=e.ensureSingle(b,"g","contourlines"),B=f.showlines!==!1,O=f.showlabels,I=B&&O,N=o.createLines(F,B||O,d,z),U=o.createLineClip(F,I,u,y.trace.uid),W=b.selectAll("g.contourlabels").data(O?[0]:[]);if(W.exit().remove(),W.enter().append("g").classed("contourlabels",!0),O){var Q=P.xaxis,ue=P.yaxis,se=Q._length,he=ue._length,G=[[[0,0],[se,0],[se,he],[0,he]]],$=[];e.clearLocationCache();var J=o.labelFormatter(u,y),Z=M.tester.append("text").attr("data-notex",1).call(M.font,f.labelfont),re={left:0,right:se,center:se/2,top:0,bottom:he,middle:he/2},ne=Math.sqrt(se*se+he*he),j=a.LABELDISTANCE*ne/Math.max(1,d.length/a.LABELINCREASE);N.each(function(ee){var ie=o.calcTextOpts(ee.level,J,Z,u);g.select(this).selectAll("path").each(function(fe){var be=this,Ae=e.getVisibleSegment(be,re,ie.height/2);if(Ae&&(T(be,fe,ee,Ae,L,ie.height),!(Ae.len<(ie.width+ie.height)*a.LABELMIN)))for(var Be=Math.min(Math.ceil(Ae.len/j),a.LABELMAX),Ie=0;Ie<Be;Ie++){var Ze=o.findBestTextLocation(be,Ae,ie,$,re);if(!Ze)break;o.addLabelData(Ze,ie,$,G)}})}),Z.remove(),o.drawLabels(W,$,u,U,I?G:null)}O&&!B&&N.remove()}function T(b,d,u,y,f,P){for(var L,z=0;z<u.pedgepaths.length;z++)d===u.pedgepaths[z]&&(L=u.edgepaths[z]);if(!L)return;var F=f.a[0],B=f.a[f.a.length-1],O=f.b[0],I=f.b[f.b.length-1];function N(se,he){var G=0,$,J=.1;return(Math.abs(se[0]-F)<J||Math.abs(se[0]-B)<J)&&($=_(f.dxydb_rough(se[0],se[1],J)),G=Math.max(G,P*w(he,$)/2)),(Math.abs(se[1]-O)<J||Math.abs(se[1]-I)<J)&&($=_(f.dxyda_rough(se[0],se[1],J)),G=Math.max(G,P*w(he,$)/2)),G}var U=l(b,0,1),W=l(b,y.total,y.total-1),Q=N(L[0],U),ue=y.total-N(L[L.length-1],W);y.min<Q&&(y.min=Q),y.max>ue&&(y.max=ue),y.len=y.max-y.min}function l(b,d,u){var y=b.getPointAtLength(d),f=b.getPointAtLength(u),P=f.x-y.x,L=f.y-y.y,z=Math.sqrt(P*P+L*L);return[P/z,L/z]}function _(b){var d=Math.sqrt(b[0]*b[0]+b[1]*b[1]);return[b[0]/d,b[1]/d]}function w(b,d){var u=Math.abs(b[0]*d[0]+b[1]*d[1]),y=Math.sqrt(1-u*u);return y/u}function S(b,d,u,y,f,P){var L,z,F,B,O=e.ensureSingle(b,"g","contourbg"),I=O.selectAll("path").data(P==="fill"&&!f?[0]:[]);I.enter().append("path"),I.exit().remove();var N=[];for(B=0;B<d.length;B++)L=d[B],z=x([],L.x,u.c2p),F=x([],L.y,y.c2p),N.push(A(z,F,L.bicubic));I.attr("d","M"+N.join("L")+"Z").style("stroke","none")}function E(b,d,u,y,f,P,L,z,F,B,O){var I=B==="fill";I&&s(f,b.contours);var N=e.ensureSingle(d,"g","contourfill"),U=N.selectAll("path").data(I?f:[]);U.enter().append("path"),U.exit().remove(),U.each(function(W){var Q=(W.prefixBoundary?O:"")+m(b,W,P,L,z,F,u,y);Q?g.select(this).attr("d",Q).style("stroke","none"):g.select(this).remove()})}function m(b,d,u,y,f,P,L,z){var F,B="",O=d.edgepaths.map(function(ie,fe){return fe}),I=!0,N,U,W,Q,ue,se,he=Math.abs(u[0][0]-u[2][0])*1e-4,G=Math.abs(u[0][1]-u[2][1])*1e-4;function $(ie){return Math.abs(ie[1]-u[0][1])<G}function J(ie){return Math.abs(ie[1]-u[2][1])<G}function Z(ie){return Math.abs(ie[0]-u[0][0])<he}function re(ie){return Math.abs(ie[0]-u[2][0])<he}function ne(ie,fe){var be,Ae,Be,Ie,Ze="";for($(ie)&&!re(ie)||J(ie)&&!Z(ie)?(Ie=f.aaxis,Be=h(f,P,[ie[0],fe[0]],.5*(ie[1]+fe[1]))):(Ie=f.baxis,Be=h(f,P,.5*(ie[0]+fe[0]),[ie[1],fe[1]])),be=1;be<Be.length;be++)for(Ze+=Ie.smoothing?"C":"L",Ae=0;Ae<Be[be].length;Ae++){var at=Be[be][Ae];Ze+=[L.c2p(at[0]),z.c2p(at[1])]+" "}return Ze}for(F=0,N=null;O.length;){var j=d.edgepaths[F][0];for(N&&(B+=ne(N,j)),se=M.smoothopen(d.edgepaths[F].map(y),d.smoothing),B+=I?se:se.replace(/^M/,"L"),O.splice(O.indexOf(F),1),N=d.edgepaths[F][d.edgepaths[F].length-1],Q=-1,W=0;W<4;W++){if(!N){e.log("Missing end?",F,d);break}for($(N)&&!re(N)?U=u[1]:Z(N)?U=u[0]:J(N)?U=u[3]:re(N)&&(U=u[2]),ue=0;ue<d.edgepaths.length;ue++){var ee=d.edgepaths[ue][0];Math.abs(N[0]-U[0])<he?Math.abs(N[0]-ee[0])<he&&(ee[1]-N[1])*(U[1]-ee[1])>=0&&(U=ee,Q=ue):Math.abs(N[1]-U[1])<G?Math.abs(N[1]-ee[1])<G&&(ee[0]-N[0])*(U[0]-ee[0])>=0&&(U=ee,Q=ue):e.log("endpt to newendpt is not vert. or horz.",N,U,ee)}if(Q>=0)break;B+=ne(N,U),N=U}if(Q===d.edgepaths.length){e.log("unclosed perimeter path");break}F=Q,I=O.indexOf(F)===-1,I&&(F=O[0],B+=ne(N,U)+"Z",N=null)}for(F=0;F<d.paths.length;F++)B+=M.smoothclosed(d.paths[F].map(y),d.smoothing);return B}}}),XH=Ye({"src/traces/contourcarpet/index.js"(X,H){"use strict";H.exports={attributes:Wk(),supplyDefaults:Zk(),colorbar:c3(),calc:GH(),plot:ZH(),style:u3(),moduleType:"trace",name:"contourcarpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}}}),YH=Ye({"lib/contourcarpet.js"(X,H){"use strict";H.exports=XH()}}),IT=Ye({"src/traces/ohlc/attributes.js"(X,H){"use strict";var g=ta().extendFlat,x=Pc(),A=Cc().axisHoverFormat,M=Uh().dash,e=Yy(),t=p1(),r=t.INCREASING.COLOR,o=t.DECREASING.COLOR,a=x.line;function i(n){return{line:{color:g({},a.color,{dflt:n}),width:a.width,dash:M,editType:"style"},editType:"style"}}H.exports={xperiod:x.xperiod,xperiod0:x.xperiod0,xperiodalignment:x.xperiodalignment,xhoverformat:A("x"),yhoverformat:A("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:g({},a.width,{}),dash:g({},M,{}),editType:"style"},increasing:i(r),decreasing:i(o),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:g({},e.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:x.zorder}}}),Xk=Ye({"src/traces/ohlc/ohlc_defaults.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports=function(M,e,t,r){var o=t("x"),a=t("open"),i=t("high"),n=t("low"),s=t("close");t("hoverlabel.split");var c=g.getComponentMethod("calendars","handleTraceDefaults");if(c(M,e,["x"],r),!!(a&&i&&n&&s)){var h=Math.min(a.length,i.length,n.length,s.length);return o&&(h=Math.min(h,x.minRowLength(o))),e._length=h,h}}}}),KH=Ye({"src/traces/ohlc/defaults.js"(X,H){"use strict";var g=ta(),x=Xk(),A=Qd(),M=IT();H.exports=function(r,o,a,i){function n(c,h){return g.coerce(r,o,M,c,h)}var s=x(r,o,n,i);if(!s){o.visible=!1;return}A(r,o,i,n,{x:!0}),n("xhoverformat"),n("yhoverformat"),n("line.width"),n("line.dash"),e(r,o,n,"increasing"),e(r,o,n,"decreasing"),n("text"),n("hovertext"),n("tickwidth"),i._requestRangeslider[o.xaxis]=!0,n("zorder")};function e(t,r,o,a){o(a+".line.color"),o(a+".line.width",r.line.width),o(a+".line.dash",r.line.dash)}}}),Yk=Ye({"src/traces/ohlc/calc.js"(X,H){"use strict";var g=ta(),x=g._,A=Co(),M=tv(),e=ks().BADNUM;function t(i,n){var s=A.getFromId(i,n.xaxis),c=A.getFromId(i,n.yaxis),h=a(i,s,n),v=n._minDiff;n._minDiff=null;var p=n._origX;n._origX=null;var T=n._xcalc;n._xcalc=null;var l=o(i,n,p,T,c,r);return n._extremes[s._id]=A.findExtremes(s,T,{vpad:v/2}),l.length?(g.extendFlat(l[0].t,{wHover:v/2,tickLen:h}),l):[{t:{empty:!0}}]}function r(i,n,s,c){return{o:i,h:n,l:s,c}}function o(i,n,s,c,h,v){for(var p=h.makeCalcdata(n,"open"),T=h.makeCalcdata(n,"high"),l=h.makeCalcdata(n,"low"),_=h.makeCalcdata(n,"close"),w=g.isArrayOrTypedArray(n.text),S=g.isArrayOrTypedArray(n.hovertext),E=!0,m=null,b=!!n.xperiodalignment,d=[],u=0;u<c.length;u++){var y=c[u],f=p[u],P=T[u],L=l[u],z=_[u];if(y!==e&&f!==e&&P!==e&&L!==e&&z!==e){z===f?m!==null&&z!==m&&(E=z>m):E=z>f,m=z;var F=v(f,P,L,z);F.pos=y,F.yc=(f+z)/2,F.i=u,F.dir=E?"increasing":"decreasing",F.x=F.pos,F.y=[L,P],b&&(F.orig_p=s[u]),w&&(F.tx=n.text[u]),S&&(F.htx=n.hovertext[u]),d.push(F)}else d.push({pos:y,empty:!0})}return n._extremes[h._id]=A.findExtremes(h,g.concat(l,T),{padded:!0}),d.length&&(d[0].t={labels:{open:x(i,"open:")+" ",high:x(i,"high:")+" ",low:x(i,"low:")+" ",close:x(i,"close:")+" "}}),d}function a(i,n,s){var c=s._minDiff;if(!c){var h=i._fullData,v=[];c=1/0;var p;for(p=0;p<h.length;p++){var T=h[p];if(T.type==="ohlc"&&T.visible===!0&&T.xaxis===n._id){v.push(T);var l=n.makeCalcdata(T,"x");T._origX=l;var _=M(s,n,"x",l).vals;T._xcalc=_;var w=g.distinctVals(_).minDiff;w&&isFinite(w)&&(c=Math.min(c,w))}}for(c===1/0&&(c=1),p=0;p<v.length;p++)v[p]._minDiff=c}return c*s.tickwidth}H.exports={calc:t,calcCommon:o}}}),JH=Ye({"src/traces/ohlc/plot.js"(X,H){"use strict";var g=_n(),x=ta();H.exports=function(M,e,t,r){var o=e.yaxis,a=e.xaxis,i=!!a.rangebreaks;x.makeTraceGroups(r,t,"trace ohlc").each(function(n){var s=g.select(this),c=n[0],h=c.t,v=c.trace;if(v.visible!==!0||h.empty){s.remove();return}var p=h.tickLen,T=s.selectAll("path").data(x.identity);T.enter().append("path"),T.exit().remove(),T.attr("d",function(l){if(l.empty)return"M0,0Z";var _=a.c2p(l.pos-p,!0),w=a.c2p(l.pos+p,!0),S=i?(_+w)/2:a.c2p(l.pos,!0),E=o.c2p(l.o,!0),m=o.c2p(l.h,!0),b=o.c2p(l.l,!0),d=o.c2p(l.c,!0);return"M"+_+","+E+"H"+S+"M"+S+","+m+"V"+b+"M"+w+","+d+"H"+S})})}}}),$H=Ye({"src/traces/ohlc/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn();H.exports=function(e,t,r){var o=r||g.select(e).selectAll("g.ohlclayer").selectAll("g.trace");o.style("opacity",function(a){return a[0].trace.opacity}),o.each(function(a){var i=a[0].trace;g.select(this).selectAll("path").each(function(n){if(!n.empty){var s=i[n.dir].line;g.select(this).style("fill","none").call(A.stroke,s.color).call(x.dashLine,s.dash,s.width).style("opacity",i.selectedpoints&&!n.selected?.3:1)}})})}}}),Kk=Ye({"src/traces/ohlc/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=ta().fillText,t=p1(),r={increasing:t.INCREASING.SYMBOL,decreasing:t.DECREASING.SYMBOL};function o(s,c,h,v){var p=s.cd,T=p[0].trace;return T.hoverlabel.split?i(s,c,h,v):n(s,c,h,v)}function a(s,c,h,v){var p=s.cd,T=s.xa,l=p[0].trace,_=p[0].t,w=l.type,S=w==="ohlc"?"l":"min",E=w==="ohlc"?"h":"max",m,b,d=_.bPos||0,u=function(W){return W.pos+d-c},y=_.bdPos||_.tickLen,f=_.wHover,P=Math.min(1,y/Math.abs(T.r2c(T.range[1])-T.r2c(T.range[0])));m=s.maxHoverDistance-P,b=s.maxSpikeDistance-P;function L(W){var Q=u(W);return A.inbox(Q-f,Q+f,m)}function z(W){var Q=W[S],ue=W[E];return Q===ue||A.inbox(Q-h,ue-h,m)}function F(W){return(L(W)+z(W))/2}var B=A.getDistanceFunction(v,L,z,F);if(A.getClosest(p,B,s),s.index===!1)return null;var O=p[s.index];if(O.empty)return null;var I=O.dir,N=l[I],U=N.line.color;return M.opacity(U)&&N.line.width?s.color=U:s.color=N.fillcolor,s.x0=T.c2p(O.pos+d-y,!0),s.x1=T.c2p(O.pos+d+y,!0),s.xLabelVal=O.orig_p!==void 0?O.orig_p:O.pos,s.spikeDistance=F(O)*b/m,s.xSpike=T.c2p(O.pos,!0),s}function i(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=[],S=a(s,c,h,v);if(!S)return[];var E=S.index,m=p[E],b=m.hi||l.hoverinfo,d=b.split("+"),u=b==="all",y=u||d.indexOf("y")!==-1;if(!y)return[];for(var f=["high","open","close","low"],P={},L=0;L<f.length;L++){var z=f[L],F=l[z][S.index],B=T.c2p(F,!0),O;F in P?(O=P[F],O.yLabel+="<br>"+_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat)):(O=x.extendFlat({},S),O.y0=O.y1=B,O.yLabelVal=F,O.yLabel=_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat),O.name="",w.push(O),P[F]=O)}return w}function n(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=a(s,c,h,v);if(!w)return[];var S=w.index,E=p[S],m=w.index=E.i,b=E.dir;function d(F){return _.labels[F]+g.hoverLabelText(T,l[F][m],l.yhoverformat)}var u=E.hi||l.hoverinfo,y=u.split("+"),f=u==="all",P=f||y.indexOf("y")!==-1,L=f||y.indexOf("text")!==-1,z=P?[d("open"),d("high"),d("low"),d("close")+" "+r[b]]:[];return L&&e(E,l,z),w.extraText=z.join("<br>"),w.y0=w.y1=T.c2p(E.yc,!0),[w]}H.exports={hoverPoints:o,hoverSplit:i,hoverOnPoints:n}}}),Jk=Ye({"src/traces/ohlc/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a=M[0].t.bPos||0;if(A===!1)for(o=0;o<M.length;o++)M[o].selected=0;else for(o=0;o<M.length;o++){var i=M[o];A.contains([e.c2p(i.pos+a),t.c2p(i.yc)],null,i.i,x)?(r.push({pointNumber:i.i,x:e.c2d(i.pos),y:t.c2d(i.yc)}),i.selected=1):i.selected=0}return r}}}),QH=Ye({"src/traces/ohlc/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"ohlc",basePlotModule:Pf(),categories:["cartesian","svg","showLegend"],meta:{},attributes:IT(),supplyDefaults:KH(),calc:Yk().calc,plot:JH(),style:$H(),hoverPoints:Kk().hoverPoints,selectPoints:Jk()}}}),eG=Ye({"lib/ohlc.js"(X,H){"use strict";H.exports=QH()}}),$k=Ye({"src/traces/candlestick/attributes.js"(X,H){"use strict";var g=ta().extendFlat,x=Cc().axisHoverFormat,A=IT(),M=F_();function e(t){return{line:{color:g({},M.line.color,{dflt:t}),width:M.line.width,editType:"style"},fillcolor:M.fillcolor,editType:"style"}}H.exports={xperiod:A.xperiod,xperiod0:A.xperiod0,xperiodalignment:A.xperiodalignment,xhoverformat:x("x"),yhoverformat:x("y"),x:A.x,open:A.open,high:A.high,low:A.low,close:A.close,line:{width:g({},M.line.width,{}),editType:"style"},increasing:e(A.increasing.line.color.dflt),decreasing:e(A.decreasing.line.color.dflt),text:A.text,hovertext:A.hovertext,whiskerwidth:g({},M.whiskerwidth,{dflt:0}),hoverlabel:A.hoverlabel,zorder:M.zorder}}}),tG=Ye({"src/traces/candlestick/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xk(),M=Qd(),e=$k();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,e,h,v)}var c=A(o,a,s,n);if(!c){a.visible=!1;return}M(o,a,n,s,{x:!0}),s("xhoverformat"),s("yhoverformat"),s("line.width"),t(o,a,s,"increasing"),t(o,a,s,"decreasing"),s("text"),s("hovertext"),s("whiskerwidth"),n._requestRangeslider[a.xaxis]=!0,s("zorder")};function t(r,o,a,i){var n=a(i+".line.color");a(i+".line.width",o.line.width),a(i+".fillcolor",x.addOpacity(n,.5))}}}),rG=Ye({"src/traces/candlestick/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=tv(),M=Yk().calcCommon;H.exports=function(t,r){var o=t._fullLayout,a=x.getFromId(t,r.xaxis),i=x.getFromId(t,r.yaxis),n=a.makeCalcdata(r,"x"),s=A(r,a,"x",n).vals,c=M(t,r,n,s,i,e);return c.length?(g.extendFlat(c[0].t,{num:o._numBoxes,dPos:g.distinctVals(s).minDiff/2,posLetter:"x",valLetter:"y"}),o._numBoxes++,c):[{t:{empty:!0}}]};function e(t,r,o,a){return{min:o,q1:Math.min(t,a),med:a,q3:Math.max(t,a),max:r}}}}),aG=Ye({"src/traces/candlestick/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"candlestick",basePlotModule:Pf(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:$k(),layoutAttributes:O_(),supplyLayoutDefaults:V2().supplyLayoutDefaults,crossTraceCalc:q2().crossTraceCalc,supplyDefaults:tG(),calc:rG(),plot:H2().plot,layerName:"boxlayer",style:G2().style,hoverPoints:Kk().hoverPoints,selectPoints:Jk()}}}),iG=Ye({"lib/candlestick.js"(X,H){"use strict";H.exports=aG()}}),Qk=Ye({"src/plots/polar/set_convert.js"(X,H){"use strict";var g=ta(),x=wv(),A=g.deg2rad,M=g.rad2deg;H.exports=function(i,n,s){switch(x(i,s),i._id){case"x":case"radialaxis":e(i,n);break;case"angularaxis":o(i,n);break}};function e(a,i){var n=i._subplot;a.setGeometry=function(){var s=a._rl[0],c=a._rl[1],h=n.innerRadius,v=(n.radius-h)/(c-s),p=h/v,T=s>c?function(l){return l<=0}:function(l){return l>=0};a.c2g=function(l){var _=a.c2l(l)-s;return(T(_)?_:0)+p},a.g2c=function(l){return a.l2c(l+s-p)},a.g2p=function(l){return l*v},a.c2p=function(l){return a.g2p(a.c2g(l))}}}function t(a,i){return i==="degrees"?A(a):a}function r(a,i){return i==="degrees"?M(a):a}function o(a,i){var n=a.type;if(n==="linear"){var s=a.d2c,c=a.c2d;a.d2c=function(h,v){return t(s(h),v)},a.c2d=function(h,v){return c(r(h,v))}}a.makeCalcdata=function(h,v){var p=h[v],T=h._length,l,_,w=function(d){return a.d2c(d,h.thetaunit)};if(p)for(l=new Array(T),_=0;_<T;_++)l[_]=w(p[_]);else{var S=v+"0",E="d"+v,m=S in h?w(h[S]):0,b=h[E]?w(h[E]):(a.period||2*Math.PI)/T;for(l=new Array(T),_=0;_<T;_++)l[_]=m+_*b}return l},a.setGeometry=function(){var h=i.sector,v=h.map(A),p={clockwise:-1,counterclockwise:1}[a.direction],T=A(a.rotation),l=function(u){return p*u+T},_=function(u){return(u-T)/p},w,S,E,m;switch(n){case"linear":S=w=g.identity,m=A,E=M,a.range=g.isFullCircle(v)?[h[0],h[0]+360]:v.map(_).map(M);break;case"category":var b=a._categories.length,d=a.period?Math.max(a.period,b):b;d===0&&(d=1),S=m=function(u){return u*2*Math.PI/d},w=E=function(u){return u*d/Math.PI/2},a.range=[0,d];break}a.c2g=function(u){return l(S(u))},a.g2c=function(u){return w(_(u))},a.t2g=function(u){return l(m(u))},a.g2t=function(u){return E(_(u))}}}}}),RT=Ye({"src/plots/polar/constants.js"(X,H){"use strict";H.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}}}),DT=Ye({"src/plots/polar/helpers.js"(X,H){"use strict";var g=ta(),x=C_().tester,A=g.findIndexOfMin,M=g.isAngleInsideSector,e=g.angleDelta,t=g.angleDist;function r(_,w,S,E,m){if(!M(w,E))return!1;var b,d;S[0]<S[1]?(b=S[0],d=S[1]):(b=S[1],d=S[0]);var u=x(s(b,E[0],E[1],m)),y=x(s(d,E[0],E[1],m)),f=[_*Math.cos(w),_*Math.sin(w)];return y.contains(f)&&!u.contains(f)}function o(_,w,S,E){var m,b,d=E[0],u=E[1],y=v(Math.sin(w)-Math.sin(_)),f=v(Math.cos(w)-Math.cos(_)),P=Math.tan(S),L=v(1/P),z=y/f,F=u-z*d;return L?y&&f?(m=F/(P-z),b=P*m):f?(m=u*L,b=u):(m=d,b=d*P):y&&f?(m=0,b=F):f?(m=0,b=u):m=b=NaN,[m,b]}function a(_,w,S,E){var m=-w*S,b=w*w+1,d=2*(w*m-S),u=m*m+S*S-_*_,y=Math.sqrt(d*d-4*b*u),f=(-d+y)/(2*b),P=(-d-y)/(2*b);return[[f,w*f+m+E],[P,w*P+m+E]]}function i(_,w){var S=w.length,E=new Array(S+1),m;for(m=0;m<S;m++){var b=w[m];E[m]=[_*Math.cos(b),_*Math.sin(b)]}return E[m]=E[0].slice(),E}function n(_,w,S,E){var m=E.length,b=[],d,u;function y(N){return[_*Math.cos(N),_*Math.sin(N)]}function f(N,U,W){return o(N,U,W,y(N))}function P(N){return g.mod(N,m)}function L(N){return M(N,[w,S])}var z=A(E,function(N){return L(N)?t(N,w):1/0}),F=f(E[z],E[P(z-1)],w);for(b.push(F),d=z,u=0;u<m;d++,u++){var B=E[P(d)];if(!L(B))break;b.push(y(B))}var O=A(E,function(N){return L(N)?t(N,S):1/0}),I=f(E[O],E[P(O+1)],S);return b.push(I),b.push([0,0]),b.push(b[0].slice()),b}function s(_,w,S,E){return g.isFullCircle([w,S])?i(_,E):n(_,w,S,E)}function c(_,w,S,E){for(var m=1/0,b=1/0,d=s(_,w,S,E),u=0;u<d.length;u++){var y=d[u];m=Math.min(m,y[0]),b=Math.min(b,-y[1])}return[m,b]}function h(_,w){var S=function(b){var d=e(b,_);return d>0?d:1/0},E=A(w,S),m=g.mod(E+1,w.length);return[w[E],w[m]]}function v(_){return Math.abs(_)>1e-10?_:0}function p(_,w,S){w=w||0,S=S||0;for(var E=_.length,m=new Array(E),b=0;b<E;b++){var d=_[b];m[b]=[w+d[0],S-d[1]]}return m}function T(_,w,S,E,m,b){var d=s(_,w,S,E);return"M"+p(d,m,b).join("L")}function l(_,w,S,E,m,b,d){var u,y;_<w?(u=_,y=w):(u=w,y=_);var f=p(s(u,S,E,m),b,d),P=p(s(y,S,E,m),b,d);return"M"+P.reverse().join("L")+"M"+f.join("L")}H.exports={isPtInsidePolygon:r,findPolygonOffset:c,findEnclosingVertexAngles:h,findIntersectionXY:o,findXYatLength:a,clampTiny:v,pathPolygon:T,pathPolygonAnnulus:l}}}),eC=Ye({"src/plots/smith/helpers.js"(X,H){"use strict";function g(r){return r<0?-1:r>0?1:0}function x(r){var o=r[0],a=r[1];if(!isFinite(o)||!isFinite(a))return[1,0];var i=(o+1)*(o+1)+a*a;return[(o*o+a*a-1)/i,2*a/i]}function A(r,o){var a=o[0],i=o[1];return[a*r.radius+r.cx,-i*r.radius+r.cy]}function M(r,o){return o*r.radius}function e(r,o,a,i){var n=A(r,x([a,o])),s=n[0],c=n[1],h=A(r,x([i,o])),v=h[0],p=h[1];if(o===0)return["M"+s+","+c,"L"+v+","+p].join(" ");var T=M(r,1/Math.abs(o));return["M"+s+","+c,"A"+T+","+T+" 0 0,"+(o<0?1:0)+" "+v+","+p].join(" ")}function t(r,o,a,i){var n=M(r,1/(o+1)),s=A(r,x([o,a])),c=s[0],h=s[1],v=A(r,x([o,i])),p=v[0],T=v[1];if(g(a)!==g(i)){var l=A(r,x([o,0])),_=l[0],w=l[1];return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(0<a?0:1)+" "+_+","+w,"A"+n+","+n+" 0 0,"+(i<0?0:1)+p+","+T].join(" ")}return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(i<a?0:1)+" "+p+","+T].join(" ")}H.exports={smith:x,reactanceArc:e,resistanceArc:t,smithTransform:A}}}),tC=Ye({"src/plots/polar/polar.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strRotate,t=M.strTranslate,r=Fn(),o=Bo(),a=Gu(),i=Co(),n=wv(),s=Qk(),c=Yd().doAutoRange,h=CS(),v=bp(),p=Lc(),T=Xg(),l=ff().prepSelect,_=ff().selectOnClick,w=ff().clearOutline,S=Kd(),E=M_(),m=k_().redrawReglTraces,b=oh().MID_SHIFT,d=RT(),u=DT(),y=eC(),f=y.smith,P=y.reactanceArc,L=y.resistanceArc,z=y.smithTransform,F=M._,B=M.mod,O=M.deg2rad,I=M.rad2deg;function N(he,G,$){this.isSmith=$||!1,this.id=G,this.gd=he,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var J=he._fullLayout,Z="clip"+J._uid+G;this.clipIds.forTraces=Z+"-for-traces",this.clipPaths.forTraces=J._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=J["_"+($?"smith":"polar")+"layer"].append("g").attr("class",G),this.getHole=function(re){return this.isSmith?0:re.hole},this.getSector=function(re){return this.isSmith?[0,360]:re.sector},this.getRadial=function(re){return this.isSmith?re.realaxis:re.radialaxis},this.getAngular=function(re){return this.isSmith?re.imaginaryaxis:re.angularaxis},$||(this.radialTickLayout=null,this.angularTickLayout=null)}var U=N.prototype;H.exports=function(G,$,J){return new N(G,$,J)},U.plot=function(he,G){for(var $=this,J=G[$.id],Z=!1,re=0;re<he.length;re++){var ne=he[re][0].trace;if(ne.cliponaxis===!1){Z=!0;break}}$._hasClipOnAxisFalse=Z,$.updateLayers(G,J),$.updateLayout(G,J),a.generalUpdatePerTraceModule($.gd,$,he,J),$.updateFx(G,J),$.isSmith&&(delete J.realaxis.range,delete J.imaginaryaxis.range)},U.updateLayers=function(he,G){var $=this,J=$.isSmith,Z=$.layers,re=$.getRadial(G),ne=$.getAngular(G),j=d.layerNames,ee=j.indexOf("frontplot"),ie=j.slice(0,ee),fe=ne.layer==="below traces",be=re.layer==="below traces";fe&&ie.push("angular-line"),be&&ie.push("radial-line"),fe&&ie.push("angular-axis"),be&&ie.push("radial-axis"),ie.push("frontplot"),fe||ie.push("angular-line"),be||ie.push("radial-line"),fe||ie.push("angular-axis"),be||ie.push("radial-axis");var Ae=(J?"smith":"polar")+"sublayer",Be=$.framework.selectAll("."+Ae).data(ie,String);Be.enter().append("g").attr("class",function(Ie){return Ae+" "+Ie}).each(function(Ie){var Ze=Z[Ie]=g.select(this);switch(Ie){case"frontplot":J||Ze.append("g").classed("barlayer",!0),Ze.append("g").classed("scatterlayer",!0);break;case"backplot":Ze.append("g").classed("maplayer",!0);break;case"plotbg":Z.bg=Ze.append("path");break;case"radial-grid":Ze.style("fill","none");break;case"angular-grid":Ze.style("fill","none");break;case"radial-line":Ze.append("line").style("fill","none");break;case"angular-line":Ze.append("path").style("fill","none");break}}),Be.order()},U.updateLayout=function(he,G){var $=this,J=$.layers,Z=he._size,re=$.getRadial(G),ne=$.getAngular(G),j=G.domain.x,ee=G.domain.y;$.xOffset=Z.l+Z.w*j[0],$.yOffset=Z.t+Z.h*(1-ee[1]);var ie=$.xLength=Z.w*(j[1]-j[0]),fe=$.yLength=Z.h*(ee[1]-ee[0]),be=$.getSector(G);$.sectorInRad=be.map(O);var Ae=$.sectorBBox=Q(be),Be=Ae[2]-Ae[0],Ie=Ae[3]-Ae[1],Ze=fe/ie,at=Math.abs(Ie/Be),it,et,lt,Me,ge;Ze>at?(it=ie,et=ie*at,ge=(fe-et)/Z.h/2,lt=[j[0],j[1]],Me=[ee[0]+ge,ee[1]-ge]):(it=fe/at,et=fe,ge=(ie-it)/Z.w/2,lt=[j[0]+ge,j[1]-ge],Me=[ee[0],ee[1]]),$.xLength2=it,$.yLength2=et,$.xDomain2=lt,$.yDomain2=Me;var ce=$.xOffset2=Z.l+Z.w*lt[0],ze=$.yOffset2=Z.t+Z.h*(1-Me[1]),tt=$.radius=it/Be,nt=$.innerRadius=$.getHole(G)*tt,Qe=$.cx=ce-tt*Ae[0],Ct=$.cy=ze+tt*Ae[3],St=$.cxx=Qe-ce,Ot=$.cyy=Ct-ze,jt=re.side,ur;jt==="counterclockwise"?(ur=jt,jt="top"):jt==="clockwise"&&(ur=jt,jt="bottom"),$.radialAxis=$.mockAxis(he,G,re,{_id:"x",side:jt,_trueSide:ur,domain:[nt/Z.w,tt/Z.w]}),$.angularAxis=$.mockAxis(he,G,ne,{side:"right",domain:[0,Math.PI],autorange:!1}),$.doAutoRange(he,G),$.updateAngularAxis(he,G),$.updateRadialAxis(he,G),$.updateRadialAxisTitle(he,G),$.xaxis=$.mockCartesianAxis(he,G,{_id:"x",domain:lt}),$.yaxis=$.mockCartesianAxis(he,G,{_id:"y",domain:Me});var ar=$.pathSubplot();$.clipPaths.forTraces.select("path").attr("d",ar).attr("transform",t(St,Ot)),J.frontplot.attr("transform",t(ce,ze)).call(o.setClipUrl,$._hasClipOnAxisFalse?null:$.clipIds.forTraces,$.gd),J.bg.attr("d",ar).attr("transform",t(Qe,Ct)).call(r.fill,G.bgcolor)},U.mockAxis=function(he,G,$,J){var Z=M.extendFlat({},$,J);return s(Z,G,he),Z},U.mockCartesianAxis=function(he,G,$){var J=this,Z=J.isSmith,re=$._id,ne=M.extendFlat({type:"linear"},$);n(ne,he);var j={x:[0,2],y:[1,3]};return ne.setRange=function(){var ee=J.sectorBBox,ie=j[re],fe=J.radialAxis._rl,be=(fe[1]-fe[0])/(1-J.getHole(G));ne.range=[ee[ie[0]]*be,ee[ie[1]]*be]},ne.isPtWithinRange=re==="x"&&!Z?function(ee){return J.isPtInside(ee)}:function(){return!0},ne.setRange(),ne.setScale(),ne},U.doAutoRange=function(he,G){var $=this,J=$.gd,Z=$.radialAxis,re=$.getRadial(G);c(J,Z);var ne=Z.range;if(re.range=ne.slice(),re._input.range=ne.slice(),Z._rl=[Z.r2l(ne[0],null,"gregorian"),Z.r2l(ne[1],null,"gregorian")],Z.minallowed!==void 0){var j=Z.r2l(Z.minallowed);Z._rl[0]>Z._rl[1]?Z._rl[1]=Math.max(Z._rl[1],j):Z._rl[0]=Math.max(Z._rl[0],j)}if(Z.maxallowed!==void 0){var ee=Z.r2l(Z.maxallowed);Z._rl[0]<Z._rl[1]?Z._rl[1]=Math.min(Z._rl[1],ee):Z._rl[0]=Math.min(Z._rl[0],ee)}},U.updateRadialAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getRadial(G),fe=B($.getSector(G)[0],360),be=$.radialAxis,Ae=ne<re,Be=$.isSmith;Be||($.fillViewInitialKey("radialaxis.angle",ie.angle),$.fillViewInitialKey("radialaxis.range",be.range.slice()),be.setGeometry()),be.tickangle==="auto"&&fe>90&&fe<=270&&(be.tickangle=180);var Ie=Be?function(tt){var nt=z($,f([tt.x,0]));return t(nt[0]-j,nt[1]-ee)}:function(tt){return t(be.l2p(tt.x)+ne,0)},Ze=Be?function(tt){return L($,tt.x,-1/0,1/0)}:function(tt){return $.pathArc(be.r2p(tt.x)+ne)},at=W(ie);if($.radialTickLayout!==at&&(Z["radial-axis"].selectAll(".xtick").remove(),$.radialTickLayout=at),Ae){be.setScale();var it=0,et=Be?(be.tickvals||[]).filter(function(tt){return tt>=0}).map(function(tt){return i.tickText(be,tt,!0,!1)}):i.calcTicks(be),lt=Be?et:i.clipEnds(be,et),Me=i.getTickSigns(be)[2];Be&&((be.ticks==="top"&&be.side==="bottom"||be.ticks==="bottom"&&be.side==="top")&&(Me=-Me),be.ticks==="top"&&be.side==="top"&&(it=-be.ticklen),be.ticks==="bottom"&&be.side==="bottom"&&(it=be.ticklen)),i.drawTicks(J,be,{vals:et,layer:Z["radial-axis"],path:i.makeTickPath(be,0,Me),transFn:Ie,crisp:!1}),i.drawGrid(J,be,{vals:lt,layer:Z["radial-grid"],path:Ze,transFn:M.noop,crisp:!1}),i.drawLabels(J,be,{vals:et,layer:Z["radial-axis"],transFn:Ie,labelFns:i.makeLabelFns(be,it)})}var ge=$.radialAxisAngle=$.vangles?I(ue(O(ie.angle),$.vangles)):ie.angle,ce=t(j,ee),ze=ce+e(-ge);se(Z["radial-axis"],Ae&&(ie.showticklabels||ie.ticks),{transform:ze}),se(Z["radial-grid"],Ae&&ie.showgrid,{transform:Be?"":ce}),se(Z["radial-line"].select("line"),Ae&&ie.showline,{x1:Be?-re:ne,y1:0,x2:re,y2:0,transform:ze}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateRadialAxisTitle=function(he,G,$){if(!this.isSmith){var J=this,Z=J.gd,re=J.radius,ne=J.cx,j=J.cy,ee=J.getRadial(G),ie=J.id+"title",fe=0;if(ee.title){var be=o.bBox(J.layers["radial-axis"].node()).height,Ae=ee.title.font.size,Be=ee.side;fe=Be==="top"?Ae:Be==="counterclockwise"?-(be+Ae*.4):be+Ae*.8}var Ie=$!==void 0?$:J.radialAxisAngle,Ze=O(Ie),at=Math.cos(Ze),it=Math.sin(Ze),et=ne+re/2*at+fe*it,lt=j-re/2*it+fe*at;J.layers["radial-axis-title"]=T.draw(Z,ie,{propContainer:ee,propName:J.id+".radialaxis.title",placeholder:F(Z,"Click to enter radial axis title"),attributes:{x:et,y:lt,"text-anchor":"middle"},transform:{rotate:-Ie}})}},U.updateAngularAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getAngular(G),fe=$.angularAxis,be=$.isSmith;be||($.fillViewInitialKey("angularaxis.rotation",ie.rotation),fe.setGeometry(),fe.setScale());var Ae=be?function(nt){var Qe=z($,f([0,nt.x]));return Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2}:function(nt){return fe.t2g(nt.x)};fe.type==="linear"&&fe.thetaunit==="radians"&&(fe.tick0=I(fe.tick0),fe.dtick=I(fe.dtick));var Be=function(nt){return t(j+re*Math.cos(nt),ee-re*Math.sin(nt))},Ie=be?function(nt){var Qe=z($,f([0,nt.x]));return t(Qe[0],Qe[1])}:function(nt){return Be(Ae(nt))},Ze=be?function(nt){var Qe=z($,f([0,nt.x])),Ct=Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2;return t(Qe[0],Qe[1])+e(-I(Ct))}:function(nt){var Qe=Ae(nt);return Be(Qe)+e(-I(Qe))},at=be?function(nt){return P($,nt.x,0,1/0)}:function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe),St=Math.sin(Qe);return"M"+[j+ne*Ct,ee-ne*St]+"L"+[j+re*Ct,ee-re*St]},it=i.makeLabelFns(fe,0),et=it.labelStandoff,lt={};lt.xFn=function(nt){var Qe=Ae(nt);return Math.cos(Qe)*et},lt.yFn=function(nt){var Qe=Ae(nt),Ct=Math.sin(Qe)>0?.2:1;return-Math.sin(Qe)*(et+nt.fontSize*Ct)+Math.abs(Math.cos(Qe))*(nt.fontSize*b)},lt.anchorFn=function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe);return Math.abs(Ct)<.1?"middle":Ct>0?"start":"end"},lt.heightFn=function(nt,Qe,Ct){var St=Ae(nt);return-.5*(1+Math.sin(St))*Ct};var Me=W(ie);$.angularTickLayout!==Me&&(Z["angular-axis"].selectAll("."+fe._id+"tick").remove(),$.angularTickLayout=Me);var ge=be?[1/0].concat(fe.tickvals||[]).map(function(nt){return i.tickText(fe,nt,!0,!1)}):i.calcTicks(fe);be&&(ge[0].text="\u221E",ge[0].fontSize*=1.75);var ce;if(G.gridshape==="linear"?(ce=ge.map(Ae),M.angleDelta(ce[0],ce[1])<0&&(ce=ce.slice().reverse())):ce=null,$.vangles=ce,fe.type==="category"&&(ge=ge.filter(function(nt){return M.isAngleInsideSector(Ae(nt),$.sectorInRad)})),fe.visible){var ze=fe.ticks==="inside"?-1:1,tt=(fe.linewidth||1)/2;i.drawTicks(J,fe,{vals:ge,layer:Z["angular-axis"],path:"M"+ze*tt+",0h"+ze*fe.ticklen,transFn:Ze,crisp:!1}),i.drawGrid(J,fe,{vals:ge,layer:Z["angular-grid"],path:at,transFn:M.noop,crisp:!1}),i.drawLabels(J,fe,{vals:ge,layer:Z["angular-axis"],repositionOnUpdate:!0,transFn:Ie,labelFns:lt})}se(Z["angular-line"].select("path"),ie.showline,{d:$.pathSubplot(),transform:t(j,ee)}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateFx=function(he,G){if(!this.gd._context.staticPlot){var $=!this.isSmith;$&&(this.updateAngularDrag(he),this.updateRadialDrag(he,G,0),this.updateRadialDrag(he,G,1)),this.updateHoverAndMainDrag(he)}},U.updateHoverAndMainDrag=function(he){var G=this,$=G.isSmith,J=G.gd,Z=G.layers,re=he._zoomlayer,ne=d.MINZOOM,j=d.OFFEDGE,ee=G.radius,ie=G.innerRadius,fe=G.cx,be=G.cy,Ae=G.cxx,Be=G.cyy,Ie=G.sectorInRad,Ze=G.vangles,at=G.radialAxis,it=u.clampTiny,et=u.findXYatLength,lt=u.findEnclosingVertexAngles,Me=d.cornerHalfWidth,ge=d.cornerLen/2,ce,ze,tt=h.makeDragger(Z,"path","maindrag",he.dragmode===!1?"none":"crosshair");g.select(tt).attr("d",G.pathSubplot()).attr("transform",t(fe,be)),tt.onmousemove=function(Gt){p.hover(J,Gt,G.id),J._fullLayout._lasthover=tt,J._fullLayout._hoversubplot=G.id},tt.onmouseout=function(Gt){J._dragging||v.unhover(J,Gt)};var nt={element:tt,gd:J,subplot:G.id,plotinfo:{id:G.id,xaxis:G.xaxis,yaxis:G.yaxis},xaxes:[G.xaxis],yaxes:[G.yaxis]},Qe,Ct,St,Ot,jt,ur,ar,Cr,vr;function _r(Gt,Kt){return Math.sqrt(Gt*Gt+Kt*Kt)}function yt(Gt,Kt){return _r(Gt-Ae,Kt-Be)}function Fe(Gt,Kt){return Math.atan2(Be-Kt,Gt-Ae)}function Ke(Gt,Kt){return[Gt*Math.cos(Kt),Gt*Math.sin(-Kt)]}function Ne(Gt,Kt){if(Gt===0)return G.pathSector(2*Me);var sr=ge/Gt,sa=Kt-sr,Aa=Kt+sr,La=Math.max(0,Math.min(Gt,ee)),ka=La-Me,Ga=La+Me;return"M"+Ke(ka,sa)+"A"+[ka,ka]+" 0,0,0 "+Ke(ka,Aa)+"L"+Ke(Ga,Aa)+"A"+[Ga,Ga]+" 0,0,1 "+Ke(Ga,sa)+"Z"}function Ee(Gt,Kt,sr){if(Gt===0)return G.pathSector(2*Me);var sa=Ke(Gt,Kt),Aa=Ke(Gt,sr),La=it((sa[0]+Aa[0])/2),ka=it((sa[1]+Aa[1])/2),Ga,Ma;if(La&&ka){var Ua=ka/La,ni=-1/Ua,Wt=et(Me,Ua,La,ka);Ga=et(ge,ni,Wt[0][0],Wt[0][1]),Ma=et(ge,ni,Wt[1][0],Wt[1][1])}else{var zt,Vt;ka?(zt=ge,Vt=Me):(zt=Me,Vt=ge),Ga=[[La-zt,ka-Vt],[La+zt,ka-Vt]],Ma=[[La-zt,ka+Vt],[La+zt,ka+Vt]]}return"M"+Ga.join("L")+"L"+Ma.reverse().join("L")+"Z"}function Ve(){St=null,Ot=null,jt=G.pathSubplot(),ur=!1;var Gt=J._fullLayout[G.id];ar=x(Gt.bgcolor).getLuminance(),Cr=h.makeZoombox(re,ar,fe,be,jt),Cr.attr("fill-rule","evenodd"),vr=h.makeCorners(re,fe,be),w(J)}function ke(Gt,Kt){return Kt=Math.max(Math.min(Kt,ee),ie),Gt<j?Gt=0:ee-Gt<j?Gt=ee:Kt<j?Kt=0:ee-Kt<j&&(Kt=ee),Math.abs(Kt-Gt)>ne?(Gt<Kt?(St=Gt,Ot=Kt):(St=Kt,Ot=Gt),!0):(St=null,Ot=null,!1)}function Te(Gt,Kt){Gt=Gt||jt,Kt=Kt||"M0,0Z",Cr.attr("d",Gt),vr.attr("d",Kt),h.transitionZoombox(Cr,vr,ur,ar),ur=!0;var sr={};It(sr),J.emit("plotly_relayouting",sr)}function Le(Gt,Kt){Gt=Gt*ce,Kt=Kt*ze;var sr=Qe+Gt,sa=Ct+Kt,Aa=yt(Qe,Ct),La=Math.min(yt(sr,sa),ee),ka=Fe(Qe,Ct),Ga,Ma;ke(Aa,La)&&(Ga=jt+G.pathSector(Ot),St&&(Ga+=G.pathSector(St)),Ma=Ne(St,ka)+Ne(Ot,ka)),Te(Ga,Ma)}function rt(Gt,Kt,sr,sa){var Aa=u.findIntersectionXY(sr,sa,sr,[Gt-Ae,Be-Kt]);return _r(Aa[0],Aa[1])}function dt(Gt,Kt){var sr=Qe+Gt,sa=Ct+Kt,Aa=Fe(Qe,Ct),La=Fe(sr,sa),ka=lt(Aa,Ze),Ga=lt(La,Ze),Ma=rt(Qe,Ct,ka[0],ka[1]),Ua=Math.min(rt(sr,sa,Ga[0],Ga[1]),ee),ni,Wt;ke(Ma,Ua)&&(ni=jt+G.pathSector(Ot),St&&(ni+=G.pathSector(St)),Wt=[Ee(St,ka[0],ka[1]),Ee(Ot,ka[0],ka[1])].join(" ")),Te(ni,Wt)}function xt(){if(h.removeZoombox(J),!(St===null||Ot===null)){var Gt={};It(Gt),h.showDoubleClickNotifier(J),A.call("_guiRelayout",J,Gt)}}function It(Gt){var Kt=at._rl,sr=(Kt[1]-Kt[0])/(1-ie/ee)/ee,sa=[Kt[0]+(St-ie)*sr,Kt[0]+(Ot-ie)*sr];Gt[G.id+".radialaxis.range"]=sa}function Bt(Gt,Kt){var sr=J._fullLayout.clickmode;if(h.removeZoombox(J),Gt===2){var sa={};for(var Aa in G.viewInitial)sa[G.id+"."+Aa]=G.viewInitial[Aa];J.emit("plotly_doubleclick",null),A.call("_guiRelayout",J,sa)}sr.indexOf("select")>-1&&Gt===1&&_(Kt,J,[G.xaxis],[G.yaxis],G.id,nt),sr.indexOf("event")>-1&&p.click(J,Kt,G.id)}nt.prepFn=function(Gt,Kt,sr){var sa=J._fullLayout.dragmode,Aa=tt.getBoundingClientRect();J._fullLayout._calcInverseTransform(J);var La=J._fullLayout._invTransform;ce=J._fullLayout._invScaleX,ze=J._fullLayout._invScaleY;var ka=M.apply3DTransform(La)(Kt-Aa.left,sr-Aa.top);if(Qe=ka[0],Ct=ka[1],Ze){var Ga=u.findPolygonOffset(ee,Ie[0],Ie[1],Ze);Qe+=Ae+Ga[0],Ct+=Be+Ga[1]}switch(sa){case"zoom":nt.clickFn=Bt,$||(Ze?nt.moveFn=dt:nt.moveFn=Le,nt.doneFn=xt,Ve(Gt,Kt,sr));break;case"select":case"lasso":l(Gt,Kt,sr,nt,sa);break}},v.init(nt)},U.updateRadialDrag=function(he,G,$){var J=this,Z=J.gd,re=J.layers,ne=J.radius,j=J.innerRadius,ee=J.cx,ie=J.cy,fe=J.radialAxis,be=d.radialDragBoxSize,Ae=be/2;if(!fe.visible)return;var Be=O(J.radialAxisAngle),Ie=fe._rl,Ze=Ie[0],at=Ie[1],it=Ie[$],et=.75*(Ie[1]-Ie[0])/(1-J.getHole(G))/ne,lt,Me,ge;$?(lt=ee+(ne+Ae)*Math.cos(Be),Me=ie-(ne+Ae)*Math.sin(Be),ge="radialdrag"):(lt=ee+(j-Ae)*Math.cos(Be),Me=ie-(j-Ae)*Math.sin(Be),ge="radialdrag-inner");var ce=h.makeRectDragger(re,ge,"crosshair",-Ae,-Ae,be,be),ze={element:ce,gd:Z};he.dragmode===!1&&(ze.dragmode=!1),se(g.select(ce),fe.visible&&j<ne,{transform:t(lt,Me)});var tt,nt,Qe;function Ct(ar,Cr){if(tt)tt(ar,Cr);else{var vr=[ar,-Cr],_r=[Math.cos(Be),Math.sin(Be)],yt=Math.abs(M.dot(vr,_r)/Math.sqrt(M.dot(vr,vr)));isNaN(yt)||(tt=yt<.5?jt:ur)}var Fe={};St(Fe),Z.emit("plotly_relayouting",Fe)}function St(ar){nt!==null?ar[J.id+".radialaxis.angle"]=nt:Qe!==null&&(ar[J.id+".radialaxis.range["+$+"]"]=Qe)}function Ot(){nt!==null?A.call("_guiRelayout",Z,J.id+".radialaxis.angle",nt):Qe!==null&&A.call("_guiRelayout",Z,J.id+".radialaxis.range["+$+"]",Qe)}function jt(ar,Cr){if($!==0){var vr=lt+ar,_r=Me+Cr;nt=Math.atan2(ie-_r,vr-ee),J.vangles&&(nt=ue(nt,J.vangles)),nt=I(nt);var yt=t(ee,ie)+e(-nt);re["radial-axis"].attr("transform",yt),re["radial-line"].select("line").attr("transform",yt);var Fe=J.gd._fullLayout,Ke=Fe[J.id];J.updateRadialAxisTitle(Fe,Ke,nt)}}function ur(ar,Cr){var vr=M.dot([ar,-Cr],[Math.cos(Be),Math.sin(Be)]);if(Qe=it-et*vr,et>0!=($?Qe>Ze:Qe<at)){Qe=null;return}var _r=Z._fullLayout,yt=_r[J.id];fe.range[$]=Qe,fe._rl[$]=Qe,J.updateRadialAxis(_r,yt),J.xaxis.setRange(),J.xaxis.setScale(),J.yaxis.setRange(),J.yaxis.setScale();var Fe=!1;for(var Ke in J.traceHash){var Ne=J.traceHash[Ke],Ee=M.filterVisible(Ne),Ve=Ne[0][0].trace._module;Ve.plot(Z,J,Ee,yt),A.traceIs(Ke,"gl")&&Ee.length&&(Fe=!0)}Fe&&(E(Z),m(Z))}ze.prepFn=function(){tt=null,nt=null,Qe=null,ze.moveFn=Ct,ze.doneFn=Ot,w(Z)},ze.clampFn=function(ar,Cr){return Math.sqrt(ar*ar+Cr*Cr)<d.MINDRAG&&(ar=0,Cr=0),[ar,Cr]},v.init(ze)},U.updateAngularDrag=function(he){var G=this,$=G.gd,J=G.layers,Z=G.radius,re=G.angularAxis,ne=G.cx,j=G.cy,ee=G.cxx,ie=G.cyy,fe=d.angularDragBoxSize,be=h.makeDragger(J,"path","angulardrag",he.dragmode===!1?"none":"move"),Ae={element:be,gd:$};he.dragmode===!1?Ae.dragmode=!1:g.select(be).attr("d",G.pathAnnulus(Z,Z+fe)).attr("transform",t(ne,j)).call(S,"move");function Be(Qe,Ct){return Math.atan2(ie+fe-Ct,Qe-ee-fe)}var Ie=J.frontplot.select(".scatterlayer").selectAll(".trace"),Ze=Ie.selectAll(".point"),at=Ie.selectAll(".textpoint"),it,et,lt,Me,ge,ce;function ze(Qe,Ct){var St=G.gd._fullLayout,Ot=St[G.id],jt=it+Qe*he._invScaleX,ur=et+Ct*he._invScaleY,ar=Be(jt,ur),Cr=I(ar-ce);if(Me=lt+Cr,J.frontplot.attr("transform",t(G.xOffset2,G.yOffset2)+e([-Cr,ee,ie])),G.vangles){ge=G.radialAxisAngle+Cr;var vr=t(ne,j)+e(-Cr),_r=t(ne,j)+e(-ge);J.bg.attr("transform",vr),J["radial-grid"].attr("transform",vr),J["radial-axis"].attr("transform",_r),J["radial-line"].select("line").attr("transform",_r),G.updateRadialAxisTitle(St,Ot,ge)}else G.clipPaths.forTraces.select("path").attr("transform",t(ee,ie)+e(Cr));Ze.each(function(){var ke=g.select(this),Te=o.getTranslate(ke);ke.attr("transform",t(Te.x,Te.y)+e([Cr]))}),at.each(function(){var ke=g.select(this),Te=ke.select("text"),Le=o.getTranslate(ke);ke.attr("transform",e([Cr,Te.attr("x"),Te.attr("y")])+t(Le.x,Le.y))}),re.rotation=M.modHalf(Me,360),G.updateAngularAxis(St,Ot),G._hasClipOnAxisFalse&&!M.isFullCircle(G.sectorInRad)&&Ie.call(o.hideOutsideRangePoints,G);var yt=!1;for(var Fe in G.traceHash)if(A.traceIs(Fe,"gl")){var Ke=G.traceHash[Fe],Ne=M.filterVisible(Ke),Ee=Ke[0][0].trace._module;Ee.plot($,G,Ne,Ot),Ne.length&&(yt=!0)}yt&&(E($),m($));var Ve={};tt(Ve),$.emit("plotly_relayouting",Ve)}function tt(Qe){Qe[G.id+".angularaxis.rotation"]=Me,G.vangles&&(Qe[G.id+".radialaxis.angle"]=ge)}function nt(){at.select("text").attr("transform",null);var Qe={};tt(Qe),A.call("_guiRelayout",$,Qe)}Ae.prepFn=function(Qe,Ct,St){var Ot=he[G.id];lt=Ot.angularaxis.rotation;var jt=be.getBoundingClientRect();it=Ct-jt.left,et=St-jt.top,$._fullLayout._calcInverseTransform($);var ur=M.apply3DTransform(he._invTransform)(it,et);it=ur[0],et=ur[1],ce=Be(it,et),Ae.moveFn=ze,Ae.doneFn=nt,w($)},G.vangles&&!M.isFullCircle(G.sectorInRad)&&(Ae.prepFn=M.noop,S(g.select(be),null)),v.init(Ae)},U.isPtInside=function(he){if(this.isSmith)return!0;var G=this.sectorInRad,$=this.vangles,J=this.angularAxis.c2g(he.theta),Z=this.radialAxis,re=Z.c2l(he.r),ne=Z._rl,j=$?u.isPtInsidePolygon:M.isPtInsideSector;return j(re,J,ne,G,$)},U.pathArc=function(he){var G=this.sectorInRad,$=this.vangles,J=$?u.pathPolygon:M.pathArc;return J(he,G[0],G[1],$)},U.pathSector=function(he){var G=this.sectorInRad,$=this.vangles,J=$?u.pathPolygon:M.pathSector;return J(he,G[0],G[1],$)},U.pathAnnulus=function(he,G){var $=this.sectorInRad,J=this.vangles,Z=J?u.pathPolygonAnnulus:M.pathAnnulus;return Z(he,G,$[0],$[1],J)},U.pathSubplot=function(){var he=this.innerRadius,G=this.radius;return he?this.pathAnnulus(he,G):this.pathSector(G)},U.fillViewInitialKey=function(he,G){he in this.viewInitial||(this.viewInitial[he]=G)};function W(he){var G=he.ticks+String(he.ticklen)+String(he.showticklabels);return"side"in he&&(G+=he.side),G}function Q(he){var G=he[0],$=he[1],J=$-G,Z=B(G,360),re=Z+J,ne=Math.cos(O(Z)),j=Math.sin(O(Z)),ee=Math.cos(O(re)),ie=Math.sin(O(re)),fe,be,Ae,Be;return Z<=90&&re>=90||Z>90&&re>=450?Be=1:j<=0&&ie<=0?Be=0:Be=Math.max(j,ie),Z<=180&&re>=180||Z>180&&re>=540?fe=-1:ne>=0&&ee>=0?fe=0:fe=Math.min(ne,ee),Z<=270&&re>=270||Z>270&&re>=630?be=-1:j>=0&&ie>=0?be=0:be=Math.min(j,ie),re>=360?Ae=1:ne<=0&&ee<=0?Ae=0:Ae=Math.max(ne,ee),[fe,be,Ae,Be]}function ue(he,G){var $=function(Z){return M.angleDist(he,Z)},J=M.findIndexOfMin(G,$);return G[J]}function se(he,G,$){return G?(he.attr("display",null),he.attr($)):he&&he.attr("display","none"),he}}}),rC=Ye({"src/plots/polar/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,ticklabelstep:x.ticklabelstep,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickfont:x.tickfont,tickangle:x.tickangle,tickformat:x.tickformat,tickformatstops:x.tickformatstops,layer:x.layer},"plot","from-root"),o={visible:M({},x.visible,{dflt:!0}),type:M({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},autorange:M({},x.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:M({},x.minallowed,{editType:"plot"}),maxallowed:M({},x.maxallowed,{editType:"plot"}),range:M({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:x.categoryorder,categoryarray:x.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:x.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:M({},x.title.text,{editType:"plot",dflt:""}),font:M({},x.title.font,{editType:"plot"}),editType:"plot"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(o,t,r);var a={visible:M({},x.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:x.autotypenumbers,categoryorder:x.categoryorder,categoryarray:x.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(a,t,r),H.exports={domain:A({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:g.background},radialaxis:o,angularaxis:a,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),nG=Ye({"src/plots/polar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Zg(),r=e1(),o=$m(),a=Qm(),i=P2(),n=I_(),s=cS(),c=r1(),h=rC(),v=Qk(),p=RT(),T=p.axisNames;function l(w,S,E,m){var b=E("bgcolor");m.bgColor=x.combine(b,m.paper_bgcolor);var d=E("sector");E("hole");var u=e(m.fullData,p.name,m.id),y=m.layoutOut,f;function P(be,Ae){return E(f+"."+be,Ae)}for(var L=0;L<T.length;L++){f=T[L],g.isPlainObject(w[f])||(w[f]={});var z=w[f],F=A.newContainer(S,f);F._id=F._name=f,F._attr=m.id+"."+f,F._traceIndices=u.map(function(be){return be.index});var B=p.axisName2dataArray[f],O=_(z,F,P,u,B,m);i(z,F,P,{axData:u,dataAttr:B});var I=P("visible");switch(v(F,S,y),P("uirevision",S.uirevision),F._m=1,f){case"radialaxis":P("minallowed"),P("maxallowed");var N=P("range"),U=F.getAutorangeDflt(N),W=P("autorange",U),Q;N&&(N[0]===null&&N[1]===null||(N[0]===null||N[1]===null)&&(W==="reversed"||W===!0)||N[0]!==null&&(W==="min"||W==="max reversed")||N[1]!==null&&(W==="max"||W==="min reversed"))&&(N=void 0,delete F.range,F.autorange=!0,Q=!0),Q||(U=F.getAutorangeDflt(N),W=P("autorange",U)),z.autorange=W,W&&(s(P,W,N),(O==="linear"||O==="-")&&P("rangemode"),F.isReversed()&&(F._m=-1)),F.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(O==="date"){g.log("Polar plots do not support date angular axes yet.");for(var ue=0;ue<u.length;ue++)u[ue].visible=!1;O=z.type=F.type="linear"}P(O==="linear"?"thetaunit":"period");var se=P("direction");P("rotation",{counterclockwise:0,clockwise:90}[se]);break}if(a(z,F,P,F.type,{tickSuffixDflt:F.thetaunit==="degrees"?"\xB0":void 0}),I){var he,G,$,J,Z,re,ne,j,ee,ie,fe=m.font||{};he=P("color"),G=he===z.color?he:fe.color,$=fe.size,J=fe.family,Z=fe.weight,re=fe.style,ne=fe.variant,j=fe.textcase,ee=fe.lineposition,ie=fe.shadow,t(z,F,P,F.type),o(z,F,P,F.type,{font:{weight:Z,style:re,variant:ne,textcase:j,lineposition:ee,shadow:ie,color:G,size:$,family:J},noAutotickangles:f==="angularaxis",noTicklabelshift:!0,noTicklabelstandoff:!0}),r(z,F,P,{outerTicks:!0}),n(z,F,P,{dfltColor:he,bgColor:m.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:h[f]}),P("layer"),f==="radialaxis"&&(P("side"),P("angle",d[0]),P("title.text"),g.coerceFont(P,"title.font",{weight:Z,style:re,variant:ne,textcase:j,lineposition:ee,shadow:ie,color:G,size:g.bigFont($),family:J}))}O!=="category"&&P("hoverformat"),F._input=z}S.angularaxis.type==="category"&&E("gridshape")}function _(w,S,E,m,b,d){var u=E("autotypenumbers",d.autotypenumbersDflt),y=E("type");if(y==="-"){for(var f,P=0;P<m.length;P++)if(m[P].visible){f=m[P];break}f&&f[b]&&(S.type=c(f[b],"gregorian",{noMultiCategory:!0,autotypenumbers:u})),S.type==="-"?S.type="linear":w.type=S.type}return S.type}H.exports=function(S,E,m){M(S,E,m,{type:p.name,attributes:h,handleDefaults:l,font:E.font,autotypenumbersDflt:E.autotypenumbers,paper_bgcolor:E.paper_bgcolor,fullData:m,layoutOut:E})}}}),zT=Ye({"src/plots/polar/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=tC(),M=RT(),e=M.attr,t=M.name,r=x(t),o={};o[e]={valType:"subplotid",dflt:t,editType:"calc"};function a(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[t],v=0;v<h.length;v++){var p=h[v],T=g(c,t,p),l=s[p]._subplot;l||(l=A(n,p),s[p]._subplot=l),l.plot(T,s,n._promises)}}function i(n,s,c,h){for(var v=h._subplots[t]||[],p=h._has&&h._has("gl"),T=s._has&&s._has("gl"),l=p&&!T,_=0;_<v.length;_++){var w=v[_],S=h[w]._subplot;if(!s[w]&&S){S.framework.remove(),S.layers["radial-axis-title"].remove();for(var E in S.clipPaths)S.clipPaths[E].remove()}l&&S._scene&&(S._scene.destroy(),S._scene=null)}}H.exports={attr:e,name:t,idRoot:t,idRegex:r,attrRegex:r,attributes:o,layoutAttributes:rC(),supplyLayoutDefaults:nG(),plot:a,clean:i,toSVG:Pf().toSVG}}}),Ex=Ye({"src/traces/scatterpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=Oo().extendFlat,M=$d(),e=Pc(),t=Pl(),r=e.line;H.exports={mode:e.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:e.text,texttemplate:x({editType:"plot"},{keys:["r","theta","text"]}),hovertext:e.hovertext,line:{color:r.color,width:r.width,dash:r.dash,backoff:r.backoff,shape:A({},r.shape,{values:["linear","spline"]}),smoothing:r.smoothing,editType:"calc"},connectgaps:e.connectgaps,marker:e.marker,cliponaxis:A({},e.cliponaxis,{dflt:!1}),textposition:e.textposition,textfont:e.textfont,fill:A({},e.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:M(),hoverinfo:A({},t.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:e.hoveron,hovertemplate:g(),selected:e.selected,unselected:e.unselected}}}),FT=Ye({"src/traces/scatterpolar/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=n1(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=Ex();function i(s,c,h,v){function p(_,w){return g.coerce(s,c,a,_,w)}var T=n(s,c,v,p);if(!T){c.visible=!1;return}p("thetaunit"),p("mode",T<o?"lines+markers":"lines"),p("text"),p("hovertext"),c.hoveron!=="fills"&&p("hovertemplate"),x.hasMarkers(c)&&A(s,c,h,v,p,{gradient:!0}),x.hasLines(c)&&(M(s,c,h,v,p,{backoff:!0}),e(s,c,p),p("connectgaps")),x.hasText(c)&&(p("texttemplate"),t(s,c,v,p));var l=[];(x.hasMarkers(c)||x.hasText(c))&&(p("cliponaxis"),p("marker.maxdisplayed"),l.push("points")),p("fill"),c.fill!=="none"&&(r(s,c,h,p),x.hasLines(c)||e(s,c,p)),(c.fill==="tonext"||c.fill==="toself")&&l.push("fills"),p("hoveron",l.join("+")||"points"),g.coerceSelectionMarkerOpacity(c,p)}function n(s,c,h,v){var p=v("r"),T=v("theta");g.isTypedArray(p)&&(c.r=p=Array.from(p)),g.isTypedArray(T)&&(c.theta=T=Array.from(T));var l;if(p)T?l=Math.min(p.length,T.length):(l=p.length,v("theta0"),v("dtheta"));else{if(!T)return 0;l=c.theta.length,v("r0"),v("dr")}return c._length=l,l}H.exports={handleRThetaDefaults:n,supplyDefaults:i}}}),OT=Ye({"src/traces/scatterpolar/format_labels.js"(X,H){"use strict";var g=ta(),x=Co();H.exports=function(M,e,t){var r={},o=t[e.subplot]._subplot,a,i;o?(a=o.radialAxis,i=o.angularAxis):(o=t[e.subplot],a=o.radialaxis,i=o.angularaxis);var n=a.c2l(M.r);r.rLabel=x.tickText(a,n,!0).text;var s=i.thetaunit==="degrees"?g.rad2deg(M.theta):M.theta;return r.thetaLabel=x.tickText(i,s,!0).text,r}}}),oG=Ye({"src/traces/scatterpolar/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Co(),M=Fd(),e=Av(),t=Od(),r=Bd().calcMarkerSize;H.exports=function(a,i){for(var n=a._fullLayout,s=i.subplot,c=n[s].radialaxis,h=n[s].angularaxis,v=c.makeCalcdata(i,"r"),p=h.makeCalcdata(i,"theta"),T=i._length,l=new Array(T),_=0;_<T;_++){var w=v[_],S=p[_],E=l[_]={};g(w)&&g(S)?(E.r=w,E.theta=S):E.r=x}var m=r(i,T);return i._extremes.x=A.findExtremes(c,v,{ppad:m}),M(a,i),e(l,i),t(l,i),l}}}),sG=Ye({"src/traces/scatterpolar/plot.js"(X,H){"use strict";var g=o1(),x=ks().BADNUM;H.exports=function(M,e,t){for(var r=e.layers.frontplot.select("g.scatterlayer"),o=e.xaxis,a=e.yaxis,i={xaxis:o,yaxis:a,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},n=e.radialAxis,s=e.angularAxis,c=0;c<t.length;c++)for(var h=t[c],v=0;v<h.length;v++){v===0&&(h[0].trace._xA=o,h[0].trace._yA=a);var p=h[v],T=p.r;if(T===x)p.x=p.y=x;else{var l=n.c2g(T),_=s.c2g(p.theta);p.x=l*Math.cos(_),p.y=l*Math.sin(_)}}g(M,i,t,r)}}}),BT=Ye({"src/traces/scatterpolar/hover.js"(X,H){"use strict";var g=l1();function x(M,e,t,r){var o=g(M,e,t,r);if(!(!o||o[0].index===!1)){var a=o[0];if(a.index===void 0)return o;var i=M.subplot,n=a.cd[a.index],s=a.trace;if(i.isPtInside(n))return a.xLabelVal=void 0,a.yLabelVal=void 0,A(n,s,i,a),a.hovertemplate=s.hovertemplate,o}}function A(M,e,t,r){var o=t.radialAxis,a=t.angularAxis;o._hovertitle="r",a._hovertitle="\u03B8";var i={};i[e.subplot]={_subplot:t};var n=e._module.formatLabels(M,e,i);r.rLabel=n.rLabel,r.thetaLabel=n.thetaLabel;var s=M.hi||e.hoverinfo,c=[];function h(p,T){c.push(p._hovertitle+": "+T)}if(!e.hovertemplate){var v=s.split("+");v.indexOf("all")!==-1&&(v=["r","theta","text"]),v.indexOf("r")!==-1&&h(o,r.rLabel),v.indexOf("theta")!==-1&&h(a,r.thetaLabel),v.indexOf("text")!==-1&&r.text&&(c.push(r.text),delete r.text),r.extraText=c.join("<br>")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),lG=Ye({"src/traces/scatterpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:zT(),categories:["polar","symbols","showLegend","scatter-like"],attributes:Ex(),supplyDefaults:FT().supplyDefaults,colorbar:cp(),formatLabels:OT(),calc:oG(),plot:sG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:BT().hoverPoints,selectPoints:u1(),meta:{}}}}),uG=Ye({"lib/scatterpolar.js"(X,H){"use strict";H.exports=lG()}}),aC=Ye({"src/traces/scatterpolargl/attributes.js"(X,H){"use strict";var g=Ex(),x=yx(),A=xs().texttemplateAttrs;H.exports={mode:g.mode,r:g.r,theta:g.theta,r0:g.r0,dr:g.dr,theta0:g.theta0,dtheta:g.dtheta,thetaunit:g.thetaunit,text:g.text,texttemplate:A({editType:"plot"},{keys:["r","theta","text"]}),hovertext:g.hovertext,hovertemplate:g.hovertemplate,line:{color:x.line.color,width:x.line.width,dash:x.line.dash,editType:"calc"},connectgaps:x.connectgaps,marker:x.marker,fill:x.fill,fillcolor:x.fillcolor,textposition:x.textposition,textfont:x.textfont,hoverinfo:g.hoverinfo,selected:g.selected,unselected:g.unselected}}}),cG=Ye({"src/traces/scatterpolargl/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=FT().handleRThetaDefaults,M=md(),e=Dd(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=aC();H.exports=function(n,s,c,h){function v(T,l){return g.coerce(n,s,a,T,l)}var p=A(n,s,h,v);if(!p){s.visible=!1;return}v("thetaunit"),v("mode",p<o?"lines+markers":"lines"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate"),x.hasMarkers(s)&&M(n,s,c,h,v,{noAngleRef:!0,noStandOff:!0}),x.hasLines(s)&&(e(n,s,c,h,v),v("connectgaps")),x.hasText(s)&&(v("texttemplate"),t(n,s,h,v,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),v("fill"),s.fill!=="none"&&r(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)}}}),fG=Ye({"src/traces/scatterpolargl/format_labels.js"(X,H){"use strict";var g=OT();H.exports=function(A,M,e){var t=A.i;return"r"in A||(A.r=M._r[t]),"theta"in A||(A.theta=M._theta[t]),g(A,M,e)}}}),hG=Ye({"src/traces/scatterpolargl/calc.js"(X,H){"use strict";var g=Fd(),x=Bd().calcMarkerSize,A=m0(),M=Co(),e=mg().TOO_MANY_POINTS;H.exports=function(r,o){var a=r._fullLayout,i=o.subplot,n=a[i].radialaxis,s=a[i].angularaxis,c=o._r=n.makeCalcdata(o,"r"),h=o._theta=s.makeCalcdata(o,"theta"),v=o._length,p={};v<c.length&&(c=c.slice(0,v)),v<h.length&&(h=h.slice(0,v)),p.r=c,p.theta=h,g(r,o);var T=p.opts=A.style(r,o),l;return v<e?l=x(o,v):T.marker&&(l=2*(T.marker.sizeAvg||Math.max(T.marker.size,3))),o._extremes.x=M.findExtremes(n,c,{ppad:l}),[{x:!1,y:!1,t:p,trace:o}]}}}),pG=Ye({"src/traces/scatterpolargl/hover.js"(X,H){"use strict";var g=hT(),x=BT().makeHoverPointText;function A(M,e,t,r){var o=M.cd,a=o[0].t,i=a.r,n=a.theta,s=g.hoverPoints(M,e,t,r);if(!(!s||s[0].index===!1)){var c=s[0];if(c.index===void 0)return s;var h=M.subplot,v=c.cd[c.index],p=c.trace;if(v.r=i[c.index],v.theta=n[c.index],!!h.isPtInside(v))return c.xLabelVal=void 0,c.yLabelVal=void 0,x(v,p,h,c),s}}H.exports={hoverPoints:A}}}),dG=Ye({"src/traces/scatterpolargl/base_index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:zT(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:aC(),supplyDefaults:cG(),colorbar:cp(),formatLabels:fG(),calc:hG(),hoverPoints:pG().hoverPoints,selectPoints:O5(),meta:{}}}}),vG=Ye({"src/traces/scatterpolargl/plot.js"(X,H){"use strict";var g=dT(),x=jo(),A=lk(),M=z5(),e=m0(),t=ta(),r=mg().TOO_MANY_POINTS,o={};H.exports=function(i,n,s){if(s.length){var c=n.radialAxis,h=n.angularAxis,v=M(i,n);return s.forEach(function(p){if(!(!p||!p[0]||!p[0].trace)){var T=p[0],l=T.trace,_=T.t,w=l._length,S=_.r,E=_.theta,m=_.opts,b,d=S.slice(),u=E.slice();for(b=0;b<S.length;b++)n.isPtInside({r:S[b],theta:E[b]})||(d[b]=NaN,u[b]=NaN);var y=new Array(w*2),f=Array(w),P=Array(w);for(b=0;b<w;b++){var L=d[b],z,F;if(x(L)){var B=c.c2g(L),O=h.c2g(u[b],l.thetaunit);z=B*Math.cos(O),F=B*Math.sin(O)}else z=F=NaN;f[b]=y[b*2]=z,P[b]=y[b*2+1]=F}_.tree=g(y),m.marker&&w>=r&&(m.marker.cluster=_.tree),m.marker&&(m.markerSel.positions=m.markerUnsel.positions=m.marker.positions=y),m.line&&y.length>1&&t.extendFlat(m.line,e.linePositions(i,l,y)),m.text&&(t.extendFlat(m.text,{positions:y},e.textPosition(i,l,m.text,m.marker)),t.extendFlat(m.textSel,{positions:y},e.textPosition(i,l,m.text,m.markerSel)),t.extendFlat(m.textUnsel,{positions:y},e.textPosition(i,l,m.text,m.markerUnsel))),m.fill&&!v.fill2d&&(v.fill2d=!0),m.marker&&!v.scatter2d&&(v.scatter2d=!0),m.line&&!v.line2d&&(v.line2d=!0),m.text&&!v.glText&&(v.glText=!0),v.lineOptions.push(m.line),v.fillOptions.push(m.fill),v.markerOptions.push(m.marker),v.markerSelectedOptions.push(m.markerSel),v.markerUnselectedOptions.push(m.markerUnsel),v.textOptions.push(m.text),v.textSelectedOptions.push(m.textSel),v.textUnselectedOptions.push(m.textUnsel),v.selectBatch.push([]),v.unselectBatch.push([]),_.x=f,_.y=P,_.rawx=f,_.rawy=P,_.r=S,_.theta=E,_.positions=y,_._scene=v,_.index=v.count,v.count++}}),A(i,n,s)}},H.exports.reglPrecompiled=o}}),mG=Ye({"src/traces/scatterpolargl/index.js"(X,H){"use strict";var g=dG();g.plot=vG(),H.exports=g}}),gG=Ye({"lib/scatterpolargl.js"(X,H){"use strict";H.exports=mG()}}),iC=Ye({"src/traces/barpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=Oo().extendFlat,A=Ex(),M=Sv();H.exports={r:A.r,theta:A.theta,r0:A.r0,dr:A.dr,theta0:A.theta0,dtheta:A.dtheta,thetaunit:A.thetaunit,base:x({},M.base,{}),offset:x({},M.offset,{}),width:x({},M.width,{}),text:x({},M.text,{}),hovertext:x({},M.hovertext,{}),marker:e(),hoverinfo:A.hoverinfo,hovertemplate:g(),selected:M.selected,unselected:M.unselected};function e(){var t=x({},M.marker);return delete t.cornerradius,t}}}),nC=Ye({"src/traces/barpolar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}}}),yG=Ye({"src/traces/barpolar/defaults.js"(X,H){"use strict";var g=ta(),x=FT().handleRThetaDefaults,A=U2(),M=iC();H.exports=function(t,r,o,a){function i(s,c){return g.coerce(t,r,M,s,c)}var n=x(t,r,a,i);if(!n){r.visible=!1;return}i("thetaunit"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),A(t,r,i,o,a),g.coerceSelectionMarkerOpacity(r,i)}}}),_G=Ye({"src/traces/barpolar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=nC();H.exports=function(A,M,e){var t={},r;function o(n,s){return g.coerce(A[r]||{},M[r],x,n,s)}for(var a=0;a<e.length;a++){var i=e[a];i.type==="barpolar"&&i.visible===!0&&(r=i.subplot,t[r]||(o("barmode"),o("bargap"),t[r]=1))}}}}),oC=Ye({"src/traces/barpolar/calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=ta().isArrayOrTypedArray,M=z_(),e=$g().setGroupPositions,t=Od(),r=Hn().traceIs,o=ta().extendFlat;function a(n,s){for(var c=n._fullLayout,h=s.subplot,v=c[h].radialaxis,p=c[h].angularaxis,T=v.makeCalcdata(s,"r"),l=p.makeCalcdata(s,"theta"),_=s._length,w=new Array(_),S=T,E=l,m=0;m<_;m++)w[m]={p:E[m],s:S[m]};function b(d){var u=s[d];u!==void 0&&(s["_"+d]=A(u)?p.makeCalcdata(s,d):p.d2c(u,s.thetaunit))}return p.type==="linear"&&(b("width"),b("offset")),g(s,"marker")&&x(n,s,{vals:s.marker.color,containerStr:"marker",cLetter:"c"}),g(s,"marker.line")&&x(n,s,{vals:s.marker.line.color,containerStr:"marker.line",cLetter:"c"}),M(w,s),t(w,s),w}function i(n,s,c){for(var h=n.calcdata,v=[],p=0;p<h.length;p++){var T=h[p],l=T[0].trace;l.visible===!0&&r(l,"bar")&&l.subplot===c&&v.push(T)}var _=o({},s.radialaxis,{_id:"x"}),w=s.angularaxis;e(n,w,_,v,{mode:s.barmode,norm:s.barnorm,gap:s.bargap,groupgap:s.bargroupgap})}H.exports={calc:a,crossTraceCalc:i}}}),xG=Ye({"src/traces/barpolar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=Bo(),e=DT();H.exports=function(o,a,i){var n=o._context.staticPlot,s=a.xaxis,c=a.yaxis,h=a.radialAxis,v=a.angularAxis,p=t(a),T=a.layers.frontplot.select("g.barlayer");A.makeTraceGroups(T,i,"trace bars").each(function(){var l=g.select(this),_=A.ensureSingle(l,"g","points"),w=_.selectAll("g.point").data(A.identity);w.enter().append("g").style("vector-effect",n?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),w.exit().remove(),w.each(function(S){var E=g.select(this),m=S.rp0=h.c2p(S.s0),b=S.rp1=h.c2p(S.s1),d=S.thetag0=v.c2g(S.p0),u=S.thetag1=v.c2g(S.p1),y;if(!x(m)||!x(b)||!x(d)||!x(u)||m===b||d===u)y="M0,0Z";else{var f=h.c2g(S.s1),P=(d+u)/2;S.ct=[s.c2p(f*Math.cos(P)),c.c2p(f*Math.sin(P))],y=p(m,b,d,u)}A.ensureSingle(E,"path").attr("d",y)}),M.setClipUrl(l,a._hasClipOnAxisFalse?a.clipIds.forTraces:null,o)})};function t(r){var o=r.cxx,a=r.cyy;return r.vangles?function(i,n,s,c){var h,v;A.angleDelta(s,c)>0?(h=s,v=c):(h=c,v=s);var p=e.findEnclosingVertexAngles(h,r.vangles)[0],T=e.findEnclosingVertexAngles(v,r.vangles)[1],l=[p,(h+v)/2,T];return e.pathPolygonAnnulus(i,n,h,v,l,o,a)}:function(i,n,s,c){return A.pathAnnulus(i,n,s,c,o,a)}}}}),bG=Ye({"src/traces/barpolar/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=c1().getTraceColor,M=x.fillText,e=BT().makeHoverPointText,t=DT().isPtInsidePolygon;H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.subplot,h=c.radialAxis,v=c.angularAxis,p=c.vangles,T=p?t:x.isPtInsideSector,l=o.maxHoverDistance,_=v._period||2*Math.PI,w=Math.abs(h.g2p(Math.sqrt(a*a+i*i))),S=Math.atan2(i,a);h.range[0]>h.range[1]&&(S+=Math.PI);var E=function(u){return T(w,S,[u.rp0,u.rp1],[u.thetag0,u.thetag1],p)?l+Math.min(1,Math.abs(u.thetag1-u.thetag0)/_)-1+(u.rp1-w)/(u.rp1-u.rp0)-1:1/0};if(g.getClosest(n,E,o),o.index!==!1){var m=o.index,b=n[m];o.x0=o.x1=b.ct[0],o.y0=o.y1=b.ct[1];var d=x.extendFlat({},b,{r:b.s,theta:b.p});return M(b,s,o),e(d,s,c,o),o.hovertemplate=s.hovertemplate,o.color=A(s,b),o.xLabelVal=o.yLabelVal=void 0,b.s<0&&(o.idealAlign="left"),[o]}}}}),wG=Ye({"src/traces/barpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"barpolar",basePlotModule:zT(),categories:["polar","bar","showLegend"],attributes:iC(),layoutAttributes:nC(),supplyDefaults:yG(),supplyLayoutDefaults:_G(),calc:oC().calc,crossTraceCalc:oC().crossTraceCalc,plot:xG(),colorbar:cp(),formatLabels:OT(),style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:bG(),selectPoints:f1(),meta:{}}}}),TG=Ye({"lib/barpolar.js"(X,H){"use strict";H.exports=wG()}}),sC=Ye({"src/plots/smith/constants.js"(X,H){"use strict";H.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}}}),lC=Ye({"src/plots/smith/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({ticklen:x.ticklen,tickwidth:M({},x.tickwidth,{dflt:2}),tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,tickfont:x.tickfont,tickformat:x.tickformat,hoverformat:x.hoverformat,layer:x.layer},"plot","from-root"),o=M({visible:M({},x.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:M({},x.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},t,r),a=M({visible:M({},x.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:x.ticks,editType:"calc"},t,r);H.exports={domain:A({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:g.background},realaxis:o,imaginaryaxis:a,editType:"calc"}}}),AG=Ye({"src/plots/smith/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Qm(),r=$m(),o=I_(),a=wv(),i=lC(),n=sC(),s=n.axisNames,c=v(function(p){return g.isTypedArray(p)&&(p=Array.from(p)),p.slice().reverse().map(function(T){return-T}).concat([0]).concat(p)},String);function h(p,T,l,_){var w=l("bgcolor");_.bgColor=x.combine(w,_.paper_bgcolor);var S=e(_.fullData,n.name,_.id),E=_.layoutOut,m;function b(U,W){return l(m+"."+U,W)}for(var d=0;d<s.length;d++){m=s[d],g.isPlainObject(p[m])||(p[m]={});var u=p[m],y=A.newContainer(T,m);y._id=y._name=m,y._attr=_.id+"."+m,y._traceIndices=S.map(function(U){return U.index});var f=b("visible");if(y.type="linear",a(y,E),t(u,y,b,y.type),f){var P=m==="realaxis";if(P&&b("side"),P)b("tickvals");else{var L=c(T.realaxis.tickvals||i.realaxis.tickvals.dflt);b("tickvals",L)}g.isTypedArray(y.tickvals)&&(y.tickvals=Array.from(y.tickvals));var z,F,B,O,I=_.font||{};f&&(z=b("color"),F=z===u.color?z:I.color,B=I.size,O=I.family),r(u,y,b,y.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!P,noExp:!0,font:{color:F,size:B,family:O}}),g.coerce2(p,T,i,m+".ticklen"),g.coerce2(p,T,i,m+".tickwidth"),g.coerce2(p,T,i,m+".tickcolor",T.color);var N=b("ticks");N||(delete T[m].ticklen,delete T[m].tickwidth,delete T[m].tickcolor),o(u,y,b,{dfltColor:z,bgColor:_.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i[m]}),b("layer")}b("hoverformat"),delete y.type,y._input=u}}H.exports=function(T,l,_){M(T,l,_,{noUirevision:!0,type:n.name,attributes:i,handleDefaults:h,font:l.font,paper_bgcolor:l.paper_bgcolor,fullData:_,layoutOut:l})};function v(p,T){var l={};return function(_){var w=T?T(_):_;if(w in l)return l[w];var S=p(_);return l[w]=S,S}}}}),SG=Ye({"src/plots/smith/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=tC(),M=sC(),e=M.attr,t=M.name,r=x(t),o={};o[e]={valType:"subplotid",dflt:t,editType:"calc"};function a(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[t],v=0;v<h.length;v++){var p=h[v],T=g(c,t,p),l=s[p]._subplot;l||(l=A(n,p,!0),s[p]._subplot=l),l.plot(T,s,n._promises)}}function i(n,s,c,h){for(var v=h._subplots[t]||[],p=0;p<v.length;p++){var T=v[p],l=h[T]._subplot;if(!s[T]&&l){l.framework.remove();for(var _ in l.clipPaths)l.clipPaths[_].remove()}}}H.exports={attr:e,name:t,idRoot:t,idRegex:r,attrRegex:r,attributes:o,layoutAttributes:lC(),supplyLayoutDefaults:AG(),plot:a,clean:i,toSVG:Pf().toSVG}}}),uC=Ye({"src/traces/scattersmith/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=Oo().extendFlat,M=$d(),e=Pc(),t=Pl(),r=e.line;H.exports={mode:e.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:e.text,texttemplate:x({editType:"plot"},{keys:["real","imag","text"]}),hovertext:e.hovertext,line:{color:r.color,width:r.width,dash:r.dash,backoff:r.backoff,shape:A({},r.shape,{values:["linear","spline"]}),smoothing:r.smoothing,editType:"calc"},connectgaps:e.connectgaps,marker:e.marker,cliponaxis:A({},e.cliponaxis,{dflt:!1}),textposition:e.textposition,textfont:e.textfont,fill:A({},e.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:M(),hoverinfo:A({},t.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:e.hoveron,hovertemplate:g(),selected:e.selected,unselected:e.unselected}}}),MG=Ye({"src/traces/scattersmith/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=n1(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=uC();H.exports=function(s,c,h,v){function p(_,w){return g.coerce(s,c,a,_,w)}var T=i(s,c,v,p);if(!T){c.visible=!1;return}p("mode",T<o?"lines+markers":"lines"),p("text"),p("hovertext"),c.hoveron!=="fills"&&p("hovertemplate"),x.hasMarkers(c)&&A(s,c,h,v,p,{gradient:!0}),x.hasLines(c)&&(M(s,c,h,v,p,{backoff:!0}),e(s,c,p),p("connectgaps")),x.hasText(c)&&(p("texttemplate"),t(s,c,v,p));var l=[];(x.hasMarkers(c)||x.hasText(c))&&(p("cliponaxis"),p("marker.maxdisplayed"),l.push("points")),p("fill"),c.fill!=="none"&&(r(s,c,h,p),x.hasLines(c)||e(s,c,p)),(c.fill==="tonext"||c.fill==="toself")&&l.push("fills"),p("hoveron",l.join("+")||"points"),g.coerceSelectionMarkerOpacity(c,p)};function i(n,s,c,h){var v=h("real"),p=h("imag"),T;return v&&p&&(T=Math.min(v.length,p.length)),g.isTypedArray(v)&&(s.real=v=Array.from(v)),g.isTypedArray(p)&&(s.imag=p=Array.from(p)),s._length=T,T}}}),EG=Ye({"src/traces/scattersmith/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot;return t.realLabel=g.tickText(r.radialAxis,A.real,!0).text,t.imagLabel=g.tickText(r.angularAxis,A.imag,!0).text,t}}}),kG=Ye({"src/traces/scattersmith/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Fd(),M=Av(),e=Od(),t=Bd().calcMarkerSize;H.exports=function(o,a){for(var i=o._fullLayout,n=a.subplot,s=i[n].realaxis,c=i[n].imaginaryaxis,h=s.makeCalcdata(a,"real"),v=c.makeCalcdata(a,"imag"),p=a._length,T=new Array(p),l=0;l<p;l++){var _=h[l],w=v[l],S=T[l]={};g(_)&&g(w)?(S.real=_,S.imag=w):S.real=x}return t(a,p),A(o,a),M(T,a),e(T,a),T}}}),CG=Ye({"src/traces/scattersmith/plot.js"(X,H){"use strict";var g=o1(),x=ks().BADNUM,A=eC(),M=A.smith;H.exports=function(t,r,o){for(var a=r.layers.frontplot.select("g.scatterlayer"),i=r.xaxis,n=r.yaxis,s={xaxis:i,yaxis:n,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},c=0;c<o.length;c++)for(var h=o[c],v=0;v<h.length;v++){v===0&&(h[0].trace._xA=i,h[0].trace._yA=n);var p=h[v],T=p.real;if(T===x)p.x=p.y=x;else{var l=M([T,p.imag]);p.x=l[0],p.y=l[1]}}g(t,s,o,a)}}}),LG=Ye({"src/traces/scattersmith/hover.js"(X,H){"use strict";var g=l1();function x(M,e,t,r){var o=g(M,e,t,r);if(!(!o||o[0].index===!1)){var a=o[0];if(a.index===void 0)return o;var i=M.subplot,n=a.cd[a.index],s=a.trace;if(i.isPtInside(n))return a.xLabelVal=void 0,a.yLabelVal=void 0,A(n,s,i,a),a.hovertemplate=s.hovertemplate,o}}function A(M,e,t,r){var o=t.radialAxis,a=t.angularAxis;o._hovertitle="real",a._hovertitle="imag";var i={};i[e.subplot]={_subplot:t};var n=e._module.formatLabels(M,e,i);r.realLabel=n.realLabel,r.imagLabel=n.imagLabel;var s=M.hi||e.hoverinfo,c=[];function h(p,T){c.push(p._hovertitle+": "+T)}if(!e.hovertemplate){var v=s.split("+");v.indexOf("all")!==-1&&(v=["real","imag","text"]),v.indexOf("real")!==-1&&h(o,r.realLabel),v.indexOf("imag")!==-1&&h(a,r.imagLabel),v.indexOf("text")!==-1&&r.text&&(c.push(r.text),delete r.text),r.extraText=c.join("<br>")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),PG=Ye({"src/traces/scattersmith/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scattersmith",basePlotModule:SG(),categories:["smith","symbols","showLegend","scatter-like"],attributes:uC(),supplyDefaults:MG(),colorbar:cp(),formatLabels:EG(),calc:kG(),plot:CG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:LG().hoverPoints,selectPoints:u1(),meta:{}}}}),IG=Ye({"lib/scattersmith.js"(X,H){"use strict";H.exports=PG()}}),Tp=Ye({"node_modules/world-calendars/dist/main.js"(X,H){var g=Wf();function x(){this.regionalOptions=[],this.regionalOptions[""]={invalidCalendar:"Calendar {0} not found",invalidDate:"Invalid {0} date",invalidMonth:"Invalid {0} month",invalidYear:"Invalid {0} year",differentCalendars:"Cannot mix {0} and {1} dates"},this.local=this.regionalOptions[""],this.calendars={},this._localCals={}}g(x.prototype,{instance:function(o,a){o=(o||"gregorian").toLowerCase(),a=a||"";var i=this._localCals[o+"-"+a];if(!i&&this.calendars[o]&&(i=new this.calendars[o](a),this._localCals[o+"-"+a]=i),!i)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,o);return i},newDate:function(o,a,i,n,s){return n=(o!=null&&o.year?o.calendar():typeof n=="string"?this.instance(n,s):n)||this.instance(),n.newDate(o,a,i)},substituteDigits:function(o){return function(a){return(a+"").replace(/[0-9]/g,function(i){return o[i]})}},substituteChineseDigits:function(o,a){return function(i){for(var n="",s=0;i>0;){var c=i%10;n=(c===0?"":o[c]+a[s])+n,s++,i=Math.floor(i/10)}return n.indexOf(o[1]+a[1])===0&&(n=n.substr(1)),n||o[0]}}});function A(o,a,i,n){if(this._calendar=o,this._year=a,this._month=i,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function M(o,a){return o=""+o,"000000".substring(0,a-o.length)+o}g(A.prototype,{newDate:function(o,a,i){return this._calendar.newDate(o??this,a,i)},year:function(o){return arguments.length===0?this._year:this.set(o,"y")},month:function(o){return arguments.length===0?this._month:this.set(o,"m")},day:function(o){return arguments.length===0?this._day:this.set(o,"d")},date:function(o,a,i){if(!this._calendar.isValid(o,a,i))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=o,this._month=a,this._day=i,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(o,a){return this._calendar.add(this,o,a)},set:function(o,a){return this._calendar.set(this,o,a)},compareTo:function(o){if(this._calendar.name!==o._calendar.name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,o._calendar.local.name);var a=this._year!==o._year?this._year-o._year:this._month!==o._month?this.monthOfYear()-o.monthOfYear():this._day-o._day;return a===0?0:a<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(o){return this._calendar.fromJD(o)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(o){return this._calendar.fromJSDate(o)},toString:function(){return(this.year()<0?"-":"")+M(Math.abs(this.year()),4)+"-"+M(this.month(),2)+"-"+M(this.day(),2)}});function e(){this.shortYearCutoff="+10"}g(e.prototype,{_validateLevel:0,newDate:function(o,a,i){return o==null?this.today():(o.year&&(this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),i=o.day(),a=o.month(),o=o.year()),new A(this,o,a,i))},today:function(){return this.fromJSDate(new Date)},epoch:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return a.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return(a.year()<0?"-":"")+M(Math.abs(a.year()),4)},monthsInYear:function(o){return this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),12},monthOfYear:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return(i.month()+this.monthsInYear(i)-this.firstMonth)%this.monthsInYear(i)+this.minMonth},fromMonthOfYear:function(o,a){var i=(a+this.firstMonth-2*this.minMonth)%this.monthsInYear(o)+this.minMonth;return this._validate(o,i,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth),i},daysInYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return this.leapYear(a)?366:365},dayOfYear:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(o,a,i){return this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),{}},add:function(o,a,i){return this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate),this._correctAdd(o,this._add(o,a,i),a,i)},_add:function(o,a,i){if(this._validateLevel++,i==="d"||i==="w"){var n=o.toJD()+a*(i==="w"?this.daysInWeek():1),s=o.calendar().fromJD(n);return this._validateLevel--,[s.year(),s.month(),s.day()]}try{var c=o.year()+(i==="y"?a:0),h=o.monthOfYear()+(i==="m"?a:0),s=o.day(),v=function(l){for(;h<l.minMonth;)c--,h+=l.monthsInYear(c);for(var _=l.monthsInYear(c);h>_-1+l.minMonth;)c++,h-=_,_=l.monthsInYear(c)};i==="y"?(o.month()!==this.fromMonthOfYear(c,h)&&(h=this.newDate(c,o.month(),this.minDay).monthOfYear()),h=Math.min(h,this.monthsInYear(c)),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h)))):i==="m"&&(v(this),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h))));var p=[c,this.fromMonthOfYear(c,h),s];return this._validateLevel--,p}catch(T){throw this._validateLevel--,T}},_correctAdd:function(o,a,i,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(a[0]===0||o.year()>0!=a[0]>0)){var s={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],c=i<0?-1:1;a=this._add(o,i*s[0]+c*s[1],s[2])}return o.date(a[0],a[1],a[2])},set:function(o,a,i){this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate);var n=i==="y"?a:o.year(),s=i==="m"?a:o.month(),c=i==="d"?a:o.day();return(i==="y"||i==="m")&&(c=Math.min(c,this.daysInMonth(n,s))),o.date(n,s,c)},isValid:function(o,a,i){this._validateLevel++;var n=this.hasYearZero||o!==0;if(n){var s=this.newDate(o,a,this.minDay);n=a>=this.minMonth&&a-this.minMonth<this.monthsInYear(s)&&i>=this.minDay&&i-this.minDay<this.daysInMonth(s)}return this._validateLevel--,n},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return r.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(o){return this.fromJD(r.instance().fromJSDate(o).toJD())},_validate:function(o,a,i,n){if(o.year){if(this._validateLevel===0&&this.name!==o.calendar().name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this.local.name).replace(/\{1\}/,o.calendar().local.name);return o}try{if(this._validateLevel++,this._validateLevel===1&&!this.isValid(o,a,i))throw n.replace(/\{0\}/,this.local.name);var s=this.newDate(o,a,i);return this._validateLevel--,s}catch(c){throw this._validateLevel--,c}}});function t(o){this.local=this.regionalOptions[o]||this.regionalOptions[""]}t.prototype=new e,g(t.prototype,{name:"Gregorian",jdEpoch:17214255e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Gregorian",epochs:["BCE","CE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(i){var a=this._validate(i,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),i=a.year()+(a.year()<0?1:0);return i%4===0&&(i%100!==0||i%400===0)},weekOfYear:function(o,a,i){var n=this.newDate(o,a,i);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return this.daysPerMonth[i.month()-1]+(i.month()===2&&this.leapYear(i.year())?1:0)},weekDay:function(o,a,i){return(this.dayOfWeek(o,a,i)||7)<6},toJD:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);o=n.year(),a=n.month(),i=n.day(),o<0&&o++,a<3&&(a+=12,o--);var s=Math.floor(o/100),c=2-s+Math.floor(s/4);return Math.floor(365.25*(o+4716))+Math.floor(30.6001*(a+1))+i+c-1524.5},fromJD:function(o){var a=Math.floor(o+.5),i=Math.floor((a-186721625e-2)/36524.25);i=a+1+i-Math.floor(i/4);var n=i+1524,s=Math.floor((n-122.1)/365.25),c=Math.floor(365.25*s),h=Math.floor((n-c)/30.6001),v=n-c-Math.floor(h*30.6001),p=h-(h>13.5?13:1),T=s-(p>2.5?4716:4715);return T<=0&&T--,this.newDate(T,p,v)},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),s=new Date(n.year(),n.month()-1,n.day());return s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0),s.setHours(s.getHours()>12?s.getHours()+2:0),s},fromJSDate:function(o){return this.newDate(o.getFullYear(),o.getMonth()+1,o.getDate())}});var r=H.exports=new x;r.cdate=A,r.baseCalendar=e,r.calendars.gregorian=t}}),RG=Ye({"node_modules/world-calendars/dist/plus.js"(){var X=Wf(),H=Tp();X(H.regionalOptions[""],{invalidArguments:"Invalid arguments",invalidFormat:"Cannot format a date from another calendar",missingNumberAt:"Missing number at position {0}",unknownNameAt:"Unknown name at position {0}",unexpectedLiteralAt:"Unexpected literal at position {0}",unexpectedText:"Additional text found at end"}),H.local=H.regionalOptions[""],X(H.cdate.prototype,{formatDate:function(g,x){return typeof g!="string"&&(x=g,g=""),this._calendar.formatDate(g||"",this,x)}}),X(H.baseCalendar.prototype,{UNIX_EPOCH:H.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:H.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(g,x,A){if(typeof g!="string"&&(A=x,x=g,g=""),!x)return"";if(x.calendar()!==this)throw H.local.invalidFormat||H.regionalOptions[""].invalidFormat;g=g||this.local.dateFormat,A=A||{};for(var M=A.dayNamesShort||this.local.dayNamesShort,e=A.dayNames||this.local.dayNames,t=A.monthNumbers||this.local.monthNumbers,r=A.monthNamesShort||this.local.monthNamesShort,o=A.monthNames||this.local.monthNames,a=A.calculateWeek||this.local.calculateWeek,i=function(S,E){for(var m=1;w+m<g.length&&g.charAt(w+m)===S;)m++;return w+=m-1,Math.floor(m/(E||1))>1},n=function(S,E,m,b){var d=""+E;if(i(S,b))for(;d.length<m;)d="0"+d;return d},s=function(S,E,m,b){return i(S)?b[E]:m[E]},c=this,h=function(S){return typeof t=="function"?t.call(c,S,i("m")):T(n("m",S.month(),2))},v=function(S,E){return E?typeof o=="function"?o.call(c,S):o[S.month()-c.minMonth]:typeof r=="function"?r.call(c,S):r[S.month()-c.minMonth]},p=this.local.digits,T=function(S){return A.localNumbers&&p?p(S):S},l="",_=!1,w=0;w<g.length;w++)if(_)g.charAt(w)==="'"&&!i("'")?_=!1:l+=g.charAt(w);else switch(g.charAt(w)){case"d":l+=T(n("d",x.day(),2));break;case"D":l+=s("D",x.dayOfWeek(),M,e);break;case"o":l+=n("o",x.dayOfYear(),3);break;case"w":l+=n("w",x.weekOfYear(),2);break;case"m":l+=h(x);break;case"M":l+=v(x,i("M"));break;case"y":l+=i("y",2)?x.year():(x.year()%100<10?"0":"")+x.year()%100;break;case"Y":i("Y",2),l+=x.formatYear();break;case"J":l+=x.toJD();break;case"@":l+=(x.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case"!":l+=(x.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case"'":i("'")?l+="'":_=!0;break;default:l+=g.charAt(w)}return l},parseDate:function(g,x,A){if(x==null)throw H.local.invalidArguments||H.regionalOptions[""].invalidArguments;if(x=typeof x=="object"?x.toString():x+"",x==="")return null;g=g||this.local.dateFormat,A=A||{};var M=A.shortYearCutoff||this.shortYearCutoff;M=typeof M!="string"?M:this.today().year()%100+parseInt(M,10);for(var e=A.dayNamesShort||this.local.dayNamesShort,t=A.dayNames||this.local.dayNames,r=A.parseMonth||this.local.parseMonth,o=A.monthNumbers||this.local.monthNumbers,a=A.monthNamesShort||this.local.monthNamesShort,i=A.monthNames||this.local.monthNames,n=-1,s=-1,c=-1,h=-1,v=-1,p=!1,T=!1,l=function(P,L){for(var z=1;u+z<g.length&&g.charAt(u+z)===P;)z++;return u+=z-1,Math.floor(z/(L||1))>1},_=function(P,L){var z=l(P,L),F=[2,3,z?4:2,z?4:2,10,11,20]["oyYJ@!".indexOf(P)+1],B=new RegExp("^-?\\d{1,"+F+"}"),O=x.substring(d).match(B);if(!O)throw(H.local.missingNumberAt||H.regionalOptions[""].missingNumberAt).replace(/\{0\}/,d);return d+=O[0].length,parseInt(O[0],10)},w=this,S=function(){if(typeof o=="function"){l("m");var P=o.call(w,x.substring(d));return d+=P.length,P}return _("m")},E=function(P,L,z,F){for(var B=l(P,F)?z:L,O=0;O<B.length;O++)if(x.substr(d,B[O].length).toLowerCase()===B[O].toLowerCase())return d+=B[O].length,O+w.minMonth;throw(H.local.unknownNameAt||H.regionalOptions[""].unknownNameAt).replace(/\{0\}/,d)},m=function(){if(typeof i=="function"){var P=l("M")?i.call(w,x.substring(d)):a.call(w,x.substring(d));return d+=P.length,P}return E("M",a,i)},b=function(){if(x.charAt(d)!==g.charAt(u))throw(H.local.unexpectedLiteralAt||H.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,d);d++},d=0,u=0;u<g.length;u++)if(T)g.charAt(u)==="'"&&!l("'")?T=!1:b();else switch(g.charAt(u)){case"d":h=_("d");break;case"D":E("D",e,t);break;case"o":v=_("o");break;case"w":_("w");break;case"m":c=S();break;case"M":c=m();break;case"y":var y=u;p=!l("y",2),u=y,s=_("y",2);break;case"Y":s=_("Y",2);break;case"J":n=_("J")+.5,x.charAt(d)==="."&&(d++,_("J"));break;case"@":n=_("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":n=_("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":d=x.length;break;case"'":l("'")?b():T=!0;break;default:b()}if(d<x.length)throw H.local.unexpectedText||H.regionalOptions[""].unexpectedText;if(s===-1?s=this.today().year():s<100&&p&&(s+=M===-1?1900:this.today().year()-this.today().year()%100-(s<=M?0:100)),typeof c=="string"&&(c=r.call(this,s,c)),v>-1){c=1,h=v;for(var f=this.daysInMonth(s,c);h>f;f=this.daysInMonth(s,c))c++,h-=f}return n>-1?this.fromJD(n):this.newDate(s,c,h)},determineDate:function(g,x,A,M,e){A&&typeof A!="object"&&(e=M,M=A,A=null),typeof M!="string"&&(e=M,M="");var t=this,r=function(o){try{return t.parseDate(M,o,e)}catch{}o=o.toLowerCase();for(var a=(o.match(/^c/)&&A?A.newDate():null)||t.today(),i=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,n=i.exec(o);n;)a.add(parseInt(n[1],10),n[2]||"d"),n=i.exec(o);return a};return x=x?x.newDate():null,g=g==null?x:typeof g=="string"?r(g):typeof g=="number"?isNaN(g)||g===1/0||g===-1/0?x:t.today().add(g,"d"):t.newDate(g),g}})}}),DG=Ye({"node_modules/world-calendars/dist/calendars/chinese.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(n){this.local=this.regionalOptions[n||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(n,s){if(typeof n=="string"){var c=n.match(M);return c?c[0]:""}var h=this._validateYear(n),v=n.month(),p=""+this.toChineseMonth(h,v);return s&&p.length<2&&(p="0"+p),this.isIntercalaryMonth(h,v)&&(p+="i"),p},monthNames:function(n){if(typeof n=="string"){var s=n.match(e);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},monthNamesShort:function(n){if(typeof n=="string"){var s=n.match(t);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},parseMonth:function(n,s){n=this._validateYear(n);var c=parseInt(s),h;if(isNaN(c))s[0]==="\u95F0"&&(h=!0,s=s.substring(1)),s[s.length-1]==="\u6708"&&(s=s.substring(0,s.length-1)),c=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(s);else{var v=s[s.length-1];h=v==="i"||v==="I"}var p=this.toMonthIndex(n,c,h);return p},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(n,s){if(n.year&&(n=n.year()),typeof n!="number"||n<1888||n>2111)throw s.replace(/\{0\}/,this.local.name);return n},toMonthIndex:function(n,s,c){var h=this.intercalaryMonth(n),v=c&&s!==h;if(v||s<1||s>12)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p;return h?!c&&s<=h?p=s-1:p=s:p=s-1,p},toChineseMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n),h=c?12:11;if(s<0||s>h)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var v;return c?s<c?v=s+1:v=s:v=s+1,v},intercalaryMonth:function(n){n=this._validateYear(n);var s=r[n-r[0]],c=s>>13;return c},isIntercalaryMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n);return!!c&&c===s},leapYear:function(n){return this.intercalaryMonth(n)!==0},weekOfYear:function(n,s,c){var h=this._validateYear(n,X.local.invalidyear),v=o[h-o[0]],p=v>>9&4095,T=v>>5&15,l=v&31,_;_=g.newDate(p,T,l),_.add(4-(_.dayOfWeek()||7),"d");var w=this.toJD(n,s,c)-_.toJD();return 1+Math.floor(w/7)},monthsInYear:function(n){return this.leapYear(n)?13:12},daysInMonth:function(n,s){n.year&&(s=n.month(),n=n.year()),n=this._validateYear(n);var c=r[n-r[0]],h=c>>13,v=h?12:11;if(s>v)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p=c&1<<12-s?30:29;return p},weekDay:function(n,s,c){return(this.dayOfWeek(n,s,c)||7)<6},toJD:function(n,s,c){var h=this._validate(n,p,c,X.local.invalidDate);n=this._validateYear(h.year()),s=h.month(),c=h.day();var v=this.isIntercalaryMonth(n,s),p=this.toChineseMonth(n,s),T=i(n,p,c,v);return g.toJD(T.year,T.month,T.day)},fromJD:function(n){var s=g.fromJD(n),c=a(s.year(),s.month(),s.day()),h=this.toMonthIndex(c.year,c.month,c.isIntercalary);return this.newDate(c.year,h,c.day)},fromString:function(n){var s=n.match(A),c=this._validateYear(+s[1]),h=+s[2],v=!!s[3],p=this.toMonthIndex(c,h,v),T=+s[4];return this.newDate(c,p,T)},add:function(n,s,c){var h=n.year(),v=n.month(),p=this.isIntercalaryMonth(h,v),T=this.toChineseMonth(h,v),l=Object.getPrototypeOf(x.prototype).add.call(this,n,s,c);if(c==="y"){var _=l.year(),w=l.month(),S=this.isIntercalaryMonth(_,T),E=p&&S?this.toMonthIndex(_,T,!0):this.toMonthIndex(_,T,!1);E!==w&&l.month(E)}return l}});var A=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,M=/^\d?\d[iI]?/m,e=/^闰?十?[一二三四五六七八九]?月/m,t=/^闰?十?[一二三四五六七八九]?/m;X.calendars.chinese=x;var r=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],o=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function a(n,s,c,h){var v,p;if(typeof n=="object")v=n,p=s||{};else{var T=typeof n=="number"&&n>=1888&&n<=2111;if(!T)throw new Error("Solar year outside range 1888-2111");var l=typeof s=="number"&&s>=1&&s<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var _=typeof c=="number"&&c>=1&&c<=31;if(!_)throw new Error("Solar day outside range 1 - 31");v={year:n,month:s,day:c},p=h||{}}var w=o[v.year-o[0]],S=v.year<<9|v.month<<5|v.day;p.year=S>=w?v.year:v.year-1,w=o[p.year-o[0]];var E=w>>9&4095,m=w>>5&15,b=w&31,d,u=new Date(E,m-1,b),y=new Date(v.year,v.month-1,v.day);d=Math.round((y-u)/(24*3600*1e3));var f=r[p.year-r[0]],P;for(P=0;P<13;P++){var L=f&1<<12-P?30:29;if(d<L)break;d-=L}var z=f>>13;return!z||P<z?(p.isIntercalary=!1,p.month=1+P):P===z?(p.isIntercalary=!0,p.month=P):(p.isIntercalary=!1,p.month=P),p.day=1+d,p}function i(n,s,c,h,v){var p,T;if(typeof n=="object")T=n,p=s||{};else{var l=typeof n=="number"&&n>=1888&&n<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var _=typeof s=="number"&&s>=1&&s<=12;if(!_)throw new Error("Lunar month outside range 1 - 12");var w=typeof c=="number"&&c>=1&&c<=30;if(!w)throw new Error("Lunar day outside range 1 - 30");var S;typeof h=="object"?(S=!1,p=h):(S=!!h,p=v||{}),T={year:n,month:s,day:c,isIntercalary:S}}var E;E=T.day-1;var m=r[T.year-r[0]],b=m>>13,d;b&&(T.month>b||T.isIntercalary)?d=T.month:d=T.month-1;for(var u=0;u<d;u++){var y=m&1<<12-u?30:29;E+=y}var f=o[T.year-o[0]],P=f>>9&4095,L=f>>5&15,z=f&31,F=new Date(P,L-1,z+E);return p.year=F.getFullYear(),p.month=1+F.getMonth(),p.day=F.getDate(),p}}}),zG=Ye({"node_modules/world-calendars/dist/calendars/coptic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.coptic=g}}),FG=Ye({"node_modules/world-calendars/dist/calendars/discworld.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),!1},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),13},daysInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),400},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/8)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return(t.day()+1)%8},weekDay:function(A,M,e){var t=this.dayOfWeek(A,M,e);return t>=2&&t<=6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{century:x[Math.floor((t.year()-1)/100)+1]||""}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return A=t.year()+(t.year()<0?1:0),M=t.month(),e=t.day(),e+(M>1?16:0)+(M>2?(M-2)*32:0)+(A-1)*400+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A+.5)-Math.floor(this.jdEpoch)-1;var M=Math.floor(A/400)+1;A-=(M-1)*400,A+=A>15?16:0;var e=Math.floor(A/32)+1,t=A-(e-1)*32+1;return this.newDate(M<=0?M-1:M,e,t)}});var x={20:"Fruitbat",21:"Anchovy"};X.calendars.discworld=g}}),OG=Ye({"node_modules/world-calendars/dist/calendars/ethiopian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.ethiopian=g}}),BG=Ye({"node_modules/world-calendars/dist/calendars/hebrew.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this._leapYear(M.year())},_leapYear:function(A){return A=A<0?A+1:A,x(A*7+1,19)<7},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),this._leapYear(A.year?A.year():A)?13:12},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return A=M.year(),this.toJD(A===-1?1:A+1,7,1)-this.toJD(A,7,1)},daysInMonth:function(A,M){return A.year&&(M=A.month(),A=A.year()),this._validate(A,M,this.minDay,X.local.invalidMonth),M===12&&this.leapYear(A)||M===8&&x(this.daysInYear(A),10)===5?30:M===9&&x(this.daysInYear(A),10)===3?29:this.daysPerMonth[M-1]},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{yearType:(this.leapYear(t)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(t)%10-3]}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A<=0?A+1:A,o=this.jdEpoch+this._delay1(r)+this._delay2(r)+e+1;if(M<7){for(var a=7;a<=this.monthsInYear(A);a++)o+=this.daysInMonth(A,a);for(var a=1;a<M;a++)o+=this.daysInMonth(A,a)}else for(var a=7;a<M;a++)o+=this.daysInMonth(A,a);return o},_delay1:function(A){var M=Math.floor((235*A-234)/19),e=12084+13753*M,t=M*29+Math.floor(e/25920);return x(3*(t+1),7)<3&&t++,t},_delay2:function(A){var M=this._delay1(A-1),e=this._delay1(A),t=this._delay1(A+1);return t-e===356?2:e-M===382?1:0},fromJD:function(A){A=Math.floor(A)+.5;for(var M=Math.floor((A-this.jdEpoch)*98496/35975351)-1;A>=this.toJD(M===-1?1:M+1,7,1);)M++;for(var e=A<this.toJD(M,1,1)?7:1;A>this.toJD(M,e,this.daysInMonth(M,e));)e++;var t=A-this.toJD(M,e,1)+1;return this.newDate(M,e,t)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.hebrew=g}}),NG=Ye({"node_modules/world-calendars/dist/calendars/islamic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);return(A.year()*11+14)%30<11},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){return this.leapYear(x)?355:354},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===12&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==5},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x=x<=0?x+1:x,M+Math.ceil(29.5*(A-1))+(x-1)*354+Math.floor((3+11*x)/30)+this.jdEpoch-1},fromJD:function(x){x=Math.floor(x)+.5;var A=Math.floor((30*(x-this.jdEpoch)+10646)/10631);A=A<=0?A-1:A;var M=Math.min(12,Math.ceil((x-29-this.toJD(A,1,1))/29.5)+1),e=x-this.toJD(A,M,1)+1;return this.newDate(A,M,e)}}),X.calendars.islamic=g}}),UG=Ye({"node_modules/world-calendars/dist/calendars/julian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()<0?A.year()+1:A.year();return M%4===0},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(4-(e.dayOfWeek()||7),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===2&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x<0&&x++,A<=2&&(x--,A+=12),Math.floor(365.25*(x+4716))+Math.floor(30.6001*(A+1))+M-1524.5},fromJD:function(x){var A=Math.floor(x+.5),M=A+1524,e=Math.floor((M-122.1)/365.25),t=Math.floor(365.25*e),r=Math.floor((M-t)/30.6001),o=r-Math.floor(r<14?1:13),a=e-Math.floor(o>2?4716:4715),i=M-t-Math.floor(30.6001*r);return a<=0&&a--,this.newDate(a,o,i)}}),X.calendars.julian=g}}),jG=Ye({"node_modules/world-calendars/dist/calendars/mayan.js"(){var X=Tp(),H=Wf();function g(M){this.local=this.regionalOptions[M||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),!1},formatYear:function(M){var e=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear);M=e.year();var t=Math.floor(M/400);M=M%400,M+=M<0?400:0;var r=Math.floor(M/20);return t+"."+r+"."+M%20},forYear:function(M){if(M=M.split("."),M.length<3)throw"Invalid Mayan year";for(var e=0,t=0;t<M.length;t++){var r=parseInt(M[t],10);if(Math.abs(r)>19||t>0&&r<0)throw"Invalid Mayan year";e=e*20+r}return e},monthsInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),18},weekOfYear:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),0},daysInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),360},daysInMonth:function(M,e){return this._validate(M,e,this.minDay,X.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()},weekDay:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),!0},extraInfo:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate),o=r.toJD(),a=this._toHaab(o),i=this._toTzolkin(o);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[i[0]-1],tzolkinDay:i[0],tzolkinTrecena:i[1]}},_toHaab:function(M){M-=this.jdEpoch;var e=x(M+8+17*20,365);return[Math.floor(e/20)+1,x(e,20)]},_toTzolkin:function(M){return M-=this.jdEpoch,[A(M+20,20),A(M+4,13)]},toJD:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()+r.month()*20+r.year()*360+this.jdEpoch},fromJD:function(M){M=Math.floor(M)+.5-this.jdEpoch;var e=Math.floor(M/360);M=M%360,M+=M<0?360:0;var t=Math.floor(M/20),r=M%20;return this.newDate(e,t,r)}});function x(M,e){return M-e*Math.floor(M/e)}function A(M,e){return x(M-1,e)+1}X.calendars.mayan=g}}),VG=Ye({"node_modules/world-calendars/dist/calendars/nanakshahi.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar;var x=X.instance("gregorian");H(g.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear);return x.leapYear(M.year()+(M.year()<1?1:0)+1469)},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(1-(t.dayOfWeek()||7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidMonth),r=t.year();r<0&&r++;for(var o=t.day(),a=1;a<t.month();a++)o+=this.daysPerMonth[a-1];return o+x.toJD(r+1468,3,13)},fromJD:function(A){A=Math.floor(A+.5);for(var M=Math.floor((A-(this.jdEpoch-1))/366);A>=this.toJD(M+1,1,1);)M++;for(var e=A-Math.floor(this.toJD(M,1,1)+.5)+1,t=1;e>this.daysInMonth(M,t);)e-=this.daysInMonth(M,t),t++;return this.newDate(M,t,e)}}),X.calendars.nanakshahi=g}}),qG=Ye({"node_modules/world-calendars/dist/calendars/nepali.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(x){return this.daysInYear(x)!==this.daysPerYear},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);if(x=A.year(),typeof this.NEPALI_CALENDAR_DATA[x]>"u")return this.daysPerYear;for(var M=0,e=this.minMonth;e<=12;e++)M+=this.NEPALI_CALENDAR_DATA[x][e];return M},daysInMonth:function(x,A){return x.year&&(A=x.month(),x=x.year()),this._validate(x,A,this.minDay,X.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[x]>"u"?this.daysPerMonth[A-1]:this.NEPALI_CALENDAR_DATA[x][A]},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);x=e.year(),A=e.month(),M=e.day();var t=X.instance(),r=0,o=A,a=x;this._createMissingCalendarData(x);var i=x-(o>9||o===9&&M>=this.NEPALI_CALENDAR_DATA[a][0]?56:57);for(A!==9&&(r=M,o--);o!==9;)o<=0&&(o=12,a--),r+=this.NEPALI_CALENDAR_DATA[a][o],o--;return A===9?(r+=M-this.NEPALI_CALENDAR_DATA[a][0],r<0&&(r+=t.daysInYear(i))):r+=this.NEPALI_CALENDAR_DATA[a][9]-this.NEPALI_CALENDAR_DATA[a][0],t.newDate(i,1,1).add(r,"d").toJD()},fromJD:function(x){var A=X.instance(),M=A.fromJD(x),e=M.year(),t=M.dayOfYear(),r=e+56;this._createMissingCalendarData(r);for(var o=9,a=this.NEPALI_CALENDAR_DATA[r][0],i=this.NEPALI_CALENDAR_DATA[r][o]-a+1;t>i;)o++,o>12&&(o=1,r++),i+=this.NEPALI_CALENDAR_DATA[r][o];var n=this.NEPALI_CALENDAR_DATA[r][o]-(i-t);return this.newDate(r,o,n)},_createMissingCalendarData:function(x){var A=this.daysPerMonth.slice(0);A.unshift(17);for(var M=x-1;M<x+2;M++)typeof this.NEPALI_CALENDAR_DATA[M]>"u"&&(this.NEPALI_CALENDAR_DATA[M]=A)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),X.calendars.nepali=g}}),HG=Ye({"node_modules/world-calendars/dist/calendars/persian.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Ch\xE6harshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Ch\xE6","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return((M.year()-(M.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-((t.dayOfWeek()+1)%7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A-(A>=0?474:473),o=474+x(r,2820);return e+(M<=7?(M-1)*31:(M-1)*30+6)+Math.floor((o*682-110)/2816)+(o-1)*365+Math.floor(r/2820)*1029983+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A)+.5;var M=A-this.toJD(475,1,1),e=Math.floor(M/1029983),t=x(M,1029983),r=2820;if(t!==1029982){var o=Math.floor(t/366),a=x(t,366);r=Math.floor((2134*o+2816*a+2815)/1028522)+o+1}var i=r+2820*e+474;i=i<=0?i-1:i;var n=A-this.toJD(i,1,1)+1,s=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),c=A-this.toJD(i,s,1)+1;return this.newDate(i,s,c)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.persian=g,X.calendars.jalali=g}}),GG=Ye({"node_modules/world-calendars/dist/calendars/taiwan.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)},_g2tYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)}}),X.calendars.taiwan=x}}),WG=Ye({"node_modules/world-calendars/dist/calendars/thai.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)},_g2tYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)}}),X.calendars.thai=x}}),ZG=Ye({"node_modules/world-calendars/dist/calendars/ummalqura.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this.daysInYear(M.year())===355},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){for(var M=0,e=1;e<=12;e++)M+=this.daysInMonth(A,e);return M},daysInMonth:function(A,M){for(var e=this._validate(A,M,this.minDay,X.local.invalidMonth),t=e.toJD()-24e5+.5,r=0,o=0;o<x.length;o++){if(x[o]>t)return x[r]-x[r-1];r++}return 30},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate),r=12*(t.year()-1)+t.month()-15292,o=t.day()+x[r-1]-1;return o+24e5-.5},fromJD:function(A){for(var M=A-24e5+.5,e=0,t=0;t<x.length&&!(x[t]>M);t++)e++;var r=e+15292,o=Math.floor((r-1)/12),a=o+1,i=r-12*o,n=M-x[e-1]+1;return this.newDate(a,i,n)},isValid:function(A,M,e){var t=X.baseCalendar.prototype.isValid.apply(this,arguments);return t&&(A=A.year!=null?A.year:A,t=A>=1276&&A<=1500),t},_validate:function(A,M,e,t){var r=X.baseCalendar.prototype._validate.apply(this,arguments);if(r.year<1276||r.year>1500)throw t.replace(/\{0\}/,this.local.name);return r}}),X.calendars.ummalqura=g;var x=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]}}),XG=Ye({"src/components/calendars/calendars.js"(X,H){"use strict";H.exports=Tp(),RG(),DG(),zG(),FG(),OG(),BG(),NG(),UG(),jG(),VG(),qG(),HG(),GG(),WG(),ZG()}}),YG=Ye({"src/components/calendars/index.js"(X,H){"use strict";var g=XG(),x=ta(),A=ks(),M=A.EPOCHJD,e=A.ONEDAY,t={valType:"enumerated",values:x.sortObjectKeys(g.calendars),editType:"calc",dflt:"gregorian"},r=function(m,b,d,u){var y={};return y[d]=t,x.coerce(m,b,y,d,u)},o=function(m,b,d,u){for(var y=0;y<d.length;y++)r(m,b,d[y]+"calendar",u.calendar)},a={chinese:"2000-01-01",coptic:"2000-01-01",discworld:"2000-01-01",ethiopian:"2000-01-01",hebrew:"5000-01-01",islamic:"1000-01-01",julian:"2000-01-01",mayan:"5000-01-01",nanakshahi:"1000-01-01",nepali:"2000-01-01",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-01",thai:"2000-01-01",ummalqura:"1400-01-01"},i={chinese:"2000-01-02",coptic:"2000-01-03",discworld:"2000-01-03",ethiopian:"2000-01-05",hebrew:"5000-01-01",islamic:"1000-01-02",julian:"2000-01-03",mayan:"5000-01-01",nanakshahi:"1000-01-05",nepali:"2000-01-05",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-04",thai:"2000-01-04",ummalqura:"1400-01-06"},n={chinese:["2000-01-01","2001-01-01"],coptic:["1700-01-01","1701-01-01"],discworld:["1800-01-01","1801-01-01"],ethiopian:["2000-01-01","2001-01-01"],hebrew:["5700-01-01","5701-01-01"],islamic:["1400-01-01","1401-01-01"],julian:["2000-01-01","2001-01-01"],mayan:["5200-01-01","5201-01-01"],nanakshahi:["0500-01-01","0501-01-01"],nepali:["2000-01-01","2001-01-01"],persian:["1400-01-01","1401-01-01"],jalali:["1400-01-01","1401-01-01"],taiwan:["0100-01-01","0101-01-01"],thai:["2500-01-01","2501-01-01"],ummalqura:["1400-01-01","1401-01-01"]},s="##",c={d:{0:"dd","-":"d"},e:{0:"d","-":"d"},a:{0:"D","-":"D"},A:{0:"DD","-":"DD"},j:{0:"oo","-":"o"},W:{0:"ww","-":"w"},m:{0:"mm","-":"m"},b:{0:"M","-":"M"},B:{0:"MM","-":"MM"},y:{0:"yy","-":"yy"},Y:{0:"yyyy","-":"yyyy"},U:s,w:s,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};function h(m,b,d){for(var u=Math.floor((b+.05)/e)+M,y=p(d).fromJD(u),f=0,P,L,z,F,B;(f=m.indexOf("%",f))!==-1;)P=m.charAt(f+1),P==="0"||P==="-"||P==="_"?(z=3,L=m.charAt(f+2),P==="_"&&(P="-")):(L=P,P="0",z=2),F=c[L],F?(F===s?B=s:B=y.formatDate(F[P]),m=m.substr(0,f)+B+m.substr(f+z),f+=B.length):f+=z;return m}var v={};function p(m){var b=v[m];return b||(b=v[m]=g.instance(m),b)}function T(m){return x.extendFlat({},t,{description:m})}function l(m){return"Sets the calendar system to use with `"+m+"` date data."}var _={xcalendar:T(l("x"))},w=x.extendFlat({},_,{ycalendar:T(l("y"))}),S=x.extendFlat({},w,{zcalendar:T(l("z"))}),E=T(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));H.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:w,bar:w,box:w,heatmap:w,contour:w,histogram:w,histogram2d:w,histogram2dcontour:w,scatter3d:S,surface:S,mesh3d:S,scattergl:w,ohlc:_,candlestick:_},layout:{calendar:T(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:E},yaxis:{calendar:E},scene:{xaxis:{calendar:E},yaxis:{calendar:E},zaxis:{calendar:E}},polar:{radialaxis:{calendar:E}}}},layoutAttributes:t,handleDefaults:r,handleTraceDefaults:o,CANONICAL_SUNDAY:i,CANONICAL_TICK:a,DFLTRANGE:n,getCal:p,worldCalFmt:h}}}),KG=Ye({"lib/calendars.js"(X,H){"use strict";H.exports=YG()}}),JG=Ye({"lib/index.js"(X,H){var g=qB();g.register([ZB(),KB(),e7(),n7(),u7(),p7(),m7(),E7(),F7(),Z7(),a4(),c9(),m9(),rN(),fN(),_N(),MN(),qN(),ZN(),YN(),QN(),iU(),uU(),pU(),kU(),PU(),hV(),EV(),UV(),WV(),rq(),oq(),dq(),Eq(),Pq(),Nq(),eH(),oH(),pH(),FH(),HH(),YH(),eG(),iG(),uG(),gG(),TG(),IG(),KG()]),H.exports=g}});return JG()})();return window.Plotly=le,le})});var GW=typeof global=="object"&&global&&global.Object===Object&&global,yb=GW;var WW=typeof self=="object"&&self&&self.Object===Object&&self,ZW=yb||WW||Function("return this")(),Kl=ZW;var XW=Kl.Symbol,yf=XW;var VC=Object.prototype,YW=VC.hasOwnProperty,KW=VC.toString,t_=yf?yf.toStringTag:void 0;function JW(le){var me=YW.call(le,t_),Xe=le[t_];try{le[t_]=void 0;var Mt=!0}catch{}var rr=KW.call(le);return Mt&&(me?le[t_]=Xe:delete le[t_]),rr}var qC=JW;var $W=Object.prototype,QW=$W.toString;function eZ(le){return QW.call(le)}var HC=eZ;var tZ="[object Null]",rZ="[object Undefined]",GC=yf?yf.toStringTag:void 0;function aZ(le){return le==null?le===void 0?rZ:tZ:GC&&GC in Object(le)?qC(le):HC(le)}var ac=aZ;function iZ(le){return le!=null&&typeof le=="object"}var ul=iZ;var nZ="[object Symbol]";function oZ(le){return typeof le=="symbol"||ul(le)&&ac(le)==nZ}var _f=oZ;var sZ=NaN;function lZ(le){return typeof le=="number"?le:_f(le)?sZ:+le}var bA=lZ;function uZ(le,me){for(var Xe=-1,Mt=le==null?0:le.length,rr=Array(Mt);++Xe<Mt;)rr[Xe]=me(le[Xe],Xe,le);return rr}var nl=uZ;var cZ=Array.isArray,mo=cZ;var fZ=1/0,WC=yf?yf.prototype:void 0,ZC=WC?WC.toString:void 0;function XC(le){if(typeof le=="string")return le;if(mo(le))return nl(le,XC)+"";if(_f(le))return ZC?ZC.call(le):"";var me=le+"";return me=="0"&&1/le==-fZ?"-0":me}var Vf=XC;function hZ(le,me){return function(Xe,Mt){var rr;if(Xe===void 0&&Mt===void 0)return me;if(Xe!==void 0&&(rr=Xe),Mt!==void 0){if(rr===void 0)return Mt;typeof Xe=="string"||typeof Mt=="string"?(Xe=Vf(Xe),Mt=Vf(Mt)):(Xe=bA(Xe),Mt=bA(Mt)),rr=le(Xe,Mt)}return rr}}var bm=hZ;var pZ=bm(function(le,me){return le+me},0),YC=pZ;var dZ=/\s/;function vZ(le){for(var me=le.length;me--&&dZ.test(le.charAt(me)););return me}var _b=vZ;var mZ=/^\s+/;function gZ(le){return le&&le.slice(0,_b(le)+1).replace(mZ,"")}var xb=gZ;function yZ(le){var me=typeof le;return le!=null&&(me=="object"||me=="function")}var ll=yZ;var KC=NaN,_Z=/^[-+]0x[0-9a-f]+$/i,xZ=/^0b[01]+$/i,bZ=/^0o[0-7]+$/i,wZ=parseInt;function TZ(le){if(typeof le=="number")return le;if(_f(le))return KC;if(ll(le)){var me=typeof le.valueOf=="function"?le.valueOf():le;le=ll(me)?me+"":me}if(typeof le!="string")return le===0?le:+le;le=xb(le);var Xe=xZ.test(le);return Xe||bZ.test(le)?wZ(le.slice(2),Xe?2:8):_Z.test(le)?KC:+le}var mh=TZ;var JC=1/0,AZ=17976931348623157e292;function SZ(le){if(!le)return le===0?le:0;if(le=mh(le),le===JC||le===-JC){var me=le<0?-1:1;return me*AZ}return le===le?le:0}var sd=SZ;function MZ(le){var me=sd(le),Xe=me%1;return me===me?Xe?me-Xe:me:0}var Eo=MZ;var EZ="Expected a function";function kZ(le,me){if(typeof me!="function")throw new TypeError(EZ);return le=Eo(le),function(){if(--le<1)return me.apply(this,arguments)}}var $C=kZ;function CZ(le){return le}var ic=CZ;var LZ="[object AsyncFunction]",PZ="[object Function]",IZ="[object GeneratorFunction]",RZ="[object Proxy]";function DZ(le){if(!ll(le))return!1;var me=ac(le);return me==PZ||me==IZ||me==LZ||me==RZ}var tp=DZ;var zZ=Kl["__core-js_shared__"],W0=zZ;var QC=function(){var le=/[^.]+$/.exec(W0&&W0.keys&&W0.keys.IE_PROTO||"");return le?"Symbol(src)_1."+le:""}();function FZ(le){return!!QC&&QC in le}var eL=FZ;var OZ=Function.prototype,BZ=OZ.toString;function NZ(le){if(le!=null){try{return BZ.call(le)}catch{}try{return le+""}catch{}}return""}var jv=NZ;var UZ=/[\\^$.*+?()[\]{}|]/g,jZ=/^\[object .+?Constructor\]$/,VZ=Function.prototype,qZ=Object.prototype,HZ=VZ.toString,GZ=qZ.hasOwnProperty,WZ=RegExp("^"+HZ.call(GZ).replace(UZ,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ZZ(le){if(!ll(le)||eL(le))return!1;var me=tp(le)?WZ:jZ;return me.test(jv(le))}var bb=ZZ;function XZ(le,me){return le?.[me]}var tL=XZ;function YZ(le,me){var Xe=tL(le,me);return bb(Xe)?Xe:void 0}var ld=YZ;var KZ=ld(Kl,"WeakMap"),Ug=KZ;var JZ=Ug&&new Ug,Z0=JZ;var $Z=Z0?function(le,me){return Z0.set(le,me),le}:ic,wb=$Z;var rL=Object.create,QZ=function(){function le(){}return function(me){if(!ll(me))return{};if(rL)return rL(me);le.prototype=me;var Xe=new le;return le.prototype=void 0,Xe}}(),Td=QZ;function eX(le){return function(){var me=arguments;switch(me.length){case 0:return new le;case 1:return new le(me[0]);case 2:return new le(me[0],me[1]);case 3:return new le(me[0],me[1],me[2]);case 4:return new le(me[0],me[1],me[2],me[3]);case 5:return new le(me[0],me[1],me[2],me[3],me[4]);case 6:return new le(me[0],me[1],me[2],me[3],me[4],me[5]);case 7:return new le(me[0],me[1],me[2],me[3],me[4],me[5],me[6])}var Xe=Td(le.prototype),Mt=le.apply(Xe,me);return ll(Mt)?Mt:Xe}}var Vv=eX;var tX=1;function rX(le,me,Xe){var Mt=me&tX,rr=Vv(le);function Nr(){var xa=this&&this!==Kl&&this instanceof Nr?rr:le;return xa.apply(Mt?Xe:this,arguments)}return Nr}var aL=rX;function aX(le,me,Xe){switch(Xe.length){case 0:return le.call(me);case 1:return le.call(me,Xe[0]);case 2:return le.call(me,Xe[0],Xe[1]);case 3:return le.call(me,Xe[0],Xe[1],Xe[2])}return le.apply(me,Xe)}var sf=aX;var iX=Math.max;function nX(le,me,Xe,Mt){for(var rr=-1,Nr=le.length,xa=Xe.length,Ha=-1,Za=me.length,un=iX(Nr-xa,0),Ji=Array(Za+un),gn=!Mt;++Ha<Za;)Ji[Ha]=me[Ha];for(;++rr<xa;)(gn||rr<Nr)&&(Ji[Xe[rr]]=le[rr]);for(;un--;)Ji[Ha++]=le[rr++];return Ji}var Tb=nX;var oX=Math.max;function sX(le,me,Xe,Mt){for(var rr=-1,Nr=le.length,xa=-1,Ha=Xe.length,Za=-1,un=me.length,Ji=oX(Nr-Ha,0),gn=Array(Ji+un),wo=!Mt;++rr<Ji;)gn[rr]=le[rr];for(var ps=rr;++Za<un;)gn[ps+Za]=me[Za];for(;++xa<Ha;)(wo||rr<Nr)&&(gn[ps+Xe[xa]]=le[rr++]);return gn}var Ab=sX;function lX(le,me){for(var Xe=le.length,Mt=0;Xe--;)le[Xe]===me&&++Mt;return Mt}var iL=lX;function uX(){}var wm=uX;var cX=4294967295;function Sb(le){this.__wrapped__=le,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=cX,this.__views__=[]}Sb.prototype=Td(wm.prototype);Sb.prototype.constructor=Sb;var dl=Sb;function fX(){}var X0=fX;var hX=Z0?function(le){return Z0.get(le)}:X0,Y0=hX;var pX={},Tm=pX;var dX=Object.prototype,vX=dX.hasOwnProperty;function mX(le){for(var me=le.name+"",Xe=Tm[me],Mt=vX.call(Tm,me)?Xe.length:0;Mt--;){var rr=Xe[Mt],Nr=rr.func;if(Nr==null||Nr==le)return rr.name}return me}var K0=mX;function Mb(le,me){this.__wrapped__=le,this.__actions__=[],this.__chain__=!!me,this.__index__=0,this.__values__=void 0}Mb.prototype=Td(wm.prototype);Mb.prototype.constructor=Mb;var Ip=Mb;function gX(le,me){var Xe=-1,Mt=le.length;for(me||(me=Array(Mt));++Xe<Mt;)me[Xe]=le[Xe];return me}var Wc=gX;function yX(le){if(le instanceof dl)return le.clone();var me=new Ip(le.__wrapped__,le.__chain__);return me.__actions__=Wc(le.__actions__),me.__index__=le.__index__,me.__values__=le.__values__,me}var Eb=yX;var _X=Object.prototype,xX=_X.hasOwnProperty;function kb(le){if(ul(le)&&!mo(le)&&!(le instanceof dl)){if(le instanceof Ip)return le;if(xX.call(le,"__wrapped__"))return Eb(le)}return new Ip(le)}kb.prototype=wm.prototype;kb.prototype.constructor=kb;var ua=kb;function bX(le){var me=K0(le),Xe=ua[me];if(typeof Xe!="function"||!(me in dl.prototype))return!1;if(le===Xe)return!0;var Mt=Y0(Xe);return!!Mt&&le===Mt[0]}var r_=bX;var wX=800,TX=16,AX=Date.now;function SX(le){var me=0,Xe=0;return function(){var Mt=AX(),rr=TX-(Mt-Xe);if(Xe=Mt,rr>0){if(++me>=wX)return arguments[0]}else me=0;return le.apply(void 0,arguments)}}var Cb=SX;var MX=Cb(wb),Lb=MX;var EX=/\{\n\/\* \[wrapped with (.+)\] \*/,kX=/,? & /;function CX(le){var me=le.match(EX);return me?me[1].split(kX):[]}var nL=CX;var LX=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;function PX(le,me){var Xe=me.length;if(!Xe)return le;var Mt=Xe-1;return me[Mt]=(Xe>1?"& ":"")+me[Mt],me=me.join(Xe>2?", ":" "),le.replace(LX,`{
+/* [wrapped with `+me+`] */
+`)}var oL=PX;function IX(le){return function(){return le}}var J0=IX;var RX=function(){try{var le=ld(Object,"defineProperty");return le({},"",{}),le}catch{}}(),$0=RX;var DX=$0?function(le,me){return $0(le,"toString",{configurable:!0,enumerable:!1,value:J0(me),writable:!0})}:ic,sL=DX;var zX=Cb(sL),Q0=zX;function FX(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt&&me(le[Xe],Xe,le)!==!1;);return le}var zh=FX;function OX(le,me,Xe,Mt){for(var rr=le.length,Nr=Xe+(Mt?1:-1);Mt?Nr--:++Nr<rr;)if(me(le[Nr],Nr,le))return Nr;return-1}var Am=OX;function BX(le){return le!==le}var Pb=BX;function NX(le,me,Xe){for(var Mt=Xe-1,rr=le.length;++Mt<rr;)if(le[Mt]===me)return Mt;return-1}var lL=NX;function UX(le,me,Xe){return me===me?lL(le,me,Xe):Am(le,Pb,Xe)}var Ad=UX;function jX(le,me){var Xe=le==null?0:le.length;return!!Xe&&Ad(le,me,0)>-1}var Sm=jX;var VX=1,qX=2,HX=8,GX=16,WX=32,ZX=64,XX=128,YX=256,KX=512,JX=[["ary",XX],["bind",VX],["bindKey",qX],["curry",HX],["curryRight",GX],["flip",KX],["partial",WX],["partialRight",ZX],["rearg",YX]];function $X(le,me){return zh(JX,function(Xe){var Mt="_."+Xe[0];me&Xe[1]&&!Sm(le,Mt)&&le.push(Mt)}),le.sort()}var uL=$X;function QX(le,me,Xe){var Mt=me+"";return Q0(le,oL(Mt,uL(nL(Mt),Xe)))}var Ib=QX;var eY=1,tY=2,rY=4,aY=8,cL=32,fL=64;function iY(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&aY,gn=Ji?xa:void 0,wo=Ji?void 0:xa,ps=Ji?Nr:void 0,Qn=Ji?void 0:Nr;me|=Ji?cL:fL,me&=~(Ji?fL:cL),me&rY||(me&=~(eY|tY));var Ye=[le,me,rr,ps,gn,Qn,wo,Ha,Za,un],Ps=Xe.apply(void 0,Ye);return r_(le)&&Lb(Ps,Ye),Ps.placeholder=Mt,Ib(Ps,le,me)}var Rb=iY;function nY(le){var me=le;return me.placeholder}var Sd=nY;var oY=9007199254740991,sY=/^(?:0|[1-9]\d*)$/;function lY(le,me){var Xe=typeof le;return me=me??oY,!!me&&(Xe=="number"||Xe!="symbol"&&sY.test(le))&&le>-1&&le%1==0&&le<me}var rp=lY;var uY=Math.min;function cY(le,me){for(var Xe=le.length,Mt=uY(me.length,Xe),rr=Wc(le);Mt--;){var Nr=me[Mt];le[Mt]=rp(Nr,Xe)?rr[Nr]:void 0}return le}var hL=cY;var pL="__lodash_placeholder__";function fY(le,me){for(var Xe=-1,Mt=le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe];(xa===me||xa===pL)&&(le[Xe]=pL,Nr[rr++]=Xe)}return Nr}var Yp=fY;var hY=1,pY=2,dY=8,vY=16,mY=128,gY=512;function dL(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&mY,gn=me&hY,wo=me&pY,ps=me&(dY|vY),Qn=me&gY,Ye=wo?void 0:Vv(le);function Ps(){for(var Ml=arguments.length,Ul=Array(Ml),Hf=Ml;Hf--;)Ul[Hf]=arguments[Hf];if(ps)var xh=Sd(Ps),Bp=iL(Ul,xh);if(Mt&&(Ul=Tb(Ul,Mt,rr,ps)),Nr&&(Ul=Ab(Ul,Nr,xa,ps)),Ml-=Bp,ps&&Ml<un){var _n=Yp(Ul,xh);return Rb(le,me,dL,Ps.placeholder,Xe,Ul,_n,Ha,Za,un-Ml)}var $p=gn?Xe:this,Np=wo?$p[le]:le;return Ml=Ul.length,Ha?Ul=hL(Ul,Ha):Qn&&Ml>1&&Ul.reverse(),Ji&&Za<Ml&&(Ul.length=Za),this&&this!==Kl&&this instanceof Ps&&(Np=Ye||Vv(Np)),Np.apply($p,Ul)}return Ps}var ey=dL;function yY(le,me,Xe){var Mt=Vv(le);function rr(){for(var Nr=arguments.length,xa=Array(Nr),Ha=Nr,Za=Sd(rr);Ha--;)xa[Ha]=arguments[Ha];var un=Nr<3&&xa[0]!==Za&&xa[Nr-1]!==Za?[]:Yp(xa,Za);if(Nr-=un.length,Nr<Xe)return Rb(le,me,ey,rr.placeholder,void 0,xa,un,void 0,void 0,Xe-Nr);var Ji=this&&this!==Kl&&this instanceof rr?Mt:le;return sf(Ji,this,xa)}return rr}var vL=yY;var _Y=1;function xY(le,me,Xe,Mt){var rr=me&_Y,Nr=Vv(le);function xa(){for(var Ha=-1,Za=arguments.length,un=-1,Ji=Mt.length,gn=Array(Ji+Za),wo=this&&this!==Kl&&this instanceof xa?Nr:le;++un<Ji;)gn[un]=Mt[un];for(;Za--;)gn[un++]=arguments[++Ha];return sf(wo,rr?Xe:this,gn)}return xa}var mL=xY;var gL="__lodash_placeholder__",wA=1,bY=2,wY=4,yL=8,a_=128,_L=256,TY=Math.min;function AY(le,me){var Xe=le[1],Mt=me[1],rr=Xe|Mt,Nr=rr<(wA|bY|a_),xa=Mt==a_&&Xe==yL||Mt==a_&&Xe==_L&&le[7].length<=me[8]||Mt==(a_|_L)&&me[7].length<=me[8]&&Xe==yL;if(!(Nr||xa))return le;Mt&wA&&(le[2]=me[2],rr|=Xe&wA?0:wY);var Ha=me[3];if(Ha){var Za=le[3];le[3]=Za?Tb(Za,Ha,me[4]):Ha,le[4]=Za?Yp(le[3],gL):me[4]}return Ha=me[5],Ha&&(Za=le[5],le[5]=Za?Ab(Za,Ha,me[6]):Ha,le[6]=Za?Yp(le[5],gL):me[6]),Ha=me[7],Ha&&(le[7]=Ha),Mt&a_&&(le[8]=le[8]==null?me[8]:TY(le[8],me[8])),le[9]==null&&(le[9]=me[9]),le[0]=me[0],le[1]=rr,le}var xL=AY;var SY="Expected a function",bL=1,MY=2,TA=8,AA=16,SA=32,wL=64,TL=Math.max;function EY(le,me,Xe,Mt,rr,Nr,xa,Ha){var Za=me&MY;if(!Za&&typeof le!="function")throw new TypeError(SY);var un=Mt?Mt.length:0;if(un||(me&=~(SA|wL),Mt=rr=void 0),xa=xa===void 0?xa:TL(Eo(xa),0),Ha=Ha===void 0?Ha:Eo(Ha),un-=rr?rr.length:0,me&wL){var Ji=Mt,gn=rr;Mt=rr=void 0}var wo=Za?void 0:Y0(le),ps=[le,me,Xe,Mt,rr,Ji,gn,Nr,xa,Ha];if(wo&&xL(ps,wo),le=ps[0],me=ps[1],Xe=ps[2],Mt=ps[3],rr=ps[4],Ha=ps[9]=ps[9]===void 0?Za?0:le.length:TL(ps[9]-un,0),!Ha&&me&(TA|AA)&&(me&=~(TA|AA)),!me||me==bL)var Qn=aL(le,me,Xe);else me==TA||me==AA?Qn=vL(le,me,Ha):(me==SA||me==(bL|SA))&&!rr.length?Qn=mL(le,me,Xe,Mt):Qn=ey.apply(void 0,ps);var Ye=wo?wb:Lb;return Ib(Ye(Qn,ps),le,me)}var ap=EY;var kY=128;function CY(le,me,Xe){return me=Xe?void 0:me,me=le&&me==null?le.length:me,ap(le,kY,void 0,void 0,void 0,void 0,me)}var Db=CY;function LY(le,me,Xe){me=="__proto__"&&$0?$0(le,me,{configurable:!0,enumerable:!0,value:Xe,writable:!0}):le[me]=Xe}var ip=LY;function PY(le,me){return le===me||le!==le&&me!==me}var qf=PY;var IY=Object.prototype,RY=IY.hasOwnProperty;function DY(le,me,Xe){var Mt=le[me];(!(RY.call(le,me)&&qf(Mt,Xe))||Xe===void 0&&!(me in le))&&ip(le,me,Xe)}var vv=DY;function zY(le,me,Xe,Mt){var rr=!Xe;Xe||(Xe={});for(var Nr=-1,xa=me.length;++Nr<xa;){var Ha=me[Nr],Za=Mt?Mt(Xe[Ha],le[Ha],Ha,Xe,le):void 0;Za===void 0&&(Za=le[Ha]),rr?ip(Xe,Ha,Za):vv(Xe,Ha,Za)}return Xe}var gh=zY;var AL=Math.max;function FY(le,me,Xe){return me=AL(me===void 0?le.length-1:me,0),function(){for(var Mt=arguments,rr=-1,Nr=AL(Mt.length-me,0),xa=Array(Nr);++rr<Nr;)xa[rr]=Mt[me+rr];rr=-1;for(var Ha=Array(me+1);++rr<me;)Ha[rr]=Mt[rr];return Ha[me]=Xe(xa),sf(le,this,Ha)}}var zb=FY;function OY(le,me){return Q0(zb(le,me,ic),le+"")}var ko=OY;var BY=9007199254740991;function NY(le){return typeof le=="number"&&le>-1&&le%1==0&&le<=BY}var Mm=NY;function UY(le){return le!=null&&Mm(le.length)&&!tp(le)}var gc=UY;function jY(le,me,Xe){if(!ll(Xe))return!1;var Mt=typeof me;return(Mt=="number"?gc(Xe)&&rp(me,Xe.length):Mt=="string"&&me in Xe)?qf(Xe[me],le):!1}var nc=jY;function VY(le){return ko(function(me,Xe){var Mt=-1,rr=Xe.length,Nr=rr>1?Xe[rr-1]:void 0,xa=rr>2?Xe[2]:void 0;for(Nr=le.length>3&&typeof Nr=="function"?(rr--,Nr):void 0,xa&&nc(Xe[0],Xe[1],xa)&&(Nr=rr<3?void 0:Nr,rr=1),me=Object(me);++Mt<rr;){var Ha=Xe[Mt];Ha&&le(me,Ha,Mt,Nr)}return me})}var Md=VY;var qY=Object.prototype;function HY(le){var me=le&&le.constructor,Xe=typeof me=="function"&&me.prototype||qY;return le===Xe}var mv=HY;function GY(le,me){for(var Xe=-1,Mt=Array(le);++Xe<le;)Mt[Xe]=me(Xe);return Mt}var ty=GY;var WY="[object Arguments]";function ZY(le){return ul(le)&&ac(le)==WY}var MA=ZY;var SL=Object.prototype,XY=SL.hasOwnProperty,YY=SL.propertyIsEnumerable,KY=MA(function(){return arguments}())?MA:function(le){return ul(le)&&XY.call(le,"callee")&&!YY.call(le,"callee")},dd=KY;function JY(){return!1}var ry=JY;var kL=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ML=kL&&typeof module=="object"&&module&&!module.nodeType&&module,$Y=ML&&ML.exports===kL,EL=$Y?Kl.Buffer:void 0,QY=EL?EL.isBuffer:void 0,eK=QY||ry,Kp=eK;var tK="[object Arguments]",rK="[object Array]",aK="[object Boolean]",iK="[object Date]",nK="[object Error]",oK="[object Function]",sK="[object Map]",lK="[object Number]",uK="[object Object]",cK="[object RegExp]",fK="[object Set]",hK="[object String]",pK="[object WeakMap]",dK="[object ArrayBuffer]",vK="[object DataView]",mK="[object Float32Array]",gK="[object Float64Array]",yK="[object Int8Array]",_K="[object Int16Array]",xK="[object Int32Array]",bK="[object Uint8Array]",wK="[object Uint8ClampedArray]",TK="[object Uint16Array]",AK="[object Uint32Array]",lf={};lf[mK]=lf[gK]=lf[yK]=lf[_K]=lf[xK]=lf[bK]=lf[wK]=lf[TK]=lf[AK]=!0;lf[tK]=lf[rK]=lf[dK]=lf[aK]=lf[vK]=lf[iK]=lf[nK]=lf[oK]=lf[sK]=lf[lK]=lf[uK]=lf[cK]=lf[fK]=lf[hK]=lf[pK]=!1;function SK(le){return ul(le)&&Mm(le.length)&&!!lf[ac(le)]}var CL=SK;function MK(le){return function(me){return le(me)}}var uf=MK;var LL=typeof exports=="object"&&exports&&!exports.nodeType&&exports,i_=LL&&typeof module=="object"&&module&&!module.nodeType&&module,EK=i_&&i_.exports===LL,EA=EK&&yb.process,kK=function(){try{var le=i_&&i_.require&&i_.require("util").types;return le||EA&&EA.binding&&EA.binding("util")}catch{}}(),np=kK;var PL=np&&np.isTypedArray,CK=PL?uf(PL):CL,Ed=CK;var LK=Object.prototype,PK=LK.hasOwnProperty;function IK(le,me){var Xe=mo(le),Mt=!Xe&&dd(le),rr=!Xe&&!Mt&&Kp(le),Nr=!Xe&&!Mt&&!rr&&Ed(le),xa=Xe||Mt||rr||Nr,Ha=xa?ty(le.length,String):[],Za=Ha.length;for(var un in le)(me||PK.call(le,un))&&!(xa&&(un=="length"||rr&&(un=="offset"||un=="parent")||Nr&&(un=="buffer"||un=="byteLength"||un=="byteOffset")||rp(un,Za)))&&Ha.push(un);return Ha}var Fb=IK;function RK(le,me){return function(Xe){return le(me(Xe))}}var Ob=RK;var DK=Ob(Object.keys,Object),IL=DK;var zK=Object.prototype,FK=zK.hasOwnProperty;function OK(le){if(!mv(le))return IL(le);var me=[];for(var Xe in Object(le))FK.call(le,Xe)&&Xe!="constructor"&&me.push(Xe);return me}var ay=OK;function BK(le){return gc(le)?Fb(le):ay(le)}var Gl=BK;var NK=Object.prototype,UK=NK.hasOwnProperty,jK=Md(function(le,me){if(mv(me)||gc(me)){gh(me,Gl(me),le);return}for(var Xe in me)UK.call(me,Xe)&&vv(le,Xe,me[Xe])}),RL=jK;function VK(le){var me=[];if(le!=null)for(var Xe in Object(le))me.push(Xe);return me}var DL=VK;var qK=Object.prototype,HK=qK.hasOwnProperty;function GK(le){if(!ll(le))return DL(le);var me=mv(le),Xe=[];for(var Mt in le)Mt=="constructor"&&(me||!HK.call(le,Mt))||Xe.push(Mt);return Xe}var zL=GK;function WK(le){return gc(le)?Fb(le,!0):zL(le)}var yc=WK;var ZK=Md(function(le,me){gh(me,yc(me),le)}),n_=ZK;var XK=Md(function(le,me,Xe,Mt){gh(me,yc(me),le,Mt)}),Em=XK;var YK=Md(function(le,me,Xe,Mt){gh(me,Gl(me),le,Mt)}),FL=YK;var KK=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,JK=/^\w*$/;function $K(le,me){if(mo(le))return!1;var Xe=typeof le;return Xe=="number"||Xe=="symbol"||Xe=="boolean"||le==null||_f(le)?!0:JK.test(le)||!KK.test(le)||me!=null&&le in Object(me)}var iy=$K;var QK=ld(Object,"create"),qv=QK;function eJ(){this.__data__=qv?qv(null):{},this.size=0}var OL=eJ;function tJ(le){var me=this.has(le)&&delete this.__data__[le];return this.size-=me?1:0,me}var BL=tJ;var rJ="__lodash_hash_undefined__",aJ=Object.prototype,iJ=aJ.hasOwnProperty;function nJ(le){var me=this.__data__;if(qv){var Xe=me[le];return Xe===rJ?void 0:Xe}return iJ.call(me,le)?me[le]:void 0}var NL=nJ;var oJ=Object.prototype,sJ=oJ.hasOwnProperty;function lJ(le){var me=this.__data__;return qv?me[le]!==void 0:sJ.call(me,le)}var UL=lJ;var uJ="__lodash_hash_undefined__";function cJ(le,me){var Xe=this.__data__;return this.size+=this.has(le)?0:1,Xe[le]=qv&&me===void 0?uJ:me,this}var jL=cJ;function ny(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}ny.prototype.clear=OL;ny.prototype.delete=BL;ny.prototype.get=NL;ny.prototype.has=UL;ny.prototype.set=jL;var kA=ny;function fJ(){this.__data__=[],this.size=0}var VL=fJ;function hJ(le,me){for(var Xe=le.length;Xe--;)if(qf(le[Xe][0],me))return Xe;return-1}var km=hJ;var pJ=Array.prototype,dJ=pJ.splice;function vJ(le){var me=this.__data__,Xe=km(me,le);if(Xe<0)return!1;var Mt=me.length-1;return Xe==Mt?me.pop():dJ.call(me,Xe,1),--this.size,!0}var qL=vJ;function mJ(le){var me=this.__data__,Xe=km(me,le);return Xe<0?void 0:me[Xe][1]}var HL=mJ;function gJ(le){return km(this.__data__,le)>-1}var GL=gJ;function yJ(le,me){var Xe=this.__data__,Mt=km(Xe,le);return Mt<0?(++this.size,Xe.push([le,me])):Xe[Mt][1]=me,this}var WL=yJ;function oy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}oy.prototype.clear=VL;oy.prototype.delete=qL;oy.prototype.get=HL;oy.prototype.has=GL;oy.prototype.set=WL;var Cm=oy;var _J=ld(Kl,"Map"),Lm=_J;function xJ(){this.size=0,this.__data__={hash:new kA,map:new(Lm||Cm),string:new kA}}var ZL=xJ;function bJ(le){var me=typeof le;return me=="string"||me=="number"||me=="symbol"||me=="boolean"?le!=="__proto__":le===null}var XL=bJ;function wJ(le,me){var Xe=le.__data__;return XL(me)?Xe[typeof me=="string"?"string":"hash"]:Xe.map}var Pm=wJ;function TJ(le){var me=Pm(this,le).delete(le);return this.size-=me?1:0,me}var YL=TJ;function AJ(le){return Pm(this,le).get(le)}var KL=AJ;function SJ(le){return Pm(this,le).has(le)}var JL=SJ;function MJ(le,me){var Xe=Pm(this,le),Mt=Xe.size;return Xe.set(le,me),this.size+=Xe.size==Mt?0:1,this}var $L=MJ;function sy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}sy.prototype.clear=ZL;sy.prototype.delete=YL;sy.prototype.get=KL;sy.prototype.has=JL;sy.prototype.set=$L;var jg=sy;var EJ="Expected a function";function CA(le,me){if(typeof le!="function"||me!=null&&typeof me!="function")throw new TypeError(EJ);var Xe=function(){var Mt=arguments,rr=me?me.apply(this,Mt):Mt[0],Nr=Xe.cache;if(Nr.has(rr))return Nr.get(rr);var xa=le.apply(this,Mt);return Xe.cache=Nr.set(rr,xa)||Nr,xa};return Xe.cache=new(CA.Cache||jg),Xe}CA.Cache=jg;var Bb=CA;var kJ=500;function CJ(le){var me=Bb(le,function(Mt){return Xe.size===kJ&&Xe.clear(),Mt}),Xe=me.cache;return me}var QL=CJ;var LJ=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,PJ=/\\(\\)?/g,IJ=QL(function(le){var me=[];return le.charCodeAt(0)===46&&me.push(""),le.replace(LJ,function(Xe,Mt,rr,Nr){me.push(rr?Nr.replace(PJ,"$1"):Mt||Xe)}),me}),Nb=IJ;function RJ(le){return le==null?"":Vf(le)}var ws=RJ;function DJ(le,me){return mo(le)?le:iy(le,me)?[le]:Nb(ws(le))}var Rp=DJ;var zJ=1/0;function FJ(le){if(typeof le=="string"||_f(le))return le;var me=le+"";return me=="0"&&1/le==-zJ?"-0":me}var yh=FJ;function OJ(le,me){me=Rp(me,le);for(var Xe=0,Mt=me.length;le!=null&&Xe<Mt;)le=le[yh(me[Xe++])];return Xe&&Xe==Mt?le:void 0}var ud=OJ;function BJ(le,me,Xe){var Mt=le==null?void 0:ud(le,me);return Mt===void 0?Xe:Mt}var ly=BJ;function NJ(le,me){for(var Xe=-1,Mt=me.length,rr=Array(Mt),Nr=le==null;++Xe<Mt;)rr[Xe]=Nr?void 0:ly(le,me[Xe]);return rr}var uy=NJ;function UJ(le,me){for(var Xe=-1,Mt=me.length,rr=le.length;++Xe<Mt;)le[rr+Xe]=me[Xe];return le}var Dp=UJ;var eP=yf?yf.isConcatSpreadable:void 0;function jJ(le){return mo(le)||dd(le)||!!(eP&&le&&le[eP])}var tP=jJ;function rP(le,me,Xe,Mt,rr){var Nr=-1,xa=le.length;for(Xe||(Xe=tP),rr||(rr=[]);++Nr<xa;){var Ha=le[Nr];me>0&&Xe(Ha)?me>1?rP(Ha,me-1,Xe,Mt,rr):Dp(rr,Ha):Mt||(rr[rr.length]=Ha)}return rr}var wu=rP;function VJ(le){var me=le==null?0:le.length;return me?wu(le,1):[]}var Ub=VJ;function qJ(le){return Q0(zb(le,void 0,Ub),le+"")}var op=qJ;var HJ=op(uy),aP=HJ;var GJ=Ob(Object.getPrototypeOf,Object),Im=GJ;var WJ="[object Object]",ZJ=Function.prototype,XJ=Object.prototype,iP=ZJ.toString,YJ=XJ.hasOwnProperty,KJ=iP.call(Object);function JJ(le){if(!ul(le)||ac(le)!=WJ)return!1;var me=Im(le);if(me===null)return!0;var Xe=YJ.call(me,"constructor")&&me.constructor;return typeof Xe=="function"&&Xe instanceof Xe&&iP.call(Xe)==KJ}var gv=JJ;var $J="[object DOMException]",QJ="[object Error]";function e$(le){if(!ul(le))return!1;var me=ac(le);return me==QJ||me==$J||typeof le.message=="string"&&typeof le.name=="string"&&!gv(le)}var cy=e$;var t$=ko(function(le,me){try{return sf(le,void 0,me)}catch(Xe){return cy(Xe)?Xe:new Error(Xe)}}),jb=t$;var r$="Expected a function";function a$(le,me){var Xe;if(typeof me!="function")throw new TypeError(r$);return le=Eo(le),function(){return--le>0&&(Xe=me.apply(this,arguments)),le<=1&&(me=void 0),Xe}}var Vb=a$;var i$=1,n$=32,LA=ko(function(le,me,Xe){var Mt=i$;if(Xe.length){var rr=Yp(Xe,Sd(LA));Mt|=n$}return ap(le,Mt,me,Xe,rr)});LA.placeholder={};var qb=LA;var o$=op(function(le,me){return zh(me,function(Xe){Xe=yh(Xe),ip(le,Xe,qb(le[Xe],le))}),le}),nP=o$;var s$=1,l$=2,u$=32,PA=ko(function(le,me,Xe){var Mt=s$|l$;if(Xe.length){var rr=Yp(Xe,Sd(PA));Mt|=u$}return ap(me,Mt,le,Xe,rr)});PA.placeholder={};var oP=PA;function c$(le,me,Xe){var Mt=-1,rr=le.length;me<0&&(me=-me>rr?0:rr+me),Xe=Xe>rr?rr:Xe,Xe<0&&(Xe+=rr),rr=me>Xe?0:Xe-me>>>0,me>>>=0;for(var Nr=Array(rr);++Mt<rr;)Nr[Mt]=le[Mt+me];return Nr}var Lf=c$;function f$(le,me,Xe){var Mt=le.length;return Xe=Xe===void 0?Mt:Xe,!me&&Xe>=Mt?le:Lf(le,me,Xe)}var zp=f$;var h$="\\ud800-\\udfff",p$="\\u0300-\\u036f",d$="\\ufe20-\\ufe2f",v$="\\u20d0-\\u20ff",m$=p$+d$+v$,g$="\\ufe0e\\ufe0f",y$="\\u200d",_$=RegExp("["+y$+h$+m$+g$+"]");function x$(le){return _$.test(le)}var kd=x$;function b$(le){return le.split("")}var sP=b$;var lP="\\ud800-\\udfff",w$="\\u0300-\\u036f",T$="\\ufe20-\\ufe2f",A$="\\u20d0-\\u20ff",S$=w$+T$+A$,M$="\\ufe0e\\ufe0f",E$="["+lP+"]",IA="["+S$+"]",RA="\\ud83c[\\udffb-\\udfff]",k$="(?:"+IA+"|"+RA+")",uP="[^"+lP+"]",cP="(?:\\ud83c[\\udde6-\\uddff]){2}",fP="[\\ud800-\\udbff][\\udc00-\\udfff]",C$="\\u200d",hP=k$+"?",pP="["+M$+"]?",L$="(?:"+C$+"(?:"+[uP,cP,fP].join("|")+")"+pP+hP+")*",P$=pP+hP+L$,I$="(?:"+[uP+IA+"?",IA,cP,fP,E$].join("|")+")",R$=RegExp(RA+"(?="+RA+")|"+I$+P$,"g");function D$(le){return le.match(R$)||[]}var dP=D$;function z$(le){return kd(le)?dP(le):sP(le)}var Fh=z$;function F$(le){return function(me){me=ws(me);var Xe=kd(me)?Fh(me):void 0,Mt=Xe?Xe[0]:me.charAt(0),rr=Xe?zp(Xe,1).join(""):me.slice(1);return Mt[le]()+rr}}var Hb=F$;var O$=Hb("toUpperCase"),fy=O$;function B$(le){return fy(ws(le).toLowerCase())}var Gb=B$;function N$(le,me,Xe,Mt){var rr=-1,Nr=le==null?0:le.length;for(Mt&&Nr&&(Xe=le[++rr]);++rr<Nr;)Xe=me(Xe,le[rr],rr,le);return Xe}var hy=N$;function U$(le){return function(me){return le?.[me]}}var py=U$;var j$={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},V$=py(j$),vP=V$;var q$=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,H$="\\u0300-\\u036f",G$="\\ufe20-\\ufe2f",W$="\\u20d0-\\u20ff",Z$=H$+G$+W$,X$="["+Z$+"]",Y$=RegExp(X$,"g");function K$(le){return le=ws(le),le&&le.replace(q$,vP).replace(Y$,"")}var Wb=K$;var J$=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function $$(le){return le.match(J$)||[]}var mP=$$;var Q$=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function eQ(le){return Q$.test(le)}var gP=eQ;var wP="\\ud800-\\udfff",tQ="\\u0300-\\u036f",rQ="\\ufe20-\\ufe2f",aQ="\\u20d0-\\u20ff",iQ=tQ+rQ+aQ,TP="\\u2700-\\u27bf",AP="a-z\\xdf-\\xf6\\xf8-\\xff",nQ="\\xac\\xb1\\xd7\\xf7",oQ="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",sQ="\\u2000-\\u206f",lQ=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",SP="A-Z\\xc0-\\xd6\\xd8-\\xde",uQ="\\ufe0e\\ufe0f",MP=nQ+oQ+sQ+lQ,EP="['\u2019]",yP="["+MP+"]",cQ="["+iQ+"]",kP="\\d+",fQ="["+TP+"]",CP="["+AP+"]",LP="[^"+wP+MP+kP+TP+AP+SP+"]",hQ="\\ud83c[\\udffb-\\udfff]",pQ="(?:"+cQ+"|"+hQ+")",dQ="[^"+wP+"]",PP="(?:\\ud83c[\\udde6-\\uddff]){2}",IP="[\\ud800-\\udbff][\\udc00-\\udfff]",dy="["+SP+"]",vQ="\\u200d",_P="(?:"+CP+"|"+LP+")",mQ="(?:"+dy+"|"+LP+")",xP="(?:"+EP+"(?:d|ll|m|re|s|t|ve))?",bP="(?:"+EP+"(?:D|LL|M|RE|S|T|VE))?",RP=pQ+"?",DP="["+uQ+"]?",gQ="(?:"+vQ+"(?:"+[dQ,PP,IP].join("|")+")"+DP+RP+")*",yQ="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",_Q="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",xQ=DP+RP+gQ,bQ="(?:"+[fQ,PP,IP].join("|")+")"+xQ,wQ=RegExp([dy+"?"+CP+"+"+xP+"(?="+[yP,dy,"$"].join("|")+")",mQ+"+"+bP+"(?="+[yP,dy+_P,"$"].join("|")+")",dy+"?"+_P+"+"+xP,dy+"+"+bP,_Q,yQ,kP,bQ].join("|"),"g");function TQ(le){return le.match(wQ)||[]}var zP=TQ;function AQ(le,me,Xe){return le=ws(le),me=Xe?void 0:me,me===void 0?gP(le)?zP(le):mP(le):le.match(me)||[]}var Zb=AQ;var SQ="['\u2019]",MQ=RegExp(SQ,"g");function EQ(le){return function(me){return hy(Zb(Wb(me).replace(MQ,"")),le,"")}}var Cd=EQ;var kQ=Cd(function(le,me,Xe){return me=me.toLowerCase(),le+(Xe?Gb(me):me)}),FP=kQ;function CQ(){if(!arguments.length)return[];var le=arguments[0];return mo(le)?le:[le]}var OP=CQ;var LQ=Kl.isFinite,PQ=Math.min;function IQ(le){var me=Math[le];return function(Xe,Mt){if(Xe=mh(Xe),Mt=Mt==null?0:PQ(Eo(Mt),292),Mt&&LQ(Xe)){var rr=(ws(Xe)+"e").split("e"),Nr=me(rr[0]+"e"+(+rr[1]+Mt));return rr=(ws(Nr)+"e").split("e"),+(rr[0]+"e"+(+rr[1]-Mt))}return me(Xe)}}var vy=IQ;var RQ=vy("ceil"),BP=RQ;function DQ(le){var me=ua(le);return me.__chain__=!0,me}var Xb=DQ;var zQ=Math.ceil,FQ=Math.max;function OQ(le,me,Xe){(Xe?nc(le,me,Xe):me===void 0)?me=1:me=FQ(Eo(me),0);var Mt=le==null?0:le.length;if(!Mt||me<1)return[];for(var rr=0,Nr=0,xa=Array(zQ(Mt/me));rr<Mt;)xa[Nr++]=Lf(le,rr,rr+=me);return xa}var NP=OQ;function BQ(le,me,Xe){return le===le&&(Xe!==void 0&&(le=le<=Xe?le:Xe),me!==void 0&&(le=le>=me?le:me)),le}var cd=BQ;function NQ(le,me,Xe){return Xe===void 0&&(Xe=me,me=void 0),Xe!==void 0&&(Xe=mh(Xe),Xe=Xe===Xe?Xe:0),me!==void 0&&(me=mh(me),me=me===me?me:0),cd(mh(le),me,Xe)}var UP=NQ;function UQ(){this.__data__=new Cm,this.size=0}var jP=UQ;function jQ(le){var me=this.__data__,Xe=me.delete(le);return this.size=me.size,Xe}var VP=jQ;function VQ(le){return this.__data__.get(le)}var qP=VQ;function qQ(le){return this.__data__.has(le)}var HP=qQ;var HQ=200;function GQ(le,me){var Xe=this.__data__;if(Xe instanceof Cm){var Mt=Xe.__data__;if(!Lm||Mt.length<HQ-1)return Mt.push([le,me]),this.size=++Xe.size,this;Xe=this.__data__=new jg(Mt)}return Xe.set(le,me),this.size=Xe.size,this}var GP=GQ;function my(le){var me=this.__data__=new Cm(le);this.size=me.size}my.prototype.clear=jP;my.prototype.delete=VP;my.prototype.get=qP;my.prototype.has=HP;my.prototype.set=GP;var yv=my;function WQ(le,me){return le&&gh(me,Gl(me),le)}var Yb=WQ;function ZQ(le,me){return le&&gh(me,yc(me),le)}var WP=ZQ;var KP=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ZP=KP&&typeof module=="object"&&module&&!module.nodeType&&module,XQ=ZP&&ZP.exports===KP,XP=XQ?Kl.Buffer:void 0,YP=XP?XP.allocUnsafe:void 0;function YQ(le,me){if(me)return le.slice();var Xe=le.length,Mt=YP?YP(Xe):new le.constructor(Xe);return le.copy(Mt),Mt}var Kb=YQ;function KQ(le,me){for(var Xe=-1,Mt=le==null?0:le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe];me(xa,Xe,le)&&(Nr[rr++]=xa)}return Nr}var Fp=KQ;function JQ(){return[]}var gy=JQ;var $Q=Object.prototype,QQ=$Q.propertyIsEnumerable,JP=Object.getOwnPropertySymbols,eee=JP?function(le){return le==null?[]:(le=Object(le),Fp(JP(le),function(me){return QQ.call(le,me)}))}:gy,yy=eee;function tee(le,me){return gh(le,yy(le),me)}var $P=tee;var ree=Object.getOwnPropertySymbols,aee=ree?function(le){for(var me=[];le;)Dp(me,yy(le)),le=Im(le);return me}:gy,Jb=aee;function iee(le,me){return gh(le,Jb(le),me)}var QP=iee;function nee(le,me,Xe){var Mt=me(le);return mo(le)?Mt:Dp(Mt,Xe(le))}var $b=nee;function oee(le){return $b(le,Gl,yy)}var o_=oee;function see(le){return $b(le,yc,Jb)}var _y=see;var lee=ld(Kl,"DataView"),Qb=lee;var uee=ld(Kl,"Promise"),ew=uee;var cee=ld(Kl,"Set"),Rm=cee;var e6="[object Map]",fee="[object Object]",t6="[object Promise]",r6="[object Set]",a6="[object WeakMap]",i6="[object DataView]",hee=jv(Qb),pee=jv(Lm),dee=jv(ew),vee=jv(Rm),mee=jv(Ug),Vg=ac;(Qb&&Vg(new Qb(new ArrayBuffer(1)))!=i6||Lm&&Vg(new Lm)!=e6||ew&&Vg(ew.resolve())!=t6||Rm&&Vg(new Rm)!=r6||Ug&&Vg(new Ug)!=a6)&&(Vg=function(le){var me=ac(le),Xe=me==fee?le.constructor:void 0,Mt=Xe?jv(Xe):"";if(Mt)switch(Mt){case hee:return i6;case pee:return e6;case dee:return t6;case vee:return r6;case mee:return a6}return me});var Oh=Vg;var gee=Object.prototype,yee=gee.hasOwnProperty;function _ee(le){var me=le.length,Xe=new le.constructor(me);return me&&typeof le[0]=="string"&&yee.call(le,"index")&&(Xe.index=le.index,Xe.input=le.input),Xe}var n6=_ee;var xee=Kl.Uint8Array,xy=xee;function bee(le){var me=new le.constructor(le.byteLength);return new xy(me).set(new xy(le)),me}var by=bee;function wee(le,me){var Xe=me?by(le.buffer):le.buffer;return new le.constructor(Xe,le.byteOffset,le.byteLength)}var o6=wee;var Tee=/\w*$/;function Aee(le){var me=new le.constructor(le.source,Tee.exec(le));return me.lastIndex=le.lastIndex,me}var s6=Aee;var l6=yf?yf.prototype:void 0,u6=l6?l6.valueOf:void 0;function See(le){return u6?Object(u6.call(le)):{}}var c6=See;function Mee(le,me){var Xe=me?by(le.buffer):le.buffer;return new le.constructor(Xe,le.byteOffset,le.length)}var tw=Mee;var Eee="[object Boolean]",kee="[object Date]",Cee="[object Map]",Lee="[object Number]",Pee="[object RegExp]",Iee="[object Set]",Ree="[object String]",Dee="[object Symbol]",zee="[object ArrayBuffer]",Fee="[object DataView]",Oee="[object Float32Array]",Bee="[object Float64Array]",Nee="[object Int8Array]",Uee="[object Int16Array]",jee="[object Int32Array]",Vee="[object Uint8Array]",qee="[object Uint8ClampedArray]",Hee="[object Uint16Array]",Gee="[object Uint32Array]";function Wee(le,me,Xe){var Mt=le.constructor;switch(me){case zee:return by(le);case Eee:case kee:return new Mt(+le);case Fee:return o6(le,Xe);case Oee:case Bee:case Nee:case Uee:case jee:case Vee:case qee:case Hee:case Gee:return tw(le,Xe);case Cee:return new Mt;case Lee:case Ree:return new Mt(le);case Pee:return s6(le);case Iee:return new Mt;case Dee:return c6(le)}}var f6=Wee;function Zee(le){return typeof le.constructor=="function"&&!mv(le)?Td(Im(le)):{}}var rw=Zee;var Xee="[object Map]";function Yee(le){return ul(le)&&Oh(le)==Xee}var h6=Yee;var p6=np&&np.isMap,Kee=p6?uf(p6):h6,aw=Kee;var Jee="[object Set]";function $ee(le){return ul(le)&&Oh(le)==Jee}var d6=$ee;var v6=np&&np.isSet,Qee=v6?uf(v6):d6,iw=Qee;var ete=1,tte=2,rte=4,m6="[object Arguments]",ate="[object Array]",ite="[object Boolean]",nte="[object Date]",ote="[object Error]",g6="[object Function]",ste="[object GeneratorFunction]",lte="[object Map]",ute="[object Number]",y6="[object Object]",cte="[object RegExp]",fte="[object Set]",hte="[object String]",pte="[object Symbol]",dte="[object WeakMap]",vte="[object ArrayBuffer]",mte="[object DataView]",gte="[object Float32Array]",yte="[object Float64Array]",_te="[object Int8Array]",xte="[object Int16Array]",bte="[object Int32Array]",wte="[object Uint8Array]",Tte="[object Uint8ClampedArray]",Ate="[object Uint16Array]",Ste="[object Uint32Array]",Zc={};Zc[m6]=Zc[ate]=Zc[vte]=Zc[mte]=Zc[ite]=Zc[nte]=Zc[gte]=Zc[yte]=Zc[_te]=Zc[xte]=Zc[bte]=Zc[lte]=Zc[ute]=Zc[y6]=Zc[cte]=Zc[fte]=Zc[hte]=Zc[pte]=Zc[wte]=Zc[Tte]=Zc[Ate]=Zc[Ste]=!0;Zc[ote]=Zc[g6]=Zc[dte]=!1;function nw(le,me,Xe,Mt,rr,Nr){var xa,Ha=me&ete,Za=me&tte,un=me&rte;if(Xe&&(xa=rr?Xe(le,Mt,rr,Nr):Xe(le)),xa!==void 0)return xa;if(!ll(le))return le;var Ji=mo(le);if(Ji){if(xa=n6(le),!Ha)return Wc(le,xa)}else{var gn=Oh(le),wo=gn==g6||gn==ste;if(Kp(le))return Kb(le,Ha);if(gn==y6||gn==m6||wo&&!rr){if(xa=Za||wo?{}:rw(le),!Ha)return Za?QP(le,WP(xa,le)):$P(le,Yb(xa,le))}else{if(!Zc[gn])return rr?le:{};xa=f6(le,gn,Ha)}}Nr||(Nr=new yv);var ps=Nr.get(le);if(ps)return ps;Nr.set(le,xa),iw(le)?le.forEach(function(Ps){xa.add(nw(Ps,me,Xe,Ps,le,Nr))}):aw(le)&&le.forEach(function(Ps,Ml){xa.set(Ml,nw(Ps,me,Xe,Ml,le,Nr))});var Qn=un?Za?_y:o_:Za?yc:Gl,Ye=Ji?void 0:Qn(le);return zh(Ye||le,function(Ps,Ml){Ye&&(Ml=Ps,Ps=le[Ml]),vv(xa,Ml,nw(Ps,me,Xe,Ml,le,Nr))}),xa}var sp=nw;var Mte=4;function Ete(le){return sp(le,Mte)}var _6=Ete;var kte=1,Cte=4;function Lte(le){return sp(le,kte|Cte)}var x6=Lte;var Pte=1,Ite=4;function Rte(le,me){return me=typeof me=="function"?me:void 0,sp(le,Pte|Ite,me)}var b6=Rte;var Dte=4;function zte(le,me){return me=typeof me=="function"?me:void 0,sp(le,Dte,me)}var w6=zte;function Fte(){return new Ip(this.value(),this.__chain__)}var T6=Fte;function Ote(le){for(var me=-1,Xe=le==null?0:le.length,Mt=0,rr=[];++me<Xe;){var Nr=le[me];Nr&&(rr[Mt++]=Nr)}return rr}var A6=Ote;function Bte(){var le=arguments.length;if(!le)return[];for(var me=Array(le-1),Xe=arguments[0],Mt=le;Mt--;)me[Mt-1]=arguments[Mt];return Dp(mo(Xe)?Wc(Xe):[Xe],wu(me,1))}var S6=Bte;var Nte="__lodash_hash_undefined__";function Ute(le){return this.__data__.set(le,Nte),this}var M6=Ute;function jte(le){return this.__data__.has(le)}var E6=jte;function ow(le){var me=-1,Xe=le==null?0:le.length;for(this.__data__=new jg;++me<Xe;)this.add(le[me])}ow.prototype.add=ow.prototype.push=M6;ow.prototype.has=E6;var Dm=ow;function Vte(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt;)if(me(le[Xe],Xe,le))return!0;return!1}var wy=Vte;function qte(le,me){return le.has(me)}var Hv=qte;var Hte=1,Gte=2;function Wte(le,me,Xe,Mt,rr,Nr){var xa=Xe&Hte,Ha=le.length,Za=me.length;if(Ha!=Za&&!(xa&&Za>Ha))return!1;var un=Nr.get(le),Ji=Nr.get(me);if(un&&Ji)return un==me&&Ji==le;var gn=-1,wo=!0,ps=Xe&Gte?new Dm:void 0;for(Nr.set(le,me),Nr.set(me,le);++gn<Ha;){var Qn=le[gn],Ye=me[gn];if(Mt)var Ps=xa?Mt(Ye,Qn,gn,me,le,Nr):Mt(Qn,Ye,gn,le,me,Nr);if(Ps!==void 0){if(Ps)continue;wo=!1;break}if(ps){if(!wy(me,function(Ml,Ul){if(!Hv(ps,Ul)&&(Qn===Ml||rr(Qn,Ml,Xe,Mt,Nr)))return ps.push(Ul)})){wo=!1;break}}else if(!(Qn===Ye||rr(Qn,Ye,Xe,Mt,Nr))){wo=!1;break}}return Nr.delete(le),Nr.delete(me),wo}var sw=Wte;function Zte(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt,rr){Xe[++me]=[rr,Mt]}),Xe}var Ty=Zte;function Xte(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=Mt}),Xe}var zm=Xte;var Yte=1,Kte=2,Jte="[object Boolean]",$te="[object Date]",Qte="[object Error]",ere="[object Map]",tre="[object Number]",rre="[object RegExp]",are="[object Set]",ire="[object String]",nre="[object Symbol]",ore="[object ArrayBuffer]",sre="[object DataView]",k6=yf?yf.prototype:void 0,DA=k6?k6.valueOf:void 0;function lre(le,me,Xe,Mt,rr,Nr,xa){switch(Xe){case sre:if(le.byteLength!=me.byteLength||le.byteOffset!=me.byteOffset)return!1;le=le.buffer,me=me.buffer;case ore:return!(le.byteLength!=me.byteLength||!Nr(new xy(le),new xy(me)));case Jte:case $te:case tre:return qf(+le,+me);case Qte:return le.name==me.name&&le.message==me.message;case rre:case ire:return le==me+"";case ere:var Ha=Ty;case are:var Za=Mt&Yte;if(Ha||(Ha=zm),le.size!=me.size&&!Za)return!1;var un=xa.get(le);if(un)return un==me;Mt|=Kte,xa.set(le,me);var Ji=sw(Ha(le),Ha(me),Mt,rr,Nr,xa);return xa.delete(le),Ji;case nre:if(DA)return DA.call(le)==DA.call(me)}return!1}var C6=lre;var ure=1,cre=Object.prototype,fre=cre.hasOwnProperty;function hre(le,me,Xe,Mt,rr,Nr){var xa=Xe&ure,Ha=o_(le),Za=Ha.length,un=o_(me),Ji=un.length;if(Za!=Ji&&!xa)return!1;for(var gn=Za;gn--;){var wo=Ha[gn];if(!(xa?wo in me:fre.call(me,wo)))return!1}var ps=Nr.get(le),Qn=Nr.get(me);if(ps&&Qn)return ps==me&&Qn==le;var Ye=!0;Nr.set(le,me),Nr.set(me,le);for(var Ps=xa;++gn<Za;){wo=Ha[gn];var Ml=le[wo],Ul=me[wo];if(Mt)var Hf=xa?Mt(Ul,Ml,wo,me,le,Nr):Mt(Ml,Ul,wo,le,me,Nr);if(!(Hf===void 0?Ml===Ul||rr(Ml,Ul,Xe,Mt,Nr):Hf)){Ye=!1;break}Ps||(Ps=wo=="constructor")}if(Ye&&!Ps){var xh=le.constructor,Bp=me.constructor;xh!=Bp&&"constructor"in le&&"constructor"in me&&!(typeof xh=="function"&&xh instanceof xh&&typeof Bp=="function"&&Bp instanceof Bp)&&(Ye=!1)}return Nr.delete(le),Nr.delete(me),Ye}var L6=hre;var pre=1,P6="[object Arguments]",I6="[object Array]",lw="[object Object]",dre=Object.prototype,R6=dre.hasOwnProperty;function vre(le,me,Xe,Mt,rr,Nr){var xa=mo(le),Ha=mo(me),Za=xa?I6:Oh(le),un=Ha?I6:Oh(me);Za=Za==P6?lw:Za,un=un==P6?lw:un;var Ji=Za==lw,gn=un==lw,wo=Za==un;if(wo&&Kp(le)){if(!Kp(me))return!1;xa=!0,Ji=!1}if(wo&&!Ji)return Nr||(Nr=new yv),xa||Ed(le)?sw(le,me,Xe,Mt,rr,Nr):C6(le,me,Za,Xe,Mt,rr,Nr);if(!(Xe&pre)){var ps=Ji&&R6.call(le,"__wrapped__"),Qn=gn&&R6.call(me,"__wrapped__");if(ps||Qn){var Ye=ps?le.value():le,Ps=Qn?me.value():me;return Nr||(Nr=new yv),rr(Ye,Ps,Xe,Mt,Nr)}}return wo?(Nr||(Nr=new yv),L6(le,me,Xe,Mt,rr,Nr)):!1}var D6=vre;function z6(le,me,Xe,Mt,rr){return le===me?!0:le==null||me==null||!ul(le)&&!ul(me)?le!==le&&me!==me:D6(le,me,Xe,Mt,z6,rr)}var Fm=z6;var mre=1,gre=2;function yre(le,me,Xe,Mt){var rr=Xe.length,Nr=rr,xa=!Mt;if(le==null)return!Nr;for(le=Object(le);rr--;){var Ha=Xe[rr];if(xa&&Ha[2]?Ha[1]!==le[Ha[0]]:!(Ha[0]in le))return!1}for(;++rr<Nr;){Ha=Xe[rr];var Za=Ha[0],un=le[Za],Ji=Ha[1];if(xa&&Ha[2]){if(un===void 0&&!(Za in le))return!1}else{var gn=new yv;if(Mt)var wo=Mt(un,Ji,Za,le,me,gn);if(!(wo===void 0?Fm(Ji,un,mre|gre,Mt,gn):wo))return!1}}return!0}var Ay=yre;function _re(le){return le===le&&!ll(le)}var uw=_re;function xre(le){for(var me=Gl(le),Xe=me.length;Xe--;){var Mt=me[Xe],rr=le[Mt];me[Xe]=[Mt,rr,uw(rr)]}return me}var Sy=xre;function bre(le,me){return function(Xe){return Xe==null?!1:Xe[le]===me&&(me!==void 0||le in Object(Xe))}}var cw=bre;function wre(le){var me=Sy(le);return me.length==1&&me[0][2]?cw(me[0][0],me[0][1]):function(Xe){return Xe===le||Ay(Xe,le,me)}}var fw=wre;function Tre(le,me){return le!=null&&me in Object(le)}var F6=Tre;function Are(le,me,Xe){me=Rp(me,le);for(var Mt=-1,rr=me.length,Nr=!1;++Mt<rr;){var xa=yh(me[Mt]);if(!(Nr=le!=null&&Xe(le,xa)))break;le=le[xa]}return Nr||++Mt!=rr?Nr:(rr=le==null?0:le.length,!!rr&&Mm(rr)&&rp(xa,rr)&&(mo(le)||dd(le)))}var hw=Are;function Sre(le,me){return le!=null&&hw(le,me,F6)}var My=Sre;var Mre=1,Ere=2;function kre(le,me){return iy(le)&&uw(me)?cw(yh(le),me):function(Xe){var Mt=ly(Xe,le);return Mt===void 0&&Mt===me?My(Xe,le):Fm(me,Mt,Mre|Ere)}}var pw=kre;function Cre(le){return function(me){return me?.[le]}}var Ey=Cre;function Lre(le){return function(me){return ud(me,le)}}var O6=Lre;function Pre(le){return iy(le)?Ey(yh(le)):O6(le)}var dw=Pre;function Ire(le){return typeof le=="function"?le:le==null?ic:typeof le=="object"?mo(le)?pw(le[0],le[1]):fw(le):dw(le)}var io=Ire;var Rre="Expected a function";function Dre(le){var me=le==null?0:le.length,Xe=io;return le=me?nl(le,function(Mt){if(typeof Mt[1]!="function")throw new TypeError(Rre);return[Xe(Mt[0]),Mt[1]]}):[],ko(function(Mt){for(var rr=-1;++rr<me;){var Nr=le[rr];if(sf(Nr[0],this,Mt))return sf(Nr[1],this,Mt)}})}var B6=Dre;function zre(le,me,Xe){var Mt=Xe.length;if(le==null)return!Mt;for(le=Object(le);Mt--;){var rr=Xe[Mt],Nr=me[rr],xa=le[rr];if(xa===void 0&&!(rr in le)||!Nr(xa))return!1}return!0}var vw=zre;function Fre(le){var me=Gl(le);return function(Xe){return vw(Xe,le,me)}}var N6=Fre;var Ore=1;function Bre(le){return N6(sp(le,Ore))}var U6=Bre;function Nre(le,me){return me==null||vw(le,me,Gl(me))}var j6=Nre;function Ure(le,me,Xe,Mt){for(var rr=-1,Nr=le==null?0:le.length;++rr<Nr;){var xa=le[rr];me(Mt,xa,Xe(xa),le)}return Mt}var V6=Ure;function jre(le){return function(me,Xe,Mt){for(var rr=-1,Nr=Object(me),xa=Mt(me),Ha=xa.length;Ha--;){var Za=xa[le?Ha:++rr];if(Xe(Nr[Za],Za,Nr)===!1)break}return me}}var mw=jre;var Vre=mw(),ky=Vre;function qre(le,me){return le&&ky(le,me,Gl)}var lp=qre;function Hre(le,me){return function(Xe,Mt){if(Xe==null)return Xe;if(!gc(Xe))return le(Xe,Mt);for(var rr=Xe.length,Nr=me?rr:-1,xa=Object(Xe);(me?Nr--:++Nr<rr)&&Mt(xa[Nr],Nr,xa)!==!1;);return Xe}}var gw=Hre;var Gre=gw(lp),Op=Gre;function Wre(le,me,Xe,Mt){return Op(le,function(rr,Nr,xa){me(Mt,rr,Xe(rr),xa)}),Mt}var q6=Wre;function Zre(le,me){return function(Xe,Mt){var rr=mo(Xe)?V6:q6,Nr=me?me():{};return rr(Xe,le,io(Mt,2),Nr)}}var Om=Zre;var Xre=Object.prototype,Yre=Xre.hasOwnProperty,Kre=Om(function(le,me,Xe){Yre.call(le,Xe)?++le[Xe]:ip(le,Xe,1)}),H6=Kre;function Jre(le,me){var Xe=Td(le);return me==null?Xe:Yb(Xe,me)}var G6=Jre;var $re=8;function zA(le,me,Xe){me=Xe?void 0:me;var Mt=ap(le,$re,void 0,void 0,void 0,void 0,void 0,me);return Mt.placeholder=zA.placeholder,Mt}zA.placeholder={};var W6=zA;var Qre=16;function FA(le,me,Xe){me=Xe?void 0:me;var Mt=ap(le,Qre,void 0,void 0,void 0,void 0,void 0,me);return Mt.placeholder=FA.placeholder,Mt}FA.placeholder={};var Z6=FA;var eae=function(){return Kl.Date.now()},Cy=eae;var tae="Expected a function",rae=Math.max,aae=Math.min;function iae(le,me,Xe){var Mt,rr,Nr,xa,Ha,Za,un=0,Ji=!1,gn=!1,wo=!0;if(typeof le!="function")throw new TypeError(tae);me=mh(me)||0,ll(Xe)&&(Ji=!!Xe.leading,gn="maxWait"in Xe,Nr=gn?rae(mh(Xe.maxWait)||0,me):Nr,wo="trailing"in Xe?!!Xe.trailing:wo);function ps(_n){var $p=Mt,Np=rr;return Mt=rr=void 0,un=_n,xa=le.apply(Np,$p),xa}function Qn(_n){return un=_n,Ha=setTimeout(Ml,me),Ji?ps(_n):xa}function Ye(_n){var $p=_n-Za,Np=_n-un,Zy=me-$p;return gn?aae(Zy,Nr-Np):Zy}function Ps(_n){var $p=_n-Za,Np=_n-un;return Za===void 0||$p>=me||$p<0||gn&&Np>=Nr}function Ml(){var _n=Cy();if(Ps(_n))return Ul(_n);Ha=setTimeout(Ml,Ye(_n))}function Ul(_n){return Ha=void 0,wo&&Mt?ps(_n):(Mt=rr=void 0,xa)}function Hf(){Ha!==void 0&&clearTimeout(Ha),un=0,Mt=Za=rr=Ha=void 0}function xh(){return Ha===void 0?xa:Ul(Cy())}function Bp(){var _n=Cy(),$p=Ps(_n);if(Mt=arguments,rr=this,Za=_n,$p){if(Ha===void 0)return Qn(Za);if(gn)return clearTimeout(Ha),Ha=setTimeout(Ml,me),ps(Za)}return Ha===void 0&&(Ha=setTimeout(Ml,me)),xa}return Bp.cancel=Hf,Bp.flush=xh,Bp}var yw=iae;function nae(le,me){return le==null||le!==le?me:le}var X6=nae;var Y6=Object.prototype,oae=Y6.hasOwnProperty,sae=ko(function(le,me){le=Object(le);var Xe=-1,Mt=me.length,rr=Mt>2?me[2]:void 0;for(rr&&nc(me[0],me[1],rr)&&(Mt=1);++Xe<Mt;)for(var Nr=me[Xe],xa=yc(Nr),Ha=-1,Za=xa.length;++Ha<Za;){var un=xa[Ha],Ji=le[un];(Ji===void 0||qf(Ji,Y6[un])&&!oae.call(le,un))&&(le[un]=Nr[un])}return le}),K6=sae;function lae(le,me,Xe){(Xe!==void 0&&!qf(le[me],Xe)||Xe===void 0&&!(me in le))&&ip(le,me,Xe)}var s_=lae;function uae(le){return ul(le)&&gc(le)}var eu=uae;function cae(le,me){if(!(me==="constructor"&&typeof le[me]=="function")&&me!="__proto__")return le[me]}var l_=cae;function fae(le){return gh(le,yc(le))}var _w=fae;function hae(le,me,Xe,Mt,rr,Nr,xa){var Ha=l_(le,Xe),Za=l_(me,Xe),un=xa.get(Za);if(un){s_(le,Xe,un);return}var Ji=Nr?Nr(Ha,Za,Xe+"",le,me,xa):void 0,gn=Ji===void 0;if(gn){var wo=mo(Za),ps=!wo&&Kp(Za),Qn=!wo&&!ps&&Ed(Za);Ji=Za,wo||ps||Qn?mo(Ha)?Ji=Ha:eu(Ha)?Ji=Wc(Ha):ps?(gn=!1,Ji=Kb(Za,!0)):Qn?(gn=!1,Ji=tw(Za,!0)):Ji=[]:gv(Za)||dd(Za)?(Ji=Ha,dd(Ha)?Ji=_w(Ha):(!ll(Ha)||tp(Ha))&&(Ji=rw(Za))):gn=!1}gn&&(xa.set(Za,Ji),rr(Ji,Za,Mt,Nr,xa),xa.delete(Za)),s_(le,Xe,Ji)}var J6=hae;function $6(le,me,Xe,Mt,rr){le!==me&&ky(me,function(Nr,xa){if(rr||(rr=new yv),ll(Nr))J6(le,me,xa,Xe,$6,Mt,rr);else{var Ha=Mt?Mt(l_(le,xa),Nr,xa+"",le,me,rr):void 0;Ha===void 0&&(Ha=Nr),s_(le,xa,Ha)}},yc)}var Ly=$6;function Q6(le,me,Xe,Mt,rr,Nr){return ll(le)&&ll(me)&&(Nr.set(me,le),Ly(le,me,void 0,Q6,Nr),Nr.delete(me)),le}var eI=Q6;var pae=Md(function(le,me,Xe,Mt){Ly(le,me,Xe,Mt)}),xw=pae;var dae=ko(function(le){return le.push(void 0,eI),sf(xw,void 0,le)}),tI=dae;var vae="Expected a function";function mae(le,me,Xe){if(typeof le!="function")throw new TypeError(vae);return setTimeout(function(){le.apply(void 0,Xe)},me)}var bw=mae;var gae=ko(function(le,me){return bw(le,1,me)}),rI=gae;var yae=ko(function(le,me,Xe){return bw(le,mh(me)||0,Xe)}),aI=yae;function _ae(le,me,Xe){for(var Mt=-1,rr=le==null?0:le.length;++Mt<rr;)if(Xe(me,le[Mt]))return!0;return!1}var Py=_ae;var xae=200;function bae(le,me,Xe,Mt){var rr=-1,Nr=Sm,xa=!0,Ha=le.length,Za=[],un=me.length;if(!Ha)return Za;Xe&&(me=nl(me,uf(Xe))),Mt?(Nr=Py,xa=!1):me.length>=xae&&(Nr=Hv,xa=!1,me=new Dm(me));e:for(;++rr<Ha;){var Ji=le[rr],gn=Xe==null?Ji:Xe(Ji);if(Ji=Mt||Ji!==0?Ji:0,xa&&gn===gn){for(var wo=un;wo--;)if(me[wo]===gn)continue e;Za.push(Ji)}else Nr(me,gn,Mt)||Za.push(Ji)}return Za}var _v=bae;var wae=ko(function(le,me){return eu(le)?_v(le,wu(me,1,eu,!0)):[]}),iI=wae;function Tae(le){var me=le==null?0:le.length;return me?le[me-1]:void 0}var cf=Tae;var Aae=ko(function(le,me){var Xe=cf(me);return eu(Xe)&&(Xe=void 0),eu(le)?_v(le,wu(me,1,eu,!0),io(Xe,2)):[]}),nI=Aae;var Sae=ko(function(le,me){var Xe=cf(me);return eu(Xe)&&(Xe=void 0),eu(le)?_v(le,wu(me,1,eu,!0),void 0,Xe):[]}),oI=Sae;var Mae=bm(function(le,me){return le/me},1),sI=Mae;function Eae(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),Lf(le,me<0?0:me,Mt)):[]}var lI=Eae;function kae(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,0,me<0?0:me)):[]}var uI=kae;function Cae(le,me,Xe,Mt){for(var rr=le.length,Nr=Mt?rr:-1;(Mt?Nr--:++Nr<rr)&&me(le[Nr],Nr,le););return Xe?Lf(le,Mt?0:Nr,Mt?Nr+1:rr):Lf(le,Mt?Nr+1:0,Mt?rr:Nr)}var Bm=Cae;function Lae(le,me){return le&&le.length?Bm(le,io(me,3),!0,!0):[]}var cI=Lae;function Pae(le,me){return le&&le.length?Bm(le,io(me,3),!0):[]}var fI=Pae;function Iae(le){return typeof le=="function"?le:ic}var _h=Iae;function Rae(le,me){var Xe=mo(le)?zh:Op;return Xe(le,_h(me))}var u_=Rae;function Dae(le,me){for(var Xe=le==null?0:le.length;Xe--&&me(le[Xe],Xe,le)!==!1;);return le}var hI=Dae;var zae=mw(!0),ww=zae;function Fae(le,me){return le&&ww(le,me,Gl)}var Iy=Fae;var Oae=gw(Iy,!0),Tw=Oae;function Bae(le,me){var Xe=mo(le)?hI:Tw;return Xe(le,_h(me))}var c_=Bae;function Nae(le,me,Xe){le=ws(le),me=Vf(me);var Mt=le.length;Xe=Xe===void 0?Mt:cd(Eo(Xe),0,Mt);var rr=Xe;return Xe-=me.length,Xe>=0&&le.slice(Xe,rr)==me}var pI=Nae;function Uae(le,me){return nl(me,function(Xe){return[Xe,le[Xe]]})}var dI=Uae;function jae(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=[Mt,Mt]}),Xe}var vI=jae;var Vae="[object Map]",qae="[object Set]";function Hae(le){return function(me){var Xe=Oh(me);return Xe==Vae?Ty(me):Xe==qae?vI(me):dI(me,le(me))}}var Aw=Hae;var Gae=Aw(Gl),f_=Gae;var Wae=Aw(yc),h_=Wae;var Zae={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Xae=py(Zae),mI=Xae;var gI=/[&<>"']/g,Yae=RegExp(gI.source);function Kae(le){return le=ws(le),le&&Yae.test(le)?le.replace(gI,mI):le}var Sw=Kae;var yI=/[\\^$.*+?()[\]{}|]/g,Jae=RegExp(yI.source);function $ae(le){return le=ws(le),le&&Jae.test(le)?le.replace(yI,"\\$&"):le}var _I=$ae;function Qae(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt;)if(!me(le[Xe],Xe,le))return!1;return!0}var Mw=Qae;function eie(le,me){var Xe=!0;return Op(le,function(Mt,rr,Nr){return Xe=!!me(Mt,rr,Nr),Xe}),Xe}var xI=eie;function tie(le,me,Xe){var Mt=mo(le)?Mw:xI;return Xe&&nc(le,me,Xe)&&(me=void 0),Mt(le,io(me,3))}var bI=tie;var rie=4294967295;function aie(le){return le?cd(Eo(le),0,rie):0}var Ew=aie;function iie(le,me,Xe,Mt){var rr=le.length;for(Xe=Eo(Xe),Xe<0&&(Xe=-Xe>rr?0:rr+Xe),Mt=Mt===void 0||Mt>rr?rr:Eo(Mt),Mt<0&&(Mt+=rr),Mt=Xe>Mt?0:Ew(Mt);Xe<Mt;)le[Xe++]=me;return le}var wI=iie;function nie(le,me,Xe,Mt){var rr=le==null?0:le.length;return rr?(Xe&&typeof Xe!="number"&&nc(le,me,Xe)&&(Xe=0,Mt=rr),wI(le,me,Xe,Mt)):[]}var TI=nie;function oie(le,me){var Xe=[];return Op(le,function(Mt,rr,Nr){me(Mt,rr,Nr)&&Xe.push(Mt)}),Xe}var kw=oie;function sie(le,me){var Xe=mo(le)?Fp:kw;return Xe(le,io(me,3))}var AI=sie;function lie(le){return function(me,Xe,Mt){var rr=Object(me);if(!gc(me)){var Nr=io(Xe,3);me=Gl(me),Xe=function(Ha){return Nr(rr[Ha],Ha,rr)}}var xa=le(me,Xe,Mt);return xa>-1?rr[Nr?me[xa]:xa]:void 0}}var Cw=lie;var uie=Math.max;function cie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=uie(Mt+rr,0)),Am(le,io(me,3),rr)}var Lw=cie;var fie=Cw(Lw),SI=fie;function hie(le,me,Xe){var Mt;return Xe(le,function(rr,Nr,xa){if(me(rr,Nr,xa))return Mt=Nr,!1}),Mt}var Pw=hie;function pie(le,me){return Pw(le,io(me,3),lp)}var MI=pie;var die=Math.max,vie=Math.min;function mie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt-1;return Xe!==void 0&&(rr=Eo(Xe),rr=Xe<0?die(Mt+rr,0):vie(rr,Mt-1)),Am(le,io(me,3),rr,!0)}var Iw=mie;var gie=Cw(Iw),EI=gie;function yie(le,me){return Pw(le,io(me,3),Iy)}var kI=yie;function _ie(le){return le&&le.length?le[0]:void 0}var p_=_ie;function xie(le,me){var Xe=-1,Mt=gc(le)?Array(le.length):[];return Op(le,function(rr,Nr,xa){Mt[++Xe]=me(rr,Nr,xa)}),Mt}var Rw=xie;function bie(le,me){var Xe=mo(le)?nl:Rw;return Xe(le,io(me,3))}var Nm=bie;function wie(le,me){return wu(Nm(le,me),1)}var CI=wie;var Tie=1/0;function Aie(le,me){return wu(Nm(le,me),Tie)}var LI=Aie;function Sie(le,me,Xe){return Xe=Xe===void 0?1:Eo(Xe),wu(Nm(le,me),Xe)}var PI=Sie;var Mie=1/0;function Eie(le){var me=le==null?0:le.length;return me?wu(le,Mie):[]}var II=Eie;function kie(le,me){var Xe=le==null?0:le.length;return Xe?(me=me===void 0?1:Eo(me),wu(le,me)):[]}var RI=kie;var Cie=512;function Lie(le){return ap(le,Cie)}var DI=Lie;var Pie=vy("floor"),zI=Pie;var Iie="Expected a function",Rie=8,Die=32,zie=128,Fie=256;function Oie(le){return op(function(me){var Xe=me.length,Mt=Xe,rr=Ip.prototype.thru;for(le&&me.reverse();Mt--;){var Nr=me[Mt];if(typeof Nr!="function")throw new TypeError(Iie);if(rr&&!xa&&K0(Nr)=="wrapper")var xa=new Ip([],!0)}for(Mt=xa?Mt:Xe;++Mt<Xe;){Nr=me[Mt];var Ha=K0(Nr),Za=Ha=="wrapper"?Y0(Nr):void 0;Za&&r_(Za[0])&&Za[1]==(zie|Rie|Die|Fie)&&!Za[4].length&&Za[9]==1?xa=xa[K0(Za[0])].apply(xa,Za[3]):xa=Nr.length==1&&r_(Nr)?xa[Ha]():xa.thru(Nr)}return function(){var un=arguments,Ji=un[0];if(xa&&un.length==1&&mo(Ji))return xa.plant(Ji).value();for(var gn=0,wo=Xe?me[gn].apply(this,un):Ji;++gn<Xe;)wo=me[gn].call(this,wo);return wo}})}var Dw=Oie;var Bie=Dw(),FI=Bie;var Nie=Dw(!0),OI=Nie;function Uie(le,me){return le==null?le:ky(le,_h(me),yc)}var BI=Uie;function jie(le,me){return le==null?le:ww(le,_h(me),yc)}var NI=jie;function Vie(le,me){return le&&lp(le,_h(me))}var UI=Vie;function qie(le,me){return le&&Iy(le,_h(me))}var jI=qie;function Hie(le){for(var me=-1,Xe=le==null?0:le.length,Mt={};++me<Xe;){var rr=le[me];Mt[rr[0]]=rr[1]}return Mt}var VI=Hie;function Gie(le,me){return Fp(me,function(Xe){return tp(le[Xe])})}var Um=Gie;function Wie(le){return le==null?[]:Um(le,Gl(le))}var qI=Wie;function Zie(le){return le==null?[]:Um(le,yc(le))}var HI=Zie;var Xie=Object.prototype,Yie=Xie.hasOwnProperty,Kie=Om(function(le,me,Xe){Yie.call(le,Xe)?le[Xe].push(me):ip(le,Xe,[me])}),GI=Kie;function Jie(le,me){return le>me}var Ry=Jie;function $ie(le){return function(me,Xe){return typeof me=="string"&&typeof Xe=="string"||(me=mh(me),Xe=mh(Xe)),le(me,Xe)}}var jm=$ie;var Qie=jm(Ry),WI=Qie;var ene=jm(function(le,me){return le>=me}),ZI=ene;var tne=Object.prototype,rne=tne.hasOwnProperty;function ane(le,me){return le!=null&&rne.call(le,me)}var XI=ane;function ine(le,me){return le!=null&&hw(le,me,XI)}var YI=ine;var nne=Math.max,one=Math.min;function sne(le,me,Xe){return le>=one(me,Xe)&&le<nne(me,Xe)}var KI=sne;function lne(le,me,Xe){return me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),le=mh(le),KI(le,me,Xe)}var JI=lne;var une="[object String]";function cne(le){return typeof le=="string"||!mo(le)&&ul(le)&&ac(le)==une}var Vm=cne;function fne(le,me){return nl(me,function(Xe){return le[Xe]})}var Dy=fne;function hne(le){return le==null?[]:Dy(le,Gl(le))}var Ld=hne;var pne=Math.max;function dne(le,me,Xe,Mt){le=gc(le)?le:Ld(le),Xe=Xe&&!Mt?Eo(Xe):0;var rr=le.length;return Xe<0&&(Xe=pne(rr+Xe,0)),Vm(le)?Xe<=rr&&le.indexOf(me,Xe)>-1:!!rr&&Ad(le,me,Xe)>-1}var $I=dne;var vne=Math.max;function mne(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=vne(Mt+rr,0)),Ad(le,me,rr)}var QI=mne;function gne(le){var me=le==null?0:le.length;return me?Lf(le,0,-1):[]}var eR=gne;var yne=Math.min;function _ne(le,me,Xe){for(var Mt=Xe?Py:Sm,rr=le[0].length,Nr=le.length,xa=Nr,Ha=Array(Nr),Za=1/0,un=[];xa--;){var Ji=le[xa];xa&&me&&(Ji=nl(Ji,uf(me))),Za=yne(Ji.length,Za),Ha[xa]=!Xe&&(me||rr>=120&&Ji.length>=120)?new Dm(xa&&Ji):void 0}Ji=le[0];var gn=-1,wo=Ha[0];e:for(;++gn<rr&&un.length<Za;){var ps=Ji[gn],Qn=me?me(ps):ps;if(ps=Xe||ps!==0?ps:0,!(wo?Hv(wo,Qn):Mt(un,Qn,Xe))){for(xa=Nr;--xa;){var Ye=Ha[xa];if(!(Ye?Hv(Ye,Qn):Mt(le[xa],Qn,Xe)))continue e}wo&&wo.push(Qn),un.push(ps)}}return un}var zy=_ne;function xne(le){return eu(le)?le:[]}var Fy=xne;var bne=ko(function(le){var me=nl(le,Fy);return me.length&&me[0]===le[0]?zy(me):[]}),tR=bne;var wne=ko(function(le){var me=cf(le),Xe=nl(le,Fy);return me===cf(Xe)?me=void 0:Xe.pop(),Xe.length&&Xe[0]===le[0]?zy(Xe,io(me,2)):[]}),rR=wne;var Tne=ko(function(le){var me=cf(le),Xe=nl(le,Fy);return me=typeof me=="function"?me:void 0,me&&Xe.pop(),Xe.length&&Xe[0]===le[0]?zy(Xe,void 0,me):[]}),aR=Tne;function Ane(le,me,Xe,Mt){return lp(le,function(rr,Nr,xa){me(Mt,Xe(rr),Nr,xa)}),Mt}var iR=Ane;function Sne(le,me){return function(Xe,Mt){return iR(Xe,le,me(Mt),{})}}var zw=Sne;var Mne=Object.prototype,Ene=Mne.toString,kne=zw(function(le,me,Xe){me!=null&&typeof me.toString!="function"&&(me=Ene.call(me)),le[me]=Xe},J0(ic)),nR=kne;var oR=Object.prototype,Cne=oR.hasOwnProperty,Lne=oR.toString,Pne=zw(function(le,me,Xe){me!=null&&typeof me.toString!="function"&&(me=Lne.call(me)),Cne.call(le,me)?le[me].push(Xe):le[me]=[Xe]},io),sR=Pne;function Ine(le,me){return me.length<2?le:ud(le,Lf(me,0,-1))}var Fw=Ine;function Rne(le,me,Xe){me=Rp(me,le),le=Fw(le,me);var Mt=le==null?le:le[yh(cf(me))];return Mt==null?void 0:sf(Mt,le,Xe)}var xv=Rne;var Dne=ko(xv),lR=Dne;var zne=ko(function(le,me,Xe){var Mt=-1,rr=typeof me=="function",Nr=gc(le)?Array(le.length):[];return Op(le,function(xa){Nr[++Mt]=rr?sf(me,xa,Xe):xv(xa,me,Xe)}),Nr}),uR=zne;var Fne="[object ArrayBuffer]";function One(le){return ul(le)&&ac(le)==Fne}var cR=One;var fR=np&&np.isArrayBuffer,Bne=fR?uf(fR):cR,hR=Bne;var Nne="[object Boolean]";function Une(le){return le===!0||le===!1||ul(le)&&ac(le)==Nne}var pR=Une;var jne="[object Date]";function Vne(le){return ul(le)&&ac(le)==jne}var dR=Vne;var vR=np&&np.isDate,qne=vR?uf(vR):dR,mR=qne;function Hne(le){return ul(le)&&le.nodeType===1&&!gv(le)}var gR=Hne;var Gne="[object Map]",Wne="[object Set]",Zne=Object.prototype,Xne=Zne.hasOwnProperty;function Yne(le){if(le==null)return!0;if(gc(le)&&(mo(le)||typeof le=="string"||typeof le.splice=="function"||Kp(le)||Ed(le)||dd(le)))return!le.length;var me=Oh(le);if(me==Gne||me==Wne)return!le.size;if(mv(le))return!ay(le).length;for(var Xe in le)if(Xne.call(le,Xe))return!1;return!0}var yR=Yne;function Kne(le,me){return Fm(le,me)}var _R=Kne;function Jne(le,me,Xe){Xe=typeof Xe=="function"?Xe:void 0;var Mt=Xe?Xe(le,me):void 0;return Mt===void 0?Fm(le,me,void 0,Xe):!!Mt}var xR=Jne;var $ne=Kl.isFinite;function Qne(le){return typeof le=="number"&&$ne(le)}var bR=Qne;function eoe(le){return typeof le=="number"&&le==Eo(le)}var Ow=eoe;function toe(le,me){return le===me||Ay(le,me,Sy(me))}var wR=toe;function roe(le,me,Xe){return Xe=typeof Xe=="function"?Xe:void 0,Ay(le,me,Sy(me),Xe)}var TR=roe;var aoe="[object Number]";function ioe(le){return typeof le=="number"||ul(le)&&ac(le)==aoe}var Bw=ioe;function noe(le){return Bw(le)&&le!=+le}var AR=noe;var ooe=W0?tp:ry,SR=ooe;var soe="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.";function loe(le){if(SR(le))throw new Error(soe);return bb(le)}var MR=loe;function uoe(le){return le==null}var ER=uoe;function coe(le){return le===null}var kR=coe;var foe="[object RegExp]";function hoe(le){return ul(le)&&ac(le)==foe}var CR=hoe;var LR=np&&np.isRegExp,poe=LR?uf(LR):CR,Oy=poe;var PR=9007199254740991;function doe(le){return Ow(le)&&le>=-PR&&le<=PR}var IR=doe;function voe(le){return le===void 0}var RR=voe;var moe="[object WeakMap]";function goe(le){return ul(le)&&Oh(le)==moe}var DR=goe;var yoe="[object WeakSet]";function _oe(le){return ul(le)&&ac(le)==yoe}var zR=_oe;var xoe=1;function boe(le){return io(typeof le=="function"?le:sp(le,xoe))}var FR=boe;var woe=Array.prototype,Toe=woe.join;function Aoe(le,me){return le==null?"":Toe.call(le,me)}var OR=Aoe;var Soe=Cd(function(le,me,Xe){return le+(Xe?"-":"")+me.toLowerCase()}),BR=Soe;var Moe=Om(function(le,me,Xe){ip(le,Xe,me)}),NR=Moe;function Eoe(le,me,Xe){for(var Mt=Xe+1;Mt--;)if(le[Mt]===me)return Mt;return Mt}var UR=Eoe;var koe=Math.max,Coe=Math.min;function Loe(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt;return Xe!==void 0&&(rr=Eo(Xe),rr=rr<0?koe(Mt+rr,0):Coe(rr,Mt-1)),me===me?UR(le,me,rr):Am(le,Pb,rr,!0)}var jR=Loe;var Poe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toLowerCase()}),VR=Poe;var Ioe=Hb("toLowerCase"),qR=Ioe;function Roe(le,me){return le<me}var By=Roe;var Doe=jm(By),HR=Doe;var zoe=jm(function(le,me){return le<=me}),GR=zoe;function Foe(le,me){var Xe={};return me=io(me,3),lp(le,function(Mt,rr,Nr){ip(Xe,me(Mt,rr,Nr),Mt)}),Xe}var WR=Foe;function Ooe(le,me){var Xe={};return me=io(me,3),lp(le,function(Mt,rr,Nr){ip(Xe,rr,me(Mt,rr,Nr))}),Xe}var ZR=Ooe;var Boe=1;function Noe(le){return fw(sp(le,Boe))}var XR=Noe;var Uoe=1;function joe(le,me){return pw(le,sp(me,Uoe))}var YR=joe;function Voe(le,me,Xe){for(var Mt=-1,rr=le.length;++Mt<rr;){var Nr=le[Mt],xa=me(Nr);if(xa!=null&&(Ha===void 0?xa===xa&&!_f(xa):Xe(xa,Ha)))var Ha=xa,Za=Nr}return Za}var qm=Voe;function qoe(le){return le&&le.length?qm(le,ic,Ry):void 0}var KR=qoe;function Hoe(le,me){return le&&le.length?qm(le,io(me,2),Ry):void 0}var JR=Hoe;function Goe(le,me){for(var Xe,Mt=-1,rr=le.length;++Mt<rr;){var Nr=me(le[Mt]);Nr!==void 0&&(Xe=Xe===void 0?Nr:Xe+Nr)}return Xe}var Ny=Goe;var Woe=NaN;function Zoe(le,me){var Xe=le==null?0:le.length;return Xe?Ny(le,me)/Xe:Woe}var Nw=Zoe;function Xoe(le){return Nw(le,ic)}var $R=Xoe;function Yoe(le,me){return Nw(le,io(me,2))}var QR=Yoe;var Koe=Md(function(le,me,Xe){Ly(le,me,Xe)}),eD=Koe;var Joe=ko(function(le,me){return function(Xe){return xv(Xe,le,me)}}),tD=Joe;var $oe=ko(function(le,me){return function(Xe){return xv(le,Xe,me)}}),rD=$oe;function Qoe(le){return le&&le.length?qm(le,ic,By):void 0}var aD=Qoe;function ese(le,me){return le&&le.length?qm(le,io(me,2),By):void 0}var iD=ese;function tse(le,me,Xe){var Mt=Gl(me),rr=Um(me,Mt),Nr=!(ll(Xe)&&"chain"in Xe)||!!Xe.chain,xa=tp(le);return zh(rr,function(Ha){var Za=me[Ha];le[Ha]=Za,xa&&(le.prototype[Ha]=function(){var un=this.__chain__;if(Nr||un){var Ji=le(this.__wrapped__),gn=Ji.__actions__=Wc(this.__actions__);return gn.push({func:Za,args:arguments,thisArg:le}),Ji.__chain__=un,Ji}return Za.apply(le,Dp([this.value()],arguments))})}),le}var Uw=tse;var rse=bm(function(le,me){return le*me},1),nD=rse;var ase="Expected a function";function ise(le){if(typeof le!="function")throw new TypeError(ase);return function(){var me=arguments;switch(me.length){case 0:return!le.call(this);case 1:return!le.call(this,me[0]);case 2:return!le.call(this,me[0],me[1]);case 3:return!le.call(this,me[0],me[1],me[2])}return!le.apply(this,me)}}var Gv=ise;function nse(le){for(var me,Xe=[];!(me=le.next()).done;)Xe.push(me.value);return Xe}var oD=nse;var ose="[object Map]",sse="[object Set]",OA=yf?yf.iterator:void 0;function lse(le){if(!le)return[];if(gc(le))return Vm(le)?Fh(le):Wc(le);if(OA&&le[OA])return oD(le[OA]());var me=Oh(le),Xe=me==ose?Ty:me==sse?zm:Ld;return Xe(le)}var jw=lse;function use(){this.__values__===void 0&&(this.__values__=jw(this.value()));var le=this.__index__>=this.__values__.length,me=le?void 0:this.__values__[this.__index__++];return{done:le,value:me}}var sD=use;function cse(le,me){var Xe=le.length;if(Xe)return me+=me<0?Xe:0,rp(me,Xe)?le[me]:void 0}var Vw=cse;function fse(le,me){return le&&le.length?Vw(le,Eo(me)):void 0}var lD=fse;function hse(le){return le=Eo(le),ko(function(me){return Vw(me,le)})}var uD=hse;function pse(le,me){return me=Rp(me,le),le=Fw(le,me),le==null||delete le[yh(cf(me))]}var Uy=pse;function dse(le){return gv(le)?void 0:le}var cD=dse;var vse=1,mse=2,gse=4,yse=op(function(le,me){var Xe={};if(le==null)return Xe;var Mt=!1;me=nl(me,function(Nr){return Nr=Rp(Nr,le),Mt||(Mt=Nr.length>1),Nr}),gh(le,_y(le),Xe),Mt&&(Xe=sp(Xe,vse|mse|gse,cD));for(var rr=me.length;rr--;)Uy(Xe,me[rr]);return Xe}),fD=yse;function _se(le,me,Xe,Mt){if(!ll(le))return le;me=Rp(me,le);for(var rr=-1,Nr=me.length,xa=Nr-1,Ha=le;Ha!=null&&++rr<Nr;){var Za=yh(me[rr]),un=Xe;if(Za==="__proto__"||Za==="constructor"||Za==="prototype")return le;if(rr!=xa){var Ji=Ha[Za];un=Mt?Mt(Ji,Za,Ha):void 0,un===void 0&&(un=ll(Ji)?Ji:rp(me[rr+1])?[]:{})}vv(Ha,Za,un),Ha=Ha[Za]}return le}var bv=_se;function xse(le,me,Xe){for(var Mt=-1,rr=me.length,Nr={};++Mt<rr;){var xa=me[Mt],Ha=ud(le,xa);Xe(Ha,xa)&&bv(Nr,Rp(xa,le),Ha)}return Nr}var qw=xse;function bse(le,me){if(le==null)return{};var Xe=nl(_y(le),function(Mt){return[Mt]});return me=io(me),qw(le,Xe,function(Mt,rr){return me(Mt,rr[0])})}var Hw=bse;function wse(le,me){return Hw(le,Gv(io(me)))}var hD=wse;function Tse(le){return Vb(2,le)}var pD=Tse;function Ase(le,me){var Xe=le.length;for(le.sort(me);Xe--;)le[Xe]=le[Xe].value;return le}var dD=Ase;function Sse(le,me){if(le!==me){var Xe=le!==void 0,Mt=le===null,rr=le===le,Nr=_f(le),xa=me!==void 0,Ha=me===null,Za=me===me,un=_f(me);if(!Ha&&!un&&!Nr&&le>me||Nr&&xa&&Za&&!Ha&&!un||Mt&&xa&&Za||!Xe&&Za||!rr)return 1;if(!Mt&&!Nr&&!un&&le<me||un&&Xe&&rr&&!Mt&&!Nr||Ha&&Xe&&rr||!xa&&rr||!Za)return-1}return 0}var Gw=Sse;function Mse(le,me,Xe){for(var Mt=-1,rr=le.criteria,Nr=me.criteria,xa=rr.length,Ha=Xe.length;++Mt<xa;){var Za=Gw(rr[Mt],Nr[Mt]);if(Za){if(Mt>=Ha)return Za;var un=Xe[Mt];return Za*(un=="desc"?-1:1)}}return le.index-me.index}var vD=Mse;function Ese(le,me,Xe){me.length?me=nl(me,function(Nr){return mo(Nr)?function(xa){return ud(xa,Nr.length===1?Nr[0]:Nr)}:Nr}):me=[ic];var Mt=-1;me=nl(me,uf(io));var rr=Rw(le,function(Nr,xa,Ha){var Za=nl(me,function(un){return un(Nr)});return{criteria:Za,index:++Mt,value:Nr}});return dD(rr,function(Nr,xa){return vD(Nr,xa,Xe)})}var Ww=Ese;function kse(le,me,Xe,Mt){return le==null?[]:(mo(me)||(me=me==null?[]:[me]),Xe=Mt?void 0:Xe,mo(Xe)||(Xe=Xe==null?[]:[Xe]),Ww(le,me,Xe))}var mD=kse;function Cse(le){return op(function(me){return me=nl(me,uf(io)),ko(function(Xe){var Mt=this;return le(me,function(rr){return sf(rr,Mt,Xe)})})})}var jy=Cse;var Lse=jy(nl),gD=Lse;var Pse=ko,yD=Pse;var Ise=Math.min,Rse=yD(function(le,me){me=me.length==1&&mo(me[0])?nl(me[0],uf(io)):nl(wu(me,1),uf(io));var Xe=me.length;return ko(function(Mt){for(var rr=-1,Nr=Ise(Mt.length,Xe);++rr<Nr;)Mt[rr]=me[rr].call(this,Mt[rr]);return sf(le,this,Mt)})}),_D=Rse;var Dse=jy(Mw),xD=Dse;var zse=jy(wy),bD=zse;var Fse=9007199254740991,Ose=Math.floor;function Bse(le,me){var Xe="";if(!le||me<1||me>Fse)return Xe;do me%2&&(Xe+=le),me=Ose(me/2),me&&(le+=le);while(me);return Xe}var d_=Bse;var Nse=Ey("length"),wD=Nse;var AD="\\ud800-\\udfff",Use="\\u0300-\\u036f",jse="\\ufe20-\\ufe2f",Vse="\\u20d0-\\u20ff",qse=Use+jse+Vse,Hse="\\ufe0e\\ufe0f",Gse="["+AD+"]",BA="["+qse+"]",NA="\\ud83c[\\udffb-\\udfff]",Wse="(?:"+BA+"|"+NA+")",SD="[^"+AD+"]",MD="(?:\\ud83c[\\udde6-\\uddff]){2}",ED="[\\ud800-\\udbff][\\udc00-\\udfff]",Zse="\\u200d",kD=Wse+"?",CD="["+Hse+"]?",Xse="(?:"+Zse+"(?:"+[SD,MD,ED].join("|")+")"+CD+kD+")*",Yse=CD+kD+Xse,Kse="(?:"+[SD+BA+"?",BA,MD,ED,Gse].join("|")+")",TD=RegExp(NA+"(?="+NA+")|"+Kse+Yse,"g");function Jse(le){for(var me=TD.lastIndex=0;TD.test(le);)++me;return me}var LD=Jse;function $se(le){return kd(le)?LD(le):wD(le)}var Pd=$se;var Qse=Math.ceil;function ele(le,me){me=me===void 0?" ":Vf(me);var Xe=me.length;if(Xe<2)return Xe?d_(me,le):me;var Mt=d_(me,Qse(le/Pd(me)));return kd(me)?zp(Fh(Mt),0,le).join(""):Mt.slice(0,le)}var qg=ele;var tle=Math.ceil,rle=Math.floor;function ale(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;if(!me||Mt>=me)return le;var rr=(me-Mt)/2;return qg(rle(rr),Xe)+le+qg(tle(rr),Xe)}var PD=ale;function ile(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt<me?le+qg(me-Mt,Xe):le}var ID=ile;function nle(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt<me?qg(me-Mt,Xe)+le:le}var RD=nle;var ole=/^\s+/,sle=Kl.parseInt;function lle(le,me,Xe){return Xe||me==null?me=0:me&&(me=+me),sle(ws(le).replace(ole,""),me||0)}var DD=lle;var ule=32,UA=ko(function(le,me){var Xe=Yp(me,Sd(UA));return ap(le,ule,void 0,me,Xe)});UA.placeholder={};var Zw=UA;var cle=64,jA=ko(function(le,me){var Xe=Yp(me,Sd(jA));return ap(le,cle,void 0,me,Xe)});jA.placeholder={};var zD=jA;var fle=Om(function(le,me,Xe){le[Xe?0:1].push(me)},function(){return[[],[]]}),FD=fle;function hle(le,me){return qw(le,me,function(Xe,Mt){return My(le,Mt)})}var OD=hle;var ple=op(function(le,me){return le==null?{}:OD(le,me)}),BD=ple;function dle(le){for(var me,Xe=this;Xe instanceof wm;){var Mt=Eb(Xe);Mt.__index__=0,Mt.__values__=void 0,me?rr.__wrapped__=Mt:me=Mt;var rr=Mt;Xe=Xe.__wrapped__}return rr.__wrapped__=le,me}var ND=dle;function vle(le){return function(me){return le==null?void 0:ud(le,me)}}var UD=vle;function mle(le,me,Xe,Mt){for(var rr=Xe-1,Nr=le.length;++rr<Nr;)if(Mt(le[rr],me))return rr;return-1}var jD=mle;var gle=Array.prototype,VD=gle.splice;function yle(le,me,Xe,Mt){var rr=Mt?jD:Ad,Nr=-1,xa=me.length,Ha=le;for(le===me&&(me=Wc(me)),Xe&&(Ha=nl(le,uf(Xe)));++Nr<xa;)for(var Za=0,un=me[Nr],Ji=Xe?Xe(un):un;(Za=rr(Ha,Ji,Za,Mt))>-1;)Ha!==le&&VD.call(Ha,Za,1),VD.call(le,Za,1);return le}var Vy=yle;function _le(le,me){return le&&le.length&&me&&me.length?Vy(le,me):le}var Xw=_le;var xle=ko(Xw),qD=xle;function ble(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,io(Xe,2)):le}var HD=ble;function wle(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,void 0,Xe):le}var GD=wle;var Tle=Array.prototype,Ale=Tle.splice;function Sle(le,me){for(var Xe=le?me.length:0,Mt=Xe-1;Xe--;){var rr=me[Xe];if(Xe==Mt||rr!==Nr){var Nr=rr;rp(rr)?Ale.call(le,rr,1):Uy(le,rr)}}return le}var Yw=Sle;var Mle=op(function(le,me){var Xe=le==null?0:le.length,Mt=uy(le,me);return Yw(le,nl(me,function(rr){return rp(rr,Xe)?+rr:rr}).sort(Gw)),Mt}),WD=Mle;var Ele=Math.floor,kle=Math.random;function Cle(le,me){return le+Ele(kle()*(me-le+1))}var qy=Cle;var Lle=parseFloat,Ple=Math.min,Ile=Math.random;function Rle(le,me,Xe){if(Xe&&typeof Xe!="boolean"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe===void 0&&(typeof me=="boolean"?(Xe=me,me=void 0):typeof le=="boolean"&&(Xe=le,le=void 0)),le===void 0&&me===void 0?(le=0,me=1):(le=sd(le),me===void 0?(me=le,le=0):me=sd(me)),le>me){var Mt=le;le=me,me=Mt}if(Xe||le%1||me%1){var rr=Ile();return Ple(le+rr*(me-le+Lle("1e-"+((rr+"").length-1))),me)}return qy(le,me)}var ZD=Rle;var Dle=Math.ceil,zle=Math.max;function Fle(le,me,Xe,Mt){for(var rr=-1,Nr=zle(Dle((me-le)/(Xe||1)),0),xa=Array(Nr);Nr--;)xa[Mt?Nr:++rr]=le,le+=Xe;return xa}var XD=Fle;function Ole(le){return function(me,Xe,Mt){return Mt&&typeof Mt!="number"&&nc(me,Xe,Mt)&&(Xe=Mt=void 0),me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),Mt=Mt===void 0?me<Xe?1:-1:sd(Mt),XD(me,Xe,Mt,le)}}var Kw=Ole;var Ble=Kw(),YD=Ble;var Nle=Kw(!0),KD=Nle;var Ule=256,jle=op(function(le,me){return ap(le,Ule,void 0,void 0,void 0,me)}),JD=jle;function Vle(le,me,Xe,Mt,rr){return rr(le,function(Nr,xa,Ha){Xe=Mt?(Mt=!1,Nr):me(Xe,Nr,xa,Ha)}),Xe}var Jw=Vle;function qle(le,me,Xe){var Mt=mo(le)?hy:Jw,rr=arguments.length<3;return Mt(le,io(me,4),Xe,rr,Op)}var $D=qle;function Hle(le,me,Xe,Mt){var rr=le==null?0:le.length;for(Mt&&rr&&(Xe=le[--rr]);rr--;)Xe=me(Xe,le[rr],rr,le);return Xe}var QD=Hle;function Gle(le,me,Xe){var Mt=mo(le)?QD:Jw,rr=arguments.length<3;return Mt(le,io(me,4),Xe,rr,Tw)}var ez=Gle;function Wle(le,me){var Xe=mo(le)?Fp:kw;return Xe(le,Gv(io(me,3)))}var tz=Wle;function Zle(le,me){var Xe=[];if(!(le&&le.length))return Xe;var Mt=-1,rr=[],Nr=le.length;for(me=io(me,3);++Mt<Nr;){var xa=le[Mt];me(xa,Mt,le)&&(Xe.push(xa),rr.push(Mt))}return Yw(le,rr),Xe}var rz=Zle;function Xle(le,me,Xe){return(Xe?nc(le,me,Xe):me===void 0)?me=1:me=Eo(me),d_(ws(le),me)}var az=Xle;function Yle(){var le=arguments,me=ws(le[0]);return le.length<3?me:me.replace(le[1],le[2])}var iz=Yle;var Kle="Expected a function";function Jle(le,me){if(typeof le!="function")throw new TypeError(Kle);return me=me===void 0?me:Eo(me),ko(le,me)}var nz=Jle;function $le(le,me,Xe){me=Rp(me,le);var Mt=-1,rr=me.length;for(rr||(rr=1,le=void 0);++Mt<rr;){var Nr=le?.[yh(me[Mt])];Nr===void 0&&(Mt=rr,Nr=Xe),le=tp(Nr)?Nr.call(le):Nr}return le}var oz=$le;var Qle=Array.prototype,eue=Qle.reverse;function tue(le){return le==null?le:eue.call(le)}var v_=tue;var rue=vy("round"),sz=rue;function aue(le){var me=le.length;return me?le[qy(0,me-1)]:void 0}var $w=aue;function iue(le){return $w(Ld(le))}var lz=iue;function nue(le){var me=mo(le)?$w:lz;return me(le)}var uz=nue;function oue(le,me){var Xe=-1,Mt=le.length,rr=Mt-1;for(me=me===void 0?Mt:me;++Xe<me;){var Nr=qy(Xe,rr),xa=le[Nr];le[Nr]=le[Xe],le[Xe]=xa}return le.length=me,le}var Hm=oue;function sue(le,me){return Hm(Wc(le),cd(me,0,le.length))}var cz=sue;function lue(le,me){var Xe=Ld(le);return Hm(Xe,cd(me,0,Xe.length))}var fz=lue;function uue(le,me,Xe){(Xe?nc(le,me,Xe):me===void 0)?me=1:me=Eo(me);var Mt=mo(le)?cz:fz;return Mt(le,me)}var hz=uue;function cue(le,me,Xe){return le==null?le:bv(le,me,Xe)}var pz=cue;function fue(le,me,Xe,Mt){return Mt=typeof Mt=="function"?Mt:void 0,le==null?le:bv(le,me,Xe,Mt)}var dz=fue;function hue(le){return Hm(Wc(le))}var vz=hue;function pue(le){return Hm(Ld(le))}var mz=pue;function due(le){var me=mo(le)?vz:mz;return me(le)}var gz=due;var vue="[object Map]",mue="[object Set]";function gue(le){if(le==null)return 0;if(gc(le))return Vm(le)?Pd(le):le.length;var me=Oh(le);return me==vue||me==mue?le.size:ay(le).length}var yz=gue;function yue(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(Xe&&typeof Xe!="number"&&nc(le,me,Xe)?(me=0,Xe=Mt):(me=me==null?0:Eo(me),Xe=Xe===void 0?Mt:Eo(Xe)),Lf(le,me,Xe)):[]}var _z=yue;var _ue=Cd(function(le,me,Xe){return le+(Xe?"_":"")+me.toLowerCase()}),xz=_ue;function xue(le,me){var Xe;return Op(le,function(Mt,rr,Nr){return Xe=me(Mt,rr,Nr),!Xe}),!!Xe}var bz=xue;function bue(le,me,Xe){var Mt=mo(le)?wy:bz;return Xe&&nc(le,me,Xe)&&(me=void 0),Mt(le,io(me,3))}var wz=bue;var wue=ko(function(le,me){if(le==null)return[];var Xe=me.length;return Xe>1&&nc(le,me[0],me[1])?me=[]:Xe>2&&nc(me[0],me[1],me[2])&&(me=[me[0]]),Ww(le,wu(me,1),[])}),Tz=wue;var Tue=4294967295,Aue=Tue-1,Sue=Math.floor,Mue=Math.min;function Eue(le,me,Xe,Mt){var rr=0,Nr=le==null?0:le.length;if(Nr===0)return 0;me=Xe(me);for(var xa=me!==me,Ha=me===null,Za=_f(me),un=me===void 0;rr<Nr;){var Ji=Sue((rr+Nr)/2),gn=Xe(le[Ji]),wo=gn!==void 0,ps=gn===null,Qn=gn===gn,Ye=_f(gn);if(xa)var Ps=Mt||Qn;else un?Ps=Qn&&(Mt||wo):Ha?Ps=Qn&&wo&&(Mt||!ps):Za?Ps=Qn&&wo&&!ps&&(Mt||!Ye):ps||Ye?Ps=!1:Ps=Mt?gn<=me:gn<me;Ps?rr=Ji+1:Nr=Ji}return Mue(Nr,Aue)}var Hy=Eue;var kue=4294967295,Cue=kue>>>1;function Lue(le,me,Xe){var Mt=0,rr=le==null?Mt:le.length;if(typeof me=="number"&&me===me&&rr<=Cue){for(;Mt<rr;){var Nr=Mt+rr>>>1,xa=le[Nr];xa!==null&&!_f(xa)&&(Xe?xa<=me:xa<me)?Mt=Nr+1:rr=Nr}return rr}return Hy(le,me,ic,Xe)}var Gm=Lue;function Pue(le,me){return Gm(le,me)}var Az=Pue;function Iue(le,me,Xe){return Hy(le,me,io(Xe,2))}var Sz=Iue;function Rue(le,me){var Xe=le==null?0:le.length;if(Xe){var Mt=Gm(le,me);if(Mt<Xe&&qf(le[Mt],me))return Mt}return-1}var Mz=Rue;function Due(le,me){return Gm(le,me,!0)}var Ez=Due;function zue(le,me,Xe){return Hy(le,me,io(Xe,2),!0)}var kz=zue;function Fue(le,me){var Xe=le==null?0:le.length;if(Xe){var Mt=Gm(le,me,!0)-1;if(qf(le[Mt],me))return Mt}return-1}var Cz=Fue;function Oue(le,me){for(var Xe=-1,Mt=le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe],Ha=me?me(xa):xa;if(!Xe||!qf(Ha,Za)){var Za=Ha;Nr[rr++]=xa===0?0:xa}}return Nr}var Qw=Oue;function Bue(le){return le&&le.length?Qw(le):[]}var Lz=Bue;function Nue(le,me){return le&&le.length?Qw(le,io(me,2)):[]}var Pz=Nue;var Uue=4294967295;function jue(le,me,Xe){return Xe&&typeof Xe!="number"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe=Xe===void 0?Uue:Xe>>>0,Xe?(le=ws(le),le&&(typeof me=="string"||me!=null&&!Oy(me))&&(me=Vf(me),!me&&kd(le))?zp(Fh(le),0,Xe):le.split(me,Xe)):[]}var Iz=jue;var Vue="Expected a function",que=Math.max;function Hue(le,me){if(typeof le!="function")throw new TypeError(Vue);return me=me==null?0:que(Eo(me),0),ko(function(Xe){var Mt=Xe[me],rr=zp(Xe,0,me);return Mt&&Dp(rr,Mt),sf(le,this,rr)})}var Rz=Hue;var Gue=Cd(function(le,me,Xe){return le+(Xe?" ":"")+fy(me)}),Dz=Gue;function Wue(le,me,Xe){return le=ws(le),Xe=Xe==null?0:cd(Eo(Xe),0,le.length),me=Vf(me),le.slice(Xe,Xe+me.length)==me}var zz=Wue;function Zue(){return{}}var Fz=Zue;function Xue(){return""}var Oz=Xue;function Yue(){return!0}var Bz=Yue;var Kue=bm(function(le,me){return le-me},0),Nz=Kue;function Jue(le){return le&&le.length?Ny(le,ic):0}var Uz=Jue;function $ue(le,me){return le&&le.length?Ny(le,io(me,2)):0}var jz=$ue;function Que(le){var me=le==null?0:le.length;return me?Lf(le,1,me):[]}var Vz=Que;function ece(le,me,Xe){return le&&le.length?(me=Xe||me===void 0?1:Eo(me),Lf(le,0,me<0?0:me)):[]}var qz=ece;function tce(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,me<0?0:me,Mt)):[]}var Hz=tce;function rce(le,me){return le&&le.length?Bm(le,io(me,3),!1,!0):[]}var Gz=rce;function ace(le,me){return le&&le.length?Bm(le,io(me,3)):[]}var Wz=ace;function ice(le,me){return me(le),le}var Zz=ice;var Xz=Object.prototype,nce=Xz.hasOwnProperty;function oce(le,me,Xe,Mt){return le===void 0||qf(le,Xz[Xe])&&!nce.call(Mt,Xe)?me:le}var VA=oce;var sce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"};function lce(le){return"\\"+sce[le]}var Yz=lce;var uce=/<%=([\s\S]+?)%>/g,e2=uce;var cce=/<%-([\s\S]+?)%>/g,Kz=cce;var fce=/<%([\s\S]+?)%>/g,Jz=fce;var hce={escape:Kz,evaluate:Jz,interpolate:e2,variable:"",imports:{_:{escape:Sw}}},m_=hce;var pce="Invalid `variable` option passed into `_.template`",dce=/\b__p \+= '';/g,vce=/\b(__p \+=) '' \+/g,mce=/(__e\(.*?\)|\b__t\)) \+\n'';/g,gce=/[()=,{}\[\]\/\s]/,yce=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,t2=/($^)/,_ce=/['\n\r\u2028\u2029\\]/g,xce=Object.prototype,$z=xce.hasOwnProperty;function bce(le,me,Xe){var Mt=m_.imports._.templateSettings||m_;Xe&&nc(le,me,Xe)&&(me=void 0),le=ws(le),me=Em({},me,Mt,VA);var rr=Em({},me.imports,Mt.imports,VA),Nr=Gl(rr),xa=Dy(rr,Nr),Ha,Za,un=0,Ji=me.interpolate||t2,gn="__p += '",wo=RegExp((me.escape||t2).source+"|"+Ji.source+"|"+(Ji===e2?yce:t2).source+"|"+(me.evaluate||t2).source+"|$","g"),ps=$z.call(me,"sourceURL")?"//# sourceURL="+(me.sourceURL+"").replace(/\s/g," ")+`
+`:"";le.replace(wo,function(Ps,Ml,Ul,Hf,xh,Bp){return Ul||(Ul=Hf),gn+=le.slice(un,Bp).replace(_ce,Yz),Ml&&(Ha=!0,gn+=`' +
+__e(`+Ml+`) +
+'`),xh&&(Za=!0,gn+=`';
+`+xh+`;
+__p += '`),Ul&&(gn+=`' +
+((__t = (`+Ul+`)) == null ? '' : __t) +
+'`),un=Bp+Ps.length,Ps}),gn+=`';
+`;var Qn=$z.call(me,"variable")&&me.variable;if(!Qn)gn=`with (obj) {
+`+gn+`
+}
+`;else if(gce.test(Qn))throw new Error(pce);gn=(Za?gn.replace(dce,""):gn).replace(vce,"$1").replace(mce,"$1;"),gn="function("+(Qn||"obj")+`) {
+`+(Qn?"":`obj || (obj = {});
+`)+"var __t, __p = ''"+(Ha?", __e = _.escape":"")+(Za?`, __j = Array.prototype.join;
+function print() { __p += __j.call(arguments, '') }
+`:`;
+`)+gn+`return __p
+}`;var Ye=jb(function(){return Function(Nr,ps+"return "+gn).apply(void 0,xa)});if(Ye.source=gn,cy(Ye))throw Ye;return Ye}var Qz=bce;var wce="Expected a function";function Tce(le,me,Xe){var Mt=!0,rr=!0;if(typeof le!="function")throw new TypeError(wce);return ll(Xe)&&(Mt="leading"in Xe?!!Xe.leading:Mt,rr="trailing"in Xe?!!Xe.trailing:rr),yw(le,me,{leading:Mt,maxWait:me,trailing:rr})}var e8=Tce;function Ace(le,me){return me(le)}var Wv=Ace;var Sce=9007199254740991,qA=4294967295,Mce=Math.min;function Ece(le,me){if(le=Eo(le),le<1||le>Sce)return[];var Xe=qA,Mt=Mce(le,qA);me=_h(me),le-=qA;for(var rr=ty(Mt,me);++Xe<le;)me(Xe);return rr}var t8=Ece;function kce(){return this}var r8=kce;function Cce(le,me){var Xe=le;return Xe instanceof dl&&(Xe=Xe.value()),hy(me,function(Mt,rr){return rr.func.apply(rr.thisArg,Dp([Mt],rr.args))},Xe)}var r2=Cce;function Lce(){return r2(this.__wrapped__,this.__actions__)}var Wm=Lce;function Pce(le){return ws(le).toLowerCase()}var a8=Pce;function Ice(le){return mo(le)?nl(le,yh):_f(le)?[le]:Wc(Nb(ws(le)))}var i8=Ice;var n8=9007199254740991;function Rce(le){return le?cd(Eo(le),-n8,n8):le===0?le:0}var o8=Rce;function Dce(le){return ws(le).toUpperCase()}var s8=Dce;function zce(le,me,Xe){var Mt=mo(le),rr=Mt||Kp(le)||Ed(le);if(me=io(me,4),Xe==null){var Nr=le&&le.constructor;rr?Xe=Mt?new Nr:[]:ll(le)?Xe=tp(Nr)?Td(Im(le)):{}:Xe={}}return(rr?zh:lp)(le,function(xa,Ha,Za){return me(Xe,xa,Ha,Za)}),Xe}var l8=zce;function Fce(le,me){for(var Xe=le.length;Xe--&&Ad(me,le[Xe],0)>-1;);return Xe}var a2=Fce;function Oce(le,me){for(var Xe=-1,Mt=le.length;++Xe<Mt&&Ad(me,le[Xe],0)>-1;);return Xe}var i2=Oce;function Bce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return xb(le);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=Fh(me),Nr=i2(Mt,rr),xa=a2(Mt,rr)+1;return zp(Mt,Nr,xa).join("")}var u8=Bce;function Nce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.slice(0,_b(le)+1);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=a2(Mt,Fh(me))+1;return zp(Mt,0,rr).join("")}var c8=Nce;var Uce=/^\s+/;function jce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.replace(Uce,"");if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=i2(Mt,Fh(me));return zp(Mt,rr).join("")}var f8=jce;var Vce=30,qce="...",Hce=/\w*$/;function Gce(le,me){var Xe=Vce,Mt=qce;if(ll(me)){var rr="separator"in me?me.separator:rr;Xe="length"in me?Eo(me.length):Xe,Mt="omission"in me?Vf(me.omission):Mt}le=ws(le);var Nr=le.length;if(kd(le)){var xa=Fh(le);Nr=xa.length}if(Xe>=Nr)return le;var Ha=Xe-Pd(Mt);if(Ha<1)return Mt;var Za=xa?zp(xa,0,Ha).join(""):le.slice(0,Ha);if(rr===void 0)return Za+Mt;if(xa&&(Ha+=Za.length-Ha),Oy(rr)){if(le.slice(Ha).search(rr)){var un,Ji=Za;for(rr.global||(rr=RegExp(rr.source,ws(Hce.exec(rr))+"g")),rr.lastIndex=0;un=rr.exec(Ji);)var gn=un.index;Za=Za.slice(0,gn===void 0?Ha:gn)}}else if(le.indexOf(Vf(rr),Ha)!=Ha){var wo=Za.lastIndexOf(rr);wo>-1&&(Za=Za.slice(0,wo))}return Za+Mt}var h8=Gce;function Wce(le){return Db(le,1)}var p8=Wce;var Zce={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},Xce=py(Zce),d8=Xce;var v8=/&(?:amp|lt|gt|quot|#39);/g,Yce=RegExp(v8.source);function Kce(le){return le=ws(le),le&&Yce.test(le)?le.replace(v8,d8):le}var m8=Kce;var Jce=1/0,$ce=Rm&&1/zm(new Rm([,-0]))[1]==Jce?function(le){return new Rm(le)}:X0,g8=$ce;var Qce=200;function efe(le,me,Xe){var Mt=-1,rr=Sm,Nr=le.length,xa=!0,Ha=[],Za=Ha;if(Xe)xa=!1,rr=Py;else if(Nr>=Qce){var un=me?null:g8(le);if(un)return zm(un);xa=!1,rr=Hv,Za=new Dm}else Za=me?[]:Ha;e:for(;++Mt<Nr;){var Ji=le[Mt],gn=me?me(Ji):Ji;if(Ji=Xe||Ji!==0?Ji:0,xa&&gn===gn){for(var wo=Za.length;wo--;)if(Za[wo]===gn)continue e;me&&Za.push(gn),Ha.push(Ji)}else rr(Za,gn,Xe)||(Za!==Ha&&Za.push(gn),Ha.push(Ji))}return Ha}var Jp=efe;var tfe=ko(function(le){return Jp(wu(le,1,eu,!0))}),y8=tfe;var rfe=ko(function(le){var me=cf(le);return eu(me)&&(me=void 0),Jp(wu(le,1,eu,!0),io(me,2))}),_8=rfe;var afe=ko(function(le){var me=cf(le);return me=typeof me=="function"?me:void 0,Jp(wu(le,1,eu,!0),void 0,me)}),x8=afe;function ife(le){return le&&le.length?Jp(le):[]}var b8=ife;function nfe(le,me){return le&&le.length?Jp(le,io(me,2)):[]}var w8=nfe;function ofe(le,me){return me=typeof me=="function"?me:void 0,le&&le.length?Jp(le,void 0,me):[]}var T8=ofe;var sfe=0;function lfe(le){var me=++sfe;return ws(le)+me}var A8=lfe;function ufe(le,me){return le==null?!0:Uy(le,me)}var S8=ufe;var cfe=Math.max;function ffe(le){if(!(le&&le.length))return[];var me=0;return le=Fp(le,function(Xe){if(eu(Xe))return me=cfe(Xe.length,me),!0}),ty(me,function(Xe){return nl(le,Ey(Xe))})}var Gy=ffe;function hfe(le,me){if(!(le&&le.length))return[];var Xe=Gy(le);return me==null?Xe:nl(Xe,function(Mt){return sf(me,void 0,Mt)})}var n2=hfe;function pfe(le,me,Xe,Mt){return bv(le,me,Xe(ud(le,me)),Mt)}var o2=pfe;function dfe(le,me,Xe){return le==null?le:o2(le,me,_h(Xe))}var M8=dfe;function vfe(le,me,Xe,Mt){return Mt=typeof Mt=="function"?Mt:void 0,le==null?le:o2(le,me,_h(Xe),Mt)}var E8=vfe;var mfe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toUpperCase()}),k8=mfe;function gfe(le){return le==null?[]:Dy(le,yc(le))}var C8=gfe;var yfe=ko(function(le,me){return eu(le)?_v(le,me):[]}),L8=yfe;function _fe(le,me){return Zw(_h(me),le)}var P8=_fe;var xfe=op(function(le){var me=le.length,Xe=me?le[0]:0,Mt=this.__wrapped__,rr=function(Nr){return uy(Nr,le)};return me>1||this.__actions__.length||!(Mt instanceof dl)||!rp(Xe)?this.thru(rr):(Mt=Mt.slice(Xe,+Xe+(me?1:0)),Mt.__actions__.push({func:Wv,args:[rr],thisArg:void 0}),new Ip(Mt,this.__chain__).thru(function(Nr){return me&&!Nr.length&&Nr.push(void 0),Nr}))}),I8=xfe;function bfe(){return Xb(this)}var R8=bfe;function wfe(){var le=this.__wrapped__;if(le instanceof dl){var me=le;return this.__actions__.length&&(me=new dl(this)),me=me.reverse(),me.__actions__.push({func:Wv,args:[v_],thisArg:void 0}),new Ip(me,this.__chain__)}return this.thru(v_)}var D8=wfe;function Tfe(le,me,Xe){var Mt=le.length;if(Mt<2)return Mt?Jp(le[0]):[];for(var rr=-1,Nr=Array(Mt);++rr<Mt;)for(var xa=le[rr],Ha=-1;++Ha<Mt;)Ha!=rr&&(Nr[rr]=_v(Nr[rr]||xa,le[Ha],me,Xe));return Jp(wu(Nr,1),me,Xe)}var Wy=Tfe;var Afe=ko(function(le){return Wy(Fp(le,eu))}),z8=Afe;var Sfe=ko(function(le){var me=cf(le);return eu(me)&&(me=void 0),Wy(Fp(le,eu),io(me,2))}),F8=Sfe;var Mfe=ko(function(le){var me=cf(le);return me=typeof me=="function"?me:void 0,Wy(Fp(le,eu),void 0,me)}),O8=Mfe;var Efe=ko(Gy),B8=Efe;function kfe(le,me,Xe){for(var Mt=-1,rr=le.length,Nr=me.length,xa={};++Mt<rr;){var Ha=Mt<Nr?me[Mt]:void 0;Xe(xa,le[Mt],Ha)}return xa}var s2=kfe;function Cfe(le,me){return s2(le||[],me||[],vv)}var N8=Cfe;function Lfe(le,me){return s2(le||[],me||[],bv)}var U8=Lfe;var Pfe=ko(function(le){var me=le.length,Xe=me>1?le[me-1]:void 0;return Xe=typeof Xe=="function"?(le.pop(),Xe):void 0,n2(le,Xe)}),j8=Pfe;var is={chunk:NP,compact:A6,concat:S6,difference:iI,differenceBy:nI,differenceWith:oI,drop:lI,dropRight:uI,dropRightWhile:cI,dropWhile:fI,fill:TI,findIndex:Lw,findLastIndex:Iw,first:p_,flatten:Ub,flattenDeep:II,flattenDepth:RI,fromPairs:VI,head:p_,indexOf:QI,initial:eR,intersection:tR,intersectionBy:rR,intersectionWith:aR,join:OR,last:cf,lastIndexOf:jR,nth:lD,pull:qD,pullAll:Xw,pullAllBy:HD,pullAllWith:GD,pullAt:WD,remove:rz,reverse:v_,slice:_z,sortedIndex:Az,sortedIndexBy:Sz,sortedIndexOf:Mz,sortedLastIndex:Ez,sortedLastIndexBy:kz,sortedLastIndexOf:Cz,sortedUniq:Lz,sortedUniqBy:Pz,tail:Vz,take:qz,takeRight:Hz,takeRightWhile:Gz,takeWhile:Wz,union:y8,unionBy:_8,unionWith:x8,uniq:b8,uniqBy:w8,uniqWith:T8,unzip:Gy,unzipWith:n2,without:L8,xor:z8,xorBy:F8,xorWith:O8,zip:B8,zipObject:N8,zipObjectDeep:U8,zipWith:j8};var Hu={countBy:H6,each:u_,eachRight:c_,every:bI,filter:AI,find:SI,findLast:EI,flatMap:CI,flatMapDeep:LI,flatMapDepth:PI,forEach:u_,forEachRight:c_,groupBy:GI,includes:$I,invokeMap:uR,keyBy:NR,map:Nm,orderBy:mD,partition:FD,reduce:$D,reduceRight:ez,reject:tz,sample:uz,sampleSize:hz,shuffle:gz,size:yz,some:wz,sortBy:Tz};var HA={now:Cy};var xf={after:$C,ary:Db,before:Vb,bind:qb,bindKey:oP,curry:W6,curryRight:Z6,debounce:yw,defer:rI,delay:aI,flip:DI,memoize:Bb,negate:Gv,once:pD,overArgs:_D,partial:Zw,partialRight:zD,rearg:JD,rest:nz,spread:Rz,throttle:e8,unary:p8,wrap:P8};var Es={castArray:OP,clone:_6,cloneDeep:x6,cloneDeepWith:b6,cloneWith:w6,conformsTo:j6,eq:qf,gt:WI,gte:ZI,isArguments:dd,isArray:mo,isArrayBuffer:hR,isArrayLike:gc,isArrayLikeObject:eu,isBoolean:pR,isBuffer:Kp,isDate:mR,isElement:gR,isEmpty:yR,isEqual:_R,isEqualWith:xR,isError:cy,isFinite:bR,isFunction:tp,isInteger:Ow,isLength:Mm,isMap:aw,isMatch:wR,isMatchWith:TR,isNaN:AR,isNative:MR,isNil:ER,isNull:kR,isNumber:Bw,isObject:ll,isObjectLike:ul,isPlainObject:gv,isRegExp:Oy,isSafeInteger:IR,isSet:iw,isString:Vm,isSymbol:_f,isTypedArray:Ed,isUndefined:RR,isWeakMap:DR,isWeakSet:zR,lt:HR,lte:GR,toArray:jw,toFinite:sd,toInteger:Eo,toLength:Ew,toNumber:mh,toPlainObject:_w,toSafeInteger:o8,toString:ws};var _p={add:YC,ceil:BP,divide:sI,floor:zI,max:KR,maxBy:JR,mean:$R,meanBy:QR,min:aD,minBy:iD,multiply:nD,round:sz,subtract:Nz,sum:Uz,sumBy:jz};var g_={clamp:UP,inRange:JI,random:ZD};var Js={assign:RL,assignIn:n_,assignInWith:Em,assignWith:FL,at:aP,create:G6,defaults:K6,defaultsDeep:tI,entries:f_,entriesIn:h_,extend:n_,extendWith:Em,findKey:MI,findLastKey:kI,forIn:BI,forInRight:NI,forOwn:UI,forOwnRight:jI,functions:qI,functionsIn:HI,get:ly,has:YI,hasIn:My,invert:nR,invertBy:sR,invoke:lR,keys:Gl,keysIn:yc,mapKeys:WR,mapValues:ZR,merge:eD,mergeWith:xw,omit:fD,omitBy:hD,pick:BD,pickBy:Hw,result:oz,set:pz,setWith:dz,toPairs:f_,toPairsIn:h_,transform:l8,unset:S8,update:M8,updateWith:E8,values:Ld,valuesIn:C8};var Id={at:I8,chain:Xb,commit:T6,lodash:ua,next:sD,plant:ND,reverse:D8,tap:Zz,thru:Wv,toIterator:r8,toJSON:Wm,value:Wm,valueOf:Wm,wrapperChain:R8};var du={camelCase:FP,capitalize:Gb,deburr:Wb,endsWith:pI,escape:Sw,escapeRegExp:_I,kebabCase:BR,lowerCase:VR,lowerFirst:qR,pad:PD,padEnd:ID,padStart:RD,parseInt:DD,repeat:az,replace:iz,snakeCase:xz,split:Iz,startCase:Dz,startsWith:zz,template:Qz,templateSettings:m_,toLower:a8,toUpper:s8,trim:u8,trimEnd:c8,trimStart:f8,truncate:h8,unescape:m8,upperCase:k8,upperFirst:fy,words:Zb};var Tu={attempt:jb,bindAll:nP,cond:B6,conforms:U6,constant:J0,defaultTo:X6,flow:FI,flowRight:OI,identity:ic,iteratee:FR,matches:XR,matchesProperty:YR,method:tD,methodOf:rD,mixin:Uw,noop:X0,nthArg:uD,over:gD,overEvery:xD,overSome:bD,property:dw,propertyOf:UD,range:YD,rangeRight:KD,stubArray:gy,stubFalse:ry,stubObject:Fz,stubString:Oz,stubTrue:Bz,times:t8,toPath:i8,uniqueId:A8};function Ife(){var le=new dl(this.__wrapped__);return le.__actions__=Wc(this.__actions__),le.__dir__=this.__dir__,le.__filtered__=this.__filtered__,le.__iteratees__=Wc(this.__iteratees__),le.__takeCount__=this.__takeCount__,le.__views__=Wc(this.__views__),le}var V8=Ife;function Rfe(){if(this.__filtered__){var le=new dl(this);le.__dir__=-1,le.__filtered__=!0}else le=this.clone(),le.__dir__*=-1;return le}var q8=Rfe;var Dfe=Math.max,zfe=Math.min;function Ffe(le,me,Xe){for(var Mt=-1,rr=Xe.length;++Mt<rr;){var Nr=Xe[Mt],xa=Nr.size;switch(Nr.type){case"drop":le+=xa;break;case"dropRight":me-=xa;break;case"take":me=zfe(me,le+xa);break;case"takeRight":le=Dfe(le,me-xa);break}}return{start:le,end:me}}var H8=Ffe;var Ofe=1,Bfe=2,Nfe=Math.min;function Ufe(){var le=this.__wrapped__.value(),me=this.__dir__,Xe=mo(le),Mt=me<0,rr=Xe?le.length:0,Nr=H8(0,rr,this.__views__),xa=Nr.start,Ha=Nr.end,Za=Ha-xa,un=Mt?Ha:xa-1,Ji=this.__iteratees__,gn=Ji.length,wo=0,ps=Nfe(Za,this.__takeCount__);if(!Xe||!Mt&&rr==Za&&ps==Za)return r2(le,this.__actions__);var Qn=[];e:for(;Za--&&wo<ps;){un+=me;for(var Ye=-1,Ps=le[un];++Ye<gn;){var Ml=Ji[Ye],Ul=Ml.iteratee,Hf=Ml.type,xh=Ul(Ps);if(Hf==Bfe)Ps=xh;else if(!xh){if(Hf==Ofe)continue e;break e}}Qn[wo++]=Ps}return Qn}var G8=Ufe;var jfe="4.17.21",Vfe=2,qfe=1,Hfe=3,X8=4294967295,Gfe=Array.prototype,Wfe=Object.prototype,Y8=Wfe.hasOwnProperty,W8=yf?yf.iterator:void 0,Zfe=Math.max,Z8=Math.min,GA=function(le){return function(me,Xe,Mt){if(Mt==null){var rr=ll(Xe),Nr=rr&&Gl(Xe),xa=Nr&&Nr.length&&Um(Xe,Nr);(xa?xa.length:rr)||(Mt=Xe,Xe=me,me=this)}return le(me,Xe,Mt)}}(Uw);ua.after=xf.after;ua.ary=xf.ary;ua.assign=Js.assign;ua.assignIn=Js.assignIn;ua.assignInWith=Js.assignInWith;ua.assignWith=Js.assignWith;ua.at=Js.at;ua.before=xf.before;ua.bind=xf.bind;ua.bindAll=Tu.bindAll;ua.bindKey=xf.bindKey;ua.castArray=Es.castArray;ua.chain=Id.chain;ua.chunk=is.chunk;ua.compact=is.compact;ua.concat=is.concat;ua.cond=Tu.cond;ua.conforms=Tu.conforms;ua.constant=Tu.constant;ua.countBy=Hu.countBy;ua.create=Js.create;ua.curry=xf.curry;ua.curryRight=xf.curryRight;ua.debounce=xf.debounce;ua.defaults=Js.defaults;ua.defaultsDeep=Js.defaultsDeep;ua.defer=xf.defer;ua.delay=xf.delay;ua.difference=is.difference;ua.differenceBy=is.differenceBy;ua.differenceWith=is.differenceWith;ua.drop=is.drop;ua.dropRight=is.dropRight;ua.dropRightWhile=is.dropRightWhile;ua.dropWhile=is.dropWhile;ua.fill=is.fill;ua.filter=Hu.filter;ua.flatMap=Hu.flatMap;ua.flatMapDeep=Hu.flatMapDeep;ua.flatMapDepth=Hu.flatMapDepth;ua.flatten=is.flatten;ua.flattenDeep=is.flattenDeep;ua.flattenDepth=is.flattenDepth;ua.flip=xf.flip;ua.flow=Tu.flow;ua.flowRight=Tu.flowRight;ua.fromPairs=is.fromPairs;ua.functions=Js.functions;ua.functionsIn=Js.functionsIn;ua.groupBy=Hu.groupBy;ua.initial=is.initial;ua.intersection=is.intersection;ua.intersectionBy=is.intersectionBy;ua.intersectionWith=is.intersectionWith;ua.invert=Js.invert;ua.invertBy=Js.invertBy;ua.invokeMap=Hu.invokeMap;ua.iteratee=Tu.iteratee;ua.keyBy=Hu.keyBy;ua.keys=Gl;ua.keysIn=Js.keysIn;ua.map=Hu.map;ua.mapKeys=Js.mapKeys;ua.mapValues=Js.mapValues;ua.matches=Tu.matches;ua.matchesProperty=Tu.matchesProperty;ua.memoize=xf.memoize;ua.merge=Js.merge;ua.mergeWith=Js.mergeWith;ua.method=Tu.method;ua.methodOf=Tu.methodOf;ua.mixin=GA;ua.negate=Gv;ua.nthArg=Tu.nthArg;ua.omit=Js.omit;ua.omitBy=Js.omitBy;ua.once=xf.once;ua.orderBy=Hu.orderBy;ua.over=Tu.over;ua.overArgs=xf.overArgs;ua.overEvery=Tu.overEvery;ua.overSome=Tu.overSome;ua.partial=xf.partial;ua.partialRight=xf.partialRight;ua.partition=Hu.partition;ua.pick=Js.pick;ua.pickBy=Js.pickBy;ua.property=Tu.property;ua.propertyOf=Tu.propertyOf;ua.pull=is.pull;ua.pullAll=is.pullAll;ua.pullAllBy=is.pullAllBy;ua.pullAllWith=is.pullAllWith;ua.pullAt=is.pullAt;ua.range=Tu.range;ua.rangeRight=Tu.rangeRight;ua.rearg=xf.rearg;ua.reject=Hu.reject;ua.remove=is.remove;ua.rest=xf.rest;ua.reverse=is.reverse;ua.sampleSize=Hu.sampleSize;ua.set=Js.set;ua.setWith=Js.setWith;ua.shuffle=Hu.shuffle;ua.slice=is.slice;ua.sortBy=Hu.sortBy;ua.sortedUniq=is.sortedUniq;ua.sortedUniqBy=is.sortedUniqBy;ua.split=du.split;ua.spread=xf.spread;ua.tail=is.tail;ua.take=is.take;ua.takeRight=is.takeRight;ua.takeRightWhile=is.takeRightWhile;ua.takeWhile=is.takeWhile;ua.tap=Id.tap;ua.throttle=xf.throttle;ua.thru=Wv;ua.toArray=Es.toArray;ua.toPairs=Js.toPairs;ua.toPairsIn=Js.toPairsIn;ua.toPath=Tu.toPath;ua.toPlainObject=Es.toPlainObject;ua.transform=Js.transform;ua.unary=xf.unary;ua.union=is.union;ua.unionBy=is.unionBy;ua.unionWith=is.unionWith;ua.uniq=is.uniq;ua.uniqBy=is.uniqBy;ua.uniqWith=is.uniqWith;ua.unset=Js.unset;ua.unzip=is.unzip;ua.unzipWith=is.unzipWith;ua.update=Js.update;ua.updateWith=Js.updateWith;ua.values=Js.values;ua.valuesIn=Js.valuesIn;ua.without=is.without;ua.words=du.words;ua.wrap=xf.wrap;ua.xor=is.xor;ua.xorBy=is.xorBy;ua.xorWith=is.xorWith;ua.zip=is.zip;ua.zipObject=is.zipObject;ua.zipObjectDeep=is.zipObjectDeep;ua.zipWith=is.zipWith;ua.entries=Js.toPairs;ua.entriesIn=Js.toPairsIn;ua.extend=Js.assignIn;ua.extendWith=Js.assignInWith;GA(ua,ua);ua.add=_p.add;ua.attempt=Tu.attempt;ua.camelCase=du.camelCase;ua.capitalize=du.capitalize;ua.ceil=_p.ceil;ua.clamp=g_.clamp;ua.clone=Es.clone;ua.cloneDeep=Es.cloneDeep;ua.cloneDeepWith=Es.cloneDeepWith;ua.cloneWith=Es.cloneWith;ua.conformsTo=Es.conformsTo;ua.deburr=du.deburr;ua.defaultTo=Tu.defaultTo;ua.divide=_p.divide;ua.endsWith=du.endsWith;ua.eq=Es.eq;ua.escape=du.escape;ua.escapeRegExp=du.escapeRegExp;ua.every=Hu.every;ua.find=Hu.find;ua.findIndex=is.findIndex;ua.findKey=Js.findKey;ua.findLast=Hu.findLast;ua.findLastIndex=is.findLastIndex;ua.findLastKey=Js.findLastKey;ua.floor=_p.floor;ua.forEach=Hu.forEach;ua.forEachRight=Hu.forEachRight;ua.forIn=Js.forIn;ua.forInRight=Js.forInRight;ua.forOwn=Js.forOwn;ua.forOwnRight=Js.forOwnRight;ua.get=Js.get;ua.gt=Es.gt;ua.gte=Es.gte;ua.has=Js.has;ua.hasIn=Js.hasIn;ua.head=is.head;ua.identity=ic;ua.includes=Hu.includes;ua.indexOf=is.indexOf;ua.inRange=g_.inRange;ua.invoke=Js.invoke;ua.isArguments=Es.isArguments;ua.isArray=mo;ua.isArrayBuffer=Es.isArrayBuffer;ua.isArrayLike=Es.isArrayLike;ua.isArrayLikeObject=Es.isArrayLikeObject;ua.isBoolean=Es.isBoolean;ua.isBuffer=Es.isBuffer;ua.isDate=Es.isDate;ua.isElement=Es.isElement;ua.isEmpty=Es.isEmpty;ua.isEqual=Es.isEqual;ua.isEqualWith=Es.isEqualWith;ua.isError=Es.isError;ua.isFinite=Es.isFinite;ua.isFunction=Es.isFunction;ua.isInteger=Es.isInteger;ua.isLength=Es.isLength;ua.isMap=Es.isMap;ua.isMatch=Es.isMatch;ua.isMatchWith=Es.isMatchWith;ua.isNaN=Es.isNaN;ua.isNative=Es.isNative;ua.isNil=Es.isNil;ua.isNull=Es.isNull;ua.isNumber=Es.isNumber;ua.isObject=ll;ua.isObjectLike=Es.isObjectLike;ua.isPlainObject=Es.isPlainObject;ua.isRegExp=Es.isRegExp;ua.isSafeInteger=Es.isSafeInteger;ua.isSet=Es.isSet;ua.isString=Es.isString;ua.isSymbol=Es.isSymbol;ua.isTypedArray=Es.isTypedArray;ua.isUndefined=Es.isUndefined;ua.isWeakMap=Es.isWeakMap;ua.isWeakSet=Es.isWeakSet;ua.join=is.join;ua.kebabCase=du.kebabCase;ua.last=cf;ua.lastIndexOf=is.lastIndexOf;ua.lowerCase=du.lowerCase;ua.lowerFirst=du.lowerFirst;ua.lt=Es.lt;ua.lte=Es.lte;ua.max=_p.max;ua.maxBy=_p.maxBy;ua.mean=_p.mean;ua.meanBy=_p.meanBy;ua.min=_p.min;ua.minBy=_p.minBy;ua.stubArray=Tu.stubArray;ua.stubFalse=Tu.stubFalse;ua.stubObject=Tu.stubObject;ua.stubString=Tu.stubString;ua.stubTrue=Tu.stubTrue;ua.multiply=_p.multiply;ua.nth=is.nth;ua.noop=Tu.noop;ua.now=HA.now;ua.pad=du.pad;ua.padEnd=du.padEnd;ua.padStart=du.padStart;ua.parseInt=du.parseInt;ua.random=g_.random;ua.reduce=Hu.reduce;ua.reduceRight=Hu.reduceRight;ua.repeat=du.repeat;ua.replace=du.replace;ua.result=Js.result;ua.round=_p.round;ua.sample=Hu.sample;ua.size=Hu.size;ua.snakeCase=du.snakeCase;ua.some=Hu.some;ua.sortedIndex=is.sortedIndex;ua.sortedIndexBy=is.sortedIndexBy;ua.sortedIndexOf=is.sortedIndexOf;ua.sortedLastIndex=is.sortedLastIndex;ua.sortedLastIndexBy=is.sortedLastIndexBy;ua.sortedLastIndexOf=is.sortedLastIndexOf;ua.startCase=du.startCase;ua.startsWith=du.startsWith;ua.subtract=_p.subtract;ua.sum=_p.sum;ua.sumBy=_p.sumBy;ua.template=du.template;ua.times=Tu.times;ua.toFinite=Es.toFinite;ua.toInteger=Eo;ua.toLength=Es.toLength;ua.toLower=du.toLower;ua.toNumber=Es.toNumber;ua.toSafeInteger=Es.toSafeInteger;ua.toString=Es.toString;ua.toUpper=du.toUpper;ua.trim=du.trim;ua.trimEnd=du.trimEnd;ua.trimStart=du.trimStart;ua.truncate=du.truncate;ua.unescape=du.unescape;ua.uniqueId=Tu.uniqueId;ua.upperCase=du.upperCase;ua.upperFirst=du.upperFirst;ua.each=Hu.forEach;ua.eachRight=Hu.forEachRight;ua.first=is.head;GA(ua,function(){var le={};return lp(ua,function(me,Xe){Y8.call(ua.prototype,Xe)||(le[Xe]=me)}),le}(),{chain:!1});ua.VERSION=jfe;(ua.templateSettings=du.templateSettings).imports._=ua;zh(["bind","bindKey","curry","curryRight","partial","partialRight"],function(le){ua[le].placeholder=ua});zh(["drop","take"],function(le,me){dl.prototype[le]=function(Xe){Xe=Xe===void 0?1:Zfe(Eo(Xe),0);var Mt=this.__filtered__&&!me?new dl(this):this.clone();return Mt.__filtered__?Mt.__takeCount__=Z8(Xe,Mt.__takeCount__):Mt.__views__.push({size:Z8(Xe,X8),type:le+(Mt.__dir__<0?"Right":"")}),Mt},dl.prototype[le+"Right"]=function(Xe){return this.reverse()[le](Xe).reverse()}});zh(["filter","map","takeWhile"],function(le,me){var Xe=me+1,Mt=Xe==qfe||Xe==Hfe;dl.prototype[le]=function(rr){var Nr=this.clone();return Nr.__iteratees__.push({iteratee:io(rr,3),type:Xe}),Nr.__filtered__=Nr.__filtered__||Mt,Nr}});zh(["head","last"],function(le,me){var Xe="take"+(me?"Right":"");dl.prototype[le]=function(){return this[Xe](1).value()[0]}});zh(["initial","tail"],function(le,me){var Xe="drop"+(me?"":"Right");dl.prototype[le]=function(){return this.__filtered__?new dl(this):this[Xe](1)}});dl.prototype.compact=function(){return this.filter(ic)};dl.prototype.find=function(le){return this.filter(le).head()};dl.prototype.findLast=function(le){return this.reverse().find(le)};dl.prototype.invokeMap=ko(function(le,me){return typeof le=="function"?new dl(this):this.map(function(Xe){return xv(Xe,le,me)})});dl.prototype.reject=function(le){return this.filter(Gv(io(le)))};dl.prototype.slice=function(le,me){le=Eo(le);var Xe=this;return Xe.__filtered__&&(le>0||me<0)?new dl(Xe):(le<0?Xe=Xe.takeRight(-le):le&&(Xe=Xe.drop(le)),me!==void 0&&(me=Eo(me),Xe=me<0?Xe.dropRight(-me):Xe.take(me-le)),Xe)};dl.prototype.takeRightWhile=function(le){return this.reverse().takeWhile(le).reverse()};dl.prototype.toArray=function(){return this.take(X8)};lp(dl.prototype,function(le,me){var Xe=/^(?:filter|find|map|reject)|While$/.test(me),Mt=/^(?:head|last)$/.test(me),rr=ua[Mt?"take"+(me=="last"?"Right":""):me],Nr=Mt||/^find/.test(me);rr&&(ua.prototype[me]=function(){var xa=this.__wrapped__,Ha=Mt?[1]:arguments,Za=xa instanceof dl,un=Ha[0],Ji=Za||mo(xa),gn=function(Ml){var Ul=rr.apply(ua,Dp([Ml],Ha));return Mt&&wo?Ul[0]:Ul};Ji&&Xe&&typeof un=="function"&&un.length!=1&&(Za=Ji=!1);var wo=this.__chain__,ps=!!this.__actions__.length,Qn=Nr&&!wo,Ye=Za&&!ps;if(!Nr&&Ji){xa=Ye?xa:new dl(this);var Ps=le.apply(xa,Ha);return Ps.__actions__.push({func:Wv,args:[gn],thisArg:void 0}),new Ip(Ps,wo)}return Qn&&Ye?le.apply(this,Ha):(Ps=this.thru(gn),Qn?Mt?Ps.value()[0]:Ps.value():Ps)})});zh(["pop","push","shift","sort","splice","unshift"],function(le){var me=Gfe[le],Xe=/^(?:push|sort|unshift)$/.test(le)?"tap":"thru",Mt=/^(?:pop|shift)$/.test(le);ua.prototype[le]=function(){var rr=arguments;if(Mt&&!this.__chain__){var Nr=this.value();return me.apply(mo(Nr)?Nr:[],rr)}return this[Xe](function(xa){return me.apply(mo(xa)?xa:[],rr)})}});lp(dl.prototype,function(le,me){var Xe=ua[me];if(Xe){var Mt=Xe.name+"";Y8.call(Tm,Mt)||(Tm[Mt]=[]),Tm[Mt].push({name:me,func:Xe})}});Tm[ey(void 0,Vfe).name]=[{name:"wrapper",func:void 0}];dl.prototype.clone=V8;dl.prototype.reverse=q8;dl.prototype.value=G8;ua.prototype.at=Id.at;ua.prototype.chain=Id.wrapperChain;ua.prototype.commit=Id.commit;ua.prototype.next=Id.next;ua.prototype.plant=Id.plant;ua.prototype.reverse=Id.reverse;ua.prototype.toJSON=ua.prototype.valueOf=ua.prototype.value=Id.value;ua.prototype.first=ua.prototype.head;W8&&(ua.prototype[W8]=Id.toIterator);var kc=ua;var Rd=HW($8());window.PlotlyConfig={MathJaxConfig:"local"};var WA=class{constructor(me,Xe){this.model=me,this.serializers=Xe}get(me){let Xe=this.serializers[me],Mt=this.model.get(me);return Xe?.deserialize?Xe.deserialize(Mt):Mt}set(me,Xe){let Mt=this.serializers[me];Mt?.serialize&&(Xe=Mt.serialize(Xe)),this.model.set(me,Xe)}on(me,Xe){this.model.on(me,Xe)}save_changes(){this.model.save_changes()}defaults(){return{_widget_data:[],_widget_layout:{},_config:{},_py2js_addTraces:null,_py2js_deleteTraces:null,_py2js_moveTraces:null,_py2js_restyle:null,_py2js_relayout:null,_py2js_update:null,_py2js_animate:null,_py2js_removeLayoutProps:null,_py2js_removeTraceProps:null,_js2py_restyle:null,_js2py_relayout:null,_js2py_update:null,_js2py_layoutDelta:null,_js2py_traceDeltas:null,_js2py_pointsCallback:null,_last_layout_edit_id:0,_last_trace_edit_id:0}}initialize(){this.model.on("change:_widget_data",()=>this.do_data()),this.model.on("change:_widget_layout",()=>this.do_layout()),this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),this.model.on("change:_py2js_removeLayoutProps",()=>this.do_removeLayoutProps()),this.model.on("change:_py2js_removeTraceProps",()=>this.do_removeTraceProps())}_normalize_trace_indexes(me){if(me==null){var Xe=this.model.get("_widget_data").length;me=kc.range(Xe)}return Array.isArray(me)||(me=[me]),me}do_data(){}do_layout(){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.trace_data;kc.forEach(Mt,function(rr){Xe.push(rr)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this.model.get("_widget_data");Xe.slice().reverse().forEach(function(rr){Mt.splice(rr,1)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.current_trace_inds,rr=me.new_trace_inds;$fe(Xe,Mt,rr)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this._normalize_trace_indexes(me.restyle_traces);eF(this.model.get("_widget_data"),Xe,Mt)}}do_relayout(){var me=this.model.get("_py2js_relayout");me!==null&&u2(this.model.get("_widget_layout"),me.relayout_data)}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces);eF(this.model.get("_widget_data"),Xe,rr),u2(this.model.get("_widget_layout"),Mt)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){for(var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces),Nr=0;Nr<Xe.length;Nr++){var xa=Xe[Nr],Ha=rr[Nr],Za=this.model.get("_widget_data")[Ha];u2(Za,xa)}u2(this.model.get("_widget_layout"),Mt)}}do_removeLayoutProps(){var me=this.model.get("_py2js_removeLayoutProps");if(me!==null){var Xe=me.remove_props,Mt=this.model.get("_widget_layout");tF(Mt,Xe)}}do_removeTraceProps(){var me=this.model.get("_py2js_removeTraceProps");if(me!==null){var Xe=me.remove_props,Mt=me.remove_trace,rr=this.model.get("_widget_data")[Mt];tF(rr,Xe)}}},Xfe={_widget_data:{deserialize:Nh,serialize:Bh},_widget_layout:{deserialize:Nh,serialize:Bh},_py2js_addTraces:{deserialize:Nh,serialize:Bh},_py2js_deleteTraces:{deserialize:Nh,serialize:Bh},_py2js_moveTraces:{deserialize:Nh,serialize:Bh},_py2js_restyle:{deserialize:Nh,serialize:Bh},_py2js_relayout:{deserialize:Nh,serialize:Bh},_py2js_update:{deserialize:Nh,serialize:Bh},_py2js_animate:{deserialize:Nh,serialize:Bh},_py2js_removeLayoutProps:{deserialize:Nh,serialize:Bh},_py2js_removeTraceProps:{deserialize:Nh,serialize:Bh},_js2py_restyle:{deserialize:Nh,serialize:Bh},_js2py_relayout:{deserialize:Nh,serialize:Bh},_js2py_update:{deserialize:Nh,serialize:Bh},_js2py_layoutDelta:{deserialize:Nh,serialize:Bh},_js2py_traceDeltas:{deserialize:Nh,serialize:Bh},_js2py_pointsCallback:{deserialize:Nh,serialize:Bh}},ZA=class{constructor(me,Xe){this.model=me,this.el=Xe}perform_render(){var me=this;this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),window?.MathJax?.Hub?.Config?.({SVG:{font:"STIX-Web"}});var Xe=this.model.get("_last_layout_edit_id"),Mt=this.model.get("_last_trace_edit_id");this.viewID=rF();var rr=kc.cloneDeep(this.model.get("_widget_data")),Nr=kc.cloneDeep(this.model.get("_widget_layout"));Nr.height||(Nr.height=360);var xa=this.model.get("_config");xa.editSelection=!1,Rd.default.newPlot(me.el,rr,Nr,xa).then(function(){me._sendTraceDeltas(Mt),me._sendLayoutDelta(Xe),me.el.on("plotly_restyle",function(Za){me.handle_plotly_restyle(Za)}),me.el.on("plotly_relayout",function(Za){me.handle_plotly_relayout(Za)}),me.el.on("plotly_update",function(Za){me.handle_plotly_update(Za)}),me.el.on("plotly_click",function(Za){me.handle_plotly_click(Za)}),me.el.on("plotly_hover",function(Za){me.handle_plotly_hover(Za)}),me.el.on("plotly_unhover",function(Za){me.handle_plotly_unhover(Za)}),me.el.on("plotly_selected",function(Za){me.handle_plotly_selected(Za)}),me.el.on("plotly_deselect",function(Za){me.handle_plotly_deselect(Za)}),me.el.on("plotly_doubleclick",function(Za){me.handle_plotly_doubleclick(Za)});var Ha=new CustomEvent("plotlywidget-after-render",{detail:{element:me.el,viewID:me.viewID}});document.dispatchEvent(Ha)})}_processLuminoMessage(me,Xe){Xe.apply(this,arguments);var Mt=this;switch(me.type){case"before-attach":var rr={showgrid:!1,showline:!1,tickvals:[]};Rd.default.newPlot(Mt.el,[],{xaxis:rr,yaxis:rr}),this.resizeEventListener=()=>{this.autosizeFigure()},window.addEventListener("resize",this.resizeEventListener);break;case"after-attach":this.perform_render();break;case"after-show":case"resize":this.autosizeFigure();break}}autosizeFigure(){var me=this,Xe=me.model.get("_widget_layout");(kc.isNil(Xe)||kc.isNil(Xe.width))&&Rd.default.Plots.resize(me.el).then(function(){var Mt=me.model.get("_last_layout_edit_id");me._sendLayoutDelta(Mt)})}remove(){Rd.default.purge(this.el),window.removeEventListener("resize",this.resizeEventListener)}getFullData(){return kc.mergeWith({},this.el._fullData,this.el.data,Q8)}getFullLayout(){return kc.mergeWith({},this.el._fullLayout,this.el.layout,Q8)}buildPointsObject(me){var Xe;if(me.hasOwnProperty("points")){var Mt=me.points,rr=Mt.length,Nr=!0;for(let Ji=0;Ji<rr&&(Nr=Nr&&Mt[Ji].hasOwnProperty("pointNumbers"),!!Nr);Ji++);var xa=rr;if(Nr){xa=0;for(let Ji=0;Ji<rr;Ji++)xa+=Mt[Ji].pointNumbers.length}if(Xe={trace_indexes:new Array(xa),point_indexes:new Array(xa),xs:new Array(xa),ys:new Array(xa)},Nr){for(var Ha=0,Za=0;Za<rr;Za++)for(let gn=0;gn<Mt[Za].pointNumbers.length;gn++,Ha++)Xe.point_indexes[Ha]=Mt[Za].pointNumbers[gn],Xe.xs[Ha]=Mt[Za].x,Xe.ys[Ha]=Mt[Za].y,Xe.trace_indexes[Ha]=Mt[Za].curveNumber;let Ji=!0;for(let gn=1;gn<xa&&(Ji=Ji&&Xe.trace_indexes[gn-1]===Xe.trace_indexes[gn],!!Ji);gn++);Ji&&Xe.point_indexes.sort(function(gn,wo){return gn-wo})}else for(var Za=0;Za<rr;Za++)Xe.trace_indexes[Za]=Mt[Za].curveNumber,Xe.point_indexes[Za]=Mt[Za].pointNumber,Xe.xs[Za]=Mt[Za].x,Xe.ys[Za]=Mt[Za].y;var un=Mt[0]!==void 0&&Mt[0].hasOwnProperty("z");if(un)for(Xe.zs=new Array(rr),Za=0;Za<rr;Za++)Xe.zs[Za]=Mt[Za].z;return Xe}else return null}buildInputDeviceStateObject(me){var Xe=me.event;if(Xe===void 0)return null;var Mt={alt:Xe.altKey,ctrl:Xe.ctrlKey,meta:Xe.metaKey,shift:Xe.shiftKey,button:Xe.button,buttons:Xe.buttons};return Mt}buildSelectorObject(me){var Xe;return me.hasOwnProperty("range")?Xe={type:"box",selector_state:{xrange:me.range.x,yrange:me.range.y}}:me.hasOwnProperty("lassoPoints")?Xe={type:"lasso",selector_state:{xs:me.lassoPoints.x,ys:me.lassoPoints.y}}:Xe=null,Xe}handle_plotly_restyle(me){if(me!=null&&!(me[0]&&me[0].hasOwnProperty("_doNotReportToPy"))){var Xe=me[0],Mt=me[1],rr={style_data:Xe,style_traces:Mt,source_view_id:this.viewID};this.model.set("_js2py_restyle",rr),this.touch()}}touch(){this.model.save_changes()}handle_plotly_relayout(me){if(me!=null&&!me.hasOwnProperty("_doNotReportToPy")){var Xe={relayout_data:me,source_view_id:this.viewID};this.model.set("_js2py_relayout",Xe),this.touch()}}handle_plotly_update(me){if(me!=null&&!(me.data&&me.data[0].hasOwnProperty("_doNotReportToPy"))){var Xe={style_data:me.data[0],style_traces:me.data[1],layout_data:me.layout,source_view_id:this.viewID};this.model.set("_js2py_update",Xe),this.touch()}}handle_plotly_click(me){this._send_points_callback_message(me,"plotly_click")}handle_plotly_hover(me){this._send_points_callback_message(me,"plotly_hover")}handle_plotly_unhover(me){this._send_points_callback_message(me,"plotly_unhover")}handle_plotly_selected(me){this._send_points_callback_message(me,"plotly_selected")}handle_plotly_deselect(me){me={points:[]},this._send_points_callback_message(me,"plotly_deselect")}_send_points_callback_message(me,Xe){if(me!=null){var Mt={event_type:Xe,points:this.buildPointsObject(me),device_state:this.buildInputDeviceStateObject(me),selector:this.buildSelectorObject(me)};Mt.points!==null&&Mt.points!==void 0&&(this.model.set("_js2py_pointsCallback",Mt),this.touch())}}handle_plotly_doubleclick(me){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this;Rd.default.addTraces(this.el,me.trace_data).then(function(){Xe._sendTraceDeltas(me.trace_edit_id);var Mt=me.layout_edit_id;Xe._sendLayoutDelta(Mt)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this;Rd.default.deleteTraces(this.el,Xe).then(function(){var rr=me.trace_edit_id;Mt._sendTraceDeltas(rr);var Nr=me.layout_edit_id;Mt._sendLayoutDelta(Nr)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=me.current_trace_inds,Mt=me.new_trace_inds,rr=kc.isEqual(Xe,Mt);rr||Rd.default.moveTraces(this.el,Xe,Mt)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this.model._normalize_trace_indexes(me.restyle_traces);Xe._doNotReportToPy=!0,Rd.default.restyle(this.el,Xe,Mt),this._sendTraceDeltas(me.trace_edit_id);var rr=me.layout_edit_id;this._sendLayoutDelta(rr)}}do_relayout(){var me=this.model.get("_py2js_relayout");if(me!==null){if(me.source_view_id!==this.viewID){var Xe=me.relayout_data;Xe._doNotReportToPy=!0,Rd.default.relayout(this.el,me.relayout_data)}var Mt=me.layout_edit_id;this._sendLayoutDelta(Mt)}}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data||{},Mt=me.layout_data||{},rr=this.model._normalize_trace_indexes(me.style_traces);Xe._doNotReportToPy=!0,Rd.default.update(this.el,Xe,Mt,rr),this._sendTraceDeltas(me.trace_edit_id);var Nr=me.layout_edit_id;this._sendLayoutDelta(Nr)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){var Xe=me.animation_opts,Mt=me.style_data,rr=me.layout_data,Nr=this.model._normalize_trace_indexes(me.style_traces),xa={data:Mt,layout:rr,traces:Nr};xa._doNotReportToPy=!0;var Ha=this;Rd.default.animate(this.el,xa,Xe).then(function(){Ha._sendTraceDeltas(me.trace_edit_id);var Za=me.layout_edit_id;Ha._sendLayoutDelta(Za)})}}_sendLayoutDelta(me){var Xe=y_(this.getFullLayout(),this.model.get("_widget_layout")),Mt={layout_delta:Xe,layout_edit_id:me};this.model.set("_js2py_widget_layoutDelta",Mt),this.touch()}_sendTraceDeltas(me){for(var Xe=this.model.get("_widget_data"),Mt=kc.range(Xe.length),rr=new Array(Mt.length),Nr=this.getFullData(),xa=0;xa<Mt.length;xa++){var Ha=Mt[xa];rr[xa]=y_(Nr[Ha],Xe[Ha])}var Za={trace_deltas:rr,trace_edit_id:me};this.model.set("_js2py_traceDeltas",Za),this.touch()}},Yfe={int8:Int8Array,int16:Int16Array,int32:Int32Array,uint8:Uint8Array,uint16:Uint16Array,uint32:Uint32Array,float32:Float32Array,float64:Float64Array};function Kfe(le){var me;if(le instanceof Int8Array)me="int8";else if(le instanceof Int16Array)me="int16";else if(le instanceof Int32Array)me="int32";else if(le instanceof Uint8Array)me="uint8";else if(le instanceof Uint16Array)me="uint16";else if(le instanceof Uint32Array)me="uint32";else if(le instanceof Float32Array)me="float32";else if(le instanceof Float64Array)me="float64";else return le;var Xe={dtype:me,shape:[le.length],value:le.buffer};return Xe}function Bh(le,me){var Xe;if(kc.isTypedArray(le))Xe=Kfe(le);else if(Array.isArray(le)){Xe=new Array(le.length);for(var Mt=0;Mt<le.length;Mt++)Xe[Mt]=Bh(le[Mt])}else if(kc.isObject(le)){Xe={};for(var rr in le)le.hasOwnProperty(rr)&&(Xe[rr]=Bh(le[rr]))}else le===void 0?Xe="_undefined_":Xe=le;return Xe}function Nh(le,me){var Xe;if(Array.isArray(le)){Xe=new Array(le.length);for(var Mt=0;Mt<le.length;Mt++)Xe[Mt]=Nh(le[Mt])}else if(kc.isObject(le))if((kc.has(le,"value")||kc.has(le,"buffer"))&&kc.has(le,"dtype")&&kc.has(le,"shape")){var rr=Yfe[le.dtype],Nr=kc.has(le,"value")?le.value.buffer:le.buffer.buffer;Xe=new rr(Nr)}else{Xe={};for(var xa in le)le.hasOwnProperty(xa)&&(Xe[xa]=Nh(le[xa]))}else le==="_undefined_"?Xe=void 0:Xe=le;return Xe}function Jfe(le){return ArrayBuffer.isView(le)&&!(le instanceof DataView)}function Q8(le,me,Xe){if(Xe[0]==="_")return null;if(Jfe(me))return me}function u2(le,me){for(var Xe in me)if(me.hasOwnProperty(Xe)){var Mt=me[Xe];Mt===null?kc.unset(le,Xe):kc.set(le,Xe,Mt)}}function eF(le,me,Xe){for(var Mt in me)if(me.hasOwnProperty(Mt)){var rr=me[Mt];Array.isArray(rr)||(rr=[rr]);for(var Nr=0;Nr<Xe.length;Nr++){var xa=Xe[Nr],Ha=le[xa],Za=rr[Nr%rr.length];Za===null?kc.unset(Ha,Mt):Za!==void 0&&kc.set(Ha,Mt,Za)}}}function $fe(le,me,Xe){for(var Mt=[],rr=me.length-1;rr>=0;rr--)Mt.splice(0,0,le[me[rr]]),le.splice(me[rr],1);var Nr=kc(Xe).zip(Mt).sortBy(0).unzip().value();Xe=Nr[0],Mt=Nr[1];for(var xa=0;xa<Xe.length;xa++)le.splice(Xe[xa],0,Mt[xa])}function tF(le,me){for(var Xe=0;Xe<me.length;Xe++){var Mt=me[Xe];kc.unset(le,Mt)}}function y_(le,me){var Xe;Array.isArray(le)?Xe=new Array(le.length):Xe={},me==null&&(me={});for(var Mt in le)if(Mt[0]!=="_"&&le.hasOwnProperty(Mt)&&le[Mt]!==null){var rr;if(rr=kc.isEqual(le[Mt],me[Mt]),!rr||Mt==="uid"){var Nr=le[Mt];if(me.hasOwnProperty(Mt)&&typeof Nr=="object")if(Array.isArray(Nr))if(Nr.length>0&&typeof Nr[0]=="object"){Xe[Mt]=new Array(Nr.length);for(var xa=0;xa<Nr.length;xa++)!Array.isArray(me[Mt])||me[Mt].length<=xa?Xe[Mt][xa]=Nr[xa]:Xe[Mt][xa]=y_(Nr[xa],me[Mt][xa])}else Xe[Mt]=Nr;else{var Ha=y_(Nr,me[Mt]);Object.keys(Ha).length>0&&(Xe[Mt]=Ha)}else typeof Nr=="object"&&!Array.isArray(Nr)?Xe[Mt]=y_(Nr,{}):Nr!==void 0&&typeof Nr!="function"&&(Xe[Mt]=Nr)}}return Xe}function rF(le,me,Xe,Mt){if(Xe||(Xe=16),me===void 0&&(me=24),me<=0)return"0";var rr=Math.log(Math.pow(2,me))/Math.log(Xe),Nr="",xa,Ha,Za;for(xa=2;rr===1/0;xa*=2)rr=Math.log(Math.pow(2,me/xa))/Math.log(Xe)*xa;var un=rr-Math.floor(rr);for(xa=0;xa<Math.floor(rr);xa++)Za=Math.floor(Math.random()*Xe).toString(Xe),Nr=Za+Nr;un&&(Ha=Math.pow(Xe,un),Za=Math.floor(Math.random()*Ha).toString(Xe),Nr=Za+Nr);var Ji=parseInt(Nr,Xe);return le&&le[Nr]||Ji!==1/0&&Ji>=Math.pow(2,me)?Mt>10?(console.warn("randstr failed uniqueness"),Nr):rF(le,me,Xe,(Mt||0)+1):Nr}var lGe=()=>{let le;return{initialize(me){le=new WA(me.model,Xfe),le.initialize()},render({el:me}){let Xe=new ZA(le,me);return Xe.perform_render(),()=>Xe.remove()}}};export{WA as FigureModel,ZA as FigureView,lGe as default};
+/*! Bundled license information:
+
+plotly.js/dist/plotly.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+ (*!
+ * Determine if an object is a Buffer
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+ (*!
+ * pad-left <https://github.com/jonschlinkert/pad-left>
+ *
+ * Copyright (c) 2014-2015, Jon Schlinkert.
+ * Licensed under the MIT license.
+ *)
+ (*!
+ * repeat-string <https://github.com/jonschlinkert/repeat-string>
+ *
+ * Copyright (c) 2014-2015, Jon Schlinkert.
+ * Licensed under the MIT License.
+ *)
+ (*! Bundled license information:
+
+ native-promise-only/lib/npo.src.js:
+ (*! Native Promise Only
+ v0.8.1 (c) Kyle Simpson
+ MIT License: http://getify.mit-license.org
+ *)
+
+ polybooljs/index.js:
+ (*
+ * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc
+ * @license MIT
+ * @preserve Project Home: https://github.com/voidqk/polybooljs
+ *)
+
+ ieee754/index.js:
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+
+ buffer/index.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+
+ safe-buffer/index.js:
+ (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+
+ assert/build/internal/util/comparisons.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
+ * @license MIT
+ *)
+
+ object-assign/index.js:
+ (*
+ object-assign
+ (c) Sindre Sorhus
+ @license MIT
+ *)
+
+ maplibre-gl/dist/maplibre-gl.js:
+ (**
+ * MapLibre GL JS
+ * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt
+ *)
+ *)
+
+lodash-es/lodash.default.js:
+ (**
+ * @license
+ * Lodash (Custom Build) <https://lodash.com/>
+ * Build: `lodash modularize exports="es" -o ./`
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
+ * Released under MIT license <https://lodash.com/license>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ *)
+
+lodash-es/lodash.js:
+ (**
+ * @license
+ * Lodash (Custom Build) <https://lodash.com/>
+ * Build: `lodash modularize exports="es" -o ./`
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
+ * Released under MIT license <https://lodash.com/license>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ *)
+*/