wacomm 1.64.0 → 1.64.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- "use strict";const NT=require("./index-CC9w4-dg.js");function VT(Au,dm){for(var To=0;To<dm.length;To++){const ms=dm[To];if(typeof ms!="string"&&!Array.isArray(ms)){for(const So in ms)if(So!=="default"&&!(So in Au)){const Wa=Object.getOwnPropertyDescriptor(ms,So);Wa&&Object.defineProperty(Au,So,Wa.get?Wa:{enumerable:!0,get:()=>ms[So]})}}}return Object.freeze(Object.defineProperty(Au,Symbol.toStringTag,{value:"Module"}))}var Ud={exports:{}},UT=Ud.exports,Fv;function jT(){return Fv||(Fv=1,(function(Au,dm){(function(To,ms){Au.exports=ms()})(UT,(function(){"use strict";var To,ms,So;function Wa(o,Sr){if(!To)To=Sr;else if(!ms)ms=Sr;else{var Ei="self.onerror = function() { console.error('An error occurred while parsing the WebWorker bundle. This is most likely due to improper transpilation by Babel; please see https://docs.mapbox.com/mapbox-gl-js/guides/install/#transpiling'); }; var sharedChunk = {}; ("+To+")(sharedChunk); ("+ms+")(sharedChunk); self.onerror = null;",_s={};To(_s),So=Sr(_s),typeof window<"u"&&window&&window.URL&&window.URL.createObjectURL&&(So.workerUrl=window.URL.createObjectURL(new Blob([Ei],{type:"text/javascript"})))}}Wa(["exports"],function(o){var Sr=1e-6,Ei=typeof Float32Array<"u"?Float32Array:Array;function _s(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=i*u-a*n;return h?(r[0]=u*(h=1/h),r[1]=-n*h,r[2]=-a*h,r[3]=i*h,r):null}function tc(){var r=new Ei(9);return Ei!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[5]=0,r[6]=0,r[7]=0),r[0]=1,r[4]=1,r[8]=1,r}function ea(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=e[4],f=e[5],_=e[6],g=e[7],v=e[8];return r[0]=h*v-f*g,r[1]=a*g-n*v,r[2]=n*f-a*h,r[3]=f*_-u*v,r[4]=i*v-a*_,r[5]=a*u-i*f,r[6]=u*g-h*_,r[7]=n*_-i*g,r[8]=i*h-n*u,r}function Yn(r,e,i){var n=e[0],a=e[1],u=e[2],h=e[3],f=e[4],_=e[5],g=e[6],v=e[7],b=e[8],w=i[0],I=i[1],E=i[2],C=i[3],D=i[4],R=i[5],O=i[6],B=i[7],V=i[8];return r[0]=w*n+I*h+E*g,r[1]=w*a+I*f+E*v,r[2]=w*u+I*_+E*b,r[3]=C*n+D*h+R*g,r[4]=C*a+D*f+R*v,r[5]=C*u+D*_+R*b,r[6]=O*n+B*h+V*g,r[7]=O*a+B*f+V*v,r[8]=O*u+B*_+V*b,r}function Io(){var r=new Ei(16);return Ei!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=0,r[12]=0,r[13]=0,r[14]=0),r[0]=1,r[5]=1,r[10]=1,r[15]=1,r}function Jt(r){var e=new Ei(16);return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}function Ai(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function kn(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=e[4],f=e[5],_=e[6],g=e[7],v=e[8],b=e[9],w=e[10],I=e[11],E=e[12],C=e[13],D=e[14],R=e[15],O=i*f-n*h,B=i*_-a*h,V=i*g-u*h,$=n*_-a*f,H=n*g-u*f,J=a*g-u*_,ee=v*C-b*E,K=v*D-w*E,re=v*R-I*E,oe=b*D-w*C,Te=b*R-I*C,ve=w*R-I*D,we=O*ve-B*Te+V*oe+$*re-H*K+J*ee;return we?(r[0]=(f*ve-_*Te+g*oe)*(we=1/we),r[1]=(a*Te-n*ve-u*oe)*we,r[2]=(C*J-D*H+R*$)*we,r[3]=(w*H-b*J-I*$)*we,r[4]=(_*re-h*ve-g*K)*we,r[5]=(i*ve-a*re+u*K)*we,r[6]=(D*V-E*J-R*B)*we,r[7]=(v*J-w*V+I*B)*we,r[8]=(h*Te-f*re+g*ee)*we,r[9]=(n*re-i*Te-u*ee)*we,r[10]=(E*H-C*V+R*O)*we,r[11]=(b*V-v*H-I*O)*we,r[12]=(f*K-h*oe-_*ee)*we,r[13]=(i*oe-n*K+a*ee)*we,r[14]=(C*B-E*$-D*O)*we,r[15]=(v*$-b*B+w*O)*we,r):null}function Si(r,e,i){var n=e[0],a=e[1],u=e[2],h=e[3],f=e[4],_=e[5],g=e[6],v=e[7],b=e[8],w=e[9],I=e[10],E=e[11],C=e[12],D=e[13],R=e[14],O=e[15],B=i[0],V=i[1],$=i[2],H=i[3];return r[0]=B*n+V*f+$*b+H*C,r[1]=B*a+V*_+$*w+H*D,r[2]=B*u+V*g+$*I+H*R,r[3]=B*h+V*v+$*E+H*O,r[4]=(B=i[4])*n+(V=i[5])*f+($=i[6])*b+(H=i[7])*C,r[5]=B*a+V*_+$*w+H*D,r[6]=B*u+V*g+$*I+H*R,r[7]=B*h+V*v+$*E+H*O,r[8]=(B=i[8])*n+(V=i[9])*f+($=i[10])*b+(H=i[11])*C,r[9]=B*a+V*_+$*w+H*D,r[10]=B*u+V*g+$*I+H*R,r[11]=B*h+V*v+$*E+H*O,r[12]=(B=i[12])*n+(V=i[13])*f+($=i[14])*b+(H=i[15])*C,r[13]=B*a+V*_+$*w+H*D,r[14]=B*u+V*g+$*I+H*R,r[15]=B*h+V*v+$*E+H*O,r}function tn(r,e,i){var n,a,u,h,f,_,g,v,b,w,I,E,C=i[0],D=i[1],R=i[2];return e===r?(r[12]=e[0]*C+e[4]*D+e[8]*R+e[12],r[13]=e[1]*C+e[5]*D+e[9]*R+e[13],r[14]=e[2]*C+e[6]*D+e[10]*R+e[14],r[15]=e[3]*C+e[7]*D+e[11]*R+e[15]):(a=e[1],u=e[2],h=e[3],f=e[4],_=e[5],g=e[6],v=e[7],b=e[8],w=e[9],I=e[10],E=e[11],r[0]=n=e[0],r[1]=a,r[2]=u,r[3]=h,r[4]=f,r[5]=_,r[6]=g,r[7]=v,r[8]=b,r[9]=w,r[10]=I,r[11]=E,r[12]=n*C+f*D+b*R+e[12],r[13]=a*C+_*D+w*R+e[13],r[14]=u*C+g*D+I*R+e[14],r[15]=h*C+v*D+E*R+e[15]),r}function Ir(r,e,i){var n=i[0],a=i[1],u=i[2];return r[0]=e[0]*n,r[1]=e[1]*n,r[2]=e[2]*n,r[3]=e[3]*n,r[4]=e[4]*a,r[5]=e[5]*a,r[6]=e[6]*a,r[7]=e[7]*a,r[8]=e[8]*u,r[9]=e[9]*u,r[10]=e[10]*u,r[11]=e[11]*u,r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}function gs(r,e,i){var n=Math.sin(i),a=Math.cos(i),u=e[4],h=e[5],f=e[6],_=e[7],g=e[8],v=e[9],b=e[10],w=e[11];return e!==r&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[4]=u*a+g*n,r[5]=h*a+v*n,r[6]=f*a+b*n,r[7]=_*a+w*n,r[8]=g*a-u*n,r[9]=v*a-h*n,r[10]=b*a-f*n,r[11]=w*a-_*n,r}function Bn(r,e,i){var n=Math.sin(i),a=Math.cos(i),u=e[0],h=e[1],f=e[2],_=e[3],g=e[8],v=e[9],b=e[10],w=e[11];return e!==r&&(r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=u*a-g*n,r[1]=h*a-v*n,r[2]=f*a-b*n,r[3]=_*a-w*n,r[8]=u*n+g*a,r[9]=h*n+v*a,r[10]=f*n+b*a,r[11]=_*n+w*a,r}function Nn(r,e,i){var n=Math.sin(i),a=Math.cos(i),u=e[0],h=e[1],f=e[2],_=e[3],g=e[4],v=e[5],b=e[6],w=e[7];return e!==r&&(r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=u*a+g*n,r[1]=h*a+v*n,r[2]=f*a+b*n,r[3]=_*a+w*n,r[4]=g*a-u*n,r[5]=v*a-h*n,r[6]=b*a-f*n,r[7]=w*a-_*n,r}function Kn(r,e){return r[0]=e[0],r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=e[1],r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=e[2],r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function Eo(r,e,i){var n,a,u,h=i[0],f=i[1],_=i[2],g=Math.sqrt(h*h+f*f+_*_);return g<Sr?null:(h*=g=1/g,f*=g,_*=g,n=Math.sin(e),a=Math.cos(e),r[0]=h*h*(u=1-a)+a,r[1]=f*h*u+_*n,r[2]=_*h*u-f*n,r[3]=0,r[4]=h*f*u-_*n,r[5]=f*f*u+a,r[6]=_*f*u+h*n,r[7]=0,r[8]=h*_*u+f*n,r[9]=f*_*u-h*n,r[10]=_*_*u+a,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r)}function Xa(r,e){var i=e[0],n=e[1],a=e[2],u=e[4],h=e[5],f=e[6],_=e[8],g=e[9],v=e[10];return r[0]=Math.sqrt(i*i+n*n+a*a),r[1]=Math.sqrt(u*u+h*h+f*f),r[2]=Math.sqrt(_*_+g*g+v*v),r}function Ya(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=i+i,f=n+n,_=a+a,g=i*h,v=n*h,b=n*f,w=a*h,I=a*f,E=a*_,C=u*h,D=u*f,R=u*_;return r[0]=1-b-E,r[1]=v+R,r[2]=w-D,r[3]=0,r[4]=v-R,r[5]=1-g-E,r[6]=I+C,r[7]=0,r[8]=w+D,r[9]=I-C,r[10]=1-g-b,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}var Ka=Si;function Yt(){var r=new Ei(3);return Ei!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r}function ic(r){var e=new Ei(3);return e[0]=r[0],e[1]=r[1],e[2]=r[2],e}function rn(r){var e=r[0],i=r[1],n=r[2];return Math.sqrt(e*e+i*i+n*n)}function li(r,e,i){var n=new Ei(3);return n[0]=r,n[1]=e,n[2]=i,n}function hi(r,e,i,n){return r[0]=e,r[1]=i,r[2]=n,r}function Hi(r,e,i){return r[0]=e[0]+i[0],r[1]=e[1]+i[1],r[2]=e[2]+i[2],r}function Jn(r,e,i){return r[0]=e[0]-i[0],r[1]=e[1]-i[1],r[2]=e[2]-i[2],r}function Vn(r,e,i){return r[0]=e[0]*i[0],r[1]=e[1]*i[1],r[2]=e[2]*i[2],r}function Qn(r,e,i){return r[0]=Math.min(e[0],i[0]),r[1]=Math.min(e[1],i[1]),r[2]=Math.min(e[2],i[2]),r}function Un(r,e,i){return r[0]=Math.max(e[0],i[0]),r[1]=Math.max(e[1],i[1]),r[2]=Math.max(e[2],i[2]),r}function Ii(r,e,i){return r[0]=e[0]*i,r[1]=e[1]*i,r[2]=e[2]*i,r}function pn(r,e,i,n){return r[0]=e[0]+i[0]*n,r[1]=e[1]+i[1]*n,r[2]=e[2]+i[2]*n,r}function rc(r,e){var i=e[0]-r[0],n=e[1]-r[1],a=e[2]-r[2];return Math.sqrt(i*i+n*n+a*a)}function Ja(r,e){var i=e[0]-r[0],n=e[1]-r[1],a=e[2]-r[2];return i*i+n*n+a*a}function nc(r){var e=r[0],i=r[1],n=r[2];return e*e+i*i+n*n}function Us(r,e){return r[0]=-e[0],r[1]=-e[1],r[2]=-e[2],r}function ni(r,e){var i=e[0],n=e[1],a=e[2],u=i*i+n*n+a*a;return u>0&&(u=1/Math.sqrt(u)),r[0]=e[0]*u,r[1]=e[1]*u,r[2]=e[2]*u,r}function zi(r,e){return r[0]*e[0]+r[1]*e[1]+r[2]*e[2]}function xr(r,e,i){var n=e[0],a=e[1],u=e[2],h=i[0],f=i[1],_=i[2];return r[0]=a*_-u*f,r[1]=u*h-n*_,r[2]=n*f-a*h,r}function Ao(r,e,i,n){var a=e[0],u=e[1],h=e[2];return r[0]=a+n*(i[0]-a),r[1]=u+n*(i[1]-u),r[2]=h+n*(i[2]-h),r}function Vi(r,e,i){var n=e[0],a=e[1],u=e[2],h=i[3]*n+i[7]*a+i[11]*u+i[15];return r[0]=(i[0]*n+i[4]*a+i[8]*u+i[12])/(h=h||1),r[1]=(i[1]*n+i[5]*a+i[9]*u+i[13])/h,r[2]=(i[2]*n+i[6]*a+i[10]*u+i[14])/h,r}function js(r,e,i){var n=e[0],a=e[1],u=e[2];return r[0]=n*i[0]+a*i[3]+u*i[6],r[1]=n*i[1]+a*i[4]+u*i[7],r[2]=n*i[2]+a*i[5]+u*i[8],r}function Gs(r,e,i){var n=i[0],a=i[1],u=i[2],h=i[3],f=e[0],_=e[1],g=e[2],v=a*g-u*_,b=u*f-n*g,w=n*_-a*f;return r[0]=f+h*(v+=v)+a*(w+=w)-u*(b+=b),r[1]=_+h*b+u*v-n*w,r[2]=g+h*w+n*b-a*v,r}function Mo(r){return r[0]=0,r[1]=0,r[2]=0,r}function jn(r,e){return r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]}var ji=Jn,ta=Vn,qs=rn;function ia(){var r=new Ei(4);return Ei!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0,r[3]=0),r}function Po(r,e,i){return r[0]=e[0]*i,r[1]=e[1]*i,r[2]=e[2]*i,r[3]=e[3]*i,r}function Qa(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=i*i+n*n+a*a+u*u;return h>0&&(h=1/Math.sqrt(h)),r[0]=i*h,r[1]=n*h,r[2]=a*h,r[3]=u*h,r}function nn(r,e){return r[0]*e[0]+r[1]*e[1]+r[2]*e[2]+r[3]*e[3]}function Hr(r,e,i){var n=e[0],a=e[1],u=e[2],h=e[3];return r[0]=i[0]*n+i[4]*a+i[8]*u+i[12]*h,r[1]=i[1]*n+i[5]*a+i[9]*u+i[13]*h,r[2]=i[2]*n+i[6]*a+i[10]*u+i[14]*h,r[3]=i[3]*n+i[7]*a+i[11]*u+i[15]*h,r}function ys(){var r=new Ei(4);return Ei!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r[3]=1,r}function xs(r){return r[0]=0,r[1]=0,r[2]=0,r[3]=1,r}function Hs(r,e,i){i*=.5;var n=e[0],a=e[1],u=e[2],h=e[3],f=Math.sin(i),_=Math.cos(i);return r[0]=n*_+h*f,r[1]=a*_+u*f,r[2]=u*_-a*f,r[3]=h*_-n*f,r}function Co(r,e,i){i*=.5;var n=e[0],a=e[1],u=e[2],h=e[3],f=Math.sin(i),_=Math.cos(i);return r[0]=n*_-u*f,r[1]=a*_+h*f,r[2]=u*_+n*f,r[3]=h*_-a*f,r}Yt(),ia();var zr,ra,mn,el=Qa,vs=(zr=Yt(),ra=li(1,0,0),mn=li(0,1,0),function(r,e,i){var n=zi(e,i);return n<-.999999?(xr(zr,ra,e),qs(zr)<1e-6&&xr(zr,mn,e),ni(zr,zr),(function(a,u,h){h*=.5;var f=Math.sin(h);a[0]=f*u[0],a[1]=f*u[1],a[2]=f*u[2],a[3]=Math.cos(h)})(r,zr,Math.PI),r):n>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(xr(zr,e,i),r[0]=zr[0],r[1]=zr[1],r[2]=zr[2],r[3]=1+n,el(r,r))});function vr(){var r=new Ei(2);return Ei!=Float32Array&&(r[0]=0,r[1]=0),r}function bs(r,e){var i=new Ei(2);return i[0]=r,i[1]=e,i}function ws(r,e,i){return r[0]=e,r[1]=i,r}function $s(r,e,i){return r[0]=e[0]+i[0],r[1]=e[1]+i[1],r}function Ts(r,e,i){return r[0]=e[0]-i[0],r[1]=e[1]-i[1],r}function Zs(r,e,i){return r[0]=e[0]*i,r[1]=e[1]*i,r}function Ws(r){var e=r[0],i=r[1];return Math.sqrt(e*e+i*i)}function na(r,e){var i=e[0],n=e[1],a=i*i+n*n;return a>0&&(a=1/Math.sqrt(a)),r[0]=e[0]*a,r[1]=e[1]*a,r}function pi(r,e){return r[0]*e[0]+r[1]*e[1]}ys(),ys(),tc();var _r,sc,sa=Ts;function _n(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}vr();var Mu=(function(){if(sc)return _r;function r(e,i,n,a){this.cx=3*e,this.bx=3*(n-e)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(a-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=e,this.p1y=i,this.p2x=n,this.p2y=a}return sc=1,_r=r,r.prototype={sampleCurveX:function(e){return((this.ax*e+this.bx)*e+this.cx)*e},sampleCurveY:function(e){return((this.ay*e+this.by)*e+this.cy)*e},sampleCurveDerivativeX:function(e){return(3*this.ax*e+2*this.bx)*e+this.cx},solveCurveX:function(e,i){if(i===void 0&&(i=1e-6),e<0)return 0;if(e>1)return 1;for(var n=e,a=0;a<8;a++){var u=this.sampleCurveX(n)-e;if(Math.abs(u)<i)return n;var h=this.sampleCurveDerivativeX(n);if(Math.abs(h)<1e-6)break;n-=u/h}var f=0,_=1;for(n=e,a=0;a<20&&(u=this.sampleCurveX(n),!(Math.abs(u-e)<i));a++)e>u?f=n:_=n,n=.5*(_-f)+f;return n},solve:function(e,i){return this.sampleCurveY(this.solveCurveX(e,i))}},_r})(),oa=_n(Mu);function Fe(r,e){this.x=r,this.y=e}function Ss(r,e){if(Array.isArray(r)){if(!Array.isArray(e)||r.length!==e.length)return!1;for(let i=0;i<r.length;i++)if(!Ss(r[i],e[i]))return!1;return!0}if(typeof r=="object"&&r!==null&&e!==null){if(typeof e!="object"||Object.keys(r).length!==Object.keys(e).length)return!1;for(const i in r)if(!Ss(r[i],e[i]))return!1;return!0}return r===e}Fe.prototype={clone(){return new Fe(this.x,this.y)},add(r){return this.clone()._add(r)},sub(r){return this.clone()._sub(r)},multByPoint(r){return this.clone()._multByPoint(r)},divByPoint(r){return this.clone()._divByPoint(r)},mult(r){return this.clone()._mult(r)},div(r){return this.clone()._div(r)},rotate(r){return this.clone()._rotate(r)},rotateAround(r,e){return this.clone()._rotateAround(r,e)},matMult(r){return this.clone()._matMult(r)},unit(){return this.clone()._unit()},perp(){return this.clone()._perp()},round(){return this.clone()._round()},mag(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals(r){return this.x===r.x&&this.y===r.y},dist(r){return Math.sqrt(this.distSqr(r))},distSqr(r){const e=r.x-this.x,i=r.y-this.y;return e*e+i*i},angle(){return Math.atan2(this.y,this.x)},angleTo(r){return Math.atan2(this.y-r.y,this.x-r.x)},angleWith(r){return this.angleWithSep(r.x,r.y)},angleWithSep(r,e){return Math.atan2(this.x*e-this.y*r,this.x*r+this.y*e)},_matMult(r){const e=r[2]*this.x+r[3]*this.y;return this.x=r[0]*this.x+r[1]*this.y,this.y=e,this},_add(r){return this.x+=r.x,this.y+=r.y,this},_sub(r){return this.x-=r.x,this.y-=r.y,this},_mult(r){return this.x*=r,this.y*=r,this},_div(r){return this.x/=r,this.y/=r,this},_multByPoint(r){return this.x*=r.x,this.y*=r.y,this},_divByPoint(r){return this.x/=r.x,this.y/=r.y,this},_unit(){return this._div(this.mag()),this},_perp(){const r=this.y;return this.y=this.x,this.x=-r,this},_rotate(r){const e=Math.cos(r),i=Math.sin(r),n=i*this.x+e*this.y;return this.x=e*this.x-i*this.y,this.y=n,this},_rotateAround(r,e){const i=Math.cos(r),n=Math.sin(r),a=e.y+n*(this.x-e.x)+i*(this.y-e.y);return this.x=e.x+i*(this.x-e.x)-n*(this.y-e.y),this.y=a,this},_round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},constructor:Fe},Fe.convert=function(r){if(r instanceof Fe)return r;if(Array.isArray(r))return new Fe(+r[0],+r[1]);if(r.x!==void 0&&r.y!==void 0)return new Fe(+r.x,+r.y);throw new Error("Expected [x, y] or {x, y} point format")};const Pu=Math.PI/180,tl=180/Math.PI;function Ot(r){return r*Pu}function he(r){return r*tl}const k=[[0,0],[1,0],[1,1],[0,1]];function U(r){if(r<=0)return 0;if(r>=1)return 1;const e=r*r,i=e*r;return 4*(r<.5?i:3*(r-e)+i-.75)}function W(r,e,i,n){const a=new oa(r,e,i,n);return function(u){return a.solve(u)}}const ae=W(.25,.1,.25,1);function Y(r,e,i){return Math.min(i,Math.max(e,r))}function le(r,e,i){return(i=Y((i-r)/(e-r),0,1))*i*(3-2*i)}function ge(r,e,i){const n=i-e,a=((r-e)%n+n)%n+e;return a===e?i:a}function ue(r,e,i){if(!r.length)return i(null,[]);let n=r.length;const a=new Array(r.length);let u=null;r.forEach((h,f)=>{e(h,(_,g)=>{_&&(u=_),a[f]=g,--n===0&&i(u,a)})})}let be=1;function ke(){return be++}function Le(r){return r<=1?1:Math.pow(2,Math.ceil(Math.log2(r)))}function Ke(r,e){r.forEach(i=>{e[i]&&(e[i]=e[i].bind(e))})}function ot(r,e,i){const n={};for(const a in r)n[a]=e.call(this,r[a],a,r);return n}function lt(r,e,i){const n={};for(const a in r)e.call(this,r[a],a,r)&&(n[a]=r[a]);return n}function xt(r){return Array.isArray(r)?r.map(xt):typeof r=="object"&&r?ot(r,xt):r}function St(r,e){for(let i=0;i<r.length;i++)if(e.indexOf(r[i])>=0)return!0;return!1}const mt={};function dt(r){mt[r]||(typeof console<"u"&&console.warn(r),mt[r]=!0)}function si(r,e,i){return(i.y-r.y)*(e.x-r.x)>(e.y-r.y)*(i.x-r.x)}function $i(r){let e=0;for(let i,n,a=0,u=r.length,h=u-1;a<u;h=a++)i=r[a],n=r[h],e+=(n.x-i.x)*(i.y+n.y);return e}function Di([r,e,i]){const n=Ot(e+90),a=Ot(i);return{x:r*Math.cos(n)*Math.sin(a),y:r*Math.sin(n)*Math.sin(a),z:r*Math.cos(a),azimuthal:e,polar:i}}function Li(r){return(typeof self<"u"||r!==void 0)&&typeof WorkerGlobalScope<"u"&&(r!==void 0?r:self)instanceof WorkerGlobalScope}function mi(r){const e={};if(r.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(i,n,a,u)=>{const h=a||u;return e[n]=!h||h.toLowerCase(),""}),e["max-age"]){const i=parseInt(e["max-age"],10);isNaN(i)?delete e["max-age"]:e["max-age"]=i}return e}let Dt=null;function xi(r,e){return[r[4*e],r[4*e+1],r[4*e+2],r[4*e+3]]}function ti(r,e,i,n){for(;e<i;){const a=e+i>>1;r[a]<n?e=a+1:i=a}return e}function ii(r,e,i,n){for(;e<i;){const a=e+i>>1;r[a]<=n?e=a+1:i=a}return e}function Ri(r){return r>0?1/(1.001-r):1+r}function gr(r){return r>0?1-1/(1.001-r):-r}function cr(r,e,i){return(r-e.min)*(i.max-i.min)/(e.max-e.min)+i.min}const Xi={API_URL:"https://api.mapbox.com",get API_URL_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i},get API_TILEJSON_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/v[0-9]*\/.*\.json.*$)/i},get API_SPRITE_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/styles\/v[0-9]*\/)(.*\/sprite.*\..*$)/i},get API_FONTS_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/fonts\/v[0-9]*\/)(.*\.pbf.*$)/i},get API_STYLE_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/styles\/v[0-9]*\/)(.*$)/i},get API_CDN_URL_REGEX(){return/^((https?:)?\/\/)?api\.mapbox\.c(n|om)(\/mapbox-gl-js\/)(.*$)/i},get EVENTS_URL(){if(!Xi.API_URL)return null;try{const r=new URL(Xi.API_URL);return r.hostname==="api.mapbox.cn"?"https://events.mapbox.cn/events/v2":r.hostname==="api.mapbox.com"?"https://events.mapbox.com/events/v2":null}catch{return null}},SESSION_PATH:"/map-sessions/v1",FEEDBACK_URL:"https://apps.mapbox.com/feedback",TILE_URL_VERSION:"v4",RASTER_URL_PREFIX:"raster/v1",RASTERARRAYS_URL_PREFIX:"rasterarrays/v1",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,DEFAULT_STYLE:"mapbox://styles/mapbox/standard",MAX_PARALLEL_IMAGE_REQUESTS:16,DRACO_URL:"https://api.mapbox.com/mapbox-gl-js/draco_decoder_gltf_v1.5.6.wasm",MESHOPT_URL:"https://api.mapbox.com/mapbox-gl-js/meshopt_base_v0.20.wasm",MESHOPT_SIMD_URL:"https://api.mapbox.com/mapbox-gl-js/meshopt_simd_v0.20.wasm",BUILDING_GEN_URL:"https://api.mapbox.com/mapbox-gl-js/building-gen/building_gen_v1.2.4.wasm",GLYPHS_URL:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",TILES3D_URL_PREFIX:"3dtiles/v1"};function Xs(r){return Xi.API_URL_REGEX.test(r)}function Er(r){return Xi.API_SPRITE_REGEX.test(r)}let sn,Rn,Gn,on,Dr,Is;function Ro(){return sn==null&&(sn=self.OffscreenCanvas&&new OffscreenCanvas(1,1).getContext("2d")&&typeof self.createImageBitmap=="function"),sn}const gn={now:()=>on!==void 0?on:performance.now(),setNow(r){on=r},restoreNow(){on=void 0},frame(r){const e=requestAnimationFrame(r);return{cancel:()=>cancelAnimationFrame(e)}},getImageData(r,e=0){const{width:i,height:n}=r;Dr||(Dr=document.createElement("canvas"));const a=Dr.getContext("2d",{willReadFrequently:!0});if(!a)throw new Error("failed to create canvas 2d context");return(i>Dr.width||n>Dr.height)&&(Dr.width=i,Dr.height=n),a.clearRect(-e,-e,i+2*e,n+2*e),a.drawImage(r,0,0,i,n),a.getImageData(-e,-e,i+2*e,n+2*e)},resolveURL:r=>(Rn||(Rn=document.createElement("a")),Rn.href=r,Rn.href),get devicePixelRatio(){return window.devicePixelRatio},get prefersReducedMotion(){return!!window.matchMedia&&(Gn==null&&(Gn=window.matchMedia("(prefers-reduced-motion: reduce)")),Gn.matches)},hasCanvasFingerprintNoise(){if(Is!==void 0)return Is;if(!Ro())return Is=!1,!1;const r=new OffscreenCanvas(85,1),e=r.getContext("2d",{willReadFrequently:!0});let i=0;for(let a=0;a<r.width;++a)e.fillStyle=`rgba(${i++},${i++},${i++}, 255)`,e.fillRect(a,0,1,1);const n=e.getImageData(0,0,r.width,r.height);i=0;for(let a=0;a<n.data.length;++a)if(a%4!=3&&i++!==n.data[a])return Is=!0,!0;return Is=!1,!1}};function il(r,e){const i=r.indexOf("?");if(i<0)return`${r}?${new URLSearchParams(e).toString()}`;const n=new URLSearchParams(r.slice(i));for(const a in e)n.set(a,e[a]);return`${r.slice(0,i)}?${n.toString()}`}function rl(r,e={persistentParams:[]}){const i=r.indexOf("?");if(i<0)return r;const n=new URLSearchParams,a=new URLSearchParams(r.slice(i));for(const h of e.persistentParams){const f=a.get(h);f&&n.set(h,f)}const u=n.toString();return`${r.slice(0,i)}${u.length>0?`?${u}`:""}`}const jd="mapbox-tiles";let Gd=500,Cu=50;const Ru=["language","worldview","jobid"];let ur,yn;function Es(){try{return caches}catch{}}function xn(){const r=Es();r&&ur==null&&(ur=r.open(jd))}let es=1/0;const aa={supported:!1,testSupport:function(r){!Ys&&zo&&(oc?Hd(r):la=r)}};let la,zo,Ys=!1,oc=!1;const qd=typeof self<"u"?self:{};function Hd(r){const e=r.createTexture();r.bindTexture(r.TEXTURE_2D,e);try{if(r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,zo),r.isContextLost())return;aa.supported=!0}catch{}r.deleteTexture(e),Ys=!0}qd.document&&(zo=qd.document.createElement("img"),zo.onload=function(){la&&Hd(la),la=null,oc=!0},zo.onerror=function(){Ys=!0,la=null},zo.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");const $r={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Iconset:"Iconset",Image:"Image",Model:"Model"};typeof Object.freeze=="function"&&Object.freeze($r);class nl extends Error{constructor(e,i,n){i===401&&Xs(n)&&(e+=": you may have provided an invalid Mapbox access token. See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes"),super(e),this.status=i,this.url=n}toString(){return`${this.name}: ${this.message} (${this.status}): ${this.url}`}}const sl=Li()?()=>self.worker.referrer:()=>(location.protocol==="blob:"?parent:self).location.href,As=function(r,e){if(!(/^file:/.test(i=r.url)||/^file:/.test(sl())&&!/^\w+:/.test(i))){if(self.fetch&&self.Request&&self.AbortController&&Request.prototype.hasOwnProperty("signal"))return(function(n,a){const u=new AbortController,h=new Request(n.url,{method:n.method||"GET",body:n.body,credentials:n.credentials,headers:n.headers,referrer:sl(),referrerPolicy:n.referrerPolicy,signal:u.signal});let f=!1,_=!1;const g=(v=h.url).indexOf("sku=")>0&&Xs(v);var v;n.type==="json"&&h.headers.set("Accept","application/json");const b=(I,E,C)=>{if(_)return;if(I&&I.message!=="SecurityError"&&dt(I.toString()),E&&C)return w(E);const D=Date.now();fetch(h).then(R=>{if(R.ok){const O=g?R.clone():null;return w(R,O,D)}return a(new nl(R.statusText,R.status,n.url))}).catch(R=>{R.name!=="AbortError"&&a(new Error(`${R.message} ${n.url}`))})},w=(I,E,C)=>{(n.type==="arrayBuffer"?I.arrayBuffer():n.type==="json"?I.json():I.text()).then(D=>{_||(E&&C&&(function(R,O,B){if(xn(),ur==null)return;const V=mi(O.headers.get("Cache-Control")||"");if(V["no-store"])return;const $={status:O.status,statusText:O.statusText,headers:new Headers};O.headers.forEach((ee,K)=>$.headers.set(K,ee)),V["max-age"]&&$.headers.set("Expires",new Date(B+1e3*V["max-age"]).toUTCString());const H=$.headers.get("Expires");if(!H||new Date(H).getTime()-B<42e4)return;let J=rl(R.url,{persistentParams:Ru});if(O.status===206){const ee=R.headers.get("Range");if(!ee)return;$.status=200,J=il(J,{range:ee})}(function(ee,K){if(yn===void 0)try{new Response(new ReadableStream),yn=!0}catch{yn=!1}yn?K(ee.body):ee.blob().then(K).catch(re=>dt(re.message))})(O,ee=>{const K=new Response((re=O.status)!==200&&re!==404&&[101,103,204,205,304].includes(re)?null:ee,$);var re;xn(),ur!=null&&ur.then(oe=>oe.put(J,K)).catch(oe=>dt(oe.message))})})(h,E,C),f=!0,a(null,D,I.headers))}).catch(D=>{_||a(new Error(D.message))})};return g?(function(I,E){if(xn(),ur==null)return E(null);ur.then(C=>{let D=rl(I.url,{persistentParams:Ru});const R=I.headers.get("Range");R&&(D=il(D,{range:R})),C.match(D).then(O=>{const B=(function(V){if(!V)return!1;const $=new Date(V.headers.get("Expires")||0),H=mi(V.headers.get("Cache-Control")||"");return Number($)>Date.now()&&!H["no-cache"]})(O);C.delete(D).catch(E),B&&C.put(D,O.clone()).catch(E),E(null,O,B)}).catch(E)}).catch(E)})(h,b):b(null,null),{cancel:()=>{_=!0,f||u.abort()}}})(r,e);if(Li(self)&&self.worker.actor)return self.worker.actor.send("getResource",r,e,void 0,!0)}var i;return(function(n,a){const u=new XMLHttpRequest;u.open(n.method||"GET",n.url,!0),n.type==="arrayBuffer"&&(u.responseType="arraybuffer");for(const h in n.headers)u.setRequestHeader(h,n.headers[h]);return n.type==="json"&&(u.responseType="text",u.setRequestHeader("Accept","application/json")),u.withCredentials=n.credentials==="include",u.onerror=()=>{a(new Error(u.statusText))},u.onload=()=>{if((u.status>=200&&u.status<300||u.status===0)&&u.response!==null){let h=u.response;if(n.type==="json")try{h=JSON.parse(u.response)}catch(_){return a(_)}const f=new Headers;u.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(_=>{const g=_.split(": "),v=g.shift(),b=g.join(": ");f.append(v,b)}),a(null,h,f)}else a(new nl(u.statusText,u.status,n.url))},u.send(n.body),{cancel:()=>u.abort()}})(r,e)},ol=function(r,e){return As(Object.assign(r,{type:"arrayBuffer"}),e)};function fm(r){const e=document.createElement("a");return e.href=r,e.protocol===location.protocol&&e.host===location.host}const zu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";let Bt,ca;Bt=[],ca=0;const ac=function(r,e){if(aa.supported&&(r.headers||(r.headers={}),r.headers.accept="image/webp,*/*"),ca>=Xi.MAX_PARALLEL_IMAGE_REQUESTS){const u={requestParameters:r,callback:e,cancelled:!1,cancel(){this.cancelled=!0}};return Bt.push(u),u}ca++;let i=!1;const n=()=>{if(!i)for(i=!0,ca--;Bt.length&&ca<Xi.MAX_PARALLEL_IMAGE_REQUESTS;){const u=Bt.shift(),{requestParameters:h,callback:f,cancelled:_}=u;_||(u.cancel=ac(h,f).cancel)}},a=ol(r,(u,h,f)=>{n(),u?e(u):h&&(self.createImageBitmap?(function(_,g){const v=new Blob([new Uint8Array(_)],{type:"image/png"});createImageBitmap(v).then(b=>{g(null,b)}).catch(b=>{g(new Error(`Could not load image because of ${b.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`))})})(h,(_,g)=>e(_,g,f)):(function(_,g){const v=new Image;v.onload=()=>{g(null,v),URL.revokeObjectURL(v.src),v.onload=null,requestAnimationFrame(()=>{v.src=zu})},v.onerror=()=>g(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."));const b=new Blob([new Uint8Array(_)],{type:"image/png"});v.src=_.byteLength?URL.createObjectURL(b):zu})(h,(_,g)=>e(_,g,f)))});return{cancel:()=>{a.cancel(),n()}}};var $d,Zd,al,Ks={exports:{}},ll={exports:{}},lc={exports:{}},pm=(function(){if(al)return Ks.exports;al=1;var r=($d||($d=1,ll.exports=function(i,n){var a,u,h,f,_,g,v,b;for(u=i.length-(a=3&i.length),h=n,_=3432918353,g=461845907,b=0;b<u;)v=255&i.charCodeAt(b)|(255&i.charCodeAt(++b))<<8|(255&i.charCodeAt(++b))<<16|(255&i.charCodeAt(++b))<<24,++b,h=27492+(65535&(f=5*(65535&(h=(h^=v=(65535&(v=(v=(65535&v)*_+(((v>>>16)*_&65535)<<16)&4294967295)<<15|v>>>17))*g+(((v>>>16)*g&65535)<<16)&4294967295)<<13|h>>>19))+((5*(h>>>16)&65535)<<16)&4294967295))+(((f>>>16)+58964&65535)<<16);switch(v=0,a){case 3:v^=(255&i.charCodeAt(b+2))<<16;case 2:v^=(255&i.charCodeAt(b+1))<<8;case 1:h^=v=(65535&(v=(v=(65535&(v^=255&i.charCodeAt(b)))*_+(((v>>>16)*_&65535)<<16)&4294967295)<<15|v>>>17))*g+(((v>>>16)*g&65535)<<16)&4294967295}return h^=i.length,h=2246822507*(65535&(h^=h>>>16))+((2246822507*(h>>>16)&65535)<<16)&4294967295,h=3266489909*(65535&(h^=h>>>13))+((3266489909*(h>>>16)&65535)<<16)&4294967295,(h^=h>>>16)>>>0}),ll.exports),e=(Zd||(Zd=1,lc.exports=function(i,n){for(var a,u=i.length,h=n^u,f=0;u>=4;)a=1540483477*(65535&(a=255&i.charCodeAt(f)|(255&i.charCodeAt(++f))<<8|(255&i.charCodeAt(++f))<<16|(255&i.charCodeAt(++f))<<24))+((1540483477*(a>>>16)&65535)<<16),h=1540483477*(65535&h)+((1540483477*(h>>>16)&65535)<<16)^(a=1540483477*(65535&(a^=a>>>24))+((1540483477*(a>>>16)&65535)<<16)),u-=4,++f;switch(u){case 3:h^=(255&i.charCodeAt(f+2))<<16;case 2:h^=(255&i.charCodeAt(f+1))<<8;case 1:h=1540483477*(65535&(h^=255&i.charCodeAt(f)))+((1540483477*(h>>>16)&65535)<<16)}return h=1540483477*(65535&(h^=h>>>13))+((1540483477*(h>>>16)&65535)<<16),(h^=h>>>15)>>>0}),lc.exports);return Ks.exports=r,Ks.exports.murmur3=r,Ks.exports.murmur2=e,Ks.exports})(),ua=_n(pm);class Ms{constructor(e,...i){Object.assign(this,i[0]||{}),this.type=e}}class cl extends Ms{constructor(e,i={}){super("error",Object.assign({error:e},i))}}function Wd(r,e,i){i[r]&&i[r].indexOf(e)!==-1||(i[r]=i[r]||[],i[r].push(e))}function Do(r,e,i){if(i&&i[r]){const n=i[r].indexOf(e);n!==-1&&i[r].splice(n,1)}}class Ps{on(e,i){return this._listeners=this._listeners||{},Wd(e,i,this._listeners),this}off(e,i){return Do(e,i,this._listeners),Do(e,i,this._oneTimeListeners),this}once(e,i){return i?(this._oneTimeListeners=this._oneTimeListeners||{},Wd(e,i,this._oneTimeListeners),this):new Promise(n=>{this.once(e,n)})}fire(e,i){const n=typeof e=="string"?new Ms(e,i):e,a=n.type;if(this.listens(a)){n.target=this;const u=this._listeners&&this._listeners[a]?this._listeners[a].slice():[];for(const _ of u)_.call(this,n);const h=this._oneTimeListeners&&this._oneTimeListeners[a]?this._oneTimeListeners[a].slice():[];for(const _ of h)Do(a,_,this._oneTimeListeners),_.call(this,n);const f=this._eventedParent;if(f){const _=typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData;Object.assign(n,_),f.fire(n)}}else n instanceof cl&&console.error(n.error);return this}listens(e){return!!(this._listeners&&this._listeners[e]&&this._listeners[e].length>0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e))}setEventedParent(e,i){return this._eventedParent=e,this._eventedParentData=i,this}}class Zr{constructor(e){typeof e=="string"?this.name=e:(this.name=e.name,this.iconsetId=e.iconsetId)}static from(e){return new Zr(e)}static toString(e){return e.iconsetId?`${e.name}${e.iconsetId}`:e.name}static parse(e){const[i,n]=e.split("");return new Zr({name:i,iconsetId:n})}static isEqual(e,i){return e.name===i.name&&e.iconsetId===i.iconsetId}toString(){return Zr.toString(this)}serialize(){return{name:this.name,iconsetId:this.iconsetId}}}var zn,cc={},Xd=(function(){if(zn)return cc;zn=1;var r={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 e(u){return(u=Math.round(u))<0?0:u>255?255:u}function i(u){return e(u[u.length-1]==="%"?parseFloat(u)/100*255:parseInt(u))}function n(u){return(h=u[u.length-1]==="%"?parseFloat(u)/100:parseFloat(u))<0?0:h>1?1:h;var h}function a(u,h,f){return f<0?f+=1:f>1&&(f-=1),6*f<1?u+(h-u)*f*6:2*f<1?h:3*f<2?u+(h-u)*(2/3-f)*6:u}try{cc.parseCSSColor=function(u){var h,f=u.replace(/ /g,"").toLowerCase();if(f in r)return r[f].slice();if(f[0]==="#")return f.length===4?(h=parseInt(f.substr(1),16))>=0&&h<=4095?[(3840&h)>>4|(3840&h)>>8,240&h|(240&h)>>4,15&h|(15&h)<<4,1]:null:f.length===7&&(h=parseInt(f.substr(1),16))>=0&&h<=16777215?[(16711680&h)>>16,(65280&h)>>8,255&h,1]:null;var _=f.indexOf("("),g=f.indexOf(")");if(_!==-1&&g+1===f.length){var v=f.substr(0,_),b=f.substr(_+1,g-(_+1)).split(","),w=1;switch(v){case"rgba":if(b.length!==4)return null;w=n(b.pop());case"rgb":return b.length!==3?null:[i(b[0]),i(b[1]),i(b[2]),w];case"hsla":if(b.length!==4)return null;w=n(b.pop());case"hsl":if(b.length!==3)return null;var I=(parseFloat(b[0])%360+360)%360/360,E=n(b[1]),C=n(b[2]),D=C<=.5?C*(E+1):C+E-C*E,R=2*C-D;return[e(255*a(R,D,I+1/3)),e(255*a(R,D,I)),e(255*a(R,D,I-1/3)),w];default:return null}}return null}}catch{}return cc})();class Ht{constructor(e,i,n,a=1){this.r=e,this.g=i,this.b=n,this.a=a}static parse(e){if(!e)return;if(e instanceof Ht)return e;if(typeof e!="string")return;const i=Xd.parseCSSColor(e);return i?new Ht(i[0]/255,i[1]/255,i[2]/255,i[3]):void 0}toString(){const[e,i,n,a]=[this.r,this.g,this.b,this.a];return`rgba(${Math.round(255*e)},${Math.round(255*i)},${Math.round(255*n)},${a})`}toNonPremultipliedRenderColor(e){const{r:i,g:n,b:a,a:u}=this;return new Yd(e,i,n,a,u)}toPremultipliedRenderColor(e){const{r:i,g:n,b:a,a:u}=this;return new Kd(e,i*u,n*u,a*u,u)}clone(){return new Ht(this.r,this.g,this.b,this.a)}}class Du{constructor(e,i,n,a,u,h=!1){if(this.premultiplied=!1,this.premultiplied=h,e){const f=e.image.height,_=f*f;this.premultiplied?(i=u===0?0:i/u*(f-1),n=u===0?0:n/u*(f-1),a=u===0?0:a/u*(f-1)):(i*=f-1,n*=f-1,a*=f-1),i=Math.max(0,Math.min(f-1,i)),n=Math.max(0,Math.min(f-1,n)),a=Math.max(0,Math.min(f-1,a));const g=Math.floor(i),v=Math.floor(n),b=Math.floor(a),w=Math.ceil(i),I=Math.ceil(n),E=Math.ceil(a),C=i-g,D=n-v,R=a-b,O=e.image.data,B=4*(g+v*_+b*f),V=4*(g+v*_+E*f),$=4*(g+I*_+b*f),H=4*(g+I*_+E*f),J=4*(w+v*_+b*f),ee=4*(w+v*_+E*f),K=4*(w+I*_+b*f),re=4*(w+I*_+E*f);this.r=ct(ct(ct(O[B],O[V],R),ct(O[$],O[H],R),D),ct(ct(O[J],O[ee],R),ct(O[K],O[re],R),D),C)/255*(this.premultiplied?u:1),this.g=ct(ct(ct(O[B+1],O[V+1],R),ct(O[$+1],O[H+1],R),D),ct(ct(O[J+1],O[ee+1],R),ct(O[K+1],O[re+1],R),D),C)/255*(this.premultiplied?u:1),this.b=ct(ct(ct(O[B+2],O[V+2],R),ct(O[$+2],O[H+2],R),D),ct(ct(O[J+2],O[ee+2],R),ct(O[K+2],O[re+2],R),D),C)/255*(this.premultiplied?u:1),this.a=u}else this.r=i,this.g=n,this.b=a,this.a=u}toArray(){const{r:e,g:i,b:n,a}=this;return[255*e,255*i,255*n,a]}toHslaArray(){let{r:e,g:i,b:n,a}=this;if(this.premultiplied){if(a===0)return[0,0,0,0];const E=1/a;e*=E,i*=E,n*=E}const u=Math.min(Math.max(e,0),1),h=Math.min(Math.max(i,0),1),f=Math.min(Math.max(n,0),1),_=Math.min(u,h,f),g=Math.max(u,h,f),v=g-_,b=.5*(_+g);if(v===0)return[0,0,100*b,a];const w=b>.5?v/(2-g-_):v/(g+_);let I;switch(g){case u:I=60*((h-f)/v+(h<f?6:0));break;case h:I=60*((f-u)/v+2);break;default:I=60*((u-h)/v+4)}return[I,100*w,100*b,a]}toArray01(){const{r:e,g:i,b:n,a}=this;return[e,i,n,a]}toArray01Scaled(e){const{r:i,g:n,b:a}=this;return[i*e,n*e,a*e]}toArray01Linear(){const{r:e,g:i,b:n,a}=this;return[Math.pow(e,2.2),Math.pow(i,2.2),Math.pow(n,2.2),a]}}class Yd extends Du{constructor(e,i,n,a,u){super(e,i,n,a,u,!1)}}class Kd extends Du{constructor(e,i,n,a,u){super(e,i,n,a,u,!0)}}function ct(r,e,i){return r*(1-i)+e*i}function Lu(r,e,i){return r.map((n,a)=>ct(n,e[a],i))}Ht.black=new Ht(0,0,0,1),Ht.white=new Ht(1,1,1,1),Ht.transparent=new Ht(0,0,0,0),Ht.red=new Ht(1,0,0,1),Ht.blue=new Ht(0,0,1,1);var Lo=Object.freeze({__proto__:null,array:Lu,color:function(r,e,i){return new Ht(ct(r.r,e.r,i),ct(r.g,e.g,i),ct(r.b,e.b,i),ct(r.a,e.a,i))},number:ct});class Lr extends Error{constructor(e,i){super(i),this.message=i,this.key=e}}class uc{constructor(e,i=[]){this.parent=e,this.bindings={};for(const[n,a]of i)this.bindings[n]=a}concat(e){return new uc(this,e)}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw new Error(`${e} not found in scope.`)}has(e){return!!this.bindings[e]||!!this.parent&&this.parent.has(e)}}const Wr={kind:"null"},nt={kind:"number"},qt={kind:"string"},Nt={kind:"boolean"},Or={kind:"color"},ha={kind:"object"},Zt={kind:"value"},hc={kind:"collator"},da={kind:"formatted"},Oo={kind:"resolvedImage"};function Ar(r,e){return{kind:"array",itemType:r,N:e}}function Ui(r){if(r.kind==="array"){const e=Ui(r.itemType);return typeof r.N=="number"?`array<${e}, ${r.N}>`:r.itemType.kind==="value"?"array":`array<${e}>`}return r.kind}const mm=[Wr,nt,qt,Nt,Or,da,ha,Ar(Zt),Oo];function ul(r,e){if(e.kind==="error")return null;if(r.kind==="array"){if(e.kind==="array"&&(e.N===0&&e.itemType.kind==="value"||!ul(r.itemType,e.itemType))&&(typeof r.N!="number"||r.N===e.N))return null}else{if(r.kind===e.kind)return null;if(r.kind==="value"){for(const i of mm)if(!ul(i,e))return null}}return`Expected ${Ui(r)} but found ${Ui(e)} instead.`}function Ou(r,e){return e.some(i=>i.kind===r.kind)}function hl(r,e){return e.some(i=>i==="null"?r===null:i==="array"?Array.isArray(r):i==="object"?r&&!Array.isArray(r)&&typeof r=="object":i===typeof r)}function dc(r,e){return r.kind==="array"&&e.kind==="array"?r.N===e.N&&dc(r.itemType,e.itemType):r.kind===e.kind}class Fu{constructor(e,i,n){this.sensitivity=e?i?"variant":"case":i?"accent":"base",this.locale=n,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(e,i){return this.collator.compare(e,i)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class fc{constructor(e,i,n,a,u){this.text=e.normalize?e.normalize():e,this.image=i,this.scale=n,this.fontStack=a,this.textColor=u}}class Mr{constructor(e){this.sections=e}static fromString(e){return new Mr([new fc(e,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(e=>e.text.length!==0||!!e.image&&e.image.hasPrimary())}static factory(e){return e instanceof Mr?e:Mr.fromString(e)}toString(){return this.sections.length===0?"":this.sections.map(e=>e.text).join("")}serialize(){const e=["format"];for(const i of this.sections){if(i.image){const a=i.image.getPrimary().id.toString();e.push(["image",a]);continue}e.push(i.text);const n={};i.fontStack&&(n["text-font"]=["literal",i.fontStack.split(",")]),i.scale&&(n["font-scale"]=i.scale),i.textColor&&(n["text-color"]=["rgba"].concat(i.textColor.toNonPremultipliedRenderColor(null).toArray())),e.push(n)}return e}}class Xr{constructor(e,i={}){this.id=Zr.from(e),this.params=i.params,this.sx=i.sx||1,this.sy=i.sy||1}toString(){return JSON.stringify(this)}static parse(e){let i,n,a,u;try{({id:i,params:n,sx:a,sy:u}=JSON.parse(e)||{})}catch{return null}return i?new Xr(i,{params:n,sx:a,sy:u}):null}scaleSelf(e,i=e){return this.sx*=e,this.sy*=i,this}}class Yr{constructor(e,i,n,a,u=!1){this.primaryId=Zr.from(e),this.primaryOptions=i,n&&(this.secondaryId=Zr.from(n)),this.secondaryOptions=a,this.available=u}toString(){return this.primaryId&&this.secondaryId?`[${this.primaryId.name},${this.secondaryId.name}]`:this.primaryId.name}hasPrimary(){return!!this.primaryId}getPrimary(){return new Xr(this.primaryId,this.primaryOptions)}hasSecondary(){return!!this.secondaryId}getSecondary(){return this.secondaryId?new Xr(this.secondaryId,this.secondaryOptions):null}static from(e){return typeof e=="string"?Yr.build({name:e}):e}static build(e,i,n,a){return!e||typeof e=="object"&&!("name"in e)?null:new Yr(e,n,i,a)}}function ku(r,e,i,n){return typeof r=="number"&&r>=0&&r<=255&&typeof e=="number"&&e>=0&&e<=255&&typeof i=="number"&&i>=0&&i<=255?n===void 0||typeof n=="number"&&n>=0&&n<=1?null:`Invalid rgba value [${[r,e,i,n].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof n=="number"?[r,e,i,n]:[r,e,i]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Js(r){if(r===null||typeof r=="string"||typeof r=="boolean"||typeof r=="number"||r instanceof Ht||r instanceof Fu||r instanceof Mr||r instanceof Yr)return!0;if(Array.isArray(r)){for(const e of r)if(!Js(e))return!1;return!0}if(typeof r=="object"){for(const e in r)if(!Js(r[e]))return!1;return!0}return!1}function ir(r){if(r===null)return Wr;if(typeof r=="string")return qt;if(typeof r=="boolean")return Nt;if(typeof r=="number")return nt;if(r instanceof Ht)return Or;if(r instanceof Fu)return hc;if(r instanceof Mr)return da;if(r instanceof Yr)return Oo;if(Array.isArray(r)){const e=r.length;let i;for(const n of r){const a=ir(n);if(i){if(i===a)continue;i=Zt;break}i=a}return Ar(i||Zt,e)}return ha}function ts(r){const e=typeof r;return r===null?"":e==="string"||e==="number"||e==="boolean"?String(r):r instanceof Mr||r instanceof Yr||r instanceof Ht?r.toString():JSON.stringify(r)}class Cs{constructor(e,i){this.type=e,this.value=i}static parse(e,i){if(e.length!==2)return i.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!Js(e[1]))return i.error("invalid value");const n=e[1];let a=ir(n);const u=i.expectedType;return a.kind!=="array"||a.N!==0||!u||u.kind!=="array"||typeof u.N=="number"&&u.N!==0||(a=u),new Cs(a,n)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}serialize(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof Ht?["rgba"].concat(this.value.toNonPremultipliedRenderColor(null).toArray()):this.value instanceof Mr?this.value.serialize():this.value}}class Yi{constructor(e){this.name="ExpressionEvaluationError",this.message=e}toJSON(){return this.message}}const Qs={string:qt,number:nt,boolean:Nt,object:ha};class gt{constructor(e,i){this.type=e,this.args=i}static parse(e,i){if(e.length<2)return i.error("Expected at least one argument.");let n,a=1;const u=e[0];if(u==="array"){let f,_;if(e.length>2){const g=e[1];if(typeof g!="string"||!(g in Qs)||g==="object")return i.error('The item type argument of "array" must be one of string, number, boolean',1);f=Qs[g],a++}else f=Zt;if(e.length>3){if(e[2]!==null&&(typeof e[2]!="number"||e[2]<0||e[2]!==Math.floor(e[2])))return i.error('The length argument to "array" must be a positive integer literal',2);_=e[2],a++}n=Ar(f,_)}else n=Qs[u];const h=[];for(;a<e.length;a++){const f=i.parse(e[a],a,Zt);if(!f)return null;h.push(f)}return new gt(n,h)}evaluate(e){for(let i=0;i<this.args.length;i++){const n=this.args[i].evaluate(e);if(!ul(this.type,ir(n)))return n;if(i===this.args.length-1)throw new Yi(`The expression ${JSON.stringify(this.args[i].serialize())} evaluated to ${Ui(ir(n))} but was expected to be of type ${Ui(this.type)}.`)}return null}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){const e=this.type,i=[e.kind];if(e.kind==="array"){const n=e.itemType;if(n.kind==="string"||n.kind==="number"||n.kind==="boolean"){i.push(n.kind);const a=e.N;(typeof a=="number"||this.args.length>1)&&i.push(a)}}return i.concat(this.args.map(n=>n.serialize()))}}class rt{constructor(e){this.type=da,this.sections=e}static parse(e,i){if(e.length<2)return i.error("Expected at least one argument.");const n=e[1];if(!Array.isArray(n)&&typeof n=="object")return i.error("First argument must be an image or text section.");const a=[];let u=!1;for(let h=1;h<=e.length-1;++h){const f=e[h];if(u&&typeof f=="object"&&!Array.isArray(f)){u=!1;let _=null;if(f["font-scale"]&&(_=i.parseObjectValue(f["font-scale"],h,"font-scale",nt),!_))return null;let g=null;if(f["text-font"]&&(g=i.parseObjectValue(f["text-font"],h,"text-font",Ar(qt)),!g))return null;let v=null;if(f["text-color"]&&(v=i.parseObjectValue(f["text-color"],h,"text-color",Or),!v))return null;const b=a[a.length-1];b.scale=_,b.font=g,b.textColor=v}else{const _=i.parse(e[h],h,Zt);if(!_)return null;const g=_.type.kind;if(g!=="string"&&g!=="value"&&g!=="null"&&g!=="resolvedImage")return i.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");u=!0,a.push({content:_,scale:null,font:null,textColor:null})}}return new rt(a)}evaluate(e){return new Mr(this.sections.map(i=>{const n=i.content.evaluate(e);return dc(ir(n),Oo)?new fc("",n,null,null,null):new fc(ts(n),null,i.scale?i.scale.evaluate(e):null,i.font?i.font.evaluate(e).join(","):null,i.textColor?i.textColor.evaluate(e):null)}))}eachChild(e){for(const i of this.sections)e(i.content),i.scale&&e(i.scale),i.font&&e(i.font),i.textColor&&e(i.textColor)}outputDefined(){return!1}serialize(){const e=["format"];for(const i of this.sections){e.push(i.content.serialize());const n={};i.scale&&(n["font-scale"]=i.scale.serialize()),i.font&&(n["text-font"]=i.font.serialize()),i.textColor&&(n["text-color"]=i.textColor.serialize()),e.push(n)}return e}}class fa{constructor(e,i,n,a){this._imageWarnHistory={},this.type=Oo,this.namePrimary=e,this.nameSecondary=i,n&&(this.paramsPrimary=n.params,this.iconsetIdPrimary=n.iconset?n.iconset.id:void 0),a&&(this.paramsSecondary=a.params,this.iconsetIdSecondary=a.iconset?a.iconset.id:void 0)}static parse(e,i){if(e.length<2)return i.error("Expected two or more arguments.");let n=1;const a=[];function u(){if(n<e.length){const f=i.parse(e[n],n++,qt);return f?(a.push({image:f,options:{}}),!0):(i.error(a.length?"Secondary image variant is not a string.":"No image name provided."),!1)}return!0}function h(){if(n<e.length){const _=e[n];if((f=_)===null||typeof f!="object"||Array.isArray(f))return!0;const g=_.params,v=_.iconset,b=i.concat(n);if(!g&&!v)return n++,!0;if(g){if(typeof g!="object"||g.constructor!==Object)return b.error('Image options "params" should be an object'),!1;const w={},I=b.concat(void 0,"params");for(const E in g){if(!E)return I.error("Image parameter name should be non-empty"),!1;const C=I.concat(void 0,E).parse(g[E],void 0,Or,void 0,{typeAnnotation:"coerce"});if(!C)return!1;w[E]=C}a[a.length-1].options.params=w}if(v){if(typeof v!="object"||v.constructor!==Object)return b.error('Image options "iconset" should be an object'),!1;if(!v.id)return b.error('Image options "iconset" should have an "id" property'),!1;a[a.length-1].options.iconset=v}return n++,!0}var f;return!0}for(let f=0;f<2;f++)if(!u()||!h())return;return new fa(a[0].image,a[1]?a[1].image:void 0,a[0].options,a[1]?a[1].options:void 0)}evaluateParams(e,i){const n={};if(i){for(const a in i)if(i[a])try{n[a]=i[a].evaluate(e)}catch{continue}if(Object.keys(n).length!==0)return{params:n}}}evaluate(e){const i={name:this.namePrimary.evaluate(e),iconsetId:this.iconsetIdPrimary},n=this.nameSecondary?{name:this.nameSecondary.evaluate(e),iconsetId:this.iconsetIdSecondary}:void 0,a=Yr.build(i,n,this.paramsPrimary?this.evaluateParams(e,this.paramsPrimary):void 0,this.paramsSecondary?this.evaluateParams(e,this.paramsSecondary):void 0);if(a&&e.availableImages){const u=a.getPrimary().id;if(a.available=e.availableImages.some(h=>Zr.isEqual(h,u)),a.available){const h=a.getSecondary()?a.getSecondary().id:null;h&&(a.available=e.availableImages.some(f=>Zr.isEqual(f,h)))}}return a}eachChild(e){if(e(this.namePrimary),this.paramsPrimary)for(const i in this.paramsPrimary)this.paramsPrimary[i]&&e(this.paramsPrimary[i]);if(this.nameSecondary&&(e(this.nameSecondary),this.paramsSecondary))for(const i in this.paramsSecondary)this.paramsSecondary[i]&&e(this.paramsSecondary[i])}outputDefined(){return!1}serializeOptions(e,i){const n={};if(i&&(n.iconset={id:i}),e){n.params={};for(const a in e)e[a]&&(n.params[a]=e[a].serialize())}return Object.keys(n).length>0?n:void 0}serialize(){const e=["image",this.namePrimary.serialize()];if(this.paramsPrimary||this.iconsetIdPrimary){const i=this.serializeOptions(this.paramsPrimary,this.iconsetIdPrimary);i&&e.push(i)}if(this.nameSecondary&&(e.push(this.nameSecondary.serialize()),this.paramsSecondary||this.iconsetIdSecondary)){const i=this.serializeOptions(this.paramsSecondary,this.iconsetIdSecondary);i&&e.push(i)}return e}}function ft(r){return dl(r)?"string":ut(r)?"number":Bu(r)?"boolean":Array.isArray(r)?"array":r===null?"null":pc(r)?"object":typeof r}function pc(r){return r!=null&&!Array.isArray(r)&&typeof r!="function"&&!(r instanceof String||r instanceof Number||r instanceof Boolean)&&typeof r=="object"}function dl(r){return typeof r=="string"||r instanceof String}function ut(r){return typeof r=="number"||r instanceof Number}function Bu(r){return typeof r=="boolean"||r instanceof Boolean}const Nu={"to-boolean":Nt,"to-color":Or,"to-number":nt,"to-string":qt};class is{constructor(e,i){this.type=e,this.args=i}static parse(e,i){if(e.length<2)return i.error("Expected at least one argument.");const n=e[0],a=[];let u=Wr;if(n==="to-array"){if(!Array.isArray(e[1]))return null;const h=e[1].length;if(i.expectedType){if(i.expectedType.kind!=="array")return i.error(`Expected ${i.expectedType.kind} but found array.`);u=Ar(i.expectedType.itemType,h)}else{if(!(h>0&&Js(e[1][0])))return null;u=Ar(ir(e[1][0]),h)}for(let f=0;f<h;f++){const _=e[1][f];let g;if(Array.isArray(_))g=i.parse(_,void 0,u.itemType);else{const v=ft(_);if(v!==u.itemType.kind)return i.error(`Expected ${u.itemType.kind} but found ${v}.`);g=i.registry.literal.parse(["literal",_===void 0?null:_],i)}if(!g)return null;a.push(g)}}else{if((n==="to-boolean"||n==="to-string")&&e.length!==2)return i.error("Expected one argument.");u=Nu[n];for(let h=1;h<e.length;h++){const f=i.parse(e[h],h,Zt);if(!f)return null;a.push(f)}}return new is(u,a)}evaluate(e){if(this.type.kind==="boolean")return!!this.args[0].evaluate(e);if(this.type.kind==="color"){let i,n;for(const a of this.args){if(i=a.evaluate(e),n=null,i instanceof Ht)return i;if(typeof i=="string"){const u=e.parseColor(i);if(u)return u}else if(Array.isArray(i)&&(n=i.length<3||i.length>4?`Invalid rbga value ${JSON.stringify(i)}: expected an array containing either three or four numeric values.`:ku(i[0],i[1],i[2],i[3]),!n))return new Ht(i[0]/255,i[1]/255,i[2]/255,i[3])}throw new Yi(n||`Could not parse color from value '${typeof i=="string"?i:String(JSON.stringify(i))}'`)}if(this.type.kind==="number"){let i=null;for(const n of this.args){if(i=n.evaluate(e),i===null)return 0;const a=Number(i);if(!isNaN(a))return a}throw new Yi(`Could not convert ${JSON.stringify(i)} to number.`)}return this.type.kind==="formatted"?Mr.fromString(ts(this.args[0].evaluate(e))):this.type.kind==="resolvedImage"?Yr.build(ts(this.args[0].evaluate(e))):this.type.kind==="array"?this.args.map(i=>i.evaluate(e)):ts(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){if(this.type.kind==="formatted")return new rt([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new fa(this.args[0]).serialize();const e=this.type.kind==="array"?[]:[`to-${this.type.kind}`];return this.eachChild(i=>{e.push(i.serialize())}),e}}const Jd=["Unknown","Point","LineString","Polygon"];class pa{constructor(e,i,n){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null,this.scope=e,this.options=i,this.iconImageUseTheme=n}id(){return this.feature&&this.feature.id!==void 0?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Jd[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||{}}measureLight(e){return this.globals.brightness||0}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,i=this.featureDistanceData.scale,{x:n,y:a}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(n*i-e[0])+this.featureDistanceData.bearing[1]*(a*i-e[1])}return 0}parseColor(e){let i=this._parseColorCache[e];return i||(i=this._parseColorCache[e]=Ht.parse(e)),i}getConfig(e){return this.options?this.options.get(e):null}}class Kr{constructor(e,i,n,a,u){this.name=e,this.type=i,this._evaluate=n,this.args=a,this._overloadIndex=u}evaluate(e){if(!this._evaluate){const i=Kr.definitions[this.name];this._evaluate=Array.isArray(i)?i[2]:i.overloads[this._overloadIndex][1]}return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e)}outputDefined(){return!1}serialize(){return[this.name].concat(this.args.map(e=>e.serialize()))}static parse(e,i){const n=e[0],a=Kr.definitions[n];if(!a)return i.error(`Unknown expression "${n}". If you wanted a literal array, use ["literal", [...]].`,0);const u=Array.isArray(a)?a[0]:a.type,h=Array.isArray(a)?[[a[1],a[2]]]:a.overloads,f=[];let _=null,g=-1;for(const[v,b]of h){if(Array.isArray(v)&&v.length!==e.length-1)continue;f.push(v),g++,_=new Sc(i.registry,i.path,null,i.scope,void 0,i._scope,i.options,i.iconImageUseTheme);const w=[];let I=!1;for(let E=1;E<e.length;E++){const C=e[E],D=Array.isArray(v)?v[E-1]:v.type,R=_.parse(C,1+w.length,D);if(!R){I=!0;break}w.push(R)}if(!I)if(Array.isArray(v)&&v.length!==w.length)_.error(`Expected ${v.length} arguments, but found ${w.length} instead.`);else{for(let E=0;E<w.length;E++){const C=Array.isArray(v)?v[E]:v.type,D=w[E];_.concat(E+1).checkSubtype(C,D.type)}if(_.errors.length===0)return new Kr(n,u,b,w,g)}}if(f.length===1)i.errors.push(..._.errors);else{const v=(f.length?f:h.map(([w])=>w)).map(Vu).join(" | "),b=[];for(let w=1;w<e.length;w++){const I=i.parse(e[w],1+b.length);if(!I)return null;b.push(Ui(I.type))}i.error(`Expected arguments of type ${v}, but found (${b.join(", ")}) instead.`)}return null}static register(e,i){Kr.definitions=i;for(const n in i)e[n]=Kr}}function Vu(r){return Array.isArray(r)?`(${r.map(Ui).join(", ")})`:`(${Ui(r.type)}...)`}class rs{constructor(e,i,n){this.type=hc,this.locale=n,this.caseSensitive=e,this.diacriticSensitive=i}static parse(e,i){if(e.length!==2)return i.error("Expected one argument.");const n=e[1];if(typeof n!="object"||Array.isArray(n))return i.error("Collator options argument must be an object.");const a=n["case-sensitive"]===void 0?i.parse(!1,1,Nt):i.parseObjectValue(n["case-sensitive"],1,"case-sensitive",Nt);if(!a)return null;const u=n["diacritic-sensitive"]===void 0?i.parse(!1,1,Nt):i.parseObjectValue(n["diacritic-sensitive"],1,"diacritic-sensitive",Nt);if(!u)return null;let h=null;return n.locale&&(h=i.parseObjectValue(n.locale,1,"locale",qt),!h)?null:new rs(a,u,h)}evaluate(e){return new Fu(this.caseSensitive.evaluate(e),this.diacriticSensitive.evaluate(e),this.locale?this.locale.evaluate(e):null)}eachChild(e){e(this.caseSensitive),e(this.diacriticSensitive),this.locale&&e(this.locale)}outputDefined(){return!1}serialize(){const e={};return e["case-sensitive"]=this.caseSensitive.serialize(),e["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(e.locale=this.locale.serialize()),["collator",e]}}function mc(r,e,i=0,n=r.length-1,a=eo){for(;n>i;){if(n-i>600){const _=n-i+1,g=e-i+1,v=Math.log(_),b=.5*Math.exp(2*v/3),w=.5*Math.sqrt(v*b*(_-b)/_)*(g-_/2<0?-1:1);mc(r,e,Math.max(i,Math.floor(e-g*b/_+w)),Math.min(n,Math.floor(e+(_-g)*b/_+w)),a)}const u=r[e];let h=i,f=n;for(Dn(r,i,e),a(r[n],u)>0&&Dn(r,i,n);h<f;){for(Dn(r,h,f),h++,f--;a(r[h],u)<0;)h++;for(;a(r[f],u)>0;)f--}a(r[i],u)===0?Dn(r,i,f):(f++,Dn(r,f,n)),f<=e&&(i=f+1),e<=f&&(n=f-1)}}function Dn(r,e,i){const n=r[e];r[e]=r[i],r[i]=n}function eo(r,e){return r<e?-1:r>e?1:0}function _m(r){let e=0;for(let i,n,a=0,u=r.length,h=u-1;a<u;h=a++)i=r[a],n=r[h],e+=(n.x-i.x)*(i.y+n.y);return e}function fl(r,e){r[0]=Math.min(r[0],e[0]),r[1]=Math.min(r[1],e[1]),r[2]=Math.max(r[2],e[0]),r[3]=Math.max(r[3],e[1])}function pl(r,e){return!(r[0]<=e[0]||r[2]>=e[2]||r[1]<=e[1]||r[3]>=e[3])}function _c(r,e,i){const n=r[0]-e[0],a=r[1]-e[1],u=r[0]-i[0],h=r[1]-i[1];return n*h-u*a===0&&n*u<=0&&a*h<=0}function Qd(r,e,i){return e[1]>r[1]!=i[1]>r[1]&&r[0]<(i[0]-e[0])*(r[1]-e[1])/(i[1]-e[1])+e[0]}function Ln(r,e,i=!1){let n=!1;for(let a=0,u=e.length;a<u;a++){const h=e[a];for(let f=0,_=h.length,g=_-1;f<_;g=f++){const v=h[g],b=h[f];if(_c(r,v,b))return i;Qd(r,v,b)&&(n=!n)}}return n}function ef(r,e,i,n){const a=n[0]-i[0],u=n[1]-i[1],h=(r[0]-i[0])*u-a*(r[1]-i[1]),f=(e[0]-i[0])*u-a*(e[1]-i[1]);return h>0&&f<0||h<0&&f>0}function gc(r,e,i,n){return(a=[n[0]-i[0],n[1]-i[1]])[0]*(u=[e[0]-r[0],e[1]-r[1]])[1]-a[1]*u[0]!==0&&!(!ef(r,e,i,n)||!ef(i,n,r,e));var a,u}function ml(r){const e=new Fe(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY),i=new Fe(Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);for(const n of r[0])e.x>n.x&&(e.x=n.x),e.y>n.y&&(e.y=n.y),i.x<n.x&&(i.x=n.x),i.y<n.y&&(i.y=n.y);return{min:e,max:i}}const to=8192;function gm(r,e){const i=(180+r[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+r[1]*Math.PI/360)))/360,a=Math.pow(2,e.z);return[Math.round(i*a*to),Math.round(n*a*to)]}function tf(r,e){for(let i=0;i<e.length;i++)if(Ln(r,e[i]))return!0;return!1}function ym(r,e,i){for(const n of i)for(let a=0,u=n.length,h=u-1;a<u;h=a++)if(gc(r,e,n[h],n[a]))return!0;return!1}function Uu(r,e){for(let i=0;i<r.length;++i)if(!Ln(r[i],e))return!1;for(let i=0;i<r.length-1;++i)if(ym(r[i],r[i+1],e))return!1;return!0}function xm(r,e){for(let i=0;i<e.length;i++)if(Uu(r,e[i]))return!0;return!1}function Rs(r,e,i){const n=[];for(let a=0;a<r.length;a++){const u=[];for(let h=0;h<r[a].length;h++){const f=gm(r[a][h],i);fl(e,f),u.push(f)}n.push(u)}return n}function rf(r,e,i){const n=[];for(let a=0;a<r.length;a++){const u=Rs(r[a],e,i);n.push(u)}return n}function nf(r,e,i,n){if(r[0]<i[0]||r[0]>i[2]){const a=.5*n;let u=r[0]-i[0]>a?-n:i[0]-r[0]>a?n:0;u===0&&(u=r[0]-i[2]>a?-n:i[2]-r[0]>a?n:0),r[0]+=u}fl(e,r)}function yc(r,e,i,n){const a=Math.pow(2,n.z)*to,u=[n.x*to,n.y*to],h=[];if(!r)return h;for(const f of r)for(const _ of f){const g=[_.x+u[0],_.y+u[1]];nf(g,e,i,a),h.push(g)}return h}function ju(r,e,i,n){const a=Math.pow(2,n.z)*to,u=[n.x*to,n.y*to],h=[];if(!r)return h;for(const _ of r){const g=[];for(const v of _){const b=[v.x+u[0],v.y+u[1]];fl(e,b),g.push(b)}h.push(g)}if(e[2]-e[0]<=a/2){(f=e)[0]=f[1]=1/0,f[2]=f[3]=-1/0;for(const _ of h)for(const g of _)nf(g,e,i,a)}var f;return h}class io{constructor(e,i){this.type=Nt,this.geojson=e,this.geometries=i}static parse(e,i){if(e.length!==2)return i.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(Js(e[1])){const n=e[1];if(n.type==="FeatureCollection")for(let a=0;a<n.features.length;++a){const u=n.features[a].geometry.type;if(u==="Polygon"||u==="MultiPolygon")return new io(n,n.features[a].geometry)}else if(n.type==="Feature"){const a=n.geometry.type;if(a==="Polygon"||a==="MultiPolygon")return new io(n,n.geometry)}else if(n.type==="Polygon"||n.type==="MultiPolygon")return new io(n,n)}return i.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(e){if(e.geometry()!=null&&e.canonicalID()!=null){if(e.geometryType()==="Point")return(function(i,n){const a=[1/0,1/0,-1/0,-1/0],u=[1/0,1/0,-1/0,-1/0],h=i.canonicalID();if(!h)return!1;if(n.type==="Polygon"){const f=Rs(n.coordinates,u,h),_=yc(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!Ln(g,f))return!1}if(n.type==="MultiPolygon"){const f=rf(n.coordinates,u,h),_=yc(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!tf(g,f))return!1}return!0})(e,this.geometries);if(e.geometryType()==="LineString")return(function(i,n){const a=[1/0,1/0,-1/0,-1/0],u=[1/0,1/0,-1/0,-1/0],h=i.canonicalID();if(!h)return!1;if(n.type==="Polygon"){const f=Rs(n.coordinates,u,h),_=ju(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!Uu(g,f))return!1}if(n.type==="MultiPolygon"){const f=rf(n.coordinates,u,h),_=ju(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!xm(g,f))return!1}return!0})(e,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}serialize(){return["within",this.geojson]}}const an={kilometers:1,miles:1e3/1609.344,nauticalmiles:1e3/1852,meters:1e3,metres:1e3,yards:1e3/.9144,feet:1e3/.3048,inches:1e3/.0254},Gu=1/298.257223563,qu=Gu*(2-Gu),ma=Math.PI/180;class _a{static fromTile(e,i,n){const a=Math.PI*(1-2*(e+.5)/Math.pow(2,i)),u=Math.atan(.5*(Math.exp(a)-Math.exp(-a)))/ma;return new _a(u,n)}static get units(){return an}constructor(e,i){if(e===void 0)throw new Error("No latitude given.");if(i&&!an[i])throw new Error(`Unknown unit ${i}. Use one of: ${Object.keys(an).join(", ")}`);const n=6378.137*ma*(i?an[i]:1),a=Math.cos(e*ma),u=1/(1-qu*(1-a*a)),h=Math.sqrt(u);this.kx=n*h*a,this.ky=n*h*u*(1-qu)}distance(e,i){const n=vn(e[0]-i[0])*this.kx,a=(e[1]-i[1])*this.ky;return Math.sqrt(n*n+a*a)}bearing(e,i){const n=vn(i[0]-e[0])*this.kx;return Math.atan2(n,(i[1]-e[1])*this.ky)/ma}destination(e,i,n){const a=n*ma;return this.offset(e,Math.sin(a)*i,Math.cos(a)*i)}offset(e,i,n){return[e[0]+i/this.kx,e[1]+n/this.ky]}lineDistance(e){let i=0;for(let n=0;n<e.length-1;n++)i+=this.distance(e[n],e[n+1]);return i}area(e){let i=0;for(let n=0;n<e.length;n++){const a=e[n];for(let u=0,h=a.length,f=h-1;u<h;f=u++)i+=vn(a[u][0]-a[f][0])*(a[u][1]+a[f][1])*(n?-1:1)}return Math.abs(i)/2*this.kx*this.ky}along(e,i){let n=0;if(i<=0)return e[0];for(let a=0;a<e.length-1;a++){const u=e[a],h=e[a+1],f=this.distance(u,h);if(n+=f,n>i)return xc(u,h,(i-(n-f))/f)}return e[e.length-1]}pointToSegmentDistance(e,i,n){let[a,u]=i,h=vn(n[0]-a)*this.kx,f=(n[1]-u)*this.ky;if(h!==0||f!==0){const _=(vn(e[0]-a)*this.kx*h+(e[1]-u)*this.ky*f)/(h*h+f*f);_>1?(a=n[0],u=n[1]):_>0&&(a+=h/this.kx*_,u+=f/this.ky*_)}return h=vn(e[0]-a)*this.kx,f=(e[1]-u)*this.ky,Math.sqrt(h*h+f*f)}pointOnLine(e,i){let n=1/0,a=e[0][0],u=e[0][1],h=0,f=0;for(let _=0;_<e.length-1;_++){let g=e[_][0],v=e[_][1],b=vn(e[_+1][0]-g)*this.kx,w=(e[_+1][1]-v)*this.ky,I=0;b===0&&w===0||(I=(vn(i[0]-g)*this.kx*b+(i[1]-v)*this.ky*w)/(b*b+w*w),I>1?(g=e[_+1][0],v=e[_+1][1]):I>0&&(g+=b/this.kx*I,v+=w/this.ky*I)),b=vn(i[0]-g)*this.kx,w=(i[1]-v)*this.ky;const E=b*b+w*w;E<n&&(n=E,a=g,u=v,h=_,f=I)}return{point:[a,u],index:h,t:Math.max(0,Math.min(1,f))}}lineSlice(e,i,n){let a=this.pointOnLine(n,e),u=this.pointOnLine(n,i);if(a.index>u.index||a.index===u.index&&a.t>u.t){const g=a;a=u,u=g}const h=[a.point],f=a.index+1,_=u.index;!Hu(n[f],h[0])&&f<=_&&h.push(n[f]);for(let g=f+1;g<=_;g++)h.push(n[g]);return Hu(n[_],u.point)||h.push(u.point),h}lineSliceAlong(e,i,n){let a=0;const u=[];for(let h=0;h<n.length-1;h++){const f=n[h],_=n[h+1],g=this.distance(f,_);if(a+=g,a>e&&u.length===0&&u.push(xc(f,_,(e-(a-g))/g)),a>=i)return u.push(xc(f,_,(i-(a-g))/g)),u;a>e&&u.push(_)}return u}bufferPoint(e,i){const n=i/this.ky,a=i/this.kx;return[e[0]-a,e[1]-n,e[0]+a,e[1]+n]}bufferBBox(e,i){const n=i/this.ky,a=i/this.kx;return[e[0]-a,e[1]-n,e[2]+a,e[3]+n]}insideBBox(e,i){return vn(e[0]-i[0])>=0&&vn(e[0]-i[2])<=0&&e[1]>=i[1]&&e[1]<=i[3]}}function Hu(r,e){return r[0]===e[0]&&r[1]===e[1]}function xc(r,e,i){const n=vn(e[0]-r[0]);return[r[0]+n*i,r[1]+(e[1]-r[1])*i]}function vn(r){for(;r<-180;)r+=360;for(;r>180;)r-=360;return r}class _l{constructor(e=[],i=(n,a)=>n<a?-1:n>a?1:0){if(this.data=e,this.length=this.data.length,this.compare=i,this.length>0)for(let n=(this.length>>1)-1;n>=0;n--)this._down(n)}push(e){this.data.push(e),this._up(this.length++)}pop(){if(this.length===0)return;const e=this.data[0],i=this.data.pop();return--this.length>0&&(this.data[0]=i,this._down(0)),e}peek(){return this.data[0]}_up(e){const{data:i,compare:n}=this,a=i[e];for(;e>0;){const u=e-1>>1,h=i[u];if(n(a,h)>=0)break;i[e]=h,e=u}i[e]=a}_down(e){const{data:i,compare:n}=this,a=this.length>>1,u=i[e];for(;e<a;){let h=1+(e<<1);const f=h+1;if(f<this.length&&n(i[f],i[h])<0&&(h=f),n(i[h],u)>=0)break;i[e]=i[h],e=h}i[e]=u}}var Ge=8192;function $u(r,e){return e.dist-r.dist}function Zu(r){const e=[1/0,1/0,-1/0,-1/0];if(e.length!==r.length)return!1;for(let i=0;i<e.length;i++)if(e[i]!==r[i])return!1;return!0}function gl(r){return r[1]-r[0]+1}function ns(r,e){const i=r[1]>=r[0]&&r[1]<e;return i||console.warn("Distance Expression: Index is out of range"),i}function Wu(r,e){if(r[0]>r[1])return[null,null];const i=gl(r);if(e){if(i===2)return[r,null];const n=Math.floor(i/2);return[[r[0],r[0]+n],[r[0]+n,r[1]]]}{if(i===1)return[r,null];const n=Math.floor(i/2)-1;return[[r[0],r[0]+n],[r[0]+n+1,r[1]]]}}function Fo(r,e){const i=[1/0,1/0,-1/0,-1/0];if(!ns(e,r.length))return i;for(let n=e[0];n<=e[1];++n)fl(i,r[n]);return i}function ko(r){const e=[1/0,1/0,-1/0,-1/0];for(let i=0;i<r.length;++i)for(let n=0;n<r[i].length;++n)fl(e,r[i][n]);return e}function ro(r,e,i){if(Zu(r)||Zu(e))return NaN;let n=0,a=0;return r[2]<e[0]&&(n=e[0]-r[2]),r[0]>e[2]&&(n=r[0]-e[2]),r[1]>e[3]&&(a=r[1]-e[3]),r[3]<e[1]&&(a=e[1]-r[3]),i.distance([0,0],[n,a])}function vc(r){return 360*r-180}function sf(r){return 360/Math.PI*Math.atan(Math.exp((180-360*r)*Math.PI/180))-90}function bc(r,e){const i=Math.pow(2,e.z),n=(r.y/Ge+e.y)/i;return[vc((r.x/Ge+e.x)/i),sf(n)]}function vm(r,e){const i=[];for(let n=0;n<r.length;++n)i.push(bc(r[n],e));return i}function of(r,e,i){const n=i.pointOnLine(e,r).point;return i.distance(r,n)}function Xu(r,e,i,n,a){const u=i.slice(n[0],n[1]+1);let h=1/0;for(let f=e[0];f<=e[1];++f)if((h=Math.min(h,of(r[f],u,a)))===0)return 0;return h}function no(r,e,i,n,a){const u=Math.min(a.pointToSegmentDistance(r,i,n),a.pointToSegmentDistance(e,i,n)),h=Math.min(a.pointToSegmentDistance(i,r,e),a.pointToSegmentDistance(n,r,e));return Math.min(u,h)}function zt(r,e,i,n,a){if(!ns(e,r.length)||!ns(n,i.length))return NaN;let u=1/0;for(let h=e[0];h<e[1];++h)for(let f=n[0];f<n[1];++f){if(gc(r[h],r[h+1],i[f],i[f+1]))return 0;u=Math.min(u,no(r[h],r[h+1],i[f],i[f+1],a))}return u}function bm(r,e,i,n,a){if(!ns(e,r.length)||!ns(n,i.length))return NaN;let u=1/0;for(let h=e[0];h<=e[1];++h)for(let f=n[0];f<=n[1];++f)if((u=Math.min(u,a.distance(r[h],i[f])))===0)return u;return u}function wm(r,e,i){if(Ln(r,e,!0))return 0;let n=1/0;for(const a of e){const u=a.length;if(u<2)return console.warn("Distance Expression: Invalid polygon!"),NaN;if(a[0]!==a[u-1]&&(n=Math.min(n,i.pointToSegmentDistance(r,a[u-1],a[0])))===0||(n=Math.min(n,of(r,a,i)))===0)return n}return n}function Tm(r,e,i,n){if(!ns(e,r.length))return NaN;for(let u=e[0];u<=e[1];++u)if(Ln(r[u],i,!0))return 0;let a=1/0;for(let u=e[0];u<e[1];++u)for(const h of i)for(let f=0,_=h.length,g=_-1;f<_;g=f++){if(gc(r[u],r[u+1],h[g],h[f]))return 0;a=Math.min(a,no(r[u],r[u+1],h[g],h[f],n))}return a}function Yu(r,e){for(const i of r)for(let n=0;n<=i.length-1;++n)if(Ln(i[n],e,!0))return!0;return!1}function Sm(r,e,i,n=1/0){const a=ko(r),u=ko(e);if(n!==1/0&&ro(a,u,i)>=n)return n;if(pl(a,u)){if(Yu(r,e))return 0}else if(Yu(e,r))return 0;let h=n;for(const f of r)for(let _=0,g=f.length,v=g-1;_<g;v=_++)for(const b of e)for(let w=0,I=b.length,E=I-1;w<I;E=w++){if(gc(f[v],f[_],b[E],b[w]))return 0;h=Math.min(h,no(f[v],f[_],b[E],b[w],i))}return h}function di(r,e,i,n,a,u,h){if(u===null||h===null)return;const f=ro(Fo(n,u),Fo(a,h),i);f<e&&r.push({dist:f,range1:u,range2:h})}function Im(r,e,i,n,a=1/0){let u=Math.min(n.distance(r[0],i[0][0]),a);if(u===0)return u;const h=new _l([{dist:0,range1:[0,r.length-1],range2:[0,0]}],$u),f=e?50:100,_=ko(i);for(;h.length;){const g=h.pop();if(g.dist>=u)continue;const v=g.range1;if(gl(v)<=f){if(!ns(v,r.length))return NaN;if(e){const b=Tm(r,v,i,n);if((u=Math.min(u,b))===0)return u}else for(let b=v[0];b<=v[1];++b){const w=wm(r[b],i,n);if((u=Math.min(u,w))===0)return u}}else{const b=Wu(v,e);if(b[0]!==null){const w=ro(Fo(r,b[0]),_,n);w<u&&h.push({dist:w,range1:b[0],range2:[0,0]})}if(b[1]!==null){const w=ro(Fo(r,b[1]),_,n);w<u&&h.push({dist:w,range1:b[1],range2:[0,0]})}}}return u}function af(r,e,i,n,a,u=1/0){let h=Math.min(u,a.distance(r[0],i[0]));if(h===0)return h;const f=new _l([{dist:0,range1:[0,r.length-1],range2:[0,i.length-1]}],$u),_=e?50:100,g=n?50:100;for(;f.length;){const v=f.pop();if(v.dist>=h)continue;const b=v.range1,w=v.range2;if(gl(b)<=_&&gl(w)<=g){if(!ns(b,r.length)||!ns(w,i.length))return NaN;if(e&&n?h=Math.min(h,zt(r,b,i,w,a)):e||n?e&&!n?h=Math.min(h,Xu(i,w,r,b,a)):!e&&n&&(h=Math.min(h,Xu(r,b,i,w,a))):h=Math.min(h,bm(r,b,i,w,a)),h===0)return h}else{const I=Wu(b,e),E=Wu(w,n);di(f,h,a,r,i,I[0],E[0]),di(f,h,a,r,i,I[0],E[1]),di(f,h,a,r,i,I[1],E[0]),di(f,h,a,r,i,I[1],E[1])}}return h}function Ku(r,e,i,n,a=1/0){let u=a;const h=Fo(r,[0,r.length-1]);for(const f of i)if(!(u!==1/0&&ro(h,Fo(f,[0,f.length-1]),n)>=u)&&(u=Math.min(u,af(r,e,f,!0,n,u)),u===0))return u;return u}function wc(r,e,i,n,a=1/0){let u=a;const h=Fo(r,[0,r.length-1]);for(const f of i){if(u!==1/0&&ro(h,ko(f),n)>=u)continue;const _=Im(r,e,f,n,u);if(isNaN(_))return _;if((u=Math.min(u,_))===0)return u}return u}function Ju(r){return r==="Point"||r==="MultiPoint"||r==="LineString"||r==="MultiLineString"||r==="Polygon"||r==="MultiPolygon"}class Bo{constructor(e,i){this.type=nt,this.geojson=e,this.geometries=i}static parse(e,i){if(e.length!==2)return i.error(`'distance' expression requires either one argument, but found ' ${e.length-1} instead.`);if(Js(e[1])){const n=e[1];if(n.type==="FeatureCollection"){for(let a=0;a<n.features.length;++a)if(Ju(n.features[a].geometry.type))return new Bo(n,n.features[a].geometry)}else if(n.type==="Feature"){if(Ju(n.geometry.type))return new Bo(n,n.geometry)}else if(Ju(n.type))return new Bo(n,n)}return i.error("'distance' expression needs to be an array with format ['Distance', GeoJSONObj].")}evaluate(e){const i=e.geometry(),n=e.canonicalID();if(i!=null&&n!=null){if(e.geometryType()==="Point")return(function(a,u,h){const f=[];for(const g of a)for(const v of g)f.push(bc(v,u));const _=new _a(f[0][1],"meters");return h.type==="Point"||h.type==="MultiPoint"||h.type==="LineString"?af(f,!1,h.type==="Point"?[h.coordinates]:h.coordinates,h.type==="LineString",_):h.type==="MultiLineString"?Ku(f,!1,h.coordinates,_):h.type==="Polygon"||h.type==="MultiPolygon"?wc(f,!1,h.type==="Polygon"?[h.coordinates]:h.coordinates,_):null})(i,n,this.geometries);if(e.geometryType()==="LineString")return(function(a,u,h){const f=[];for(const g of a){const v=[];for(const b of g)v.push(bc(b,u));f.push(v)}const _=new _a(f[0][0][1],"meters");if(h.type==="Point"||h.type==="MultiPoint"||h.type==="LineString")return Ku(h.type==="Point"?[h.coordinates]:h.coordinates,h.type==="LineString",f,_);if(h.type==="MultiLineString"){let g=1/0;for(let v=0;v<h.coordinates.length;v++){const b=Ku(h.coordinates[v],!0,f,_,g);if(isNaN(b))return b;if((g=Math.min(g,b))===0)return g}return g}if(h.type==="Polygon"||h.type==="MultiPolygon"){let g=1/0;for(let v=0;v<f.length;v++){const b=wc(f[v],!0,h.type==="Polygon"?[h.coordinates]:h.coordinates,_,g);if(isNaN(b))return b;if((g=Math.min(g,b))===0)return g}return g}return null})(i,n,this.geometries);if(e.geometryType()==="Polygon")return(function(a,u,h){const f=[];for(const g of(function(v){const b=v.length;if(b<=1)return[v];const w=[];let I,E;for(let C=0;C<b;C++){const D=_m(v[C]);D!==0&&(v[C].area=Math.abs(D),E===void 0&&(E=D<0),E===D<0?(I&&w.push(I),I=[v[C]]):I.push(v[C]))}return I&&w.push(I),w})(a)){const v=[];for(let b=0;b<g.length;++b)v.push(vm(g[b],u));f.push(v)}const _=new _a(f[0][0][0][1],"meters");if(h.type==="Point"||h.type==="MultiPoint"||h.type==="LineString")return wc(h.type==="Point"?[h.coordinates]:h.coordinates,h.type==="LineString",f,_);if(h.type==="MultiLineString"){let g=1/0;for(let v=0;v<h.coordinates.length;v++){const b=wc(h.coordinates[v],!0,f,_,g);if(isNaN(b))return b;if((g=Math.min(g,b))===0)return g}return g}return h.type==="Polygon"||h.type==="MultiPolygon"?(function(g,v,b){let w=1/0;for(const I of g)for(const E of v){const C=Sm(I,E,b,w);if(isNaN(C))return C;if((w=Math.min(w,C))===0)return w}return w})(h.type==="Polygon"?[h.coordinates]:h.coordinates,f,_):null})(i,n,this.geometries);console.warn("Distance Expression: currently only evaluates valid Point/LineString/Polygon geometries.")}else console.warn("Distance Expression: requirs valid feature and canonical information.");return null}eachChild(){}outputDefined(){return!0}serialize(){return["distance",this.geojson]}}function ga(r){if(r instanceof Kr&&(r.name==="get"&&r.args.length===1||r.name==="feature-state"||r.name==="has"&&r.args.length===1||r.name==="properties"||r.name==="geometry-type"||r.name==="id"||/^filter-/.test(r.name))||r instanceof io||r instanceof Bo)return!1;if(r instanceof xa)return r.featureConstant;let e=!0;return r.eachChild(i=>{e&&!ga(i)&&(e=!1)}),e}function yl(r){if(r instanceof Kr&&r.name==="feature-state")return!1;let e=!0;return r.eachChild(i=>{e&&!yl(i)&&(e=!1)}),e}function ya(r,e){if(r instanceof Kr&&e.indexOf(r.name)>=0)return!1;let i=!0;return r.eachChild(n=>{i&&!ya(n,e)&&(i=!1)}),i}function lf(r,e,i){return[r,e,i].filter(Boolean).join("")}function Qu(r,e){switch(r){case"string":return ts(e);case"number":return+e;case"boolean":return!!e;case"color":return Ht.parse(e);case"formatted":return Mr.fromString(ts(e));case"resolvedImage":return Yr.build(ts(e))}return e}function cf(r,e,i,n){return n!==void 0&&(r=n*Math.round(r/n)),e!==void 0&&r<e&&(r=e),i!==void 0&&r>i&&(r=i),r}class xa{constructor(e,i,n,a=!1){this.type=e,this.key=i,this.scope=n,this.featureConstant=a}static parse(e,i){let n=i.expectedType;if(n==null&&(n=Zt),e.length<2||e.length>3)return i.error("Invalid number of arguments for 'config' expression.");const a=i.parse(e[1],1);if(!(a instanceof Cs))return i.error("Key name of 'config' expression must be a string literal.");let u,h=!0;const f=ts(a.value);if(e.length>=3){const _=i.parse(e[2],2);if(!(_ instanceof Cs))return i.error("Scope of 'config' expression must be a string literal.");u=ts(_.value)}if(i.options){const _=lf(f,u,i._scope),g=i.options.get(_);g&&(h=ga(g.value||g.default))}return new xa(n,f,u,h)}evaluate(e){const i=lf(this.key,this.scope,e.scope),n=e.getConfig(i);if(!n)return null;const{type:a,value:u,values:h,minValue:f,maxValue:_,stepValue:g}=n,v=n.default.evaluate(e);let b=v;if(u){const w=e.scope;e.scope=(w||"").split("").slice(1).join(""),b=u.evaluate(e),e.scope=w}return a&&(b=Qu(a,b)),b===void 0||f===void 0&&_===void 0&&g===void 0||(typeof b=="number"?b=cf(b,f,_,g):Array.isArray(b)&&(b=b.map(w=>typeof w=="number"?cf(w,f,_,g):w))),u!==void 0&&b!==void 0&&h&&!h.includes(b)&&(b=v,a&&(b=Qu(a,b))),(a&&a!==this.type||b!==void 0&&!dc(ir(b),this.type))&&(b=Qu(this.type.kind,b)),b}eachChild(){}outputDefined(){return!1}serialize(){const e=["config",this.key];return this.scope&&e.concat(this.scope),e}}class Tc{constructor(e,i){this.type=i.type,this.name=e,this.boundExpression=i}static parse(e,i){if(e.length!==2||typeof e[1]!="string")return i.error("'var' expression requires exactly one string literal argument.");const n=e[1];return i.scope.has(n)?new Tc(n,i.scope.get(n)):i.error(`Unknown variable "${n}". Make sure "${n}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return!1}serialize(){return["var",this.name]}}class Sc{constructor(e,i=[],n,a=new uc,u=[],h,f,_){this.registry=e,this.path=i,this.key=i.map(g=>typeof g=="string"?`['${g}']`:`[${g}]`).join(""),this.scope=a,this.errors=u,this.expectedType=n,this._scope=h,this.options=f,this.iconImageUseTheme=_}parse(e,i,n,a,u={}){return i||n?this.concat(i,null,n,a)._parse(e,u):this._parse(e,u)}parseObjectValue(e,i,n,a,u,h={}){return this.concat(i,n,a,u)._parse(e,h)}_parse(e,i){function n(a,u,h){return h==="assert"?new gt(u,[a]):h==="coerce"?new is(u,[a]):a}if(e!==null&&typeof e!="string"&&typeof e!="boolean"&&typeof e!="number"||(e=["literal",e]),Array.isArray(e)){if(e.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const a=typeof e[0]=="string"?this.registry[e[0]]:void 0;if(a){let u=a.parse(e,this);if(!u)return null;if(this.expectedType){const h=this.expectedType,f=u.type;if(h.kind!=="string"&&h.kind!=="number"&&h.kind!=="boolean"&&h.kind!=="object"&&h.kind!=="array"||f.kind!=="value")if(h.kind!=="color"&&h.kind!=="formatted"&&h.kind!=="resolvedImage"||f.kind!=="value"&&f.kind!=="string"){if(this.checkSubtype(h,f))return null}else u=n(u,h,i.typeAnnotation||"coerce");else u=n(u,h,i.typeAnnotation||"assert")}if(!(u instanceof Cs)&&u.type.kind!=="resolvedImage"&&eh(u)){const h=new pa(this._scope,this.options,this.iconImageUseTheme);try{u=new Cs(u.type,u.evaluate(h))}catch(f){return this.error(f.message),null}}return u}return is.parse(["to-array",e],this)}return this.error(e===void 0?"'undefined' value invalid. Use null instead.":typeof e=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof e} instead.`)}concat(e,i,n,a){let u=typeof e=="number"?this.path.concat(e):this.path;u=typeof i=="string"?u.concat(i):u;const h=a?this.scope.concat(a):this.scope;return new Sc(this.registry,u,n||null,h,this.errors,this._scope,this.options,this.iconImageUseTheme)}error(e,...i){const n=`${this.key}${i.map(a=>`[${a}]`).join("")}`;this.errors.push(new Lr(n,e))}checkSubtype(e,i){const n=ul(e,i);return n&&this.error(n),n}}function eh(r){if(r instanceof Tc)return eh(r.boundExpression);if(r instanceof Kr&&r.name==="error"||r instanceof rs||r instanceof io||r instanceof Bo||r instanceof xa)return!1;const e=r instanceof is||r instanceof gt;let i=!0;return r.eachChild(n=>{i=e?i&&eh(n):i&&n instanceof Cs}),!!i&&ga(r)&&ya(r,["zoom","heatmap-density","worldview","line-progress","raster-value","sky-radial-progress","accumulated","is-supported-script","pitch","distance-from-center","measure-light","raster-particle-speed"])}function Ic(r,e){const i=r.length-1;let n,a,u=0,h=i,f=0;for(;u<=h;)if(f=Math.floor((u+h)/2),n=r[f],a=r[f+1],n<=e){if(f===i||e<a)return f;u=f+1}else{if(!(n>e))throw new Yi("Input is not a number.");h=f-1}return 0}class xl{constructor(e,i,n){this.type=e,this.input=i,this.labels=[],this.outputs=[];for(const[a,u]of n)this.labels.push(a),this.outputs.push(u)}static parse(e,i){if(e.length-1<4)return i.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return i.error("Expected an even number of arguments.");const n=i.parse(e[1],1,nt);if(!n)return null;const a=[];let u=null;i.expectedType&&i.expectedType.kind!=="value"&&(u=i.expectedType);for(let h=1;h<e.length;h+=2){const f=h===1?-1/0:e[h],_=e[h+1],g=h,v=h+1;if(typeof f!="number")return i.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',g);if(a.length&&a[a.length-1][0]>=f)return i.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',g);const b=i.parse(_,v,u);if(!b)return null;u=u||b.type,a.push([f,b])}return new xl(u,n,a)}evaluate(e){const i=this.labels,n=this.outputs;if(i.length===1)return n[0].evaluate(e);const a=this.input.evaluate(e);if(a<=i[0])return n[0].evaluate(e);const u=i.length;return a>=i[u-1]?n[u-1].evaluate(e):n[Ic(i,a)].evaluate(e)}eachChild(e){e(this.input);for(const i of this.outputs)e(i)}outputDefined(){return this.outputs.every(e=>e.outputDefined())}serialize(){const e=["step",this.input.serialize()];for(let i=0;i<this.labels.length;i++)i>0&&e.push(this.labels[i]),e.push(this.outputs[i].serialize());return e}}const uf=.95047,hf=1.08883,df=4/29,va=6/29,ff=3*va*va,Em=va*va*va,Am=Math.PI/180,Mm=180/Math.PI;function th(r){return r>Em?Math.pow(r,1/3):r/ff+df}function ih(r){return r>va?r*r*r:ff*(r-df)}function rh(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function nh(r){return(r/=255)<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function pf(r){const e=nh(r.r),i=nh(r.g),n=nh(r.b),a=th((.4124564*e+.3575761*i+.1804375*n)/uf),u=th((.2126729*e+.7151522*i+.072175*n)/1);return{l:116*u-16,a:500*(a-u),b:200*(u-th((.0193339*e+.119192*i+.9503041*n)/hf)),alpha:r.a}}function Ec(r){let e=(r.l+16)/116,i=isNaN(r.a)?e:e+r.a/500,n=isNaN(r.b)?e:e-r.b/200;return e=1*ih(e),i=uf*ih(i),n=hf*ih(n),new Ht(rh(3.2404542*i-1.5371385*e-.4985314*n),rh(-.969266*i+1.8760108*e+.041556*n),rh(.0556434*i-.2040259*e+1.0572252*n),r.alpha)}function Ac(r,e,i){const n=e-r;return r+i*(n>180||n<-180?n-360*Math.round(n/360):n)}const ba={forward:pf,reverse:Ec,interpolate:function(r,e,i){return{l:ct(r.l,e.l,i),a:ct(r.a,e.a,i),b:ct(r.b,e.b,i),alpha:ct(r.alpha,e.alpha,i)}}},vl={forward:function(r){const{l:e,a:i,b:n}=pf(r),a=Math.atan2(n,i)*Mm;return{h:a<0?a+360:a,c:Math.sqrt(i*i+n*n),l:e,alpha:r.a}},reverse:function(r){const e=r.h*Am,i=r.c;return Ec({l:r.l,a:Math.cos(e)*i,b:Math.sin(e)*i,alpha:r.alpha})},interpolate:function(r,e,i){return{h:Ac(r.h,e.h,i),c:ct(r.c,e.c,i),l:ct(r.l,e.l,i),alpha:ct(r.alpha,e.alpha,i)}}};var mf=Object.freeze({__proto__:null,hcl:vl,lab:ba});class bn{constructor(e,i,n,a,u){this.type=e,this.operator=i,this.interpolation=n,this.input=a,this.labels=[],this.outputs=[];for(const[h,f]of u)this.labels.push(h),this.outputs.push(f)}static interpolationFactor(e,i,n,a){let u=0;if(e.name==="exponential")u=Mc(i,e.base,n,a);else if(e.name==="linear")u=Mc(i,1,n,a);else if(e.name==="cubic-bezier"){const h=e.controlPoints;u=new oa(h[0],h[1],h[2],h[3]).solve(Mc(i,1,n,a))}return u}static parse(e,i){let[n,a,u,...h]=e;if(!Array.isArray(a)||a.length===0)return i.error("Expected an interpolation type expression.",1);if(a[0]==="linear")a={name:"linear"};else if(a[0]==="exponential"){const g=a[1];if(typeof g!="number")return i.error("Exponential interpolation requires a numeric base.",1,1);a={name:"exponential",base:g}}else{if(a[0]!=="cubic-bezier")return i.error(`Unknown interpolation type ${String(a[0])}`,1,0);{const g=a.slice(1);if(g.length!==4||g.some(v=>typeof v!="number"||v<0||v>1))return i.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);a={name:"cubic-bezier",controlPoints:g}}}if(e.length-1<4)return i.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length-1>3&&(e.length-1)%2!=0)return i.error("Expected an even number of arguments.");if(u=i.parse(u,2,nt),!u)return null;const f=[];let _=null;n==="interpolate-hcl"||n==="interpolate-lab"?_=Or:i.expectedType&&i.expectedType.kind!=="value"&&(_=i.expectedType);for(let g=0;g<h.length;g+=2){const v=h[g],b=h[g+1],w=g+3,I=g+4;if(typeof v!="number")return i.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',w);if(f.length&&f[f.length-1][0]>=v)return i.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',w);const E=i.parse(b,I,_);if(!E)return null;_=_||E.type,f.push([v,E])}return _.kind==="number"||_.kind==="color"||_.kind==="array"&&_.itemType.kind==="number"&&typeof _.N=="number"?new bn(_,n,a,u,f):i.error(`Type ${Ui(_)} is not interpolatable.`)}evaluate(e){const i=this.labels,n=this.outputs;if(i.length===1)return n[0].evaluate(e);const a=this.input.evaluate(e);if(a<=i[0])return n[0].evaluate(e);const u=i.length;if(a>=i[u-1])return n[u-1].evaluate(e);const h=Ic(i,a),f=bn.interpolationFactor(this.interpolation,a,i[h],i[h+1]),_=n[h].evaluate(e),g=n[h+1].evaluate(e);return this.operator==="interpolate"?Lo[this.type.kind.toLowerCase()](_,g,f):this.operator==="interpolate-hcl"?vl.reverse(vl.interpolate(vl.forward(_),vl.forward(g),f)):ba.reverse(ba.interpolate(ba.forward(_),ba.forward(g),f))}eachChild(e){e(this.input);for(const i of this.outputs)e(i)}outputDefined(){return this.outputs.every(e=>e.outputDefined())}serialize(){let e;e=this.interpolation.name==="linear"?["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier",...this.interpolation.controlPoints];const i=[this.operator,e,this.input.serialize()];for(let n=0;n<this.labels.length;n++)i.push(this.labels[n],this.outputs[n].serialize());return i}}function Mc(r,e,i,n){const a=n-i,u=r-i;return a===0?0:e===1?u/a:(Math.pow(e,u)-1)/(Math.pow(e,a)-1)}class bl{constructor(e,i){this.type=e,this.args=i}static parse(e,i){if(e.length<2)return i.error("Expectected at least one argument.");let n=null;const a=i.expectedType;a&&a.kind!=="value"&&(n=a);const u=[];for(const f of e.slice(1)){const _=i.parse(f,1+u.length,n,void 0,{typeAnnotation:"omit"});if(!_)return null;n=n||_.type,u.push(_)}const h=a&&u.some(f=>ul(a,f.type));return new bl(h?Zt:n,u)}evaluate(e){let i,n=null,a=0;for(const u of this.args){if(a++,n=u.evaluate(e),n&&n instanceof Yr&&!n.available&&(i||(i=n),n=null,a===this.args.length))return i;if(n!==null)break}return n}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){const e=["coalesce"];return this.eachChild(i=>{e.push(i.serialize())}),e}}class zs{constructor(e,i){this.type=i.type,this.bindings=[].concat(e),this.result=i}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const i of this.bindings)e(i[1]);e(this.result)}static parse(e,i){if(e.length<4)return i.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const n=[];for(let u=1;u<e.length-1;u+=2){const h=e[u];if(typeof h!="string")return i.error(`Expected string, but found ${typeof h} instead.`,u);if(/[^a-zA-Z0-9_]/.test(h))return i.error("Variable names must contain only alphanumeric characters or '_'.",u);const f=i.parse(e[u+1],u+1);if(!f)return null;n.push([h,f])}const a=i.parse(e[e.length-1],e.length-1,i.expectedType,n);return a?new zs(n,a):null}outputDefined(){return this.result.outputDefined()}serialize(){const e=["let"];for(const[i,n]of this.bindings)e.push(i,n.serialize());return e.push(this.result.serialize()),e}}class Pc{constructor(e,i,n){this.type=e,this.index=i,this.input=n}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,nt),a=i.parse(e[2],2,Ar(i.expectedType||Zt));return n&&a?new Pc(a.type.itemType,n,a):null}evaluate(e){const i=this.index.evaluate(e),n=this.input.evaluate(e);if(i<0)throw new Yi("Array index out of bounds: negative index");if(i>=n.length)throw new Yi("Array index out of bounds: index exceeds array size");if(i!==Math.floor(i))throw new Yi("Array index must be an integer. Use at-interpolated for fractional indices");return n[i]}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at",this.index.serialize(),this.input.serialize()]}}class Cc{constructor(e,i,n){this.type=e,this.index=i,this.input=n}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,nt),a=i.parse(e[2],2,Ar(i.expectedType||Zt));return n&&a?new Cc(a.type.itemType,n,a):null}evaluate(e){const i=this.index.evaluate(e),n=this.input.evaluate(e);if(i<0)throw new Yi(`Array index out of bounds: ${i} < 0.`);if(i>n.length-1)throw new Yi(`Array index out of bounds: ${i} > ${n.length-1}.`);if(i===Math.floor(i))return n[i];const a=Math.floor(i),u=Math.ceil(i),h=n[a],f=n[u];if(typeof h!="number"||typeof f!="number")throw new Yi(`Cannot interpolate between non-number values at index ${i}.`);const _=i-a;return h*(1-_)+f*_}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at-interpolated",this.index.serialize(),this.input.serialize()]}}class sh{constructor(e,i){this.type=Nt,this.needle=e,this.haystack=i}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,Zt),a=i.parse(e[2],2,Zt);return n&&a?Ou(n.type,[Nt,qt,nt,Wr,Zt])?new sh(n,a):i.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(n.type)} instead`):null}evaluate(e){const i=this.needle.evaluate(e),n=this.haystack.evaluate(e);if(n==null)return!1;if(!hl(i,["boolean","string","number","null"]))throw new Yi(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(ir(i))} instead.`);if(!hl(n,["string","array"]))throw new Yi(`Expected second argument to be of type array or string, but found ${Ui(ir(n))} instead.`);return n.indexOf(i)>=0}eachChild(e){e(this.needle),e(this.haystack)}outputDefined(){return!0}serialize(){return["in",this.needle.serialize(),this.haystack.serialize()]}}class wa{constructor(e,i,n){this.type=nt,this.needle=e,this.haystack=i,this.fromIndex=n}static parse(e,i){if(e.length<=2||e.length>=5)return i.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,Zt),a=i.parse(e[2],2,Zt);if(!n||!a)return null;if(!Ou(n.type,[Nt,qt,nt,Wr,Zt]))return i.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(n.type)} instead`);if(e.length===4){const u=i.parse(e[3],3,nt);return u?new wa(n,a,u):null}return new wa(n,a)}evaluate(e){const i=this.needle.evaluate(e),n=this.haystack.evaluate(e);if(!hl(i,["boolean","string","number","null"]))throw new Yi(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(ir(i))} instead.`);if(!hl(n,["string","array"]))throw new Yi(`Expected second argument to be of type array or string, but found ${Ui(ir(n))} instead.`);if(this.fromIndex){const a=this.fromIndex.evaluate(e);return n.indexOf(i,a)}return n.indexOf(i)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)}outputDefined(){return!1}serialize(){if(this.fromIndex!=null&&this.fromIndex!==void 0){const e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]}}class wl{constructor(e,i,n,a,u,h){this.inputType=e,this.type=i,this.input=n,this.cases=a,this.outputs=u,this.otherwise=h}static parse(e,i){if(e.length<5)return i.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return i.error("Expected an even number of arguments.");let n,a;i.expectedType&&i.expectedType.kind!=="value"&&(a=i.expectedType);const u={},h=[];for(let g=2;g<e.length-1;g+=2){let v=e[g];const b=e[g+1];Array.isArray(v)||(v=[v]);const w=i.concat(g);if(v.length===0)return w.error("Expected at least one branch label.");for(const E of v){if(typeof E!="number"&&typeof E!="string")return w.error("Branch labels must be numbers or strings.");if(typeof E=="number"&&Math.abs(E)>Number.MAX_SAFE_INTEGER)return w.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof E=="number"&&Math.floor(E)!==E)return w.error("Numeric branch labels must be integer values.");if(n){if(w.checkSubtype(n,ir(E)))return null}else n=ir(E);if(u[String(E)]!==void 0)return w.error("Branch labels must be unique.");u[String(E)]=h.length}const I=i.parse(b,g,a);if(!I)return null;a=a||I.type,h.push(I)}const f=i.parse(e[1],1,Zt);if(!f)return null;const _=i.parse(e[e.length-1],e.length-1,a);return _?f.type.kind!=="value"&&i.concat(1).checkSubtype(n,f.type)?null:new wl(n,a,f,u,h,_):null}evaluate(e){const i=this.input.evaluate(e);return(dc(ir(i),this.inputType)&&this.outputs[this.cases[i]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)}outputDefined(){return this.outputs.every(e=>e.outputDefined())&&this.otherwise.outputDefined()}serialize(){const e=["match",this.input.serialize()],i=Object.keys(this.cases).sort(),n=[],a={};for(const h of i){const f=a[this.cases[h]];f===void 0?(a[this.cases[h]]=n.length,n.push([this.cases[h],[h]])):n[f][1].push(h)}const u=h=>this.inputType.kind==="number"?Number(h):h;for(const[h,f]of n)e.push(f.length===1?u(f[0]):f.map(u)),e.push(this.outputs[h].serialize());return e.push(this.otherwise.serialize()),e}}class Tl{constructor(e,i,n){this.type=e,this.branches=i,this.otherwise=n}static parse(e,i){if(e.length<4)return i.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return i.error("Expected an odd number of arguments.");let n;i.expectedType&&i.expectedType.kind!=="value"&&(n=i.expectedType);const a=[];for(let h=1;h<e.length-1;h+=2){const f=i.parse(e[h],h,Nt);if(!f)return null;const _=i.parse(e[h+1],h+1,n);if(!_)return null;a.push([f,_]),n=n||_.type}const u=i.parse(e[e.length-1],e.length-1,n);return u?new Tl(n,a,u):null}evaluate(e){for(const[i,n]of this.branches)if(i.evaluate(e))return n.evaluate(e);return this.otherwise.evaluate(e)}eachChild(e){for(const[i,n]of this.branches)e(i),e(n);e(this.otherwise)}outputDefined(){return this.branches.every(([e,i])=>i.outputDefined())&&this.otherwise.outputDefined()}serialize(){const e=["case"];return this.eachChild(i=>{e.push(i.serialize())}),e}}class Rc{constructor(e,i,n,a){this.type=e,this.input=i,this.beginIndex=n,this.endIndex=a}static parse(e,i){if(e.length<=2||e.length>=5)return i.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,Zt),a=i.parse(e[2],2,nt);if(!n||!a)return null;if(!Ou(n.type,[Ar(Zt),qt,Zt]))return i.error(`Expected first argument to be of type array or string, but found ${Ui(n.type)} instead`);if(e.length===4){const u=i.parse(e[3],3,nt);return u?new Rc(n.type,n,a,u):null}return new Rc(n.type,n,a)}evaluate(e){const i=this.input.evaluate(e),n=this.beginIndex.evaluate(e);if(!hl(i,["string","array"]))throw new Yi(`Expected first argument to be of type array or string, but found ${Ui(ir(i))} instead.`);if(this.endIndex){const a=this.endIndex.evaluate(e);return i.slice(n,a)}return i.slice(n)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)}outputDefined(){return!1}serialize(){if(this.endIndex!=null&&this.endIndex!==void 0){const e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]}}class oh{constructor(e,i){this.type=Ar(qt),this.str=e,this.delimiter=i}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,qt),a=i.parse(e[2],2,qt);return n&&a?new oh(n,a):void 0}evaluate(e){const i=this.str.evaluate(e),n=this.delimiter.evaluate(e);return i.split(n)}eachChild(e){e(this.str),e(this.delimiter)}outputDefined(){return!1}serialize(){return["split",this.str.serialize(),this.delimiter.serialize()]}}function ah(r,e){return r==="=="||r==="!="?e.kind==="boolean"||e.kind==="string"||e.kind==="number"||e.kind==="null"||e.kind==="value":e.kind==="string"||e.kind==="number"||e.kind==="value"}function lh(r,e,i,n){return n.compare(e,i)===0}function Ta(r,e,i){const n=r!=="=="&&r!=="!=";return class kv{constructor(u,h,f){this.type=Nt,this.lhs=u,this.rhs=h,this.collator=f,this.hasUntypedArgument=u.type.kind==="value"||h.type.kind==="value"}static parse(u,h){if(u.length!==3&&u.length!==4)return h.error("Expected two or three arguments.");const f=u[0];let _=h.parse(u[1],1,Zt);if(!_)return null;if(!ah(f,_.type))return h.concat(1).error(`"${f}" comparisons are not supported for type '${Ui(_.type)}'.`);let g=h.parse(u[2],2,Zt);if(!g)return null;if(!ah(f,g.type))return h.concat(2).error(`"${f}" comparisons are not supported for type '${Ui(g.type)}'.`);if(_.type.kind!==g.type.kind&&_.type.kind!=="value"&&g.type.kind!=="value")return h.error(`Cannot compare types '${Ui(_.type)}' and '${Ui(g.type)}'.`);n&&(_.type.kind==="value"&&g.type.kind!=="value"?_=new gt(g.type,[_]):_.type.kind!=="value"&&g.type.kind==="value"&&(g=new gt(_.type,[g])));let v=null;if(u.length===4){if(_.type.kind!=="string"&&g.type.kind!=="string"&&_.type.kind!=="value"&&g.type.kind!=="value")return h.error("Cannot use collator to compare non-string types.");if(v=h.parse(u[3],3,hc),!v)return null}return new kv(_,g,v)}evaluate(u){const h=this.lhs.evaluate(u),f=this.rhs.evaluate(u);if(n&&this.hasUntypedArgument){const _=ir(h),g=ir(f);if(_.kind!==g.kind||_.kind!=="string"&&_.kind!=="number")throw new Yi(`Expected arguments for "${r}" to be (string, string) or (number, number), but found (${_.kind}, ${g.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){const _=ir(h),g=ir(f);if(_.kind!=="string"||g.kind!=="string")return e(u,h,f)}return this.collator?i(u,h,f,this.collator.evaluate(u)):e(u,h,f)}eachChild(u){u(this.lhs),u(this.rhs),this.collator&&u(this.collator)}outputDefined(){return!0}serialize(){const u=[r];return this.eachChild(h=>{u.push(h.serialize())}),u}}}const Pm=Ta("==",function(r,e,i){return e===i},lh),Cm=Ta("!=",function(r,e,i){return e!==i},function(r,e,i,n){return!lh(0,e,i,n)}),_f=Ta("<",function(r,e,i){return e<i},function(r,e,i,n){return n.compare(e,i)<0}),gf=Ta(">",function(r,e,i){return e>i},function(r,e,i,n){return n.compare(e,i)>0}),zc=Ta("<=",function(r,e,i){return e<=i},function(r,e,i,n){return n.compare(e,i)<=0}),Rm=Ta(">=",function(r,e,i){return e>=i},function(r,e,i,n){return n.compare(e,i)>=0});class Dc{constructor(e,i,n,a,u,h){this.type=qt,this.number=e,this.locale=i,this.currency=n,this.unit=a,this.minFractionDigits=u,this.maxFractionDigits=h}static parse(e,i){if(e.length!==3)return i.error("Expected two arguments.");const n=i.parse(e[1],1,nt);if(!n)return null;const a=e[2];if(typeof a!="object"||Array.isArray(a))return i.error("NumberFormat options argument must be an object.");let u=null;if(a.locale&&(u=i.parseObjectValue(a.locale,2,"locale",qt),!u))return null;let h=null;if(a.currency&&(h=i.parseObjectValue(a.currency,2,"currency",qt),!h))return null;let f=null;if(a.unit&&(f=i.parseObjectValue(a.unit,2,"unit",qt),!f))return null;let _=null;if(a["min-fraction-digits"]&&(_=i.parseObjectValue(a["min-fraction-digits"],2,"min-fraction-digits",nt),!_))return null;let g=null;return a["max-fraction-digits"]&&(g=i.parseObjectValue(a["max-fraction-digits"],2,"max-fraction-digits",nt),!g)?null:new Dc(n,u,h,f,_,g)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:(this.currency?"currency":this.unit&&"unit")||"decimal",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)}outputDefined(){return!1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.unit&&(e.unit=this.unit.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]}}class ch{constructor(e){this.type=nt,this.input=e}static parse(e,i){if(e.length!==2)return i.error(`Expected 1 argument, but found ${e.length-1} instead.`);const n=i.parse(e[1],1);return n?n.type.kind!=="array"&&n.type.kind!=="string"&&n.type.kind!=="value"?i.error(`Expected argument of type string or array, but found ${Ui(n.type)} instead.`):new ch(n):null}evaluate(e){const i=this.input.evaluate(e);if(typeof i=="string"||Array.isArray(i))return i.length;throw new Yi(`Expected value to be of type string or array, but found ${Ui(ir(i))} instead.`)}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){const e=["length"];return this.eachChild(i=>{e.push(i.serialize())}),e}}function yf(r){return function(){r=1831565813+(r|=0)|0;let e=Math.imul(r^r>>>15,1|r);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}const No={"==":Pm,"!=":Cm,">":gf,"<":_f,">=":Rm,"<=":zc,array:gt,at:Pc,"at-interpolated":Cc,boolean:gt,case:Tl,coalesce:bl,collator:rs,format:rt,image:fa,in:sh,"index-of":wa,interpolate:bn,"interpolate-hcl":bn,"interpolate-lab":bn,length:ch,let:zs,literal:Cs,match:wl,number:gt,"number-format":Dc,object:gt,slice:Rc,step:xl,string:gt,"to-boolean":is,"to-color":is,"to-number":is,"to-string":is,var:Tc,within:io,distance:Bo,config:xa,split:oh};function uh(r,[e,i,n,a]){e=e.evaluate(r),i=i.evaluate(r),n=n.evaluate(r);const u=a?a.evaluate(r):1,h=ku(e,i,n,u);if(h)throw new Yi(h);return new Ht(e/255,i/255,n/255,u)}function xf(r,[e,i,n,a]){e=e.evaluate(r),i=i.evaluate(r),n=n.evaluate(r);const u=a?a.evaluate(r):1,h=(function(g,v,b,w){return typeof g=="number"&&g>=0&&g<=360?typeof v=="number"&&v>=0&&v<=100&&typeof b=="number"&&b>=0&&b<=100?w===void 0||typeof w=="number"&&w>=0&&w<=1?null:`Invalid hsla value [${[g,v,b,w].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid hsla value [${(typeof w=="number"?[g,v,b,w]:[g,v,b]).join(", ")}]: 's', and 'l' must be between 0 and 100.`:`Invalid hsla value [${(typeof w=="number"?[g,v,b,w]:[g,v,b]).join(", ")}]: 'h' must be between 0 and 360.`})(e,i,n,u);if(h)throw new Yi(h);const f=`hsla(${e}, ${i}%, ${n}%, ${u})`,_=Ht.parse(f);if(!_)throw new Yi(`Failed to parse HSLA color: ${f}`);return _}function vf(r,e){return r in e}function hh(r,e){const i=e[r];return i===void 0?null:i}function so(r){return{type:r}}function Vo(r){if(r instanceof xa)return new Set([r.key]);let e=new Set;return r.eachChild(i=>{e=new Set([...e,...Vo(i)])}),e}function Lc(r){if(r instanceof Kr&&r.name==="is-active-floor")return!0;let e=!1;return r.eachChild(i=>{!e&&Lc(i)&&(e=!0)}),e}function bf(r){return{result:"success",value:r}}function oo(r){return{result:"error",value:r}}function dh(r,e){return!!r&&!!r.parameters&&r.parameters.indexOf(e)>-1}function Oc(r){return r["property-type"]==="data-driven"}function fh(r){return dh(r.expression,"measure-light")}function wf(r){return dh(r.expression,"zoom")}function ph(r){return!!r.expression&&r.expression.interpolated}function Fc(r){return typeof r=="object"&&r!==null&&!Array.isArray(r)}function Tf(r){return r}function mh(r,e){const i=e.type==="color",n=r.stops&&typeof r.stops[0][0]=="object",a=n||!(n||r.property!==void 0),u=r.type||(ph(e)?"exponential":"interval");if(i&&((r=Object.assign({},r)).stops&&(r.stops=r.stops.map(g=>[g[0],Ht.parse(g[1])])),r.default=Ht.parse(r.default?r.default:e.default)),r.colorSpace&&r.colorSpace!=="rgb"&&!mf[r.colorSpace])throw new Error(`Unknown color space: ${r.colorSpace}`);let h,f,_;if(u==="exponential")h=Sf;else if(u==="interval")h=zm;else if(u==="categorical"){h=Sa,f=Object.create(null);for(const g of r.stops)f[g[0]]=g[1];_=typeof r.stops[0][0]}else{if(u!=="identity")throw new Error(`Unknown function type "${u}"`);h=Dm}if(n){const g={},v=[];for(let I=0;I<r.stops.length;I++){const E=r.stops[I],C=E[0].zoom;g[C]===void 0&&(g[C]={zoom:C,type:r.type,property:r.property,default:r.default,stops:[]},v.push(C)),g[C].stops.push([E[0].value,E[1]])}const b=[];for(const I of v)b.push([g[I].zoom,mh(g[I],e)]);const w={name:"linear"};return{kind:"composite",interpolationType:w,interpolationFactor:bn.interpolationFactor.bind(void 0,w),zoomStops:b.map(I=>I[0]),evaluate:({zoom:I},E)=>Sf({stops:b,base:r.base},e,I).evaluate(I,E)}}if(a){const g=u==="exponential"?{name:"exponential",base:r.base!==void 0?r.base:1}:null;return{kind:"camera",interpolationType:g,interpolationFactor:bn.interpolationFactor.bind(void 0,g),zoomStops:r.stops.map(v=>v[0]),evaluate:({zoom:v})=>h(r,e,v,f,_)}}return{kind:"source",evaluate(g,v){const b=v&&v.properties?v.properties[r.property]:void 0;return b===void 0?Sl(r.default,e.default):h(r,e,b,f,_)}}}function Sl(r,e,i){return r!==void 0?r:e!==void 0?e:i!==void 0?i:void 0}function Sa(r,e,i,n,a){return Sl(typeof i===a?n[i]:void 0,r.default,e.default)}function zm(r,e,i){if(!ut(i))return Sl(r.default,e.default);const n=r.stops.length;if(n===1||i<=r.stops[0][0])return r.stops[0][1];if(i>=r.stops[n-1][0])return r.stops[n-1][1];const a=Ic(r.stops.map(u=>u[0]),i);return r.stops[a][1]}function Sf(r,e,i){const n=r.base!==void 0?r.base:1;if(!ut(i))return Sl(r.default,e.default);const a=r.stops.length;if(a===1||i<=r.stops[0][0])return r.stops[0][1];if(i>=r.stops[a-1][0])return r.stops[a-1][1];const u=Ic(r.stops.map(v=>v[0]),i),h=(function(v,b,w,I){const E=I-w,C=v-w;return E===0?0:b===1?C/E:(Math.pow(b,C)-1)/(Math.pow(b,E)-1)})(i,n,r.stops[u][0],r.stops[u+1][0]),f=r.stops[u][1],_=r.stops[u+1][1];let g=Lo[e.type]||Tf;if(r.colorSpace&&r.colorSpace!=="rgb"){const v=mf[r.colorSpace];g=(b,w)=>v.reverse(v.interpolate(v.forward(b),v.forward(w),h))}return typeof f.evaluate=="function"?{evaluate(...v){const b=f.evaluate.apply(void 0,v),w=_.evaluate.apply(void 0,v);if(b!==void 0&&w!==void 0)return g(b,w,h)}}:g(f,_,h)}function Dm(r,e,i){return e.type==="color"?i=Ht.parse(i):e.type==="formatted"?i=Mr.fromString(i.toString()):e.type==="resolvedImage"?i=Yr.build(i.toString()):ft(i)===e.type||e.type==="enum"&&e.values[i]||(i=void 0),Sl(i,r.default,e.default)}Kr.register(No,{error:[{kind:"error"},[qt],(r,[e])=>{throw new Yi(e.evaluate(r))}],typeof:[qt,[Zt],(r,[e])=>Ui(ir(e.evaluate(r)))],"to-rgba":[Ar(nt,4),[Or],(r,[e])=>e.evaluate(r).toNonPremultipliedRenderColor(null).toArray()],"to-hsla":[Ar(nt,4),[Or],(r,[e])=>e.evaluate(r).toNonPremultipliedRenderColor(null).toHslaArray()],rgb:[Or,[nt,nt,nt],uh],rgba:[Or,[nt,nt,nt,nt],uh],hsl:[Or,[nt,nt,nt],xf],hsla:[Or,[nt,nt,nt,nt],xf],has:{type:Nt,overloads:[[[qt],(r,[e])=>vf(e.evaluate(r),r.properties())],[[qt,ha],(r,[e,i])=>vf(e.evaluate(r),i.evaluate(r))]]},get:{type:Zt,overloads:[[[qt],(r,[e])=>hh(e.evaluate(r),r.properties())],[[qt,ha],(r,[e,i])=>hh(e.evaluate(r),i.evaluate(r))]]},"feature-state":[Zt,[qt],(r,[e])=>hh(e.evaluate(r),r.featureState||{})],properties:[ha,[],r=>r.properties()],"geometry-type":[qt,[],r=>r.geometryType()],worldview:[qt,[],r=>r.globals.worldview||""],"is-active-floor":[Nt,so(qt),(r,e)=>{if(!(r.globals.activeFloors&&r.globals.activeFloors.size>0))return!1;const i=r.globals.activeFloors;return e.some(n=>{const a=n.evaluate(r);return i.has(a)})}],id:[Zt,[],r=>r.id()],zoom:[nt,[],r=>r.globals.zoom],pitch:[nt,[],r=>r.globals.pitch||0],"distance-from-center":[nt,[],r=>r.distanceFromCenter()],"measure-light":[nt,[qt],(r,[e])=>r.measureLight(e.evaluate(r))],"heatmap-density":[nt,[],r=>r.globals.heatmapDensity||0],"line-progress":[nt,[],r=>r.globals.lineProgress||0],"raster-value":[nt,[],r=>r.globals.rasterValue||0],"raster-particle-speed":[nt,[],r=>r.globals.rasterParticleSpeed||0],"sky-radial-progress":[nt,[],r=>r.globals.skyRadialProgress||0],accumulated:[Zt,[],r=>r.globals.accumulated===void 0?null:r.globals.accumulated],"+":[nt,so(nt),(r,e)=>{let i=0;for(const n of e)i+=n.evaluate(r);return i}],"*":[nt,so(nt),(r,e)=>{let i=1;for(const n of e)i*=n.evaluate(r);return i}],"-":{type:nt,overloads:[[[nt,nt],(r,[e,i])=>e.evaluate(r)-i.evaluate(r)],[[nt],(r,[e])=>-e.evaluate(r)]]},"/":[nt,[nt,nt],(r,[e,i])=>e.evaluate(r)/i.evaluate(r)],"%":[nt,[nt,nt],(r,[e,i])=>e.evaluate(r)%i.evaluate(r)],ln2:[nt,[],()=>Math.LN2],pi:[nt,[],()=>Math.PI],e:[nt,[],()=>Math.E],"^":[nt,[nt,nt],(r,[e,i])=>Math.pow(e.evaluate(r),i.evaluate(r))],sqrt:[nt,[nt],(r,[e])=>Math.sqrt(e.evaluate(r))],log10:[nt,[nt],(r,[e])=>Math.log(e.evaluate(r))/Math.LN10],ln:[nt,[nt],(r,[e])=>Math.log(e.evaluate(r))],log2:[nt,[nt],(r,[e])=>Math.log2(e.evaluate(r))],sin:[nt,[nt],(r,[e])=>Math.sin(e.evaluate(r))],cos:[nt,[nt],(r,[e])=>Math.cos(e.evaluate(r))],tan:[nt,[nt],(r,[e])=>Math.tan(e.evaluate(r))],asin:[nt,[nt],(r,[e])=>Math.asin(e.evaluate(r))],acos:[nt,[nt],(r,[e])=>Math.acos(e.evaluate(r))],atan:[nt,[nt],(r,[e])=>Math.atan(e.evaluate(r))],min:[nt,so(nt),(r,e)=>Math.min(...e.map(i=>i.evaluate(r)))],max:[nt,so(nt),(r,e)=>Math.max(...e.map(i=>i.evaluate(r)))],abs:[nt,[nt],(r,[e])=>Math.abs(e.evaluate(r))],round:[nt,[nt],(r,[e])=>{const i=e.evaluate(r);return i<0?-Math.round(-i):Math.round(i)}],floor:[nt,[nt],(r,[e])=>Math.floor(e.evaluate(r))],ceil:[nt,[nt],(r,[e])=>Math.ceil(e.evaluate(r))],"filter-==":[Nt,[qt,Zt],(r,[e,i])=>r.properties()[e.value]===i.value],"filter-id-==":[Nt,[Zt],(r,[e])=>r.id()===e.value],"filter-type-==":[Nt,[qt],(r,[e])=>r.geometryType()===e.value],"filter-<":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n<a}],"filter-id-<":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i<n}],"filter->":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n>a}],"filter-id->":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i>n}],"filter-<=":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n<=a}],"filter-id-<=":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i<=n}],"filter->=":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n>=a}],"filter-id->=":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i>=n}],"filter-has":[Nt,[Zt],(r,[e])=>e.value in r.properties()],"filter-has-id":[Nt,[],r=>r.id()!==null&&r.id()!==void 0],"filter-type-in":[Nt,[Ar(qt)],(r,[e])=>e.value.indexOf(r.geometryType())>=0],"filter-id-in":[Nt,[Ar(Zt)],(r,[e])=>e.value.indexOf(r.id())>=0],"filter-in-small":[Nt,[qt,Ar(Zt)],(r,[e,i])=>i.value.indexOf(r.properties()[e.value])>=0],"filter-in-large":[Nt,[qt,Ar(Zt)],(r,[e,i])=>(function(n,a,u,h){for(;u<=h;){const f=u+h>>1;if(a[f]===n)return!0;a[f]>n?h=f-1:u=f+1}return!1})(r.properties()[e.value],i.value,0,i.value.length-1)],all:{type:Nt,overloads:[[[Nt,Nt],(r,[e,i])=>e.evaluate(r)&&i.evaluate(r)],[so(Nt),(r,e)=>{for(const i of e)if(!i.evaluate(r))return!1;return!0}]]},any:{type:Nt,overloads:[[[Nt,Nt],(r,[e,i])=>e.evaluate(r)||i.evaluate(r)],[so(Nt),(r,e)=>{for(const i of e)if(i.evaluate(r))return!0;return!1}]]},"!":[Nt,[Nt],(r,[e])=>!e.evaluate(r)],"is-supported-script":[Nt,[qt],(r,[e])=>{const i=r.globals&&r.globals.isSupportedScript;return!i||i(e.evaluate(r))}],upcase:[qt,[qt],(r,[e])=>e.evaluate(r).toUpperCase()],downcase:[qt,[qt],(r,[e])=>e.evaluate(r).toLowerCase()],concat:[qt,so(Zt),(r,e)=>e.map(i=>ts(i.evaluate(r))).join("")],"resolved-locale":[qt,[hc],(r,[e])=>e.evaluate(r).resolvedLocale()],random:[nt,[nt,nt,Zt],(r,e)=>{const[i,n,a]=e.map(h=>h.evaluate(r));if(i>n||i===n)return i;let u;if(typeof a=="string")u=(function(h){let f=0;if(h.length===0)return f;for(let _=0;_<h.length;_++)f=(f<<5)-f+h.charCodeAt(_),f&=f;return f})(a);else{if(typeof a!="number")throw new Yi(`Invalid seed input: ${a}`);u=a}return i+yf(u)()*(n-i)}]});class kc{constructor(e,i,n,a,u){this.expression=e,this._warningHistory={},this._scope=n,this._options=a,this._iconImageUseTheme=u,this._evaluator=new pa(n,a,u),this._defaultValue=i?(function(h){return h.type==="color"&&(Fc(h.default)||Array.isArray(h.default))?new Ht(0,0,0,0):h.type==="color"?Ht.parse(h.default)||null:h.default===void 0?null:h.default})(i):null,this._enumValues=i&&i.type==="enum"?i.values:null,this.configDependencies=Vo(e),this.isIndoorDependent=Lc(e)}evaluateWithoutErrorHandling(e,i,n,a,u,h,f,_){return this._evaluator.globals=e,this._evaluator.feature=i,this._evaluator.featureState=n,this._evaluator.canonical=a||null,this._evaluator.availableImages=u||null,this._evaluator.formattedSection=h,this._evaluator.featureTileCoord=f||null,this._evaluator.featureDistanceData=_||null,this.expression.evaluate(this._evaluator)}evaluate(e,i,n,a,u,h,f,_,g){this._evaluator||(this._evaluator=new pa(this._scope,this._options,this._iconImageUseTheme)),this._evaluator.globals=e,this._evaluator.feature=i||null,this._evaluator.featureState=n||null,this._evaluator.canonical=a||null,this._evaluator.availableImages=u||null,this._evaluator.formattedSection=h||null,this._evaluator.featureTileCoord=f||null,this._evaluator.featureDistanceData=_||null,this._evaluator.iconImageUseTheme=g||null;try{const v=this.expression.evaluate(this._evaluator);if(v==null||typeof v=="number"&&v!=v)return this._defaultValue;if(this._enumValues&&!(v in this._enumValues))throw new Yi(`Expected value to be one of ${Object.keys(this._enumValues).map(b=>JSON.stringify(b)).join(", ")}, but found ${JSON.stringify(v)} instead.`);return v}catch(v){const b=v;return this._warningHistory[b.message]||(this._warningHistory[b.message]=!0,typeof console<"u"&&console.warn(`Failed to evaluate expression "${JSON.stringify(this.expression.serialize())}". ${b.message}`)),this._defaultValue}}}function Il(r){return Array.isArray(r)&&r.length>0&&typeof r[0]=="string"&&r[0]in No}function ao(r,e,i,n,a){const u=new Sc(No,[],e?(function(f){const _={color:Or,string:qt,number:nt,enum:qt,boolean:Nt,formatted:da,resolvedImage:Oo};return f.type==="array"?Ar(_[f.value]||Zt,f.length):_[f.type]})(e):void 0,void 0,void 0,i,n,a),h=u.parse(r,void 0,void 0,void 0,e&&e.type==="string"?{typeAnnotation:"coerce"}:void 0);return h?bf(new kc(h,e,i,n,a)):oo(u.errors)}class El{constructor(e,i,n,a){this.kind=e,this._styleExpression=i,this.isLightConstant=n,this.isLineProgressConstant=a,this.isStateDependent=e!=="constant"&&!yl(i.expression),this.configDependencies=Vo(i.expression),this.isIndoorDependent=Lc(i.expression)}evaluateWithoutErrorHandling(e,i,n,a,u,h){return this._styleExpression.evaluateWithoutErrorHandling(e,i,n,a,u,h)}evaluate(e,i,n,a,u,h,f){return this._styleExpression.evaluate(e,i,n,a,u,h,void 0,void 0,f)}}class Uo{constructor(e,i,n,a,u,h){this.kind=e,this.zoomStops=n,this._styleExpression=i,this.isStateDependent=e!=="camera"&&!yl(i.expression),this.isIndoorDependent=Lc(i.expression),this.isLightConstant=u,this.isLineProgressConstant=h,this.configDependencies=Vo(i.expression),this.interpolationType=a}evaluateWithoutErrorHandling(e,i,n,a,u,h){return this._styleExpression.evaluateWithoutErrorHandling(e,i,n,a,u,h)}evaluate(e,i,n,a,u,h){return this._styleExpression.evaluate(e,i,n,a,u,h)}interpolationFactor(e,i,n){return this.interpolationType?bn.interpolationFactor(this.interpolationType,e,i,n):0}}function Bc(r,e,i,n,a){if((r=ao(r,e,i,n,a)).result==="error")return r;const u=r.value.expression,h=ga(u);if(!h&&!Oc(e))return oo([new Lr("","data expressions not supported")]);const f=ya(u,["zoom","pitch","distance-from-center"]);if(!f&&!wf(e))return oo([new Lr("","zoom expressions not supported")]);const _=ya(u,["measure-light"]);if(!_&&!fh(e))return oo([new Lr("","measure-light expression not supported")]);const g=ya(u,["line-progress"]);if(!g&&!(function(w){return dh(w.expression,"line-progress")})(e))return oo([new Lr("","line-progress expression not supported")]);const v=e.expression&&e.expression.relaxZoomRestriction,b=Nc(u);return b||f||v?b instanceof Lr?oo([b]):b instanceof bn&&!ph(e)?oo([new Lr("",'"interpolate" expressions cannot be used with this property')]):bf(b?new Uo(h&&g?"camera":"composite",r.value,b.labels,b instanceof bn?b.interpolation:void 0,_,g):new El(h&&g?"constant":"source",r.value,_,g)):oo([new Lr("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression, or in the properties of atmosphere.')])}class Al{constructor(e,i){this._parameters=e,this._specification=i,Object.assign(this,mh(this._parameters,this._specification))}static deserialize(e){return new Al(e._parameters,e._specification)}static serialize(e){return{_parameters:e._parameters,_specification:e._specification}}}function Nc(r){let e=null;if(r instanceof zs)e=Nc(r.result);else if(r instanceof bl){for(const i of r.args)if(e=Nc(i),e)break}else(r instanceof xl||r instanceof bn)&&r.input instanceof Kr&&r.input.name==="zoom"&&(e=r);return e instanceof Lr||r.eachChild(i=>{const n=Nc(i);n instanceof Lr?e=n:e&&n&&e!==n&&(e=new Lr("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),e}var ss,If,Lm=(function(){if(If)return ss;If=1,ss=e;var r=3;function e(i,n,a){var u=this.cells=[];if(i instanceof ArrayBuffer){this.arrayBuffer=i;var h=new Int32Array(this.arrayBuffer);i=h[0],this.d=(n=h[1])+2*(a=h[2]);for(var f=0;f<this.d*this.d;f++){var _=h[r+f],g=h[r+f+1];u.push(_===g?null:h.subarray(_,g))}var v=h[r+u.length+1];this.keys=h.subarray(h[r+u.length],v),this.bboxes=h.subarray(v),this.insert=this._insertReadonly}else{this.d=n+2*a;for(var b=0;b<this.d*this.d;b++)u.push([]);this.keys=[],this.bboxes=[]}this.n=n,this.extent=i,this.padding=a,this.scale=n/i,this.uid=0;var w=a/n*i;this.min=-w,this.max=i+w}return e.prototype.insert=function(i,n,a,u,h){this._forEachCell(n,a,u,h,this._insertCell,this.uid++),this.keys.push(i),this.bboxes.push(n),this.bboxes.push(a),this.bboxes.push(u),this.bboxes.push(h)},e.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},e.prototype._insertCell=function(i,n,a,u,h,f){this.cells[h].push(f)},e.prototype.query=function(i,n,a,u,h){var f=this.min,_=this.max;if(i<=f&&n<=f&&_<=a&&_<=u&&!h)return Array.prototype.slice.call(this.keys);var g=[];return this._forEachCell(i,n,a,u,this._queryCell,g,{},h),g},e.prototype._queryCell=function(i,n,a,u,h,f,_,g){var v=this.cells[h];if(v!==null)for(var b=this.keys,w=this.bboxes,I=0;I<v.length;I++){var E=v[I];if(_[E]===void 0){var C=4*E;(g?g(w[C+0],w[C+1],w[C+2],w[C+3]):i<=w[C+2]&&n<=w[C+3]&&a>=w[C+0]&&u>=w[C+1])?(_[E]=!0,f.push(b[E])):_[E]=!1}}},e.prototype._forEachCell=function(i,n,a,u,h,f,_,g){for(var v=this._convertToCellCoord(i),b=this._convertToCellCoord(n),w=this._convertToCellCoord(a),I=this._convertToCellCoord(u),E=v;E<=w;E++)for(var C=b;C<=I;C++){var D=this.d*C+E;if((!g||g(this._convertFromCellCoord(E),this._convertFromCellCoord(C),this._convertFromCellCoord(E+1),this._convertFromCellCoord(C+1)))&&h.call(this,i,n,a,u,D,f,_,g))return}},e.prototype._convertFromCellCoord=function(i){return(i-this.padding)/this.scale},e.prototype._convertToCellCoord=function(i){return Math.max(0,Math.min(this.d-1,Math.floor(i*this.scale)+this.padding))},e.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var i=this.cells,n=r+this.cells.length+1+1,a=0,u=0;u<this.cells.length;u++)a+=this.cells[u].length;var h=new Int32Array(n+a+this.keys.length+this.bboxes.length);h[0]=this.extent,h[1]=this.n,h[2]=this.padding;for(var f=n,_=0;_<i.length;_++){var g=i[_];h[r+_]=f,h.set(g,f),f+=g.length}return h[r+i.length]=f,h.set(this.keys,f),h[r+i.length+1]=f+=this.keys.length,h.set(this.bboxes,f),f+=this.bboxes.length,h.buffer},ss})(),jo=_n(Lm);const Vc={};function Je(r,e,i={}){Object.defineProperty(r,"_classRegistryKey",{value:e,writable:!1}),Vc[e]={klass:r,omit:i.omit||[]}}Je(Object,"Object"),jo.serialize=function(r,e){const i=r.toArrayBuffer();return e&&e.add(i),{buffer:i}},jo.deserialize=function(r){return new jo(r.buffer)},Object.defineProperty(jo,"name",{value:"Grid"}),Je(jo,"Grid"),delete Fe.prototype.constructor,Je(Ht,"Color"),Je(Error,"Error"),Je(Mr,"Formatted"),Je(fc,"FormattedSection"),Je(nl,"AJAXError"),Je(Yr,"ResolvedImage"),Je(Al,"StylePropertyFunction"),Je(kc,"StyleExpression",{omit:["_evaluator"]}),Je(Zr,"ImageId"),Je(Xr,"ImageVariant"),Je(Uo,"ZoomDependentExpression"),Je(El,"ZoomConstantExpression"),Je(Kr,"CompoundExpression",{omit:["_evaluate"]});for(const r in No)Vc[No[r]._classRegistryKey]||Je(No[r],`Expression${r}`);function _h(r){return r&&(r instanceof ArrayBuffer||r.constructor&&r.constructor.name==="ArrayBuffer")}function qn(r,e){if(r==null||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||r instanceof Boolean||r instanceof Number||r instanceof String||r instanceof Date||r instanceof RegExp)return r;if(_h(r)||r instanceof ImageBitmap)return e&&e.add(r),r;if(ArrayBuffer.isView(r))return e&&e.add(r.buffer),r;if(r instanceof ImageData)return e&&e.add(r.data.buffer),r;if(Array.isArray(r)){const i=[];for(const n of r)i.push(qn(n,e));return i}if(r instanceof Map){const i={$name:"Map",entries:[]};for(const[n,a]of r.entries())i.entries.push(qn(n),qn(a,e));return i}if(r instanceof Set){const i={$name:"Set"};let n=0;for(const a of r.values())i[++n]=qn(a);return i}if(typeof r=="bigint")return{$name:"BigInt",value:r.toString()};if(typeof r=="object"){const i=r.constructor,n=i._classRegistryKey;if(!n)throw new Error(`Can't serialize object of unregistered class "${i.name}".`);const a=i.serialize?i.serialize(r,e):{};if(!i.serialize){for(const u in r)r.hasOwnProperty(u)&&(Vc[n].omit.indexOf(u)>=0||(a[u]=qn(r[u],e)));r instanceof Error&&(a.message=r.message)}if(a.$name)throw new Error("$name property is reserved for worker serialization logic.");return n!=="Object"&&(a.$name=n),a}throw new Error("can't serialize object of type "+typeof r)}function Ds(r){if(r==null||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||r instanceof Boolean||r instanceof Number||r instanceof String||r instanceof Date||r instanceof RegExp||_h(r)||r instanceof ImageBitmap||ArrayBuffer.isView(r)||r instanceof ImageData)return r;if(Array.isArray(r))return r.map(Ds);if(typeof r=="object"){const e=r.$name||"Object";if(e==="Map"){const a=r.entries||[],u=new Map;for(let h=0;h<a.length;h+=2)u.set(Ds(a[h]),Ds(a[h+1]));return u}if(e==="Set"){const a=new Set;for(const u of Object.keys(r))u!=="$name"&&a.add(Ds(r[u]));return a}if(e==="BigInt")return BigInt(r.value);const{klass:i}=Vc[e];if(!i)throw new Error(`Can't deserialize unregistered class "${e}".`);if(i.deserialize)return i.deserialize(r);const n=Object.create(i.prototype);for(const a of Object.keys(r))a!=="$name"&&(n[a]=Ds(r[a]));return n}throw new Error("can't deserialize object of type "+typeof r)}const Ef=r=>r>=1536&&r<=1791,Af=r=>r>=1872&&r<=1919,Uc=r=>r>=2208&&r<=2303,jc=r=>r>=11904&&r<=12031,gh=r=>r>=12032&&r<=12255,yh=r=>r>=12272&&r<=12287,Ia=r=>r>=12288&&r<=12351,Ea=r=>r>=12352&&r<=12447,Ml=r=>r>=12448&&r<=12543,os=r=>r>=12544&&r<=12591,Mf=r=>r>=12704&&r<=12735,Pf=r=>r>=12736&&r<=12783,Cf=r=>r>=12784&&r<=12799,Rf=r=>r>=12800&&r<=13055,xh=r=>r>=13056&&r<=13311,Aa=r=>r>=13312&&r<=19903,Gc=r=>r>=19968&&r<=40959,vh=r=>r>=40960&&r<=42127,qc=r=>r>=42128&&r<=42191,zf=r=>r>=44032&&r<=55215,Df=r=>r>=63744&&r<=64255,bh=r=>r>=64336&&r<=65023,Lf=r=>r>=65040&&r<=65055,wh=r=>r>=65072&&r<=65103,Of=r=>r>=65104&&r<=65135,Th=r=>r>=65136&&r<=65279,Sh=r=>r>=65280&&r<=65519;function Ih(r){for(const e of r)if(lo(e.charCodeAt(0)))return!0;return!1}function Om(r){for(const e of r)if(!Fm(e.charCodeAt(0)))return!1;return!0}function Fm(r){return!(Ef(r)||Af(r)||Uc(r)||bh(r)||Th(r))}function Ff(r){return!(r<11904||!(Mf(r)||os(r)||wh(r)||Df(r)||xh(r)||jc(r)||Pf(r)||Ia(r)||Aa(r)||Gc(r)||Rf(r)||Sh(r)||Ea(r)||yh(r)||gh(r)||Cf(r)||Ml(r)||Lf(r)||qc(r)||vh(r)))}function lo(r){return!(r!==746&&r!==747&&(r<4352||!(Mf(r)||os(r)||wh(r)&&!(r>=65097&&r<=65103)||Df(r)||xh(r)||jc(r)||Pf(r)||!(!Ia(r)||r>=12296&&r<=12305||r>=12308&&r<=12319||r===12336)||Aa(r)||Gc(r)||Rf(r)||(e=>e>=12592&&e<=12687)(r)||(e=>e>=43360&&e<=43391)(r)||(e=>e>=55216&&e<=55295)(r)||(e=>e>=4352&&e<=4607)(r)||zf(r)||Ea(r)||yh(r)||(e=>e>=12688&&e<=12703)(r)||gh(r)||Cf(r)||Ml(r)&&r!==12540||!(!Sh(r)||r===65288||r===65289||r===65293||r>=65306&&r<=65310||r===65339||r===65341||r===65343||r>=65371&&r<=65503||r===65507||r>=65512&&r<=65519)||!(!Of(r)||r>=65112&&r<=65118||r>=65123&&r<=65126)||(e=>e>=5120&&e<=5759)(r)||(e=>e>=6320&&e<=6399)(r)||Lf(r)||(e=>e>=19904&&e<=19967)(r)||vh(r)||qc(r))))}function kf(r){return r===12312||r===12313||r===12316||r===12540||r===12448}function Eh(r){return!(lo(r)||(function(e){return!!((i=>i>=128&&i<=255)(e)&&(e===167||e===169||e===174||e===177||e===188||e===189||e===190||e===215||e===247)||(i=>i>=8192&&i<=8303)(e)&&(e===8214||e===8224||e===8225||e===8240||e===8241||e===8251||e===8252||e===8258||e===8263||e===8264||e===8265||e===8273)||(i=>i>=8448&&i<=8527)(e)||(i=>i>=8528&&i<=8591)(e)||(i=>i>=8960&&i<=9215)(e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||e===9003||e>=9085&&e<=9114||e>=9150&&e<=9165||e===9167||e>=9169&&e<=9179||e>=9186&&e<=9215)||(i=>i>=9216&&i<=9279)(e)&&e!==9251||(i=>i>=9280&&i<=9311)(e)||(i=>i>=9312&&i<=9471)(e)||(i=>i>=9632&&i<=9727)(e)||(i=>i>=9728&&i<=9983)(e)&&!(e>=9754&&e<=9759)||(i=>i>=11008&&i<=11263)(e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||Ia(e)||Ml(e)||(i=>i>=57344&&i<=63743)(e)||wh(e)||Of(e)||Sh(e)||e===8734||e===8756||e===8757||e>=9984&&e<=10087||e>=10102&&e<=10131||e===65532||e===65533)})(r))}function Hc(r){return Ef(r)||Af(r)||Uc(r)||bh(r)||Th(r)}function Bf(r){return r>=1424&&r<=2303||bh(r)||Th(r)}function km(r,e){return!(!e&&Bf(r)||r>=2304&&r<=3583||r>=3840&&r<=4255||(i=>i>=6016&&i<=6143)(r))}function co(r){for(const e of r)if(Bf(e.charCodeAt(0)))return!0;return!1}const Jr={unavailable:"unavailable",deferred:"deferred",loading:"loading",parsing:"parsing",parsed:"parsed",loaded:"loaded",error:"error"};let uo=null,Fr=Jr.unavailable,ho=null;const Nf=function(r){r&&typeof r=="string"&&r.indexOf("NetworkError")>-1&&(Fr=Jr.error),uo&&uo(r)};function Ah(){Mh.fire(new Ms("pluginStateChange",{pluginStatus:Fr,pluginURL:ho}))}const Mh=new Ps,Ph=function(){return Fr},Ch=function(){if(Fr!==Jr.deferred||!ho)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Fr=Jr.loading,Ah(),ho&&ol({url:ho},r=>{r?Nf(r):(Fr=Jr.loaded,Ah())})},Hn={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>Fr===Jr.loaded||Hn.applyArabicShaping!=null,isLoading:()=>Fr===Jr.loading,setState(r){Fr=r.pluginStatus,ho=r.pluginURL},isParsing:()=>Fr===Jr.parsing,isParsed:()=>Fr===Jr.parsed,getPluginURL:()=>ho};class Qt{constructor(e,i){this.zoom=e,i?(this.now=i.now,this.fadeDuration=i.fadeDuration,this.transition=i.transition,this.pitch=i.pitch,this.brightness=i.brightness,this.worldview=i.worldview,this.activeFloors=i.activeFloors):(this.now=0,this.fadeDuration=0,this.transition={},this.pitch=0,this.brightness=0)}isSupportedScript(e){return(function(i,n){for(const a of i)if(!km(a.charCodeAt(0),n))return!1;return!0})(e,Hn.isLoaded())}}class Pl{constructor(e,i,n,a,u){this.property=e,this.value=i,this.expression=(function(h,f,_,g,v){if(Fc(h))return new Al(h,f);if(Il(h)||Array.isArray(h)&&h.length>0){const b=Bc(h,f,_,g,v);if(b.result==="error")throw new Error(b.value.map(w=>`${w.key}: ${w.message}`).join(", "));return b.value}{let b=h;return typeof h=="string"&&f.type==="color"&&(b=Ht.parse(h)),{kind:"constant",configDependencies:new Set,isIndoorDependent:!1,evaluate:()=>b}}})(i===void 0?e.specification.default:i,e.specification,n,a,u)}isIndoorDependent(){return this.expression.isIndoorDependent}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(e,i,n,a){return this.property.possiblyEvaluate(this,e,i,n,a)}}class Cl{constructor(e,i,n,a){this.property=e,this.value=new Pl(e,void 0,i,n,a)}transitioned(e,i){return new Vf(this.property,this.value,i,Object.assign({},e.transition,this.transition),e.now)}untransitioned(){return new Vf(this.property,this.value,null,{},0)}}class Ma{constructor(e,i,n,a){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues),this._scope=i,this._options=n,this._iconImageUseTheme=a,this._isIndoorDependent=!1,this.configDependencies=new Set}getValue(e){return xt(this._values[e].value.value)}setValue(e,i){this._values.hasOwnProperty(e)||(this._values[e]=new Cl(this._values[e].property,this._scope,this._options,this._iconImageUseTheme)),this._values[e].value=new Pl(this._values[e].property,i===null?void 0:xt(i),this._scope,this._options,this._iconImageUseTheme),this._values[e].value.expression.configDependencies&&(this.configDependencies=new Set([...this.configDependencies,...this._values[e].value.expression.configDependencies]),this._isIndoorDependent=this._isIndoorDependent||this._values[e].value.isIndoorDependent())}setTransitionOrValue(e,i){i&&(this._options=i);const n=this._properties.properties;if(e)for(const a in e){const u=e[a];if(a.endsWith("-transition")){const h=a.slice(0,-11);n[h]&&this.setTransition(h,u)}else n.hasOwnProperty(a)&&this.setValue(a,u)}}getTransition(e){return xt(this._values[e].transition)}setTransition(e,i){this._values.hasOwnProperty(e)||(this._values[e]=new Cl(this._values[e].property)),this._values[e].transition=xt(i)||void 0}serialize(){const e={};for(const i of Object.keys(this._values)){const n=this.getValue(i);n!==void 0&&(e[i]=n);const a=this.getTransition(i);a!==void 0&&(e[`${i}-transition`]=a)}return e}transitioned(e,i){const n=new Uf(this._properties);for(const a of Object.keys(this._values))n._values[a]=this._values[a].transitioned(e,i._values[a]);return n}untransitioned(){const e=new Uf(this._properties);for(const i of Object.keys(this._values))e._values[i]=this._values[i].untransitioned();return e}isIndoorDependent(){return this._isIndoorDependent}}class Vf{constructor(e,i,n,a,u){const h=a.delay||0,f=a.duration||0;u=u||0,this.property=e,this.value=i,this.begin=u+h,this.end=this.begin+f,e.specification.transition&&(a.delay||a.duration)&&(this.prior=n)}possiblyEvaluate(e,i,n){const a=e.now||0,u=this.value.possiblyEvaluate(e,i,n),h=this.prior;if(h){if(a>this.end)return this.prior=null,u;if(this.value.isDataDriven())return this.prior=null,u;if(a<this.begin)return h.possiblyEvaluate(e,i,n);{const f=(a-this.begin)/(this.end-this.begin);return this.property.interpolate(h.possiblyEvaluate(e,i,n),u,U(f))}}return u}}class Uf{constructor(e){this._properties=e,this._values=Object.create(e.defaultTransitioningPropertyValues)}possiblyEvaluate(e,i,n){const a=new kr(this._properties);for(const u of Object.keys(this._values))a._values[u]=this._values[u].possiblyEvaluate(e,i,n);return a}hasTransition(){for(const e of Object.keys(this._values))if(this._values[e].prior)return!0;return!1}}class Rh{constructor(e,i,n,a){this._properties=e,this._values=Object.create(e.defaultPropertyValues),this._scope=i,this._options=n,this._iconImageUseTheme=a,this._isIndoorDependent=!1,this.configDependencies=new Set}getValue(e){return xt(this._values[e].value)}setValue(e,i){this._values[e]=new Pl(this._values[e].property,i===null?void 0:xt(i),this._scope,this._options,this._iconImageUseTheme),this._values[e].expression.configDependencies&&(this.configDependencies=new Set([...this.configDependencies,...this._values[e].expression.configDependencies]),this._isIndoorDependent=this._isIndoorDependent||this._values[e].isIndoorDependent())}serialize(){const e={};for(const i of Object.keys(this._values)){const n=this.getValue(i);n!==void 0&&(e[i]=n)}return e}possiblyEvaluate(e,i,n,a){const u=new kr(this._properties);for(const h of Object.keys(this._values))u._values[h]=this._values[h].possiblyEvaluate(e,i,n,a);return u}isIndoorDependent(){return this._isIndoorDependent}}class Go{constructor(e,i,n,a){this.property=e,this.value=i,this.parameters=n,this.iconImageUseTheme=a}isConstant(){return this.value.kind==="constant"}constantOr(e){return this.value.kind==="constant"?this.value.value:e}evaluate(e,i,n,a){return this.property.evaluate(this.value,this.parameters,e,i,n,a,this.iconImageUseTheme)}}class kr{constructor(e){this._properties=e,this._values=Object.create(e.defaultPossiblyEvaluatedValues)}get(e){return this._values[e]}}class Ve{constructor(e){this.specification=e}possiblyEvaluate(e,i){return e.expression.evaluate(i)}interpolate(e,i,n){const a=Lo[this.specification.type];return a?a(e,i,n):e}}class $e{constructor(e,i){this.specification=e,this.overrides=i}possiblyEvaluate(e,i,n,a,u){return e.expression.kind==="constant"||e.expression.kind==="camera"?new Go(this,{kind:"constant",value:e.expression.evaluate(i,null,{},n,a,void 0,u)},i):new Go(this,e.expression,i,u)}interpolate(e,i,n){if(e.value.kind!=="constant"||i.value.kind!=="constant")return e;if(e.value.value===void 0||i.value.value===void 0)return new Go(this,{kind:"constant",value:void 0},e.parameters);const a=Lo[this.specification.type];return a?new Go(this,{kind:"constant",value:a(e.value.value,i.value.value,n)},e.parameters):e}evaluate(e,i,n,a,u,h,f){return e.kind==="constant"?e.value:e.evaluate(i,n,a,u,h,void 0,f)}}class Pa{constructor(e){this.specification=e}possiblyEvaluate(e,i,n,a){return!!e.expression.evaluate(i,null,{},n,a)}interpolate(){return!1}}class Mi{constructor(e){this.properties=e,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];const i=new Qt(0,{});for(const n in e){const a=e[n];a.specification.overridable&&this.overridableProperties.push(n);const u=this.defaultPropertyValues[n]=new Pl(a,void 0),h=this.defaultTransitionablePropertyValues[n]=new Cl(a);this.defaultTransitioningPropertyValues[n]=h.untransitioned(),this.defaultPossiblyEvaluatedValues[n]=u.possiblyEvaluate(i)}}}Je($e,"DataDrivenProperty"),Je(Ve,"DataConstantProperty"),Je(Pa,"ColorRampProperty");var fe=JSON.parse('{"$version":8,"$root":{"version":{"type":"enum","values":[8]},"fragment":{"type":"boolean"},"name":{"type":"string"},"metadata":{"type":"*"},"center":{"type":"array","value":"number"},"zoom":{"type":"number"},"bearing":{"type":"number","default":0,"period":360},"pitch":{"type":"number","default":0},"light":{"type":"light"},"lights":{"type":"array","value":"light-3d"},"terrain":{"type":"terrain","optional":true},"fog":{"type":"fog"},"snow":{"type":"snow"},"rain":{"type":"rain"},"camera":{"type":"camera"},"color-theme":{"type":"colorTheme"},"indoor":{"type":"indoor"},"imports":{"type":"array","value":"import"},"iconsets":{"type":"iconsets"},"schema":{"type":"schema"},"sources":{"type":"sources"},"sprite":{"type":"string"},"glyphs":{"type":"string","default":"mapbox://fonts/mapbox/{fontstack}/{range}.pbf"},"transition":{"type":"transition"},"projection":{"type":"projection"},"layers":{"type":"array","value":"layer"},"models":{"type":"models"},"featuresets":{"type":"featuresets"}},"featuresets":{"*":{"type":"featureset"}},"featureset":{"metadata":{"type":"*"},"selectors":{"type":"array","value":"selector"}},"selector":{"layer":{"type":"string"},"properties":{"type":"selectorProperty"},"featureNamespace":{"type":"string"},"_uniqueFeatureID":{"type":"boolean"}},"selectorProperty":{"*":{"type":"*"}},"model":{"type":"string"},"import":{"id":{"type":"string"},"url":{"type":"string"},"config":{"type":"config"},"data":{"type":"$root"},"color-theme":{"type":"colorTheme","optional":true}},"config":{"*":{"type":"*"}},"schema":{"*":{"type":"option"}},"option":{"default":{"type":"*","expression":{}},"type":{"type":"enum","values":{"string":1,"number":1,"boolean":1,"color":1}},"array":{"type":"boolean"},"minValue":{"type":"number"},"maxValue":{"type":"number"},"stepValue":{"type":"number"},"values":{"type":"array","value":"*"},"metadata":{"type":"*"}},"models":{"*":{"type":"model"}},"light-3d":{"id":{"type":"string"},"properties":{"type":"properties"},"type":{"type":"enum","values":{"ambient":{},"directional":{},"flat":{}}}},"properties":["properties_light_directional","properties_light_ambient","properties_light_flat"],"properties_light_directional":{"direction":{"type":"array","default":[210,30],"minimum":[0,0],"maximum":[360,90],"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"cast-shadows":{"type":"boolean","default":false},"shadow-quality":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"parameters":["zoom"]}},"shadow-intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"shadow-draw-before-layer":{"type":"string"}},"properties_light_ambient":{"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"properties_light_flat":{"anchor":{"type":"enum","default":"viewport","values":{"map":1,"viewport":1},"expression":{"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"iconsets":{"*":{"type":"iconset"}},"iconset":["iconset_sprite","iconset_source"],"iconset_sprite":{"type":{"type":"enum","values":{"sprite":1}},"url":{"type":"string"}},"iconset_source":{"type":{"type":"enum","values":{"source":1}},"source":{"type":"string"}},"sources":{"*":{"type":"source"}},"source":["source_vector","source_raster","source_raster_dem","source_raster_array","source_geojson","source_video","source_image","source_model"],"source_vector":{"type":{"type":"enum","values":{"vector":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"scheme":{"type":"enum","values":{"xyz":1,"tms":1},"default":"xyz"},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"attribution":{"type":"string"},"promoteId":{"type":"promoteId"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster":{"type":{"type":"enum","values":{"raster":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"scheme":{"type":"enum","values":{"xyz":1,"tms":1},"default":"xyz"},"attribution":{"type":"string"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_dem":{"type":{"type":"enum","values":{"raster-dem":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"attribution":{"type":"string"},"encoding":{"type":"enum","values":{"terrarium":1,"mapbox":1},"default":"mapbox"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_array":{"type":{"type":"enum","values":{"raster-array":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"attribution":{"type":"string"},"rasterLayers":{"type":"*"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_geojson":{"type":{"type":"enum","values":{"geojson":1}},"data":{"type":"*"},"maxzoom":{"type":"number","default":18},"minzoom":{"type":"number","default":0},"attribution":{"type":"string"},"buffer":{"type":"number","default":128,"maximum":512,"minimum":0},"filter":{"type":"*"},"tolerance":{"type":"number","default":0.375},"cluster":{"type":"boolean","default":false},"clusterRadius":{"type":"number","default":50,"minimum":0},"clusterMaxZoom":{"type":"number"},"clusterMinPoints":{"type":"number"},"clusterProperties":{"type":"*"},"lineMetrics":{"type":"boolean","default":false},"generateId":{"type":"boolean","default":false},"promoteId":{"type":"promoteId"},"dynamic":{"type":"boolean","default":false}},"source_video":{"type":{"type":"enum","values":{"video":1}},"urls":{"type":"array","value":"string"},"coordinates":{"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"source_image":{"type":{"type":"enum","values":{"image":1}},"url":{"type":"string"},"coordinates":{"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"modelNodeOverride":{"orientation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360}},"modelNodeOverrides":{"*":{"type":"modelNodeOverride"}},"modelMaterialOverride":{"model-color":{"type":"color"},"model-color-mix-intensity":{"type":"number"},"model-opacity":{"type":"number"},"model-emissive-strength":{"type":"number"}},"modelMaterialOverrides":{"*":{"type":"modelMaterialOverride"}},"modelSourceModel":{"uri":{"type":"string"},"position":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[-180,-90],"maximum":[180,90]},"orientation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360},"nodeOverrides":{"type":"modelNodeOverrides"},"materialOverrides":{"type":"modelMaterialOverrides"},"nodeOverrideNames":{"type":"array","value":"string"},"materialOverrideNames":{"type":"array","value":"string"},"featureProperties":{"type":"*"}},"modelSourceModels":{"*":{"type":"modelSourceModel"}},"source_model":{"type":{"type":"enum","values":{"model":1,"batched-model":1}},"url":{"type":"string"},"maxzoom":{"type":"number","default":18},"minzoom":{"type":"number","default":0},"tiles":{"type":"array","value":"string"},"models":{"type":"modelSourceModels"}},"layer":{"id":{"type":"string"},"type":{"type":"enum","values":{"fill":{},"line":{},"symbol":{},"circle":{},"heatmap":{},"fill-extrusion":{},"building":{},"raster":{},"raster-particle":{},"hillshade":{},"model":{},"background":{},"sky":{},"slot":{},"clip":{}}},"metadata":{"type":"*"},"source":{"type":"string"},"source-layer":{"type":"string"},"slot":{"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"},"appearances":{"type":"array","value":"appearance","supported-layer-types":["symbol"]}},"appearance":{"condition":{"type":"boolean","expression":{"interpolated":true,"parameters":["zoom","pitch","feature","feature-state","measure-light","distance-from-center"]},"property-type":"data-driven"},"name":{"type":"string"},"properties":{"type":"*"}},"layout":["layout_clip","layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_building","layout_symbol","layout_raster","layout_raster-particle","layout_hillshade","layout_background","layout_sky","layout_model"],"layout_background":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_sky":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_model":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"model-id":{"type":"string","default":"","property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"model-allow-density-reduction":{"type":"boolean","default":true}},"layout_clip":{"clip-layer-types":{"type":"array","value":"enum","values":{"model":1,"symbol":1},"default":[],"expression":{}},"clip-layer-scope":{"type":"array","value":"string","default":[],"expression":{}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_fill":{"fill-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"fill-elevation-reference":{"type":"enum","values":{"none":1,"hd-road-base":1,"hd-road-markup":1},"default":"none","expression":{}},"fill-construct-bridge-guard-rail":{"type":"boolean","default":"true","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"}},"layout_circle":{"circle-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"circle-elevation-reference":{"type":"enum","values":{"none":1,"hd-road-markup":1},"default":"none","expression":{}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_heatmap":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_fill-extrusion":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"fill-extrusion-edge-radius":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}}},"layout_building":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"building-facade":{"type":"boolean","default":false,"expression":{"parameters":["feature"]},"property-type":"data-driven"},"building-facade-floors":{"type":"number","minimum":1,"maximum":200,"default":3,"property-type":"data-driven","expression":{"parameters":["feature"]}},"building-facade-unit-width":{"type":"number","minimum":1,"maximum":20,"default":3.1,"property-type":"data-driven","expression":{"parameters":["feature"]}},"building-facade-window":{"type":"array","length":2,"value":"number","minimum":0.1,"maximum":1,"default":[0.9,0.9],"property-type":"data-driven","expression":{"parameters":["feature"]}},"building-roof-shape":{"type":"enum","values":{"flat":1,"hipped":1,"gabled":1,"parapet":1,"mansard":1,"skillion":1,"pyramidal":1},"default":"flat","expression":{"parameters":["feature"]},"property-type":"data-driven"},"building-height":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{},"property-type":"data-driven"},"building-base":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{},"property-type":"data-driven"},"building-flood-light-wall-radius":{"property-type":"data-driven","type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"building-flood-light-ground-radius":{"property-type":"data-driven","type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"building-flip-roof-orientation":{"property-type":"data-driven","type":"boolean","default":false,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}}},"layout_line":{"line-cap":{"type":"enum","values":{"butt":1,"round":1,"square":1},"default":"butt","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-join":{"type":"enum","values":{"bevel":1,"round":1,"miter":1,"none":1},"default":"miter","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{"type":"number","default":2,"expression":{"interpolated":true,"parameters":["zoom"]}},"line-round-limit":{"type":"number","default":1.05,"expression":{"interpolated":true,"parameters":["zoom"]}},"line-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-z-offset":{"type":"number","default":0,"expression":{"parameters":["zoom","feature","line-progress"]},"property-type":"data-driven"},"line-elevation-reference":{"type":"enum","values":{"none":1,"sea":1,"ground":1,"hd-road-markup":1},"default":"none","expression":{}},"line-cross-slope":{"type":"number","expression":{}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"line-width-unit":{"type":"enum","values":{"pixels":1,"meters":1},"default":"pixels","expression":{"parameters":["zoom"]}}},"layout_symbol":{"symbol-placement":{"type":"enum","values":{"point":1,"line":1,"line-center":1},"default":"point","expression":{"parameters":["zoom"]}},"symbol-spacing":{"type":"number","default":250,"minimum":1,"expression":{"interpolated":true,"parameters":["zoom"]}},"symbol-avoid-edges":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"symbol-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{"type":"enum","values":{"auto":1,"viewport-y":1,"source":1},"default":"auto","expression":{"parameters":["zoom"]}},"symbol-z-elevate":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"symbol-elevation-reference":{"type":"enum","values":{"sea":1,"ground":1,"hd-road-markup":1},"default":"ground","expression":{"parameters":["zoom"]}},"icon-allow-overlap":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-ignore-placement":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-optional":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-rotation-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"icon-size":{"type":"number","default":1,"minimum":0,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-size-scale-range":{"type":"array","value":"number","length":2,"default":[0.8,2],"minimum":[0.1,0.1],"maximum":[10,10],"expression":{}},"icon-text-fit":{"type":"enum","values":{"none":1,"width":1,"height":1,"both":1},"default":"none","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit-padding":{"type":"array","value":"number","length":4,"default":[0,0,0,0],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-image":{"type":"resolvedImage","tokens":true,"appearance":true,"use-theme":true,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{"type":"number","default":0,"period":360,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{"type":"number","default":2,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]}},"icon-keep-upright":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-offset":{"type":"array","value":"number","length":2,"default":[0,0],"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{"type":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"text-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"text-rotation-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"text-field":{"type":"formatted","default":"","tokens":true,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-font":{"type":"array","value":"string","default":["Open Sans Regular","Arial Unicode MS Regular"],"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size":{"type":"number","default":16,"minimum":0,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size-scale-range":{"type":"array","value":"number","length":2,"default":[0.8,2],"minimum":[0.1,0.1],"maximum":[10,10],"expression":{}},"text-max-width":{"type":"number","default":10,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{"type":"number","default":1.2,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-letter-spacing":{"type":"number","default":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-justify":{"type":"enum","values":{"auto":1,"left":1,"center":1,"right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{"type":"number","default":0,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["zoom","feature"]}},"text-variable-anchor":{"type":"array","value":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"expression":{"parameters":["zoom"]}},"text-anchor":{"type":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{"type":"number","default":45,"expression":{"interpolated":true,"parameters":["zoom"]}},"text-writing-mode":{"type":"array","value":"enum","values":{"horizontal":1,"vertical":1},"expression":{"parameters":["zoom"]}},"text-rotate":{"type":"number","default":0,"period":360,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-padding":{"type":"number","default":2,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]}},"text-keep-upright":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"text-transform":{"type":"enum","values":{"none":1,"uppercase":1,"lowercase":1},"default":"none","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-offset":{"type":"array","value":"number","length":2,"default":[0,0],"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"text-ignore-placement":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"text-optional":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_raster":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_raster-particle":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_hillshade":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"filter":{"type":"array","value":"*"},"filter_symbol":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature","pitch","distance-from-center"]}},"filter_fill":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_hillshade":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_raster":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_raster-particle":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_clip":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_model":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_line":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_circle":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_fill-extrusion":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_building":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_heatmap":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_operator":{"type":"enum","values":{"==":1,"!=":1,">":1,">=":1,"<":1,"<=":1,"in":1,"!in":1,"all":1,"any":1,"none":1,"has":1,"!has":1}},"geometry_type":{"type":"enum","values":{"Point":1,"LineString":1,"Polygon":1}},"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":1,"exponential":1,"interval":1,"categorical":1},"default":"exponential"},"colorSpace":{"type":"enum","values":{"rgb":1,"lab":1,"hcl":1},"default":"rgb"},"default":{"type":"*"}},"function_stop":{"type":"array","minimum":0,"maximum":24,"value":["number","color"],"length":2},"expression":{"type":"array","value":"*","minimum":1},"fog":{"range":{"type":"array","default":[0.5,10],"minimum":-20,"maximum":20,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"high-color":{"type":"color","default":"#245cdf","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"space-color":{"type":"color","default":["interpolate",["linear"],["zoom"],4,"#010b19",7,"#367ab9"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"horizon-blend":{"type":"number","default":["interpolate",["linear"],["zoom"],4,0.2,7,0.1],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"star-intensity":{"type":"number","default":["interpolate",["linear"],["zoom"],5,0.35,6,0],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vertical-range":{"type":"array","default":[0,0],"minimum":0,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}}},"snow":{"density":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,0.85],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,0.3],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette-color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"center-thinning":{"type":"number","default":0.4,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"direction":{"type":"array","default":[0,50],"minimum":0,"maximum":360,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"flake-size":{"type":"number","default":0.71,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true}},"rain":{"density":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,0.5],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"color":{"type":"color","default":["interpolate",["linear"],["measure-light","brightness"],0,"#03113d",0.3,"#a8adbc"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"opacity":{"type":"number","default":["interpolate",["linear"],["measure-light","brightness"],0,0.88,1,0.7],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,1],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette-color":{"type":"color","default":["interpolate",["linear"],["measure-light","brightness"],0,"#001736",0.3,"#464646"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"center-thinning":{"type":"number","default":0.57,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"direction":{"type":"array","default":[0,80],"minimum":0,"maximum":360,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"droplet-size":{"type":"array","default":[2.6,18.2],"minimum":0,"maximum":50,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"distortion-strength":{"type":"number","default":0.7,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true}},"camera":{"camera-projection":{"type":"enum","values":{"perspective":1,"orthographic":1},"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"default":"perspective"}},"colorTheme":{"data":{"type":"string","expression":{}}},"indoor_source":{"sourceId":{"type":"string"},"sourceLayers":{"type":"array","value":"string"}},"indoor":{"*":{"type":"indoor_source"}},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":1,"viewport":1},"expression":{"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"projection":{"name":{"type":"enum","values":{"albers":1,"equalEarth":1,"equirectangular":1,"lambertConformalConic":1,"mercator":1,"naturalEarth":1,"winkelTripel":1,"globe":1},"default":"mercator"},"center":{"type":"array","length":2,"value":"number","minimum":[-180,-90],"maximum":[180,90]},"parallels":{"type":"array","length":2,"value":"number","minimum":[-90,-90],"maximum":[90,90]}},"terrain":{"source":{"type":"string"},"exaggeration":{"type":"number","default":1,"minimum":0,"maximum":1000,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"paint":["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_building","paint_symbol","paint_raster","paint_raster-particle","paint_hillshade","paint_background","paint_sky","paint_model"],"paint_fill":{"fill-antialias":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-outline-color":{"type":"color","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"fill-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-pattern-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-z-offset":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-bridge-guard-rail-color":{"type":"color","default":"rgba(241, 236, 225, 255)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature"]},"property-type":"data-driven"},"fill-tunnel-structure-color":{"type":"color","default":"rgba(241, 236, 225, 255)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature"]},"property-type":"data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"fill-extrusion-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-extrusion-pattern-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-height":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-height-alignment":{"type":"enum","values":{"terrain":1,"flat":1},"default":"flat"},"fill-extrusion-base-alignment":{"type":"enum","values":{"terrain":1,"flat":1},"default":"terrain"},"fill-extrusion-vertical-gradient":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-extrusion-ambient-occlusion-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-wall-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-ground-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-flood-light-color":{"type":"color","default":"#ffffff","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-flood-light-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-flood-light-wall-radius":{"property-type":"data-driven","type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"fill-extrusion-flood-light-ground-radius":{"property-type":"data-driven","type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"fill-extrusion-flood-light-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-vertical-scale":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-rounded-roof":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-extrusion-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"fill-extrusion-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature-state"]},"property-type":"data-driven"},"fill-extrusion-line-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-extrusion-cast-shadows":{"type":"boolean","default":true}},"paint_building":{"building-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"building-ambient-occlusion-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"parameters":[]},"transition":true},"building-ambient-occlusion-ground-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"building-ambient-occlusion-ground-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"building-ambient-occlusion-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"building-vertical-scale":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"building-cast-shadows":{"type":"boolean","default":true},"building-color":{"type":"color","default":"rgba(193, 154, 127, 1)","use-theme":true,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"property-type":"data-driven"},"building-emissive-strength":{"type":"number","default":0,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"property-type":"data-driven"},"building-facade-emissive-chance":{"type":"number","default":0.35,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["measure-light","zoom"]}},"building-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"building-flood-light-color":{"type":"color","default":"#ffffff","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"building-flood-light-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"building-flood-light-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_line":{"line-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"line-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"line-width":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light","line-progress"]},"property-type":"data-driven"},"line-gap-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-offset":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-dasharray":{"type":"array","value":"number","minimum":0,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-pattern-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"line-gradient":{"type":"color","use-theme":true,"expression":{"interpolated":true,"parameters":["line-progress"]}},"line-trim-offset":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[0,0],"maximum":[1,1]},"line-trim-fade-range":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[0,0],"maximum":[1,1],"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"line-trim-color":{"type":"color","default":"transparent","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"line-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-driven"},"line-border-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-border-color":{"type":"color","default":"rgba(0, 0, 0, 0)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-occlusion-opacity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-blur":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"circle-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"circle-pitch-scale":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"circle-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1},"default":"viewport","expression":{"parameters":["zoom"]}},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-stroke-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}}},"paint_heatmap":{"heatmap-radius":{"type":"number","default":30,"minimum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"heatmap-weight":{"type":"number","default":1,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"heatmap-intensity":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"heatmap-color":{"type":"color","default":["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",0.1,"royalblue",0.3,"cyan",0.5,"lime",0.7,"yellow",1,"red"],"use-theme":true,"expression":{"interpolated":true,"parameters":["heatmap-density"]}},"heatmap-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-occlusion-opacity":{"type":"number","minimum":0,"maximum":1,"default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-emissive-strength":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature-state"]},"property-type":"data-driven"},"text-emissive-strength":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature-state"]},"property-type":"data-driven"},"icon-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"icon-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"icon-image-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-occlusion-opacity":{"type":"number","minimum":0,"maximum":1,"default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"overridable":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"text-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"icon-color-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"expression":{}},"icon-color-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"expression":{}},"icon-color-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"icon-color-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{}},"symbol-z-offset":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-color":{"type":"color","use-theme":true,"expression":{"interpolated":true,"parameters":["raster-value"]}},"raster-color-mix":{"type":"array","default":[0.2126,0.7152,0.0722,0],"length":4,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-color-range":{"type":"array","length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-hue-rotate":{"type":"number","default":0,"period":360,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-resampling":{"type":"enum","values":{"linear":1,"nearest":1},"default":"linear","expression":{"parameters":["zoom"]}},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"raster-array-band":{"type":"string"},"raster-elevation":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_raster-particle":{"raster-particle-array-band":{"type":"string"},"raster-particle-count":{"type":"number","default":512,"minimum":1},"raster-particle-color":{"type":"color","use-theme":true,"expression":{"interpolated":true,"parameters":["raster-particle-speed"]}},"raster-particle-max-speed":{"type":"number","default":1,"minimum":1},"raster-particle-speed-factor":{"type":"number","default":0.2,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-particle-fade-opacity-factor":{"type":"number","default":0.98,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-particle-reset-rate-factor":{"type":"number","default":0.8,"minimum":0,"maximum":1},"raster-particle-elevation":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_hillshade":{"hillshade-illumination-direction":{"type":"number","default":335,"minimum":0,"maximum":359,"expression":{"interpolated":true,"parameters":["zoom"]}},"hillshade-illumination-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"viewport","expression":{"parameters":["zoom"]}},"hillshade-exaggeration":{"type":"number","default":0.5,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"hillshade-shadow-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"hillshade-highlight-color":{"type":"color","default":"#FFFFFF","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"hillshade-accent-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"hillshade-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}}},"paint_background":{"background-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":[]}},"background-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"background-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom"]}},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"background-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}}},"paint_sky":{"sky-type":{"type":"enum","values":{"gradient":1,"atmosphere":1},"default":"atmosphere","expression":{"parameters":["zoom"]}},"sky-atmosphere-sun":{"type":"array","value":"number","length":2,"minimum":[0,0],"maximum":[360,180],"expression":{"parameters":["zoom"]}},"sky-atmosphere-sun-intensity":{"type":"number","default":10,"minimum":0,"maximum":100},"sky-gradient-center":{"type":"array","value":"number","default":[0,0],"length":2,"minimum":[0,0],"maximum":[360,180],"expression":{"parameters":["zoom"]}},"sky-gradient-radius":{"type":"number","default":90,"minimum":0,"maximum":180,"expression":{"parameters":["zoom"]}},"sky-gradient":{"type":"color","default":["interpolate",["linear"],["sky-radial-progress"],0.8,"#87ceeb",1,"white"],"use-theme":true,"expression":{"interpolated":true,"parameters":["sky-radial-progress"]}},"sky-atmosphere-halo-color":{"type":"color","default":"white","use-theme":true},"sky-atmosphere-color":{"type":"color","default":"white","use-theme":true},"sky-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_model":{"model-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"property-type":"data-driven"},"model-rotation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-scale":{"type":"array","value":"number","length":3,"default":[1,1,1],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-translation":{"type":"array","value":"number","length":3,"default":[0,0,0],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-color":{"type":"color","default":"#ffffff","property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light","zoom"]},"use-theme":true,"transition":true},"model-color-mix-intensity":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-type":{"type":"enum","values":{"common-3d":1,"location-indicator":1},"default":"common-3d"},"model-cast-shadows":{"type":"boolean","default":true},"model-receive-shadows":{"type":"boolean","default":true},"model-ambient-occlusion-intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"model-emissive-strength":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-roughness":{"type":"number","default":1,"minimum":0,"maximum":1,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state"]},"transition":true},"model-height-based-emissive-strength-multiplier":{"type":"array","default":[1,1,1,1,0],"length":5,"value":"number","property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"model-front-cutoff":{"type":"array","value":"number","expression":{"interpolated":true,"parameters":["zoom"]},"length":3,"default":[0,0,1],"minimum":[0,0,0],"maximum":[1,1,1]},"model-elevation-reference":{"type":"enum","values":{"sea":1,"ground":1,"hd-road-markup":1},"default":"ground","expression":{}}},"transition":{"duration":{"type":"number","default":300,"minimum":0},"delay":{"type":"number","default":0,"minimum":0}},"promoteId":{"*":{"type":"*"}}}');function jf(r){return r instanceof Number||r instanceof String||r instanceof Boolean?r.valueOf():r}function $c(r){if(Array.isArray(r))return r.map($c);if(r instanceof Object&&!(r instanceof Number||r instanceof String||r instanceof Boolean)){const e={};for(const i in r)e[i]=$c(r[i]);return e}return jf(r)}function zh(r){if(r===!0||r===!1)return!0;if(!Array.isArray(r)||r.length===0)return!1;switch(r[0]){case"has":return r.length>=2&&r[1]!=="$id"&&r[1]!=="$type";case"in":return r.length>=3&&(typeof r[1]!="string"||Array.isArray(r[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return r.length!==3||Array.isArray(r[1])||Array.isArray(r[2]);case"any":case"all":for(const e of r.slice(1))if(!zh(e)&&typeof e!="boolean")return!1;return!0;default:return!0}}function Dh(r,e="",i=null,n="fill"){if(r==null)return{filter:()=>!0,needGeometry:!1,needFeature:!1};zh(r)||(r=Rl(r));const a=r;let u=!0;try{u=(function(v){if(!Ca(v))return v;let b=$c(v);return Lh(b),b=Gf(b),b})(a)}catch{console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.
1
+ "use strict";const NT=require("./index-BlRmOrMv.js");function VT(Au,dm){for(var To=0;To<dm.length;To++){const ms=dm[To];if(typeof ms!="string"&&!Array.isArray(ms)){for(const So in ms)if(So!=="default"&&!(So in Au)){const Wa=Object.getOwnPropertyDescriptor(ms,So);Wa&&Object.defineProperty(Au,So,Wa.get?Wa:{enumerable:!0,get:()=>ms[So]})}}}return Object.freeze(Object.defineProperty(Au,Symbol.toStringTag,{value:"Module"}))}var Ud={exports:{}},UT=Ud.exports,Fv;function jT(){return Fv||(Fv=1,(function(Au,dm){(function(To,ms){Au.exports=ms()})(UT,(function(){"use strict";var To,ms,So;function Wa(o,Sr){if(!To)To=Sr;else if(!ms)ms=Sr;else{var Ei="self.onerror = function() { console.error('An error occurred while parsing the WebWorker bundle. This is most likely due to improper transpilation by Babel; please see https://docs.mapbox.com/mapbox-gl-js/guides/install/#transpiling'); }; var sharedChunk = {}; ("+To+")(sharedChunk); ("+ms+")(sharedChunk); self.onerror = null;",_s={};To(_s),So=Sr(_s),typeof window<"u"&&window&&window.URL&&window.URL.createObjectURL&&(So.workerUrl=window.URL.createObjectURL(new Blob([Ei],{type:"text/javascript"})))}}Wa(["exports"],function(o){var Sr=1e-6,Ei=typeof Float32Array<"u"?Float32Array:Array;function _s(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=i*u-a*n;return h?(r[0]=u*(h=1/h),r[1]=-n*h,r[2]=-a*h,r[3]=i*h,r):null}function tc(){var r=new Ei(9);return Ei!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[5]=0,r[6]=0,r[7]=0),r[0]=1,r[4]=1,r[8]=1,r}function ea(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=e[4],f=e[5],_=e[6],g=e[7],v=e[8];return r[0]=h*v-f*g,r[1]=a*g-n*v,r[2]=n*f-a*h,r[3]=f*_-u*v,r[4]=i*v-a*_,r[5]=a*u-i*f,r[6]=u*g-h*_,r[7]=n*_-i*g,r[8]=i*h-n*u,r}function Yn(r,e,i){var n=e[0],a=e[1],u=e[2],h=e[3],f=e[4],_=e[5],g=e[6],v=e[7],b=e[8],w=i[0],I=i[1],E=i[2],C=i[3],D=i[4],R=i[5],O=i[6],B=i[7],V=i[8];return r[0]=w*n+I*h+E*g,r[1]=w*a+I*f+E*v,r[2]=w*u+I*_+E*b,r[3]=C*n+D*h+R*g,r[4]=C*a+D*f+R*v,r[5]=C*u+D*_+R*b,r[6]=O*n+B*h+V*g,r[7]=O*a+B*f+V*v,r[8]=O*u+B*_+V*b,r}function Io(){var r=new Ei(16);return Ei!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=0,r[12]=0,r[13]=0,r[14]=0),r[0]=1,r[5]=1,r[10]=1,r[15]=1,r}function Jt(r){var e=new Ei(16);return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}function Ai(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function kn(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=e[4],f=e[5],_=e[6],g=e[7],v=e[8],b=e[9],w=e[10],I=e[11],E=e[12],C=e[13],D=e[14],R=e[15],O=i*f-n*h,B=i*_-a*h,V=i*g-u*h,$=n*_-a*f,H=n*g-u*f,J=a*g-u*_,ee=v*C-b*E,K=v*D-w*E,re=v*R-I*E,oe=b*D-w*C,Te=b*R-I*C,ve=w*R-I*D,we=O*ve-B*Te+V*oe+$*re-H*K+J*ee;return we?(r[0]=(f*ve-_*Te+g*oe)*(we=1/we),r[1]=(a*Te-n*ve-u*oe)*we,r[2]=(C*J-D*H+R*$)*we,r[3]=(w*H-b*J-I*$)*we,r[4]=(_*re-h*ve-g*K)*we,r[5]=(i*ve-a*re+u*K)*we,r[6]=(D*V-E*J-R*B)*we,r[7]=(v*J-w*V+I*B)*we,r[8]=(h*Te-f*re+g*ee)*we,r[9]=(n*re-i*Te-u*ee)*we,r[10]=(E*H-C*V+R*O)*we,r[11]=(b*V-v*H-I*O)*we,r[12]=(f*K-h*oe-_*ee)*we,r[13]=(i*oe-n*K+a*ee)*we,r[14]=(C*B-E*$-D*O)*we,r[15]=(v*$-b*B+w*O)*we,r):null}function Si(r,e,i){var n=e[0],a=e[1],u=e[2],h=e[3],f=e[4],_=e[5],g=e[6],v=e[7],b=e[8],w=e[9],I=e[10],E=e[11],C=e[12],D=e[13],R=e[14],O=e[15],B=i[0],V=i[1],$=i[2],H=i[3];return r[0]=B*n+V*f+$*b+H*C,r[1]=B*a+V*_+$*w+H*D,r[2]=B*u+V*g+$*I+H*R,r[3]=B*h+V*v+$*E+H*O,r[4]=(B=i[4])*n+(V=i[5])*f+($=i[6])*b+(H=i[7])*C,r[5]=B*a+V*_+$*w+H*D,r[6]=B*u+V*g+$*I+H*R,r[7]=B*h+V*v+$*E+H*O,r[8]=(B=i[8])*n+(V=i[9])*f+($=i[10])*b+(H=i[11])*C,r[9]=B*a+V*_+$*w+H*D,r[10]=B*u+V*g+$*I+H*R,r[11]=B*h+V*v+$*E+H*O,r[12]=(B=i[12])*n+(V=i[13])*f+($=i[14])*b+(H=i[15])*C,r[13]=B*a+V*_+$*w+H*D,r[14]=B*u+V*g+$*I+H*R,r[15]=B*h+V*v+$*E+H*O,r}function tn(r,e,i){var n,a,u,h,f,_,g,v,b,w,I,E,C=i[0],D=i[1],R=i[2];return e===r?(r[12]=e[0]*C+e[4]*D+e[8]*R+e[12],r[13]=e[1]*C+e[5]*D+e[9]*R+e[13],r[14]=e[2]*C+e[6]*D+e[10]*R+e[14],r[15]=e[3]*C+e[7]*D+e[11]*R+e[15]):(a=e[1],u=e[2],h=e[3],f=e[4],_=e[5],g=e[6],v=e[7],b=e[8],w=e[9],I=e[10],E=e[11],r[0]=n=e[0],r[1]=a,r[2]=u,r[3]=h,r[4]=f,r[5]=_,r[6]=g,r[7]=v,r[8]=b,r[9]=w,r[10]=I,r[11]=E,r[12]=n*C+f*D+b*R+e[12],r[13]=a*C+_*D+w*R+e[13],r[14]=u*C+g*D+I*R+e[14],r[15]=h*C+v*D+E*R+e[15]),r}function Ir(r,e,i){var n=i[0],a=i[1],u=i[2];return r[0]=e[0]*n,r[1]=e[1]*n,r[2]=e[2]*n,r[3]=e[3]*n,r[4]=e[4]*a,r[5]=e[5]*a,r[6]=e[6]*a,r[7]=e[7]*a,r[8]=e[8]*u,r[9]=e[9]*u,r[10]=e[10]*u,r[11]=e[11]*u,r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}function gs(r,e,i){var n=Math.sin(i),a=Math.cos(i),u=e[4],h=e[5],f=e[6],_=e[7],g=e[8],v=e[9],b=e[10],w=e[11];return e!==r&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[4]=u*a+g*n,r[5]=h*a+v*n,r[6]=f*a+b*n,r[7]=_*a+w*n,r[8]=g*a-u*n,r[9]=v*a-h*n,r[10]=b*a-f*n,r[11]=w*a-_*n,r}function Bn(r,e,i){var n=Math.sin(i),a=Math.cos(i),u=e[0],h=e[1],f=e[2],_=e[3],g=e[8],v=e[9],b=e[10],w=e[11];return e!==r&&(r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=u*a-g*n,r[1]=h*a-v*n,r[2]=f*a-b*n,r[3]=_*a-w*n,r[8]=u*n+g*a,r[9]=h*n+v*a,r[10]=f*n+b*a,r[11]=_*n+w*a,r}function Nn(r,e,i){var n=Math.sin(i),a=Math.cos(i),u=e[0],h=e[1],f=e[2],_=e[3],g=e[4],v=e[5],b=e[6],w=e[7];return e!==r&&(r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=u*a+g*n,r[1]=h*a+v*n,r[2]=f*a+b*n,r[3]=_*a+w*n,r[4]=g*a-u*n,r[5]=v*a-h*n,r[6]=b*a-f*n,r[7]=w*a-_*n,r}function Kn(r,e){return r[0]=e[0],r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=e[1],r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=e[2],r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function Eo(r,e,i){var n,a,u,h=i[0],f=i[1],_=i[2],g=Math.sqrt(h*h+f*f+_*_);return g<Sr?null:(h*=g=1/g,f*=g,_*=g,n=Math.sin(e),a=Math.cos(e),r[0]=h*h*(u=1-a)+a,r[1]=f*h*u+_*n,r[2]=_*h*u-f*n,r[3]=0,r[4]=h*f*u-_*n,r[5]=f*f*u+a,r[6]=_*f*u+h*n,r[7]=0,r[8]=h*_*u+f*n,r[9]=f*_*u-h*n,r[10]=_*_*u+a,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r)}function Xa(r,e){var i=e[0],n=e[1],a=e[2],u=e[4],h=e[5],f=e[6],_=e[8],g=e[9],v=e[10];return r[0]=Math.sqrt(i*i+n*n+a*a),r[1]=Math.sqrt(u*u+h*h+f*f),r[2]=Math.sqrt(_*_+g*g+v*v),r}function Ya(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=i+i,f=n+n,_=a+a,g=i*h,v=n*h,b=n*f,w=a*h,I=a*f,E=a*_,C=u*h,D=u*f,R=u*_;return r[0]=1-b-E,r[1]=v+R,r[2]=w-D,r[3]=0,r[4]=v-R,r[5]=1-g-E,r[6]=I+C,r[7]=0,r[8]=w+D,r[9]=I-C,r[10]=1-g-b,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}var Ka=Si;function Yt(){var r=new Ei(3);return Ei!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r}function ic(r){var e=new Ei(3);return e[0]=r[0],e[1]=r[1],e[2]=r[2],e}function rn(r){var e=r[0],i=r[1],n=r[2];return Math.sqrt(e*e+i*i+n*n)}function li(r,e,i){var n=new Ei(3);return n[0]=r,n[1]=e,n[2]=i,n}function hi(r,e,i,n){return r[0]=e,r[1]=i,r[2]=n,r}function Hi(r,e,i){return r[0]=e[0]+i[0],r[1]=e[1]+i[1],r[2]=e[2]+i[2],r}function Jn(r,e,i){return r[0]=e[0]-i[0],r[1]=e[1]-i[1],r[2]=e[2]-i[2],r}function Vn(r,e,i){return r[0]=e[0]*i[0],r[1]=e[1]*i[1],r[2]=e[2]*i[2],r}function Qn(r,e,i){return r[0]=Math.min(e[0],i[0]),r[1]=Math.min(e[1],i[1]),r[2]=Math.min(e[2],i[2]),r}function Un(r,e,i){return r[0]=Math.max(e[0],i[0]),r[1]=Math.max(e[1],i[1]),r[2]=Math.max(e[2],i[2]),r}function Ii(r,e,i){return r[0]=e[0]*i,r[1]=e[1]*i,r[2]=e[2]*i,r}function pn(r,e,i,n){return r[0]=e[0]+i[0]*n,r[1]=e[1]+i[1]*n,r[2]=e[2]+i[2]*n,r}function rc(r,e){var i=e[0]-r[0],n=e[1]-r[1],a=e[2]-r[2];return Math.sqrt(i*i+n*n+a*a)}function Ja(r,e){var i=e[0]-r[0],n=e[1]-r[1],a=e[2]-r[2];return i*i+n*n+a*a}function nc(r){var e=r[0],i=r[1],n=r[2];return e*e+i*i+n*n}function Us(r,e){return r[0]=-e[0],r[1]=-e[1],r[2]=-e[2],r}function ni(r,e){var i=e[0],n=e[1],a=e[2],u=i*i+n*n+a*a;return u>0&&(u=1/Math.sqrt(u)),r[0]=e[0]*u,r[1]=e[1]*u,r[2]=e[2]*u,r}function zi(r,e){return r[0]*e[0]+r[1]*e[1]+r[2]*e[2]}function xr(r,e,i){var n=e[0],a=e[1],u=e[2],h=i[0],f=i[1],_=i[2];return r[0]=a*_-u*f,r[1]=u*h-n*_,r[2]=n*f-a*h,r}function Ao(r,e,i,n){var a=e[0],u=e[1],h=e[2];return r[0]=a+n*(i[0]-a),r[1]=u+n*(i[1]-u),r[2]=h+n*(i[2]-h),r}function Vi(r,e,i){var n=e[0],a=e[1],u=e[2],h=i[3]*n+i[7]*a+i[11]*u+i[15];return r[0]=(i[0]*n+i[4]*a+i[8]*u+i[12])/(h=h||1),r[1]=(i[1]*n+i[5]*a+i[9]*u+i[13])/h,r[2]=(i[2]*n+i[6]*a+i[10]*u+i[14])/h,r}function js(r,e,i){var n=e[0],a=e[1],u=e[2];return r[0]=n*i[0]+a*i[3]+u*i[6],r[1]=n*i[1]+a*i[4]+u*i[7],r[2]=n*i[2]+a*i[5]+u*i[8],r}function Gs(r,e,i){var n=i[0],a=i[1],u=i[2],h=i[3],f=e[0],_=e[1],g=e[2],v=a*g-u*_,b=u*f-n*g,w=n*_-a*f;return r[0]=f+h*(v+=v)+a*(w+=w)-u*(b+=b),r[1]=_+h*b+u*v-n*w,r[2]=g+h*w+n*b-a*v,r}function Mo(r){return r[0]=0,r[1]=0,r[2]=0,r}function jn(r,e){return r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]}var ji=Jn,ta=Vn,qs=rn;function ia(){var r=new Ei(4);return Ei!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0,r[3]=0),r}function Po(r,e,i){return r[0]=e[0]*i,r[1]=e[1]*i,r[2]=e[2]*i,r[3]=e[3]*i,r}function Qa(r,e){var i=e[0],n=e[1],a=e[2],u=e[3],h=i*i+n*n+a*a+u*u;return h>0&&(h=1/Math.sqrt(h)),r[0]=i*h,r[1]=n*h,r[2]=a*h,r[3]=u*h,r}function nn(r,e){return r[0]*e[0]+r[1]*e[1]+r[2]*e[2]+r[3]*e[3]}function Hr(r,e,i){var n=e[0],a=e[1],u=e[2],h=e[3];return r[0]=i[0]*n+i[4]*a+i[8]*u+i[12]*h,r[1]=i[1]*n+i[5]*a+i[9]*u+i[13]*h,r[2]=i[2]*n+i[6]*a+i[10]*u+i[14]*h,r[3]=i[3]*n+i[7]*a+i[11]*u+i[15]*h,r}function ys(){var r=new Ei(4);return Ei!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r[3]=1,r}function xs(r){return r[0]=0,r[1]=0,r[2]=0,r[3]=1,r}function Hs(r,e,i){i*=.5;var n=e[0],a=e[1],u=e[2],h=e[3],f=Math.sin(i),_=Math.cos(i);return r[0]=n*_+h*f,r[1]=a*_+u*f,r[2]=u*_-a*f,r[3]=h*_-n*f,r}function Co(r,e,i){i*=.5;var n=e[0],a=e[1],u=e[2],h=e[3],f=Math.sin(i),_=Math.cos(i);return r[0]=n*_-u*f,r[1]=a*_+h*f,r[2]=u*_+n*f,r[3]=h*_-a*f,r}Yt(),ia();var zr,ra,mn,el=Qa,vs=(zr=Yt(),ra=li(1,0,0),mn=li(0,1,0),function(r,e,i){var n=zi(e,i);return n<-.999999?(xr(zr,ra,e),qs(zr)<1e-6&&xr(zr,mn,e),ni(zr,zr),(function(a,u,h){h*=.5;var f=Math.sin(h);a[0]=f*u[0],a[1]=f*u[1],a[2]=f*u[2],a[3]=Math.cos(h)})(r,zr,Math.PI),r):n>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(xr(zr,e,i),r[0]=zr[0],r[1]=zr[1],r[2]=zr[2],r[3]=1+n,el(r,r))});function vr(){var r=new Ei(2);return Ei!=Float32Array&&(r[0]=0,r[1]=0),r}function bs(r,e){var i=new Ei(2);return i[0]=r,i[1]=e,i}function ws(r,e,i){return r[0]=e,r[1]=i,r}function $s(r,e,i){return r[0]=e[0]+i[0],r[1]=e[1]+i[1],r}function Ts(r,e,i){return r[0]=e[0]-i[0],r[1]=e[1]-i[1],r}function Zs(r,e,i){return r[0]=e[0]*i,r[1]=e[1]*i,r}function Ws(r){var e=r[0],i=r[1];return Math.sqrt(e*e+i*i)}function na(r,e){var i=e[0],n=e[1],a=i*i+n*n;return a>0&&(a=1/Math.sqrt(a)),r[0]=e[0]*a,r[1]=e[1]*a,r}function pi(r,e){return r[0]*e[0]+r[1]*e[1]}ys(),ys(),tc();var _r,sc,sa=Ts;function _n(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}vr();var Mu=(function(){if(sc)return _r;function r(e,i,n,a){this.cx=3*e,this.bx=3*(n-e)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*i,this.by=3*(a-i)-this.cy,this.ay=1-this.cy-this.by,this.p1x=e,this.p1y=i,this.p2x=n,this.p2y=a}return sc=1,_r=r,r.prototype={sampleCurveX:function(e){return((this.ax*e+this.bx)*e+this.cx)*e},sampleCurveY:function(e){return((this.ay*e+this.by)*e+this.cy)*e},sampleCurveDerivativeX:function(e){return(3*this.ax*e+2*this.bx)*e+this.cx},solveCurveX:function(e,i){if(i===void 0&&(i=1e-6),e<0)return 0;if(e>1)return 1;for(var n=e,a=0;a<8;a++){var u=this.sampleCurveX(n)-e;if(Math.abs(u)<i)return n;var h=this.sampleCurveDerivativeX(n);if(Math.abs(h)<1e-6)break;n-=u/h}var f=0,_=1;for(n=e,a=0;a<20&&(u=this.sampleCurveX(n),!(Math.abs(u-e)<i));a++)e>u?f=n:_=n,n=.5*(_-f)+f;return n},solve:function(e,i){return this.sampleCurveY(this.solveCurveX(e,i))}},_r})(),oa=_n(Mu);function Fe(r,e){this.x=r,this.y=e}function Ss(r,e){if(Array.isArray(r)){if(!Array.isArray(e)||r.length!==e.length)return!1;for(let i=0;i<r.length;i++)if(!Ss(r[i],e[i]))return!1;return!0}if(typeof r=="object"&&r!==null&&e!==null){if(typeof e!="object"||Object.keys(r).length!==Object.keys(e).length)return!1;for(const i in r)if(!Ss(r[i],e[i]))return!1;return!0}return r===e}Fe.prototype={clone(){return new Fe(this.x,this.y)},add(r){return this.clone()._add(r)},sub(r){return this.clone()._sub(r)},multByPoint(r){return this.clone()._multByPoint(r)},divByPoint(r){return this.clone()._divByPoint(r)},mult(r){return this.clone()._mult(r)},div(r){return this.clone()._div(r)},rotate(r){return this.clone()._rotate(r)},rotateAround(r,e){return this.clone()._rotateAround(r,e)},matMult(r){return this.clone()._matMult(r)},unit(){return this.clone()._unit()},perp(){return this.clone()._perp()},round(){return this.clone()._round()},mag(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals(r){return this.x===r.x&&this.y===r.y},dist(r){return Math.sqrt(this.distSqr(r))},distSqr(r){const e=r.x-this.x,i=r.y-this.y;return e*e+i*i},angle(){return Math.atan2(this.y,this.x)},angleTo(r){return Math.atan2(this.y-r.y,this.x-r.x)},angleWith(r){return this.angleWithSep(r.x,r.y)},angleWithSep(r,e){return Math.atan2(this.x*e-this.y*r,this.x*r+this.y*e)},_matMult(r){const e=r[2]*this.x+r[3]*this.y;return this.x=r[0]*this.x+r[1]*this.y,this.y=e,this},_add(r){return this.x+=r.x,this.y+=r.y,this},_sub(r){return this.x-=r.x,this.y-=r.y,this},_mult(r){return this.x*=r,this.y*=r,this},_div(r){return this.x/=r,this.y/=r,this},_multByPoint(r){return this.x*=r.x,this.y*=r.y,this},_divByPoint(r){return this.x/=r.x,this.y/=r.y,this},_unit(){return this._div(this.mag()),this},_perp(){const r=this.y;return this.y=this.x,this.x=-r,this},_rotate(r){const e=Math.cos(r),i=Math.sin(r),n=i*this.x+e*this.y;return this.x=e*this.x-i*this.y,this.y=n,this},_rotateAround(r,e){const i=Math.cos(r),n=Math.sin(r),a=e.y+n*(this.x-e.x)+i*(this.y-e.y);return this.x=e.x+i*(this.x-e.x)-n*(this.y-e.y),this.y=a,this},_round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},constructor:Fe},Fe.convert=function(r){if(r instanceof Fe)return r;if(Array.isArray(r))return new Fe(+r[0],+r[1]);if(r.x!==void 0&&r.y!==void 0)return new Fe(+r.x,+r.y);throw new Error("Expected [x, y] or {x, y} point format")};const Pu=Math.PI/180,tl=180/Math.PI;function Ot(r){return r*Pu}function he(r){return r*tl}const k=[[0,0],[1,0],[1,1],[0,1]];function U(r){if(r<=0)return 0;if(r>=1)return 1;const e=r*r,i=e*r;return 4*(r<.5?i:3*(r-e)+i-.75)}function W(r,e,i,n){const a=new oa(r,e,i,n);return function(u){return a.solve(u)}}const ae=W(.25,.1,.25,1);function Y(r,e,i){return Math.min(i,Math.max(e,r))}function le(r,e,i){return(i=Y((i-r)/(e-r),0,1))*i*(3-2*i)}function ge(r,e,i){const n=i-e,a=((r-e)%n+n)%n+e;return a===e?i:a}function ue(r,e,i){if(!r.length)return i(null,[]);let n=r.length;const a=new Array(r.length);let u=null;r.forEach((h,f)=>{e(h,(_,g)=>{_&&(u=_),a[f]=g,--n===0&&i(u,a)})})}let be=1;function ke(){return be++}function Le(r){return r<=1?1:Math.pow(2,Math.ceil(Math.log2(r)))}function Ke(r,e){r.forEach(i=>{e[i]&&(e[i]=e[i].bind(e))})}function ot(r,e,i){const n={};for(const a in r)n[a]=e.call(this,r[a],a,r);return n}function lt(r,e,i){const n={};for(const a in r)e.call(this,r[a],a,r)&&(n[a]=r[a]);return n}function xt(r){return Array.isArray(r)?r.map(xt):typeof r=="object"&&r?ot(r,xt):r}function St(r,e){for(let i=0;i<r.length;i++)if(e.indexOf(r[i])>=0)return!0;return!1}const mt={};function dt(r){mt[r]||(typeof console<"u"&&console.warn(r),mt[r]=!0)}function si(r,e,i){return(i.y-r.y)*(e.x-r.x)>(e.y-r.y)*(i.x-r.x)}function $i(r){let e=0;for(let i,n,a=0,u=r.length,h=u-1;a<u;h=a++)i=r[a],n=r[h],e+=(n.x-i.x)*(i.y+n.y);return e}function Di([r,e,i]){const n=Ot(e+90),a=Ot(i);return{x:r*Math.cos(n)*Math.sin(a),y:r*Math.sin(n)*Math.sin(a),z:r*Math.cos(a),azimuthal:e,polar:i}}function Li(r){return(typeof self<"u"||r!==void 0)&&typeof WorkerGlobalScope<"u"&&(r!==void 0?r:self)instanceof WorkerGlobalScope}function mi(r){const e={};if(r.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(i,n,a,u)=>{const h=a||u;return e[n]=!h||h.toLowerCase(),""}),e["max-age"]){const i=parseInt(e["max-age"],10);isNaN(i)?delete e["max-age"]:e["max-age"]=i}return e}let Dt=null;function xi(r,e){return[r[4*e],r[4*e+1],r[4*e+2],r[4*e+3]]}function ti(r,e,i,n){for(;e<i;){const a=e+i>>1;r[a]<n?e=a+1:i=a}return e}function ii(r,e,i,n){for(;e<i;){const a=e+i>>1;r[a]<=n?e=a+1:i=a}return e}function Ri(r){return r>0?1/(1.001-r):1+r}function gr(r){return r>0?1-1/(1.001-r):-r}function cr(r,e,i){return(r-e.min)*(i.max-i.min)/(e.max-e.min)+i.min}const Xi={API_URL:"https://api.mapbox.com",get API_URL_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i},get API_TILEJSON_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/v[0-9]*\/.*\.json.*$)/i},get API_SPRITE_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/styles\/v[0-9]*\/)(.*\/sprite.*\..*$)/i},get API_FONTS_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/fonts\/v[0-9]*\/)(.*\.pbf.*$)/i},get API_STYLE_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/styles\/v[0-9]*\/)(.*$)/i},get API_CDN_URL_REGEX(){return/^((https?:)?\/\/)?api\.mapbox\.c(n|om)(\/mapbox-gl-js\/)(.*$)/i},get EVENTS_URL(){if(!Xi.API_URL)return null;try{const r=new URL(Xi.API_URL);return r.hostname==="api.mapbox.cn"?"https://events.mapbox.cn/events/v2":r.hostname==="api.mapbox.com"?"https://events.mapbox.com/events/v2":null}catch{return null}},SESSION_PATH:"/map-sessions/v1",FEEDBACK_URL:"https://apps.mapbox.com/feedback",TILE_URL_VERSION:"v4",RASTER_URL_PREFIX:"raster/v1",RASTERARRAYS_URL_PREFIX:"rasterarrays/v1",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,DEFAULT_STYLE:"mapbox://styles/mapbox/standard",MAX_PARALLEL_IMAGE_REQUESTS:16,DRACO_URL:"https://api.mapbox.com/mapbox-gl-js/draco_decoder_gltf_v1.5.6.wasm",MESHOPT_URL:"https://api.mapbox.com/mapbox-gl-js/meshopt_base_v0.20.wasm",MESHOPT_SIMD_URL:"https://api.mapbox.com/mapbox-gl-js/meshopt_simd_v0.20.wasm",BUILDING_GEN_URL:"https://api.mapbox.com/mapbox-gl-js/building-gen/building_gen_v1.2.4.wasm",GLYPHS_URL:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",TILES3D_URL_PREFIX:"3dtiles/v1"};function Xs(r){return Xi.API_URL_REGEX.test(r)}function Er(r){return Xi.API_SPRITE_REGEX.test(r)}let sn,Rn,Gn,on,Dr,Is;function Ro(){return sn==null&&(sn=self.OffscreenCanvas&&new OffscreenCanvas(1,1).getContext("2d")&&typeof self.createImageBitmap=="function"),sn}const gn={now:()=>on!==void 0?on:performance.now(),setNow(r){on=r},restoreNow(){on=void 0},frame(r){const e=requestAnimationFrame(r);return{cancel:()=>cancelAnimationFrame(e)}},getImageData(r,e=0){const{width:i,height:n}=r;Dr||(Dr=document.createElement("canvas"));const a=Dr.getContext("2d",{willReadFrequently:!0});if(!a)throw new Error("failed to create canvas 2d context");return(i>Dr.width||n>Dr.height)&&(Dr.width=i,Dr.height=n),a.clearRect(-e,-e,i+2*e,n+2*e),a.drawImage(r,0,0,i,n),a.getImageData(-e,-e,i+2*e,n+2*e)},resolveURL:r=>(Rn||(Rn=document.createElement("a")),Rn.href=r,Rn.href),get devicePixelRatio(){return window.devicePixelRatio},get prefersReducedMotion(){return!!window.matchMedia&&(Gn==null&&(Gn=window.matchMedia("(prefers-reduced-motion: reduce)")),Gn.matches)},hasCanvasFingerprintNoise(){if(Is!==void 0)return Is;if(!Ro())return Is=!1,!1;const r=new OffscreenCanvas(85,1),e=r.getContext("2d",{willReadFrequently:!0});let i=0;for(let a=0;a<r.width;++a)e.fillStyle=`rgba(${i++},${i++},${i++}, 255)`,e.fillRect(a,0,1,1);const n=e.getImageData(0,0,r.width,r.height);i=0;for(let a=0;a<n.data.length;++a)if(a%4!=3&&i++!==n.data[a])return Is=!0,!0;return Is=!1,!1}};function il(r,e){const i=r.indexOf("?");if(i<0)return`${r}?${new URLSearchParams(e).toString()}`;const n=new URLSearchParams(r.slice(i));for(const a in e)n.set(a,e[a]);return`${r.slice(0,i)}?${n.toString()}`}function rl(r,e={persistentParams:[]}){const i=r.indexOf("?");if(i<0)return r;const n=new URLSearchParams,a=new URLSearchParams(r.slice(i));for(const h of e.persistentParams){const f=a.get(h);f&&n.set(h,f)}const u=n.toString();return`${r.slice(0,i)}${u.length>0?`?${u}`:""}`}const jd="mapbox-tiles";let Gd=500,Cu=50;const Ru=["language","worldview","jobid"];let ur,yn;function Es(){try{return caches}catch{}}function xn(){const r=Es();r&&ur==null&&(ur=r.open(jd))}let es=1/0;const aa={supported:!1,testSupport:function(r){!Ys&&zo&&(oc?Hd(r):la=r)}};let la,zo,Ys=!1,oc=!1;const qd=typeof self<"u"?self:{};function Hd(r){const e=r.createTexture();r.bindTexture(r.TEXTURE_2D,e);try{if(r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,zo),r.isContextLost())return;aa.supported=!0}catch{}r.deleteTexture(e),Ys=!0}qd.document&&(zo=qd.document.createElement("img"),zo.onload=function(){la&&Hd(la),la=null,oc=!0},zo.onerror=function(){Ys=!0,la=null},zo.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");const $r={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Iconset:"Iconset",Image:"Image",Model:"Model"};typeof Object.freeze=="function"&&Object.freeze($r);class nl extends Error{constructor(e,i,n){i===401&&Xs(n)&&(e+=": you may have provided an invalid Mapbox access token. See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes"),super(e),this.status=i,this.url=n}toString(){return`${this.name}: ${this.message} (${this.status}): ${this.url}`}}const sl=Li()?()=>self.worker.referrer:()=>(location.protocol==="blob:"?parent:self).location.href,As=function(r,e){if(!(/^file:/.test(i=r.url)||/^file:/.test(sl())&&!/^\w+:/.test(i))){if(self.fetch&&self.Request&&self.AbortController&&Request.prototype.hasOwnProperty("signal"))return(function(n,a){const u=new AbortController,h=new Request(n.url,{method:n.method||"GET",body:n.body,credentials:n.credentials,headers:n.headers,referrer:sl(),referrerPolicy:n.referrerPolicy,signal:u.signal});let f=!1,_=!1;const g=(v=h.url).indexOf("sku=")>0&&Xs(v);var v;n.type==="json"&&h.headers.set("Accept","application/json");const b=(I,E,C)=>{if(_)return;if(I&&I.message!=="SecurityError"&&dt(I.toString()),E&&C)return w(E);const D=Date.now();fetch(h).then(R=>{if(R.ok){const O=g?R.clone():null;return w(R,O,D)}return a(new nl(R.statusText,R.status,n.url))}).catch(R=>{R.name!=="AbortError"&&a(new Error(`${R.message} ${n.url}`))})},w=(I,E,C)=>{(n.type==="arrayBuffer"?I.arrayBuffer():n.type==="json"?I.json():I.text()).then(D=>{_||(E&&C&&(function(R,O,B){if(xn(),ur==null)return;const V=mi(O.headers.get("Cache-Control")||"");if(V["no-store"])return;const $={status:O.status,statusText:O.statusText,headers:new Headers};O.headers.forEach((ee,K)=>$.headers.set(K,ee)),V["max-age"]&&$.headers.set("Expires",new Date(B+1e3*V["max-age"]).toUTCString());const H=$.headers.get("Expires");if(!H||new Date(H).getTime()-B<42e4)return;let J=rl(R.url,{persistentParams:Ru});if(O.status===206){const ee=R.headers.get("Range");if(!ee)return;$.status=200,J=il(J,{range:ee})}(function(ee,K){if(yn===void 0)try{new Response(new ReadableStream),yn=!0}catch{yn=!1}yn?K(ee.body):ee.blob().then(K).catch(re=>dt(re.message))})(O,ee=>{const K=new Response((re=O.status)!==200&&re!==404&&[101,103,204,205,304].includes(re)?null:ee,$);var re;xn(),ur!=null&&ur.then(oe=>oe.put(J,K)).catch(oe=>dt(oe.message))})})(h,E,C),f=!0,a(null,D,I.headers))}).catch(D=>{_||a(new Error(D.message))})};return g?(function(I,E){if(xn(),ur==null)return E(null);ur.then(C=>{let D=rl(I.url,{persistentParams:Ru});const R=I.headers.get("Range");R&&(D=il(D,{range:R})),C.match(D).then(O=>{const B=(function(V){if(!V)return!1;const $=new Date(V.headers.get("Expires")||0),H=mi(V.headers.get("Cache-Control")||"");return Number($)>Date.now()&&!H["no-cache"]})(O);C.delete(D).catch(E),B&&C.put(D,O.clone()).catch(E),E(null,O,B)}).catch(E)}).catch(E)})(h,b):b(null,null),{cancel:()=>{_=!0,f||u.abort()}}})(r,e);if(Li(self)&&self.worker.actor)return self.worker.actor.send("getResource",r,e,void 0,!0)}var i;return(function(n,a){const u=new XMLHttpRequest;u.open(n.method||"GET",n.url,!0),n.type==="arrayBuffer"&&(u.responseType="arraybuffer");for(const h in n.headers)u.setRequestHeader(h,n.headers[h]);return n.type==="json"&&(u.responseType="text",u.setRequestHeader("Accept","application/json")),u.withCredentials=n.credentials==="include",u.onerror=()=>{a(new Error(u.statusText))},u.onload=()=>{if((u.status>=200&&u.status<300||u.status===0)&&u.response!==null){let h=u.response;if(n.type==="json")try{h=JSON.parse(u.response)}catch(_){return a(_)}const f=new Headers;u.getAllResponseHeaders().trim().split(/[\r\n]+/).forEach(_=>{const g=_.split(": "),v=g.shift(),b=g.join(": ");f.append(v,b)}),a(null,h,f)}else a(new nl(u.statusText,u.status,n.url))},u.send(n.body),{cancel:()=>u.abort()}})(r,e)},ol=function(r,e){return As(Object.assign(r,{type:"arrayBuffer"}),e)};function fm(r){const e=document.createElement("a");return e.href=r,e.protocol===location.protocol&&e.host===location.host}const zu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";let Bt,ca;Bt=[],ca=0;const ac=function(r,e){if(aa.supported&&(r.headers||(r.headers={}),r.headers.accept="image/webp,*/*"),ca>=Xi.MAX_PARALLEL_IMAGE_REQUESTS){const u={requestParameters:r,callback:e,cancelled:!1,cancel(){this.cancelled=!0}};return Bt.push(u),u}ca++;let i=!1;const n=()=>{if(!i)for(i=!0,ca--;Bt.length&&ca<Xi.MAX_PARALLEL_IMAGE_REQUESTS;){const u=Bt.shift(),{requestParameters:h,callback:f,cancelled:_}=u;_||(u.cancel=ac(h,f).cancel)}},a=ol(r,(u,h,f)=>{n(),u?e(u):h&&(self.createImageBitmap?(function(_,g){const v=new Blob([new Uint8Array(_)],{type:"image/png"});createImageBitmap(v).then(b=>{g(null,b)}).catch(b=>{g(new Error(`Could not load image because of ${b.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`))})})(h,(_,g)=>e(_,g,f)):(function(_,g){const v=new Image;v.onload=()=>{g(null,v),URL.revokeObjectURL(v.src),v.onload=null,requestAnimationFrame(()=>{v.src=zu})},v.onerror=()=>g(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."));const b=new Blob([new Uint8Array(_)],{type:"image/png"});v.src=_.byteLength?URL.createObjectURL(b):zu})(h,(_,g)=>e(_,g,f)))});return{cancel:()=>{a.cancel(),n()}}};var $d,Zd,al,Ks={exports:{}},ll={exports:{}},lc={exports:{}},pm=(function(){if(al)return Ks.exports;al=1;var r=($d||($d=1,ll.exports=function(i,n){var a,u,h,f,_,g,v,b;for(u=i.length-(a=3&i.length),h=n,_=3432918353,g=461845907,b=0;b<u;)v=255&i.charCodeAt(b)|(255&i.charCodeAt(++b))<<8|(255&i.charCodeAt(++b))<<16|(255&i.charCodeAt(++b))<<24,++b,h=27492+(65535&(f=5*(65535&(h=(h^=v=(65535&(v=(v=(65535&v)*_+(((v>>>16)*_&65535)<<16)&4294967295)<<15|v>>>17))*g+(((v>>>16)*g&65535)<<16)&4294967295)<<13|h>>>19))+((5*(h>>>16)&65535)<<16)&4294967295))+(((f>>>16)+58964&65535)<<16);switch(v=0,a){case 3:v^=(255&i.charCodeAt(b+2))<<16;case 2:v^=(255&i.charCodeAt(b+1))<<8;case 1:h^=v=(65535&(v=(v=(65535&(v^=255&i.charCodeAt(b)))*_+(((v>>>16)*_&65535)<<16)&4294967295)<<15|v>>>17))*g+(((v>>>16)*g&65535)<<16)&4294967295}return h^=i.length,h=2246822507*(65535&(h^=h>>>16))+((2246822507*(h>>>16)&65535)<<16)&4294967295,h=3266489909*(65535&(h^=h>>>13))+((3266489909*(h>>>16)&65535)<<16)&4294967295,(h^=h>>>16)>>>0}),ll.exports),e=(Zd||(Zd=1,lc.exports=function(i,n){for(var a,u=i.length,h=n^u,f=0;u>=4;)a=1540483477*(65535&(a=255&i.charCodeAt(f)|(255&i.charCodeAt(++f))<<8|(255&i.charCodeAt(++f))<<16|(255&i.charCodeAt(++f))<<24))+((1540483477*(a>>>16)&65535)<<16),h=1540483477*(65535&h)+((1540483477*(h>>>16)&65535)<<16)^(a=1540483477*(65535&(a^=a>>>24))+((1540483477*(a>>>16)&65535)<<16)),u-=4,++f;switch(u){case 3:h^=(255&i.charCodeAt(f+2))<<16;case 2:h^=(255&i.charCodeAt(f+1))<<8;case 1:h=1540483477*(65535&(h^=255&i.charCodeAt(f)))+((1540483477*(h>>>16)&65535)<<16)}return h=1540483477*(65535&(h^=h>>>13))+((1540483477*(h>>>16)&65535)<<16),(h^=h>>>15)>>>0}),lc.exports);return Ks.exports=r,Ks.exports.murmur3=r,Ks.exports.murmur2=e,Ks.exports})(),ua=_n(pm);class Ms{constructor(e,...i){Object.assign(this,i[0]||{}),this.type=e}}class cl extends Ms{constructor(e,i={}){super("error",Object.assign({error:e},i))}}function Wd(r,e,i){i[r]&&i[r].indexOf(e)!==-1||(i[r]=i[r]||[],i[r].push(e))}function Do(r,e,i){if(i&&i[r]){const n=i[r].indexOf(e);n!==-1&&i[r].splice(n,1)}}class Ps{on(e,i){return this._listeners=this._listeners||{},Wd(e,i,this._listeners),this}off(e,i){return Do(e,i,this._listeners),Do(e,i,this._oneTimeListeners),this}once(e,i){return i?(this._oneTimeListeners=this._oneTimeListeners||{},Wd(e,i,this._oneTimeListeners),this):new Promise(n=>{this.once(e,n)})}fire(e,i){const n=typeof e=="string"?new Ms(e,i):e,a=n.type;if(this.listens(a)){n.target=this;const u=this._listeners&&this._listeners[a]?this._listeners[a].slice():[];for(const _ of u)_.call(this,n);const h=this._oneTimeListeners&&this._oneTimeListeners[a]?this._oneTimeListeners[a].slice():[];for(const _ of h)Do(a,_,this._oneTimeListeners),_.call(this,n);const f=this._eventedParent;if(f){const _=typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData;Object.assign(n,_),f.fire(n)}}else n instanceof cl&&console.error(n.error);return this}listens(e){return!!(this._listeners&&this._listeners[e]&&this._listeners[e].length>0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e))}setEventedParent(e,i){return this._eventedParent=e,this._eventedParentData=i,this}}class Zr{constructor(e){typeof e=="string"?this.name=e:(this.name=e.name,this.iconsetId=e.iconsetId)}static from(e){return new Zr(e)}static toString(e){return e.iconsetId?`${e.name}${e.iconsetId}`:e.name}static parse(e){const[i,n]=e.split("");return new Zr({name:i,iconsetId:n})}static isEqual(e,i){return e.name===i.name&&e.iconsetId===i.iconsetId}toString(){return Zr.toString(this)}serialize(){return{name:this.name,iconsetId:this.iconsetId}}}var zn,cc={},Xd=(function(){if(zn)return cc;zn=1;var r={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 e(u){return(u=Math.round(u))<0?0:u>255?255:u}function i(u){return e(u[u.length-1]==="%"?parseFloat(u)/100*255:parseInt(u))}function n(u){return(h=u[u.length-1]==="%"?parseFloat(u)/100:parseFloat(u))<0?0:h>1?1:h;var h}function a(u,h,f){return f<0?f+=1:f>1&&(f-=1),6*f<1?u+(h-u)*f*6:2*f<1?h:3*f<2?u+(h-u)*(2/3-f)*6:u}try{cc.parseCSSColor=function(u){var h,f=u.replace(/ /g,"").toLowerCase();if(f in r)return r[f].slice();if(f[0]==="#")return f.length===4?(h=parseInt(f.substr(1),16))>=0&&h<=4095?[(3840&h)>>4|(3840&h)>>8,240&h|(240&h)>>4,15&h|(15&h)<<4,1]:null:f.length===7&&(h=parseInt(f.substr(1),16))>=0&&h<=16777215?[(16711680&h)>>16,(65280&h)>>8,255&h,1]:null;var _=f.indexOf("("),g=f.indexOf(")");if(_!==-1&&g+1===f.length){var v=f.substr(0,_),b=f.substr(_+1,g-(_+1)).split(","),w=1;switch(v){case"rgba":if(b.length!==4)return null;w=n(b.pop());case"rgb":return b.length!==3?null:[i(b[0]),i(b[1]),i(b[2]),w];case"hsla":if(b.length!==4)return null;w=n(b.pop());case"hsl":if(b.length!==3)return null;var I=(parseFloat(b[0])%360+360)%360/360,E=n(b[1]),C=n(b[2]),D=C<=.5?C*(E+1):C+E-C*E,R=2*C-D;return[e(255*a(R,D,I+1/3)),e(255*a(R,D,I)),e(255*a(R,D,I-1/3)),w];default:return null}}return null}}catch{}return cc})();class Ht{constructor(e,i,n,a=1){this.r=e,this.g=i,this.b=n,this.a=a}static parse(e){if(!e)return;if(e instanceof Ht)return e;if(typeof e!="string")return;const i=Xd.parseCSSColor(e);return i?new Ht(i[0]/255,i[1]/255,i[2]/255,i[3]):void 0}toString(){const[e,i,n,a]=[this.r,this.g,this.b,this.a];return`rgba(${Math.round(255*e)},${Math.round(255*i)},${Math.round(255*n)},${a})`}toNonPremultipliedRenderColor(e){const{r:i,g:n,b:a,a:u}=this;return new Yd(e,i,n,a,u)}toPremultipliedRenderColor(e){const{r:i,g:n,b:a,a:u}=this;return new Kd(e,i*u,n*u,a*u,u)}clone(){return new Ht(this.r,this.g,this.b,this.a)}}class Du{constructor(e,i,n,a,u,h=!1){if(this.premultiplied=!1,this.premultiplied=h,e){const f=e.image.height,_=f*f;this.premultiplied?(i=u===0?0:i/u*(f-1),n=u===0?0:n/u*(f-1),a=u===0?0:a/u*(f-1)):(i*=f-1,n*=f-1,a*=f-1),i=Math.max(0,Math.min(f-1,i)),n=Math.max(0,Math.min(f-1,n)),a=Math.max(0,Math.min(f-1,a));const g=Math.floor(i),v=Math.floor(n),b=Math.floor(a),w=Math.ceil(i),I=Math.ceil(n),E=Math.ceil(a),C=i-g,D=n-v,R=a-b,O=e.image.data,B=4*(g+v*_+b*f),V=4*(g+v*_+E*f),$=4*(g+I*_+b*f),H=4*(g+I*_+E*f),J=4*(w+v*_+b*f),ee=4*(w+v*_+E*f),K=4*(w+I*_+b*f),re=4*(w+I*_+E*f);this.r=ct(ct(ct(O[B],O[V],R),ct(O[$],O[H],R),D),ct(ct(O[J],O[ee],R),ct(O[K],O[re],R),D),C)/255*(this.premultiplied?u:1),this.g=ct(ct(ct(O[B+1],O[V+1],R),ct(O[$+1],O[H+1],R),D),ct(ct(O[J+1],O[ee+1],R),ct(O[K+1],O[re+1],R),D),C)/255*(this.premultiplied?u:1),this.b=ct(ct(ct(O[B+2],O[V+2],R),ct(O[$+2],O[H+2],R),D),ct(ct(O[J+2],O[ee+2],R),ct(O[K+2],O[re+2],R),D),C)/255*(this.premultiplied?u:1),this.a=u}else this.r=i,this.g=n,this.b=a,this.a=u}toArray(){const{r:e,g:i,b:n,a}=this;return[255*e,255*i,255*n,a]}toHslaArray(){let{r:e,g:i,b:n,a}=this;if(this.premultiplied){if(a===0)return[0,0,0,0];const E=1/a;e*=E,i*=E,n*=E}const u=Math.min(Math.max(e,0),1),h=Math.min(Math.max(i,0),1),f=Math.min(Math.max(n,0),1),_=Math.min(u,h,f),g=Math.max(u,h,f),v=g-_,b=.5*(_+g);if(v===0)return[0,0,100*b,a];const w=b>.5?v/(2-g-_):v/(g+_);let I;switch(g){case u:I=60*((h-f)/v+(h<f?6:0));break;case h:I=60*((f-u)/v+2);break;default:I=60*((u-h)/v+4)}return[I,100*w,100*b,a]}toArray01(){const{r:e,g:i,b:n,a}=this;return[e,i,n,a]}toArray01Scaled(e){const{r:i,g:n,b:a}=this;return[i*e,n*e,a*e]}toArray01Linear(){const{r:e,g:i,b:n,a}=this;return[Math.pow(e,2.2),Math.pow(i,2.2),Math.pow(n,2.2),a]}}class Yd extends Du{constructor(e,i,n,a,u){super(e,i,n,a,u,!1)}}class Kd extends Du{constructor(e,i,n,a,u){super(e,i,n,a,u,!0)}}function ct(r,e,i){return r*(1-i)+e*i}function Lu(r,e,i){return r.map((n,a)=>ct(n,e[a],i))}Ht.black=new Ht(0,0,0,1),Ht.white=new Ht(1,1,1,1),Ht.transparent=new Ht(0,0,0,0),Ht.red=new Ht(1,0,0,1),Ht.blue=new Ht(0,0,1,1);var Lo=Object.freeze({__proto__:null,array:Lu,color:function(r,e,i){return new Ht(ct(r.r,e.r,i),ct(r.g,e.g,i),ct(r.b,e.b,i),ct(r.a,e.a,i))},number:ct});class Lr extends Error{constructor(e,i){super(i),this.message=i,this.key=e}}class uc{constructor(e,i=[]){this.parent=e,this.bindings={};for(const[n,a]of i)this.bindings[n]=a}concat(e){return new uc(this,e)}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw new Error(`${e} not found in scope.`)}has(e){return!!this.bindings[e]||!!this.parent&&this.parent.has(e)}}const Wr={kind:"null"},nt={kind:"number"},qt={kind:"string"},Nt={kind:"boolean"},Or={kind:"color"},ha={kind:"object"},Zt={kind:"value"},hc={kind:"collator"},da={kind:"formatted"},Oo={kind:"resolvedImage"};function Ar(r,e){return{kind:"array",itemType:r,N:e}}function Ui(r){if(r.kind==="array"){const e=Ui(r.itemType);return typeof r.N=="number"?`array<${e}, ${r.N}>`:r.itemType.kind==="value"?"array":`array<${e}>`}return r.kind}const mm=[Wr,nt,qt,Nt,Or,da,ha,Ar(Zt),Oo];function ul(r,e){if(e.kind==="error")return null;if(r.kind==="array"){if(e.kind==="array"&&(e.N===0&&e.itemType.kind==="value"||!ul(r.itemType,e.itemType))&&(typeof r.N!="number"||r.N===e.N))return null}else{if(r.kind===e.kind)return null;if(r.kind==="value"){for(const i of mm)if(!ul(i,e))return null}}return`Expected ${Ui(r)} but found ${Ui(e)} instead.`}function Ou(r,e){return e.some(i=>i.kind===r.kind)}function hl(r,e){return e.some(i=>i==="null"?r===null:i==="array"?Array.isArray(r):i==="object"?r&&!Array.isArray(r)&&typeof r=="object":i===typeof r)}function dc(r,e){return r.kind==="array"&&e.kind==="array"?r.N===e.N&&dc(r.itemType,e.itemType):r.kind===e.kind}class Fu{constructor(e,i,n){this.sensitivity=e?i?"variant":"case":i?"accent":"base",this.locale=n,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(e,i){return this.collator.compare(e,i)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class fc{constructor(e,i,n,a,u){this.text=e.normalize?e.normalize():e,this.image=i,this.scale=n,this.fontStack=a,this.textColor=u}}class Mr{constructor(e){this.sections=e}static fromString(e){return new Mr([new fc(e,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(e=>e.text.length!==0||!!e.image&&e.image.hasPrimary())}static factory(e){return e instanceof Mr?e:Mr.fromString(e)}toString(){return this.sections.length===0?"":this.sections.map(e=>e.text).join("")}serialize(){const e=["format"];for(const i of this.sections){if(i.image){const a=i.image.getPrimary().id.toString();e.push(["image",a]);continue}e.push(i.text);const n={};i.fontStack&&(n["text-font"]=["literal",i.fontStack.split(",")]),i.scale&&(n["font-scale"]=i.scale),i.textColor&&(n["text-color"]=["rgba"].concat(i.textColor.toNonPremultipliedRenderColor(null).toArray())),e.push(n)}return e}}class Xr{constructor(e,i={}){this.id=Zr.from(e),this.params=i.params,this.sx=i.sx||1,this.sy=i.sy||1}toString(){return JSON.stringify(this)}static parse(e){let i,n,a,u;try{({id:i,params:n,sx:a,sy:u}=JSON.parse(e)||{})}catch{return null}return i?new Xr(i,{params:n,sx:a,sy:u}):null}scaleSelf(e,i=e){return this.sx*=e,this.sy*=i,this}}class Yr{constructor(e,i,n,a,u=!1){this.primaryId=Zr.from(e),this.primaryOptions=i,n&&(this.secondaryId=Zr.from(n)),this.secondaryOptions=a,this.available=u}toString(){return this.primaryId&&this.secondaryId?`[${this.primaryId.name},${this.secondaryId.name}]`:this.primaryId.name}hasPrimary(){return!!this.primaryId}getPrimary(){return new Xr(this.primaryId,this.primaryOptions)}hasSecondary(){return!!this.secondaryId}getSecondary(){return this.secondaryId?new Xr(this.secondaryId,this.secondaryOptions):null}static from(e){return typeof e=="string"?Yr.build({name:e}):e}static build(e,i,n,a){return!e||typeof e=="object"&&!("name"in e)?null:new Yr(e,n,i,a)}}function ku(r,e,i,n){return typeof r=="number"&&r>=0&&r<=255&&typeof e=="number"&&e>=0&&e<=255&&typeof i=="number"&&i>=0&&i<=255?n===void 0||typeof n=="number"&&n>=0&&n<=1?null:`Invalid rgba value [${[r,e,i,n].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof n=="number"?[r,e,i,n]:[r,e,i]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Js(r){if(r===null||typeof r=="string"||typeof r=="boolean"||typeof r=="number"||r instanceof Ht||r instanceof Fu||r instanceof Mr||r instanceof Yr)return!0;if(Array.isArray(r)){for(const e of r)if(!Js(e))return!1;return!0}if(typeof r=="object"){for(const e in r)if(!Js(r[e]))return!1;return!0}return!1}function ir(r){if(r===null)return Wr;if(typeof r=="string")return qt;if(typeof r=="boolean")return Nt;if(typeof r=="number")return nt;if(r instanceof Ht)return Or;if(r instanceof Fu)return hc;if(r instanceof Mr)return da;if(r instanceof Yr)return Oo;if(Array.isArray(r)){const e=r.length;let i;for(const n of r){const a=ir(n);if(i){if(i===a)continue;i=Zt;break}i=a}return Ar(i||Zt,e)}return ha}function ts(r){const e=typeof r;return r===null?"":e==="string"||e==="number"||e==="boolean"?String(r):r instanceof Mr||r instanceof Yr||r instanceof Ht?r.toString():JSON.stringify(r)}class Cs{constructor(e,i){this.type=e,this.value=i}static parse(e,i){if(e.length!==2)return i.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!Js(e[1]))return i.error("invalid value");const n=e[1];let a=ir(n);const u=i.expectedType;return a.kind!=="array"||a.N!==0||!u||u.kind!=="array"||typeof u.N=="number"&&u.N!==0||(a=u),new Cs(a,n)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}serialize(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof Ht?["rgba"].concat(this.value.toNonPremultipliedRenderColor(null).toArray()):this.value instanceof Mr?this.value.serialize():this.value}}class Yi{constructor(e){this.name="ExpressionEvaluationError",this.message=e}toJSON(){return this.message}}const Qs={string:qt,number:nt,boolean:Nt,object:ha};class gt{constructor(e,i){this.type=e,this.args=i}static parse(e,i){if(e.length<2)return i.error("Expected at least one argument.");let n,a=1;const u=e[0];if(u==="array"){let f,_;if(e.length>2){const g=e[1];if(typeof g!="string"||!(g in Qs)||g==="object")return i.error('The item type argument of "array" must be one of string, number, boolean',1);f=Qs[g],a++}else f=Zt;if(e.length>3){if(e[2]!==null&&(typeof e[2]!="number"||e[2]<0||e[2]!==Math.floor(e[2])))return i.error('The length argument to "array" must be a positive integer literal',2);_=e[2],a++}n=Ar(f,_)}else n=Qs[u];const h=[];for(;a<e.length;a++){const f=i.parse(e[a],a,Zt);if(!f)return null;h.push(f)}return new gt(n,h)}evaluate(e){for(let i=0;i<this.args.length;i++){const n=this.args[i].evaluate(e);if(!ul(this.type,ir(n)))return n;if(i===this.args.length-1)throw new Yi(`The expression ${JSON.stringify(this.args[i].serialize())} evaluated to ${Ui(ir(n))} but was expected to be of type ${Ui(this.type)}.`)}return null}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){const e=this.type,i=[e.kind];if(e.kind==="array"){const n=e.itemType;if(n.kind==="string"||n.kind==="number"||n.kind==="boolean"){i.push(n.kind);const a=e.N;(typeof a=="number"||this.args.length>1)&&i.push(a)}}return i.concat(this.args.map(n=>n.serialize()))}}class rt{constructor(e){this.type=da,this.sections=e}static parse(e,i){if(e.length<2)return i.error("Expected at least one argument.");const n=e[1];if(!Array.isArray(n)&&typeof n=="object")return i.error("First argument must be an image or text section.");const a=[];let u=!1;for(let h=1;h<=e.length-1;++h){const f=e[h];if(u&&typeof f=="object"&&!Array.isArray(f)){u=!1;let _=null;if(f["font-scale"]&&(_=i.parseObjectValue(f["font-scale"],h,"font-scale",nt),!_))return null;let g=null;if(f["text-font"]&&(g=i.parseObjectValue(f["text-font"],h,"text-font",Ar(qt)),!g))return null;let v=null;if(f["text-color"]&&(v=i.parseObjectValue(f["text-color"],h,"text-color",Or),!v))return null;const b=a[a.length-1];b.scale=_,b.font=g,b.textColor=v}else{const _=i.parse(e[h],h,Zt);if(!_)return null;const g=_.type.kind;if(g!=="string"&&g!=="value"&&g!=="null"&&g!=="resolvedImage")return i.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");u=!0,a.push({content:_,scale:null,font:null,textColor:null})}}return new rt(a)}evaluate(e){return new Mr(this.sections.map(i=>{const n=i.content.evaluate(e);return dc(ir(n),Oo)?new fc("",n,null,null,null):new fc(ts(n),null,i.scale?i.scale.evaluate(e):null,i.font?i.font.evaluate(e).join(","):null,i.textColor?i.textColor.evaluate(e):null)}))}eachChild(e){for(const i of this.sections)e(i.content),i.scale&&e(i.scale),i.font&&e(i.font),i.textColor&&e(i.textColor)}outputDefined(){return!1}serialize(){const e=["format"];for(const i of this.sections){e.push(i.content.serialize());const n={};i.scale&&(n["font-scale"]=i.scale.serialize()),i.font&&(n["text-font"]=i.font.serialize()),i.textColor&&(n["text-color"]=i.textColor.serialize()),e.push(n)}return e}}class fa{constructor(e,i,n,a){this._imageWarnHistory={},this.type=Oo,this.namePrimary=e,this.nameSecondary=i,n&&(this.paramsPrimary=n.params,this.iconsetIdPrimary=n.iconset?n.iconset.id:void 0),a&&(this.paramsSecondary=a.params,this.iconsetIdSecondary=a.iconset?a.iconset.id:void 0)}static parse(e,i){if(e.length<2)return i.error("Expected two or more arguments.");let n=1;const a=[];function u(){if(n<e.length){const f=i.parse(e[n],n++,qt);return f?(a.push({image:f,options:{}}),!0):(i.error(a.length?"Secondary image variant is not a string.":"No image name provided."),!1)}return!0}function h(){if(n<e.length){const _=e[n];if((f=_)===null||typeof f!="object"||Array.isArray(f))return!0;const g=_.params,v=_.iconset,b=i.concat(n);if(!g&&!v)return n++,!0;if(g){if(typeof g!="object"||g.constructor!==Object)return b.error('Image options "params" should be an object'),!1;const w={},I=b.concat(void 0,"params");for(const E in g){if(!E)return I.error("Image parameter name should be non-empty"),!1;const C=I.concat(void 0,E).parse(g[E],void 0,Or,void 0,{typeAnnotation:"coerce"});if(!C)return!1;w[E]=C}a[a.length-1].options.params=w}if(v){if(typeof v!="object"||v.constructor!==Object)return b.error('Image options "iconset" should be an object'),!1;if(!v.id)return b.error('Image options "iconset" should have an "id" property'),!1;a[a.length-1].options.iconset=v}return n++,!0}var f;return!0}for(let f=0;f<2;f++)if(!u()||!h())return;return new fa(a[0].image,a[1]?a[1].image:void 0,a[0].options,a[1]?a[1].options:void 0)}evaluateParams(e,i){const n={};if(i){for(const a in i)if(i[a])try{n[a]=i[a].evaluate(e)}catch{continue}if(Object.keys(n).length!==0)return{params:n}}}evaluate(e){const i={name:this.namePrimary.evaluate(e),iconsetId:this.iconsetIdPrimary},n=this.nameSecondary?{name:this.nameSecondary.evaluate(e),iconsetId:this.iconsetIdSecondary}:void 0,a=Yr.build(i,n,this.paramsPrimary?this.evaluateParams(e,this.paramsPrimary):void 0,this.paramsSecondary?this.evaluateParams(e,this.paramsSecondary):void 0);if(a&&e.availableImages){const u=a.getPrimary().id;if(a.available=e.availableImages.some(h=>Zr.isEqual(h,u)),a.available){const h=a.getSecondary()?a.getSecondary().id:null;h&&(a.available=e.availableImages.some(f=>Zr.isEqual(f,h)))}}return a}eachChild(e){if(e(this.namePrimary),this.paramsPrimary)for(const i in this.paramsPrimary)this.paramsPrimary[i]&&e(this.paramsPrimary[i]);if(this.nameSecondary&&(e(this.nameSecondary),this.paramsSecondary))for(const i in this.paramsSecondary)this.paramsSecondary[i]&&e(this.paramsSecondary[i])}outputDefined(){return!1}serializeOptions(e,i){const n={};if(i&&(n.iconset={id:i}),e){n.params={};for(const a in e)e[a]&&(n.params[a]=e[a].serialize())}return Object.keys(n).length>0?n:void 0}serialize(){const e=["image",this.namePrimary.serialize()];if(this.paramsPrimary||this.iconsetIdPrimary){const i=this.serializeOptions(this.paramsPrimary,this.iconsetIdPrimary);i&&e.push(i)}if(this.nameSecondary&&(e.push(this.nameSecondary.serialize()),this.paramsSecondary||this.iconsetIdSecondary)){const i=this.serializeOptions(this.paramsSecondary,this.iconsetIdSecondary);i&&e.push(i)}return e}}function ft(r){return dl(r)?"string":ut(r)?"number":Bu(r)?"boolean":Array.isArray(r)?"array":r===null?"null":pc(r)?"object":typeof r}function pc(r){return r!=null&&!Array.isArray(r)&&typeof r!="function"&&!(r instanceof String||r instanceof Number||r instanceof Boolean)&&typeof r=="object"}function dl(r){return typeof r=="string"||r instanceof String}function ut(r){return typeof r=="number"||r instanceof Number}function Bu(r){return typeof r=="boolean"||r instanceof Boolean}const Nu={"to-boolean":Nt,"to-color":Or,"to-number":nt,"to-string":qt};class is{constructor(e,i){this.type=e,this.args=i}static parse(e,i){if(e.length<2)return i.error("Expected at least one argument.");const n=e[0],a=[];let u=Wr;if(n==="to-array"){if(!Array.isArray(e[1]))return null;const h=e[1].length;if(i.expectedType){if(i.expectedType.kind!=="array")return i.error(`Expected ${i.expectedType.kind} but found array.`);u=Ar(i.expectedType.itemType,h)}else{if(!(h>0&&Js(e[1][0])))return null;u=Ar(ir(e[1][0]),h)}for(let f=0;f<h;f++){const _=e[1][f];let g;if(Array.isArray(_))g=i.parse(_,void 0,u.itemType);else{const v=ft(_);if(v!==u.itemType.kind)return i.error(`Expected ${u.itemType.kind} but found ${v}.`);g=i.registry.literal.parse(["literal",_===void 0?null:_],i)}if(!g)return null;a.push(g)}}else{if((n==="to-boolean"||n==="to-string")&&e.length!==2)return i.error("Expected one argument.");u=Nu[n];for(let h=1;h<e.length;h++){const f=i.parse(e[h],h,Zt);if(!f)return null;a.push(f)}}return new is(u,a)}evaluate(e){if(this.type.kind==="boolean")return!!this.args[0].evaluate(e);if(this.type.kind==="color"){let i,n;for(const a of this.args){if(i=a.evaluate(e),n=null,i instanceof Ht)return i;if(typeof i=="string"){const u=e.parseColor(i);if(u)return u}else if(Array.isArray(i)&&(n=i.length<3||i.length>4?`Invalid rbga value ${JSON.stringify(i)}: expected an array containing either three or four numeric values.`:ku(i[0],i[1],i[2],i[3]),!n))return new Ht(i[0]/255,i[1]/255,i[2]/255,i[3])}throw new Yi(n||`Could not parse color from value '${typeof i=="string"?i:String(JSON.stringify(i))}'`)}if(this.type.kind==="number"){let i=null;for(const n of this.args){if(i=n.evaluate(e),i===null)return 0;const a=Number(i);if(!isNaN(a))return a}throw new Yi(`Could not convert ${JSON.stringify(i)} to number.`)}return this.type.kind==="formatted"?Mr.fromString(ts(this.args[0].evaluate(e))):this.type.kind==="resolvedImage"?Yr.build(ts(this.args[0].evaluate(e))):this.type.kind==="array"?this.args.map(i=>i.evaluate(e)):ts(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){if(this.type.kind==="formatted")return new rt([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new fa(this.args[0]).serialize();const e=this.type.kind==="array"?[]:[`to-${this.type.kind}`];return this.eachChild(i=>{e.push(i.serialize())}),e}}const Jd=["Unknown","Point","LineString","Polygon"];class pa{constructor(e,i,n){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null,this.scope=e,this.options=i,this.iconImageUseTheme=n}id(){return this.feature&&this.feature.id!==void 0?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Jd[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||{}}measureLight(e){return this.globals.brightness||0}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,i=this.featureDistanceData.scale,{x:n,y:a}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(n*i-e[0])+this.featureDistanceData.bearing[1]*(a*i-e[1])}return 0}parseColor(e){let i=this._parseColorCache[e];return i||(i=this._parseColorCache[e]=Ht.parse(e)),i}getConfig(e){return this.options?this.options.get(e):null}}class Kr{constructor(e,i,n,a,u){this.name=e,this.type=i,this._evaluate=n,this.args=a,this._overloadIndex=u}evaluate(e){if(!this._evaluate){const i=Kr.definitions[this.name];this._evaluate=Array.isArray(i)?i[2]:i.overloads[this._overloadIndex][1]}return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e)}outputDefined(){return!1}serialize(){return[this.name].concat(this.args.map(e=>e.serialize()))}static parse(e,i){const n=e[0],a=Kr.definitions[n];if(!a)return i.error(`Unknown expression "${n}". If you wanted a literal array, use ["literal", [...]].`,0);const u=Array.isArray(a)?a[0]:a.type,h=Array.isArray(a)?[[a[1],a[2]]]:a.overloads,f=[];let _=null,g=-1;for(const[v,b]of h){if(Array.isArray(v)&&v.length!==e.length-1)continue;f.push(v),g++,_=new Sc(i.registry,i.path,null,i.scope,void 0,i._scope,i.options,i.iconImageUseTheme);const w=[];let I=!1;for(let E=1;E<e.length;E++){const C=e[E],D=Array.isArray(v)?v[E-1]:v.type,R=_.parse(C,1+w.length,D);if(!R){I=!0;break}w.push(R)}if(!I)if(Array.isArray(v)&&v.length!==w.length)_.error(`Expected ${v.length} arguments, but found ${w.length} instead.`);else{for(let E=0;E<w.length;E++){const C=Array.isArray(v)?v[E]:v.type,D=w[E];_.concat(E+1).checkSubtype(C,D.type)}if(_.errors.length===0)return new Kr(n,u,b,w,g)}}if(f.length===1)i.errors.push(..._.errors);else{const v=(f.length?f:h.map(([w])=>w)).map(Vu).join(" | "),b=[];for(let w=1;w<e.length;w++){const I=i.parse(e[w],1+b.length);if(!I)return null;b.push(Ui(I.type))}i.error(`Expected arguments of type ${v}, but found (${b.join(", ")}) instead.`)}return null}static register(e,i){Kr.definitions=i;for(const n in i)e[n]=Kr}}function Vu(r){return Array.isArray(r)?`(${r.map(Ui).join(", ")})`:`(${Ui(r.type)}...)`}class rs{constructor(e,i,n){this.type=hc,this.locale=n,this.caseSensitive=e,this.diacriticSensitive=i}static parse(e,i){if(e.length!==2)return i.error("Expected one argument.");const n=e[1];if(typeof n!="object"||Array.isArray(n))return i.error("Collator options argument must be an object.");const a=n["case-sensitive"]===void 0?i.parse(!1,1,Nt):i.parseObjectValue(n["case-sensitive"],1,"case-sensitive",Nt);if(!a)return null;const u=n["diacritic-sensitive"]===void 0?i.parse(!1,1,Nt):i.parseObjectValue(n["diacritic-sensitive"],1,"diacritic-sensitive",Nt);if(!u)return null;let h=null;return n.locale&&(h=i.parseObjectValue(n.locale,1,"locale",qt),!h)?null:new rs(a,u,h)}evaluate(e){return new Fu(this.caseSensitive.evaluate(e),this.diacriticSensitive.evaluate(e),this.locale?this.locale.evaluate(e):null)}eachChild(e){e(this.caseSensitive),e(this.diacriticSensitive),this.locale&&e(this.locale)}outputDefined(){return!1}serialize(){const e={};return e["case-sensitive"]=this.caseSensitive.serialize(),e["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(e.locale=this.locale.serialize()),["collator",e]}}function mc(r,e,i=0,n=r.length-1,a=eo){for(;n>i;){if(n-i>600){const _=n-i+1,g=e-i+1,v=Math.log(_),b=.5*Math.exp(2*v/3),w=.5*Math.sqrt(v*b*(_-b)/_)*(g-_/2<0?-1:1);mc(r,e,Math.max(i,Math.floor(e-g*b/_+w)),Math.min(n,Math.floor(e+(_-g)*b/_+w)),a)}const u=r[e];let h=i,f=n;for(Dn(r,i,e),a(r[n],u)>0&&Dn(r,i,n);h<f;){for(Dn(r,h,f),h++,f--;a(r[h],u)<0;)h++;for(;a(r[f],u)>0;)f--}a(r[i],u)===0?Dn(r,i,f):(f++,Dn(r,f,n)),f<=e&&(i=f+1),e<=f&&(n=f-1)}}function Dn(r,e,i){const n=r[e];r[e]=r[i],r[i]=n}function eo(r,e){return r<e?-1:r>e?1:0}function _m(r){let e=0;for(let i,n,a=0,u=r.length,h=u-1;a<u;h=a++)i=r[a],n=r[h],e+=(n.x-i.x)*(i.y+n.y);return e}function fl(r,e){r[0]=Math.min(r[0],e[0]),r[1]=Math.min(r[1],e[1]),r[2]=Math.max(r[2],e[0]),r[3]=Math.max(r[3],e[1])}function pl(r,e){return!(r[0]<=e[0]||r[2]>=e[2]||r[1]<=e[1]||r[3]>=e[3])}function _c(r,e,i){const n=r[0]-e[0],a=r[1]-e[1],u=r[0]-i[0],h=r[1]-i[1];return n*h-u*a===0&&n*u<=0&&a*h<=0}function Qd(r,e,i){return e[1]>r[1]!=i[1]>r[1]&&r[0]<(i[0]-e[0])*(r[1]-e[1])/(i[1]-e[1])+e[0]}function Ln(r,e,i=!1){let n=!1;for(let a=0,u=e.length;a<u;a++){const h=e[a];for(let f=0,_=h.length,g=_-1;f<_;g=f++){const v=h[g],b=h[f];if(_c(r,v,b))return i;Qd(r,v,b)&&(n=!n)}}return n}function ef(r,e,i,n){const a=n[0]-i[0],u=n[1]-i[1],h=(r[0]-i[0])*u-a*(r[1]-i[1]),f=(e[0]-i[0])*u-a*(e[1]-i[1]);return h>0&&f<0||h<0&&f>0}function gc(r,e,i,n){return(a=[n[0]-i[0],n[1]-i[1]])[0]*(u=[e[0]-r[0],e[1]-r[1]])[1]-a[1]*u[0]!==0&&!(!ef(r,e,i,n)||!ef(i,n,r,e));var a,u}function ml(r){const e=new Fe(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY),i=new Fe(Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY);for(const n of r[0])e.x>n.x&&(e.x=n.x),e.y>n.y&&(e.y=n.y),i.x<n.x&&(i.x=n.x),i.y<n.y&&(i.y=n.y);return{min:e,max:i}}const to=8192;function gm(r,e){const i=(180+r[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+r[1]*Math.PI/360)))/360,a=Math.pow(2,e.z);return[Math.round(i*a*to),Math.round(n*a*to)]}function tf(r,e){for(let i=0;i<e.length;i++)if(Ln(r,e[i]))return!0;return!1}function ym(r,e,i){for(const n of i)for(let a=0,u=n.length,h=u-1;a<u;h=a++)if(gc(r,e,n[h],n[a]))return!0;return!1}function Uu(r,e){for(let i=0;i<r.length;++i)if(!Ln(r[i],e))return!1;for(let i=0;i<r.length-1;++i)if(ym(r[i],r[i+1],e))return!1;return!0}function xm(r,e){for(let i=0;i<e.length;i++)if(Uu(r,e[i]))return!0;return!1}function Rs(r,e,i){const n=[];for(let a=0;a<r.length;a++){const u=[];for(let h=0;h<r[a].length;h++){const f=gm(r[a][h],i);fl(e,f),u.push(f)}n.push(u)}return n}function rf(r,e,i){const n=[];for(let a=0;a<r.length;a++){const u=Rs(r[a],e,i);n.push(u)}return n}function nf(r,e,i,n){if(r[0]<i[0]||r[0]>i[2]){const a=.5*n;let u=r[0]-i[0]>a?-n:i[0]-r[0]>a?n:0;u===0&&(u=r[0]-i[2]>a?-n:i[2]-r[0]>a?n:0),r[0]+=u}fl(e,r)}function yc(r,e,i,n){const a=Math.pow(2,n.z)*to,u=[n.x*to,n.y*to],h=[];if(!r)return h;for(const f of r)for(const _ of f){const g=[_.x+u[0],_.y+u[1]];nf(g,e,i,a),h.push(g)}return h}function ju(r,e,i,n){const a=Math.pow(2,n.z)*to,u=[n.x*to,n.y*to],h=[];if(!r)return h;for(const _ of r){const g=[];for(const v of _){const b=[v.x+u[0],v.y+u[1]];fl(e,b),g.push(b)}h.push(g)}if(e[2]-e[0]<=a/2){(f=e)[0]=f[1]=1/0,f[2]=f[3]=-1/0;for(const _ of h)for(const g of _)nf(g,e,i,a)}var f;return h}class io{constructor(e,i){this.type=Nt,this.geojson=e,this.geometries=i}static parse(e,i){if(e.length!==2)return i.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(Js(e[1])){const n=e[1];if(n.type==="FeatureCollection")for(let a=0;a<n.features.length;++a){const u=n.features[a].geometry.type;if(u==="Polygon"||u==="MultiPolygon")return new io(n,n.features[a].geometry)}else if(n.type==="Feature"){const a=n.geometry.type;if(a==="Polygon"||a==="MultiPolygon")return new io(n,n.geometry)}else if(n.type==="Polygon"||n.type==="MultiPolygon")return new io(n,n)}return i.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(e){if(e.geometry()!=null&&e.canonicalID()!=null){if(e.geometryType()==="Point")return(function(i,n){const a=[1/0,1/0,-1/0,-1/0],u=[1/0,1/0,-1/0,-1/0],h=i.canonicalID();if(!h)return!1;if(n.type==="Polygon"){const f=Rs(n.coordinates,u,h),_=yc(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!Ln(g,f))return!1}if(n.type==="MultiPolygon"){const f=rf(n.coordinates,u,h),_=yc(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!tf(g,f))return!1}return!0})(e,this.geometries);if(e.geometryType()==="LineString")return(function(i,n){const a=[1/0,1/0,-1/0,-1/0],u=[1/0,1/0,-1/0,-1/0],h=i.canonicalID();if(!h)return!1;if(n.type==="Polygon"){const f=Rs(n.coordinates,u,h),_=ju(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!Uu(g,f))return!1}if(n.type==="MultiPolygon"){const f=rf(n.coordinates,u,h),_=ju(i.geometry(),a,u,h);if(!pl(a,u))return!1;for(const g of _)if(!xm(g,f))return!1}return!0})(e,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}serialize(){return["within",this.geojson]}}const an={kilometers:1,miles:1e3/1609.344,nauticalmiles:1e3/1852,meters:1e3,metres:1e3,yards:1e3/.9144,feet:1e3/.3048,inches:1e3/.0254},Gu=1/298.257223563,qu=Gu*(2-Gu),ma=Math.PI/180;class _a{static fromTile(e,i,n){const a=Math.PI*(1-2*(e+.5)/Math.pow(2,i)),u=Math.atan(.5*(Math.exp(a)-Math.exp(-a)))/ma;return new _a(u,n)}static get units(){return an}constructor(e,i){if(e===void 0)throw new Error("No latitude given.");if(i&&!an[i])throw new Error(`Unknown unit ${i}. Use one of: ${Object.keys(an).join(", ")}`);const n=6378.137*ma*(i?an[i]:1),a=Math.cos(e*ma),u=1/(1-qu*(1-a*a)),h=Math.sqrt(u);this.kx=n*h*a,this.ky=n*h*u*(1-qu)}distance(e,i){const n=vn(e[0]-i[0])*this.kx,a=(e[1]-i[1])*this.ky;return Math.sqrt(n*n+a*a)}bearing(e,i){const n=vn(i[0]-e[0])*this.kx;return Math.atan2(n,(i[1]-e[1])*this.ky)/ma}destination(e,i,n){const a=n*ma;return this.offset(e,Math.sin(a)*i,Math.cos(a)*i)}offset(e,i,n){return[e[0]+i/this.kx,e[1]+n/this.ky]}lineDistance(e){let i=0;for(let n=0;n<e.length-1;n++)i+=this.distance(e[n],e[n+1]);return i}area(e){let i=0;for(let n=0;n<e.length;n++){const a=e[n];for(let u=0,h=a.length,f=h-1;u<h;f=u++)i+=vn(a[u][0]-a[f][0])*(a[u][1]+a[f][1])*(n?-1:1)}return Math.abs(i)/2*this.kx*this.ky}along(e,i){let n=0;if(i<=0)return e[0];for(let a=0;a<e.length-1;a++){const u=e[a],h=e[a+1],f=this.distance(u,h);if(n+=f,n>i)return xc(u,h,(i-(n-f))/f)}return e[e.length-1]}pointToSegmentDistance(e,i,n){let[a,u]=i,h=vn(n[0]-a)*this.kx,f=(n[1]-u)*this.ky;if(h!==0||f!==0){const _=(vn(e[0]-a)*this.kx*h+(e[1]-u)*this.ky*f)/(h*h+f*f);_>1?(a=n[0],u=n[1]):_>0&&(a+=h/this.kx*_,u+=f/this.ky*_)}return h=vn(e[0]-a)*this.kx,f=(e[1]-u)*this.ky,Math.sqrt(h*h+f*f)}pointOnLine(e,i){let n=1/0,a=e[0][0],u=e[0][1],h=0,f=0;for(let _=0;_<e.length-1;_++){let g=e[_][0],v=e[_][1],b=vn(e[_+1][0]-g)*this.kx,w=(e[_+1][1]-v)*this.ky,I=0;b===0&&w===0||(I=(vn(i[0]-g)*this.kx*b+(i[1]-v)*this.ky*w)/(b*b+w*w),I>1?(g=e[_+1][0],v=e[_+1][1]):I>0&&(g+=b/this.kx*I,v+=w/this.ky*I)),b=vn(i[0]-g)*this.kx,w=(i[1]-v)*this.ky;const E=b*b+w*w;E<n&&(n=E,a=g,u=v,h=_,f=I)}return{point:[a,u],index:h,t:Math.max(0,Math.min(1,f))}}lineSlice(e,i,n){let a=this.pointOnLine(n,e),u=this.pointOnLine(n,i);if(a.index>u.index||a.index===u.index&&a.t>u.t){const g=a;a=u,u=g}const h=[a.point],f=a.index+1,_=u.index;!Hu(n[f],h[0])&&f<=_&&h.push(n[f]);for(let g=f+1;g<=_;g++)h.push(n[g]);return Hu(n[_],u.point)||h.push(u.point),h}lineSliceAlong(e,i,n){let a=0;const u=[];for(let h=0;h<n.length-1;h++){const f=n[h],_=n[h+1],g=this.distance(f,_);if(a+=g,a>e&&u.length===0&&u.push(xc(f,_,(e-(a-g))/g)),a>=i)return u.push(xc(f,_,(i-(a-g))/g)),u;a>e&&u.push(_)}return u}bufferPoint(e,i){const n=i/this.ky,a=i/this.kx;return[e[0]-a,e[1]-n,e[0]+a,e[1]+n]}bufferBBox(e,i){const n=i/this.ky,a=i/this.kx;return[e[0]-a,e[1]-n,e[2]+a,e[3]+n]}insideBBox(e,i){return vn(e[0]-i[0])>=0&&vn(e[0]-i[2])<=0&&e[1]>=i[1]&&e[1]<=i[3]}}function Hu(r,e){return r[0]===e[0]&&r[1]===e[1]}function xc(r,e,i){const n=vn(e[0]-r[0]);return[r[0]+n*i,r[1]+(e[1]-r[1])*i]}function vn(r){for(;r<-180;)r+=360;for(;r>180;)r-=360;return r}class _l{constructor(e=[],i=(n,a)=>n<a?-1:n>a?1:0){if(this.data=e,this.length=this.data.length,this.compare=i,this.length>0)for(let n=(this.length>>1)-1;n>=0;n--)this._down(n)}push(e){this.data.push(e),this._up(this.length++)}pop(){if(this.length===0)return;const e=this.data[0],i=this.data.pop();return--this.length>0&&(this.data[0]=i,this._down(0)),e}peek(){return this.data[0]}_up(e){const{data:i,compare:n}=this,a=i[e];for(;e>0;){const u=e-1>>1,h=i[u];if(n(a,h)>=0)break;i[e]=h,e=u}i[e]=a}_down(e){const{data:i,compare:n}=this,a=this.length>>1,u=i[e];for(;e<a;){let h=1+(e<<1);const f=h+1;if(f<this.length&&n(i[f],i[h])<0&&(h=f),n(i[h],u)>=0)break;i[e]=i[h],e=h}i[e]=u}}var Ge=8192;function $u(r,e){return e.dist-r.dist}function Zu(r){const e=[1/0,1/0,-1/0,-1/0];if(e.length!==r.length)return!1;for(let i=0;i<e.length;i++)if(e[i]!==r[i])return!1;return!0}function gl(r){return r[1]-r[0]+1}function ns(r,e){const i=r[1]>=r[0]&&r[1]<e;return i||console.warn("Distance Expression: Index is out of range"),i}function Wu(r,e){if(r[0]>r[1])return[null,null];const i=gl(r);if(e){if(i===2)return[r,null];const n=Math.floor(i/2);return[[r[0],r[0]+n],[r[0]+n,r[1]]]}{if(i===1)return[r,null];const n=Math.floor(i/2)-1;return[[r[0],r[0]+n],[r[0]+n+1,r[1]]]}}function Fo(r,e){const i=[1/0,1/0,-1/0,-1/0];if(!ns(e,r.length))return i;for(let n=e[0];n<=e[1];++n)fl(i,r[n]);return i}function ko(r){const e=[1/0,1/0,-1/0,-1/0];for(let i=0;i<r.length;++i)for(let n=0;n<r[i].length;++n)fl(e,r[i][n]);return e}function ro(r,e,i){if(Zu(r)||Zu(e))return NaN;let n=0,a=0;return r[2]<e[0]&&(n=e[0]-r[2]),r[0]>e[2]&&(n=r[0]-e[2]),r[1]>e[3]&&(a=r[1]-e[3]),r[3]<e[1]&&(a=e[1]-r[3]),i.distance([0,0],[n,a])}function vc(r){return 360*r-180}function sf(r){return 360/Math.PI*Math.atan(Math.exp((180-360*r)*Math.PI/180))-90}function bc(r,e){const i=Math.pow(2,e.z),n=(r.y/Ge+e.y)/i;return[vc((r.x/Ge+e.x)/i),sf(n)]}function vm(r,e){const i=[];for(let n=0;n<r.length;++n)i.push(bc(r[n],e));return i}function of(r,e,i){const n=i.pointOnLine(e,r).point;return i.distance(r,n)}function Xu(r,e,i,n,a){const u=i.slice(n[0],n[1]+1);let h=1/0;for(let f=e[0];f<=e[1];++f)if((h=Math.min(h,of(r[f],u,a)))===0)return 0;return h}function no(r,e,i,n,a){const u=Math.min(a.pointToSegmentDistance(r,i,n),a.pointToSegmentDistance(e,i,n)),h=Math.min(a.pointToSegmentDistance(i,r,e),a.pointToSegmentDistance(n,r,e));return Math.min(u,h)}function zt(r,e,i,n,a){if(!ns(e,r.length)||!ns(n,i.length))return NaN;let u=1/0;for(let h=e[0];h<e[1];++h)for(let f=n[0];f<n[1];++f){if(gc(r[h],r[h+1],i[f],i[f+1]))return 0;u=Math.min(u,no(r[h],r[h+1],i[f],i[f+1],a))}return u}function bm(r,e,i,n,a){if(!ns(e,r.length)||!ns(n,i.length))return NaN;let u=1/0;for(let h=e[0];h<=e[1];++h)for(let f=n[0];f<=n[1];++f)if((u=Math.min(u,a.distance(r[h],i[f])))===0)return u;return u}function wm(r,e,i){if(Ln(r,e,!0))return 0;let n=1/0;for(const a of e){const u=a.length;if(u<2)return console.warn("Distance Expression: Invalid polygon!"),NaN;if(a[0]!==a[u-1]&&(n=Math.min(n,i.pointToSegmentDistance(r,a[u-1],a[0])))===0||(n=Math.min(n,of(r,a,i)))===0)return n}return n}function Tm(r,e,i,n){if(!ns(e,r.length))return NaN;for(let u=e[0];u<=e[1];++u)if(Ln(r[u],i,!0))return 0;let a=1/0;for(let u=e[0];u<e[1];++u)for(const h of i)for(let f=0,_=h.length,g=_-1;f<_;g=f++){if(gc(r[u],r[u+1],h[g],h[f]))return 0;a=Math.min(a,no(r[u],r[u+1],h[g],h[f],n))}return a}function Yu(r,e){for(const i of r)for(let n=0;n<=i.length-1;++n)if(Ln(i[n],e,!0))return!0;return!1}function Sm(r,e,i,n=1/0){const a=ko(r),u=ko(e);if(n!==1/0&&ro(a,u,i)>=n)return n;if(pl(a,u)){if(Yu(r,e))return 0}else if(Yu(e,r))return 0;let h=n;for(const f of r)for(let _=0,g=f.length,v=g-1;_<g;v=_++)for(const b of e)for(let w=0,I=b.length,E=I-1;w<I;E=w++){if(gc(f[v],f[_],b[E],b[w]))return 0;h=Math.min(h,no(f[v],f[_],b[E],b[w],i))}return h}function di(r,e,i,n,a,u,h){if(u===null||h===null)return;const f=ro(Fo(n,u),Fo(a,h),i);f<e&&r.push({dist:f,range1:u,range2:h})}function Im(r,e,i,n,a=1/0){let u=Math.min(n.distance(r[0],i[0][0]),a);if(u===0)return u;const h=new _l([{dist:0,range1:[0,r.length-1],range2:[0,0]}],$u),f=e?50:100,_=ko(i);for(;h.length;){const g=h.pop();if(g.dist>=u)continue;const v=g.range1;if(gl(v)<=f){if(!ns(v,r.length))return NaN;if(e){const b=Tm(r,v,i,n);if((u=Math.min(u,b))===0)return u}else for(let b=v[0];b<=v[1];++b){const w=wm(r[b],i,n);if((u=Math.min(u,w))===0)return u}}else{const b=Wu(v,e);if(b[0]!==null){const w=ro(Fo(r,b[0]),_,n);w<u&&h.push({dist:w,range1:b[0],range2:[0,0]})}if(b[1]!==null){const w=ro(Fo(r,b[1]),_,n);w<u&&h.push({dist:w,range1:b[1],range2:[0,0]})}}}return u}function af(r,e,i,n,a,u=1/0){let h=Math.min(u,a.distance(r[0],i[0]));if(h===0)return h;const f=new _l([{dist:0,range1:[0,r.length-1],range2:[0,i.length-1]}],$u),_=e?50:100,g=n?50:100;for(;f.length;){const v=f.pop();if(v.dist>=h)continue;const b=v.range1,w=v.range2;if(gl(b)<=_&&gl(w)<=g){if(!ns(b,r.length)||!ns(w,i.length))return NaN;if(e&&n?h=Math.min(h,zt(r,b,i,w,a)):e||n?e&&!n?h=Math.min(h,Xu(i,w,r,b,a)):!e&&n&&(h=Math.min(h,Xu(r,b,i,w,a))):h=Math.min(h,bm(r,b,i,w,a)),h===0)return h}else{const I=Wu(b,e),E=Wu(w,n);di(f,h,a,r,i,I[0],E[0]),di(f,h,a,r,i,I[0],E[1]),di(f,h,a,r,i,I[1],E[0]),di(f,h,a,r,i,I[1],E[1])}}return h}function Ku(r,e,i,n,a=1/0){let u=a;const h=Fo(r,[0,r.length-1]);for(const f of i)if(!(u!==1/0&&ro(h,Fo(f,[0,f.length-1]),n)>=u)&&(u=Math.min(u,af(r,e,f,!0,n,u)),u===0))return u;return u}function wc(r,e,i,n,a=1/0){let u=a;const h=Fo(r,[0,r.length-1]);for(const f of i){if(u!==1/0&&ro(h,ko(f),n)>=u)continue;const _=Im(r,e,f,n,u);if(isNaN(_))return _;if((u=Math.min(u,_))===0)return u}return u}function Ju(r){return r==="Point"||r==="MultiPoint"||r==="LineString"||r==="MultiLineString"||r==="Polygon"||r==="MultiPolygon"}class Bo{constructor(e,i){this.type=nt,this.geojson=e,this.geometries=i}static parse(e,i){if(e.length!==2)return i.error(`'distance' expression requires either one argument, but found ' ${e.length-1} instead.`);if(Js(e[1])){const n=e[1];if(n.type==="FeatureCollection"){for(let a=0;a<n.features.length;++a)if(Ju(n.features[a].geometry.type))return new Bo(n,n.features[a].geometry)}else if(n.type==="Feature"){if(Ju(n.geometry.type))return new Bo(n,n.geometry)}else if(Ju(n.type))return new Bo(n,n)}return i.error("'distance' expression needs to be an array with format ['Distance', GeoJSONObj].")}evaluate(e){const i=e.geometry(),n=e.canonicalID();if(i!=null&&n!=null){if(e.geometryType()==="Point")return(function(a,u,h){const f=[];for(const g of a)for(const v of g)f.push(bc(v,u));const _=new _a(f[0][1],"meters");return h.type==="Point"||h.type==="MultiPoint"||h.type==="LineString"?af(f,!1,h.type==="Point"?[h.coordinates]:h.coordinates,h.type==="LineString",_):h.type==="MultiLineString"?Ku(f,!1,h.coordinates,_):h.type==="Polygon"||h.type==="MultiPolygon"?wc(f,!1,h.type==="Polygon"?[h.coordinates]:h.coordinates,_):null})(i,n,this.geometries);if(e.geometryType()==="LineString")return(function(a,u,h){const f=[];for(const g of a){const v=[];for(const b of g)v.push(bc(b,u));f.push(v)}const _=new _a(f[0][0][1],"meters");if(h.type==="Point"||h.type==="MultiPoint"||h.type==="LineString")return Ku(h.type==="Point"?[h.coordinates]:h.coordinates,h.type==="LineString",f,_);if(h.type==="MultiLineString"){let g=1/0;for(let v=0;v<h.coordinates.length;v++){const b=Ku(h.coordinates[v],!0,f,_,g);if(isNaN(b))return b;if((g=Math.min(g,b))===0)return g}return g}if(h.type==="Polygon"||h.type==="MultiPolygon"){let g=1/0;for(let v=0;v<f.length;v++){const b=wc(f[v],!0,h.type==="Polygon"?[h.coordinates]:h.coordinates,_,g);if(isNaN(b))return b;if((g=Math.min(g,b))===0)return g}return g}return null})(i,n,this.geometries);if(e.geometryType()==="Polygon")return(function(a,u,h){const f=[];for(const g of(function(v){const b=v.length;if(b<=1)return[v];const w=[];let I,E;for(let C=0;C<b;C++){const D=_m(v[C]);D!==0&&(v[C].area=Math.abs(D),E===void 0&&(E=D<0),E===D<0?(I&&w.push(I),I=[v[C]]):I.push(v[C]))}return I&&w.push(I),w})(a)){const v=[];for(let b=0;b<g.length;++b)v.push(vm(g[b],u));f.push(v)}const _=new _a(f[0][0][0][1],"meters");if(h.type==="Point"||h.type==="MultiPoint"||h.type==="LineString")return wc(h.type==="Point"?[h.coordinates]:h.coordinates,h.type==="LineString",f,_);if(h.type==="MultiLineString"){let g=1/0;for(let v=0;v<h.coordinates.length;v++){const b=wc(h.coordinates[v],!0,f,_,g);if(isNaN(b))return b;if((g=Math.min(g,b))===0)return g}return g}return h.type==="Polygon"||h.type==="MultiPolygon"?(function(g,v,b){let w=1/0;for(const I of g)for(const E of v){const C=Sm(I,E,b,w);if(isNaN(C))return C;if((w=Math.min(w,C))===0)return w}return w})(h.type==="Polygon"?[h.coordinates]:h.coordinates,f,_):null})(i,n,this.geometries);console.warn("Distance Expression: currently only evaluates valid Point/LineString/Polygon geometries.")}else console.warn("Distance Expression: requirs valid feature and canonical information.");return null}eachChild(){}outputDefined(){return!0}serialize(){return["distance",this.geojson]}}function ga(r){if(r instanceof Kr&&(r.name==="get"&&r.args.length===1||r.name==="feature-state"||r.name==="has"&&r.args.length===1||r.name==="properties"||r.name==="geometry-type"||r.name==="id"||/^filter-/.test(r.name))||r instanceof io||r instanceof Bo)return!1;if(r instanceof xa)return r.featureConstant;let e=!0;return r.eachChild(i=>{e&&!ga(i)&&(e=!1)}),e}function yl(r){if(r instanceof Kr&&r.name==="feature-state")return!1;let e=!0;return r.eachChild(i=>{e&&!yl(i)&&(e=!1)}),e}function ya(r,e){if(r instanceof Kr&&e.indexOf(r.name)>=0)return!1;let i=!0;return r.eachChild(n=>{i&&!ya(n,e)&&(i=!1)}),i}function lf(r,e,i){return[r,e,i].filter(Boolean).join("")}function Qu(r,e){switch(r){case"string":return ts(e);case"number":return+e;case"boolean":return!!e;case"color":return Ht.parse(e);case"formatted":return Mr.fromString(ts(e));case"resolvedImage":return Yr.build(ts(e))}return e}function cf(r,e,i,n){return n!==void 0&&(r=n*Math.round(r/n)),e!==void 0&&r<e&&(r=e),i!==void 0&&r>i&&(r=i),r}class xa{constructor(e,i,n,a=!1){this.type=e,this.key=i,this.scope=n,this.featureConstant=a}static parse(e,i){let n=i.expectedType;if(n==null&&(n=Zt),e.length<2||e.length>3)return i.error("Invalid number of arguments for 'config' expression.");const a=i.parse(e[1],1);if(!(a instanceof Cs))return i.error("Key name of 'config' expression must be a string literal.");let u,h=!0;const f=ts(a.value);if(e.length>=3){const _=i.parse(e[2],2);if(!(_ instanceof Cs))return i.error("Scope of 'config' expression must be a string literal.");u=ts(_.value)}if(i.options){const _=lf(f,u,i._scope),g=i.options.get(_);g&&(h=ga(g.value||g.default))}return new xa(n,f,u,h)}evaluate(e){const i=lf(this.key,this.scope,e.scope),n=e.getConfig(i);if(!n)return null;const{type:a,value:u,values:h,minValue:f,maxValue:_,stepValue:g}=n,v=n.default.evaluate(e);let b=v;if(u){const w=e.scope;e.scope=(w||"").split("").slice(1).join(""),b=u.evaluate(e),e.scope=w}return a&&(b=Qu(a,b)),b===void 0||f===void 0&&_===void 0&&g===void 0||(typeof b=="number"?b=cf(b,f,_,g):Array.isArray(b)&&(b=b.map(w=>typeof w=="number"?cf(w,f,_,g):w))),u!==void 0&&b!==void 0&&h&&!h.includes(b)&&(b=v,a&&(b=Qu(a,b))),(a&&a!==this.type||b!==void 0&&!dc(ir(b),this.type))&&(b=Qu(this.type.kind,b)),b}eachChild(){}outputDefined(){return!1}serialize(){const e=["config",this.key];return this.scope&&e.concat(this.scope),e}}class Tc{constructor(e,i){this.type=i.type,this.name=e,this.boundExpression=i}static parse(e,i){if(e.length!==2||typeof e[1]!="string")return i.error("'var' expression requires exactly one string literal argument.");const n=e[1];return i.scope.has(n)?new Tc(n,i.scope.get(n)):i.error(`Unknown variable "${n}". Make sure "${n}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return!1}serialize(){return["var",this.name]}}class Sc{constructor(e,i=[],n,a=new uc,u=[],h,f,_){this.registry=e,this.path=i,this.key=i.map(g=>typeof g=="string"?`['${g}']`:`[${g}]`).join(""),this.scope=a,this.errors=u,this.expectedType=n,this._scope=h,this.options=f,this.iconImageUseTheme=_}parse(e,i,n,a,u={}){return i||n?this.concat(i,null,n,a)._parse(e,u):this._parse(e,u)}parseObjectValue(e,i,n,a,u,h={}){return this.concat(i,n,a,u)._parse(e,h)}_parse(e,i){function n(a,u,h){return h==="assert"?new gt(u,[a]):h==="coerce"?new is(u,[a]):a}if(e!==null&&typeof e!="string"&&typeof e!="boolean"&&typeof e!="number"||(e=["literal",e]),Array.isArray(e)){if(e.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const a=typeof e[0]=="string"?this.registry[e[0]]:void 0;if(a){let u=a.parse(e,this);if(!u)return null;if(this.expectedType){const h=this.expectedType,f=u.type;if(h.kind!=="string"&&h.kind!=="number"&&h.kind!=="boolean"&&h.kind!=="object"&&h.kind!=="array"||f.kind!=="value")if(h.kind!=="color"&&h.kind!=="formatted"&&h.kind!=="resolvedImage"||f.kind!=="value"&&f.kind!=="string"){if(this.checkSubtype(h,f))return null}else u=n(u,h,i.typeAnnotation||"coerce");else u=n(u,h,i.typeAnnotation||"assert")}if(!(u instanceof Cs)&&u.type.kind!=="resolvedImage"&&eh(u)){const h=new pa(this._scope,this.options,this.iconImageUseTheme);try{u=new Cs(u.type,u.evaluate(h))}catch(f){return this.error(f.message),null}}return u}return is.parse(["to-array",e],this)}return this.error(e===void 0?"'undefined' value invalid. Use null instead.":typeof e=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof e} instead.`)}concat(e,i,n,a){let u=typeof e=="number"?this.path.concat(e):this.path;u=typeof i=="string"?u.concat(i):u;const h=a?this.scope.concat(a):this.scope;return new Sc(this.registry,u,n||null,h,this.errors,this._scope,this.options,this.iconImageUseTheme)}error(e,...i){const n=`${this.key}${i.map(a=>`[${a}]`).join("")}`;this.errors.push(new Lr(n,e))}checkSubtype(e,i){const n=ul(e,i);return n&&this.error(n),n}}function eh(r){if(r instanceof Tc)return eh(r.boundExpression);if(r instanceof Kr&&r.name==="error"||r instanceof rs||r instanceof io||r instanceof Bo||r instanceof xa)return!1;const e=r instanceof is||r instanceof gt;let i=!0;return r.eachChild(n=>{i=e?i&&eh(n):i&&n instanceof Cs}),!!i&&ga(r)&&ya(r,["zoom","heatmap-density","worldview","line-progress","raster-value","sky-radial-progress","accumulated","is-supported-script","pitch","distance-from-center","measure-light","raster-particle-speed"])}function Ic(r,e){const i=r.length-1;let n,a,u=0,h=i,f=0;for(;u<=h;)if(f=Math.floor((u+h)/2),n=r[f],a=r[f+1],n<=e){if(f===i||e<a)return f;u=f+1}else{if(!(n>e))throw new Yi("Input is not a number.");h=f-1}return 0}class xl{constructor(e,i,n){this.type=e,this.input=i,this.labels=[],this.outputs=[];for(const[a,u]of n)this.labels.push(a),this.outputs.push(u)}static parse(e,i){if(e.length-1<4)return i.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return i.error("Expected an even number of arguments.");const n=i.parse(e[1],1,nt);if(!n)return null;const a=[];let u=null;i.expectedType&&i.expectedType.kind!=="value"&&(u=i.expectedType);for(let h=1;h<e.length;h+=2){const f=h===1?-1/0:e[h],_=e[h+1],g=h,v=h+1;if(typeof f!="number")return i.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',g);if(a.length&&a[a.length-1][0]>=f)return i.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',g);const b=i.parse(_,v,u);if(!b)return null;u=u||b.type,a.push([f,b])}return new xl(u,n,a)}evaluate(e){const i=this.labels,n=this.outputs;if(i.length===1)return n[0].evaluate(e);const a=this.input.evaluate(e);if(a<=i[0])return n[0].evaluate(e);const u=i.length;return a>=i[u-1]?n[u-1].evaluate(e):n[Ic(i,a)].evaluate(e)}eachChild(e){e(this.input);for(const i of this.outputs)e(i)}outputDefined(){return this.outputs.every(e=>e.outputDefined())}serialize(){const e=["step",this.input.serialize()];for(let i=0;i<this.labels.length;i++)i>0&&e.push(this.labels[i]),e.push(this.outputs[i].serialize());return e}}const uf=.95047,hf=1.08883,df=4/29,va=6/29,ff=3*va*va,Em=va*va*va,Am=Math.PI/180,Mm=180/Math.PI;function th(r){return r>Em?Math.pow(r,1/3):r/ff+df}function ih(r){return r>va?r*r*r:ff*(r-df)}function rh(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function nh(r){return(r/=255)<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function pf(r){const e=nh(r.r),i=nh(r.g),n=nh(r.b),a=th((.4124564*e+.3575761*i+.1804375*n)/uf),u=th((.2126729*e+.7151522*i+.072175*n)/1);return{l:116*u-16,a:500*(a-u),b:200*(u-th((.0193339*e+.119192*i+.9503041*n)/hf)),alpha:r.a}}function Ec(r){let e=(r.l+16)/116,i=isNaN(r.a)?e:e+r.a/500,n=isNaN(r.b)?e:e-r.b/200;return e=1*ih(e),i=uf*ih(i),n=hf*ih(n),new Ht(rh(3.2404542*i-1.5371385*e-.4985314*n),rh(-.969266*i+1.8760108*e+.041556*n),rh(.0556434*i-.2040259*e+1.0572252*n),r.alpha)}function Ac(r,e,i){const n=e-r;return r+i*(n>180||n<-180?n-360*Math.round(n/360):n)}const ba={forward:pf,reverse:Ec,interpolate:function(r,e,i){return{l:ct(r.l,e.l,i),a:ct(r.a,e.a,i),b:ct(r.b,e.b,i),alpha:ct(r.alpha,e.alpha,i)}}},vl={forward:function(r){const{l:e,a:i,b:n}=pf(r),a=Math.atan2(n,i)*Mm;return{h:a<0?a+360:a,c:Math.sqrt(i*i+n*n),l:e,alpha:r.a}},reverse:function(r){const e=r.h*Am,i=r.c;return Ec({l:r.l,a:Math.cos(e)*i,b:Math.sin(e)*i,alpha:r.alpha})},interpolate:function(r,e,i){return{h:Ac(r.h,e.h,i),c:ct(r.c,e.c,i),l:ct(r.l,e.l,i),alpha:ct(r.alpha,e.alpha,i)}}};var mf=Object.freeze({__proto__:null,hcl:vl,lab:ba});class bn{constructor(e,i,n,a,u){this.type=e,this.operator=i,this.interpolation=n,this.input=a,this.labels=[],this.outputs=[];for(const[h,f]of u)this.labels.push(h),this.outputs.push(f)}static interpolationFactor(e,i,n,a){let u=0;if(e.name==="exponential")u=Mc(i,e.base,n,a);else if(e.name==="linear")u=Mc(i,1,n,a);else if(e.name==="cubic-bezier"){const h=e.controlPoints;u=new oa(h[0],h[1],h[2],h[3]).solve(Mc(i,1,n,a))}return u}static parse(e,i){let[n,a,u,...h]=e;if(!Array.isArray(a)||a.length===0)return i.error("Expected an interpolation type expression.",1);if(a[0]==="linear")a={name:"linear"};else if(a[0]==="exponential"){const g=a[1];if(typeof g!="number")return i.error("Exponential interpolation requires a numeric base.",1,1);a={name:"exponential",base:g}}else{if(a[0]!=="cubic-bezier")return i.error(`Unknown interpolation type ${String(a[0])}`,1,0);{const g=a.slice(1);if(g.length!==4||g.some(v=>typeof v!="number"||v<0||v>1))return i.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);a={name:"cubic-bezier",controlPoints:g}}}if(e.length-1<4)return i.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length-1>3&&(e.length-1)%2!=0)return i.error("Expected an even number of arguments.");if(u=i.parse(u,2,nt),!u)return null;const f=[];let _=null;n==="interpolate-hcl"||n==="interpolate-lab"?_=Or:i.expectedType&&i.expectedType.kind!=="value"&&(_=i.expectedType);for(let g=0;g<h.length;g+=2){const v=h[g],b=h[g+1],w=g+3,I=g+4;if(typeof v!="number")return i.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',w);if(f.length&&f[f.length-1][0]>=v)return i.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',w);const E=i.parse(b,I,_);if(!E)return null;_=_||E.type,f.push([v,E])}return _.kind==="number"||_.kind==="color"||_.kind==="array"&&_.itemType.kind==="number"&&typeof _.N=="number"?new bn(_,n,a,u,f):i.error(`Type ${Ui(_)} is not interpolatable.`)}evaluate(e){const i=this.labels,n=this.outputs;if(i.length===1)return n[0].evaluate(e);const a=this.input.evaluate(e);if(a<=i[0])return n[0].evaluate(e);const u=i.length;if(a>=i[u-1])return n[u-1].evaluate(e);const h=Ic(i,a),f=bn.interpolationFactor(this.interpolation,a,i[h],i[h+1]),_=n[h].evaluate(e),g=n[h+1].evaluate(e);return this.operator==="interpolate"?Lo[this.type.kind.toLowerCase()](_,g,f):this.operator==="interpolate-hcl"?vl.reverse(vl.interpolate(vl.forward(_),vl.forward(g),f)):ba.reverse(ba.interpolate(ba.forward(_),ba.forward(g),f))}eachChild(e){e(this.input);for(const i of this.outputs)e(i)}outputDefined(){return this.outputs.every(e=>e.outputDefined())}serialize(){let e;e=this.interpolation.name==="linear"?["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier",...this.interpolation.controlPoints];const i=[this.operator,e,this.input.serialize()];for(let n=0;n<this.labels.length;n++)i.push(this.labels[n],this.outputs[n].serialize());return i}}function Mc(r,e,i,n){const a=n-i,u=r-i;return a===0?0:e===1?u/a:(Math.pow(e,u)-1)/(Math.pow(e,a)-1)}class bl{constructor(e,i){this.type=e,this.args=i}static parse(e,i){if(e.length<2)return i.error("Expectected at least one argument.");let n=null;const a=i.expectedType;a&&a.kind!=="value"&&(n=a);const u=[];for(const f of e.slice(1)){const _=i.parse(f,1+u.length,n,void 0,{typeAnnotation:"omit"});if(!_)return null;n=n||_.type,u.push(_)}const h=a&&u.some(f=>ul(a,f.type));return new bl(h?Zt:n,u)}evaluate(e){let i,n=null,a=0;for(const u of this.args){if(a++,n=u.evaluate(e),n&&n instanceof Yr&&!n.available&&(i||(i=n),n=null,a===this.args.length))return i;if(n!==null)break}return n}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){const e=["coalesce"];return this.eachChild(i=>{e.push(i.serialize())}),e}}class zs{constructor(e,i){this.type=i.type,this.bindings=[].concat(e),this.result=i}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const i of this.bindings)e(i[1]);e(this.result)}static parse(e,i){if(e.length<4)return i.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const n=[];for(let u=1;u<e.length-1;u+=2){const h=e[u];if(typeof h!="string")return i.error(`Expected string, but found ${typeof h} instead.`,u);if(/[^a-zA-Z0-9_]/.test(h))return i.error("Variable names must contain only alphanumeric characters or '_'.",u);const f=i.parse(e[u+1],u+1);if(!f)return null;n.push([h,f])}const a=i.parse(e[e.length-1],e.length-1,i.expectedType,n);return a?new zs(n,a):null}outputDefined(){return this.result.outputDefined()}serialize(){const e=["let"];for(const[i,n]of this.bindings)e.push(i,n.serialize());return e.push(this.result.serialize()),e}}class Pc{constructor(e,i,n){this.type=e,this.index=i,this.input=n}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,nt),a=i.parse(e[2],2,Ar(i.expectedType||Zt));return n&&a?new Pc(a.type.itemType,n,a):null}evaluate(e){const i=this.index.evaluate(e),n=this.input.evaluate(e);if(i<0)throw new Yi("Array index out of bounds: negative index");if(i>=n.length)throw new Yi("Array index out of bounds: index exceeds array size");if(i!==Math.floor(i))throw new Yi("Array index must be an integer. Use at-interpolated for fractional indices");return n[i]}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at",this.index.serialize(),this.input.serialize()]}}class Cc{constructor(e,i,n){this.type=e,this.index=i,this.input=n}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,nt),a=i.parse(e[2],2,Ar(i.expectedType||Zt));return n&&a?new Cc(a.type.itemType,n,a):null}evaluate(e){const i=this.index.evaluate(e),n=this.input.evaluate(e);if(i<0)throw new Yi(`Array index out of bounds: ${i} < 0.`);if(i>n.length-1)throw new Yi(`Array index out of bounds: ${i} > ${n.length-1}.`);if(i===Math.floor(i))return n[i];const a=Math.floor(i),u=Math.ceil(i),h=n[a],f=n[u];if(typeof h!="number"||typeof f!="number")throw new Yi(`Cannot interpolate between non-number values at index ${i}.`);const _=i-a;return h*(1-_)+f*_}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at-interpolated",this.index.serialize(),this.input.serialize()]}}class sh{constructor(e,i){this.type=Nt,this.needle=e,this.haystack=i}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,Zt),a=i.parse(e[2],2,Zt);return n&&a?Ou(n.type,[Nt,qt,nt,Wr,Zt])?new sh(n,a):i.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(n.type)} instead`):null}evaluate(e){const i=this.needle.evaluate(e),n=this.haystack.evaluate(e);if(n==null)return!1;if(!hl(i,["boolean","string","number","null"]))throw new Yi(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(ir(i))} instead.`);if(!hl(n,["string","array"]))throw new Yi(`Expected second argument to be of type array or string, but found ${Ui(ir(n))} instead.`);return n.indexOf(i)>=0}eachChild(e){e(this.needle),e(this.haystack)}outputDefined(){return!0}serialize(){return["in",this.needle.serialize(),this.haystack.serialize()]}}class wa{constructor(e,i,n){this.type=nt,this.needle=e,this.haystack=i,this.fromIndex=n}static parse(e,i){if(e.length<=2||e.length>=5)return i.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,Zt),a=i.parse(e[2],2,Zt);if(!n||!a)return null;if(!Ou(n.type,[Nt,qt,nt,Wr,Zt]))return i.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(n.type)} instead`);if(e.length===4){const u=i.parse(e[3],3,nt);return u?new wa(n,a,u):null}return new wa(n,a)}evaluate(e){const i=this.needle.evaluate(e),n=this.haystack.evaluate(e);if(!hl(i,["boolean","string","number","null"]))throw new Yi(`Expected first argument to be of type boolean, string, number or null, but found ${Ui(ir(i))} instead.`);if(!hl(n,["string","array"]))throw new Yi(`Expected second argument to be of type array or string, but found ${Ui(ir(n))} instead.`);if(this.fromIndex){const a=this.fromIndex.evaluate(e);return n.indexOf(i,a)}return n.indexOf(i)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)}outputDefined(){return!1}serialize(){if(this.fromIndex!=null&&this.fromIndex!==void 0){const e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]}}class wl{constructor(e,i,n,a,u,h){this.inputType=e,this.type=i,this.input=n,this.cases=a,this.outputs=u,this.otherwise=h}static parse(e,i){if(e.length<5)return i.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return i.error("Expected an even number of arguments.");let n,a;i.expectedType&&i.expectedType.kind!=="value"&&(a=i.expectedType);const u={},h=[];for(let g=2;g<e.length-1;g+=2){let v=e[g];const b=e[g+1];Array.isArray(v)||(v=[v]);const w=i.concat(g);if(v.length===0)return w.error("Expected at least one branch label.");for(const E of v){if(typeof E!="number"&&typeof E!="string")return w.error("Branch labels must be numbers or strings.");if(typeof E=="number"&&Math.abs(E)>Number.MAX_SAFE_INTEGER)return w.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof E=="number"&&Math.floor(E)!==E)return w.error("Numeric branch labels must be integer values.");if(n){if(w.checkSubtype(n,ir(E)))return null}else n=ir(E);if(u[String(E)]!==void 0)return w.error("Branch labels must be unique.");u[String(E)]=h.length}const I=i.parse(b,g,a);if(!I)return null;a=a||I.type,h.push(I)}const f=i.parse(e[1],1,Zt);if(!f)return null;const _=i.parse(e[e.length-1],e.length-1,a);return _?f.type.kind!=="value"&&i.concat(1).checkSubtype(n,f.type)?null:new wl(n,a,f,u,h,_):null}evaluate(e){const i=this.input.evaluate(e);return(dc(ir(i),this.inputType)&&this.outputs[this.cases[i]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)}outputDefined(){return this.outputs.every(e=>e.outputDefined())&&this.otherwise.outputDefined()}serialize(){const e=["match",this.input.serialize()],i=Object.keys(this.cases).sort(),n=[],a={};for(const h of i){const f=a[this.cases[h]];f===void 0?(a[this.cases[h]]=n.length,n.push([this.cases[h],[h]])):n[f][1].push(h)}const u=h=>this.inputType.kind==="number"?Number(h):h;for(const[h,f]of n)e.push(f.length===1?u(f[0]):f.map(u)),e.push(this.outputs[h].serialize());return e.push(this.otherwise.serialize()),e}}class Tl{constructor(e,i,n){this.type=e,this.branches=i,this.otherwise=n}static parse(e,i){if(e.length<4)return i.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return i.error("Expected an odd number of arguments.");let n;i.expectedType&&i.expectedType.kind!=="value"&&(n=i.expectedType);const a=[];for(let h=1;h<e.length-1;h+=2){const f=i.parse(e[h],h,Nt);if(!f)return null;const _=i.parse(e[h+1],h+1,n);if(!_)return null;a.push([f,_]),n=n||_.type}const u=i.parse(e[e.length-1],e.length-1,n);return u?new Tl(n,a,u):null}evaluate(e){for(const[i,n]of this.branches)if(i.evaluate(e))return n.evaluate(e);return this.otherwise.evaluate(e)}eachChild(e){for(const[i,n]of this.branches)e(i),e(n);e(this.otherwise)}outputDefined(){return this.branches.every(([e,i])=>i.outputDefined())&&this.otherwise.outputDefined()}serialize(){const e=["case"];return this.eachChild(i=>{e.push(i.serialize())}),e}}class Rc{constructor(e,i,n,a){this.type=e,this.input=i,this.beginIndex=n,this.endIndex=a}static parse(e,i){if(e.length<=2||e.length>=5)return i.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,Zt),a=i.parse(e[2],2,nt);if(!n||!a)return null;if(!Ou(n.type,[Ar(Zt),qt,Zt]))return i.error(`Expected first argument to be of type array or string, but found ${Ui(n.type)} instead`);if(e.length===4){const u=i.parse(e[3],3,nt);return u?new Rc(n.type,n,a,u):null}return new Rc(n.type,n,a)}evaluate(e){const i=this.input.evaluate(e),n=this.beginIndex.evaluate(e);if(!hl(i,["string","array"]))throw new Yi(`Expected first argument to be of type array or string, but found ${Ui(ir(i))} instead.`);if(this.endIndex){const a=this.endIndex.evaluate(e);return i.slice(n,a)}return i.slice(n)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)}outputDefined(){return!1}serialize(){if(this.endIndex!=null&&this.endIndex!==void 0){const e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]}}class oh{constructor(e,i){this.type=Ar(qt),this.str=e,this.delimiter=i}static parse(e,i){if(e.length!==3)return i.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=i.parse(e[1],1,qt),a=i.parse(e[2],2,qt);return n&&a?new oh(n,a):void 0}evaluate(e){const i=this.str.evaluate(e),n=this.delimiter.evaluate(e);return i.split(n)}eachChild(e){e(this.str),e(this.delimiter)}outputDefined(){return!1}serialize(){return["split",this.str.serialize(),this.delimiter.serialize()]}}function ah(r,e){return r==="=="||r==="!="?e.kind==="boolean"||e.kind==="string"||e.kind==="number"||e.kind==="null"||e.kind==="value":e.kind==="string"||e.kind==="number"||e.kind==="value"}function lh(r,e,i,n){return n.compare(e,i)===0}function Ta(r,e,i){const n=r!=="=="&&r!=="!=";return class kv{constructor(u,h,f){this.type=Nt,this.lhs=u,this.rhs=h,this.collator=f,this.hasUntypedArgument=u.type.kind==="value"||h.type.kind==="value"}static parse(u,h){if(u.length!==3&&u.length!==4)return h.error("Expected two or three arguments.");const f=u[0];let _=h.parse(u[1],1,Zt);if(!_)return null;if(!ah(f,_.type))return h.concat(1).error(`"${f}" comparisons are not supported for type '${Ui(_.type)}'.`);let g=h.parse(u[2],2,Zt);if(!g)return null;if(!ah(f,g.type))return h.concat(2).error(`"${f}" comparisons are not supported for type '${Ui(g.type)}'.`);if(_.type.kind!==g.type.kind&&_.type.kind!=="value"&&g.type.kind!=="value")return h.error(`Cannot compare types '${Ui(_.type)}' and '${Ui(g.type)}'.`);n&&(_.type.kind==="value"&&g.type.kind!=="value"?_=new gt(g.type,[_]):_.type.kind!=="value"&&g.type.kind==="value"&&(g=new gt(_.type,[g])));let v=null;if(u.length===4){if(_.type.kind!=="string"&&g.type.kind!=="string"&&_.type.kind!=="value"&&g.type.kind!=="value")return h.error("Cannot use collator to compare non-string types.");if(v=h.parse(u[3],3,hc),!v)return null}return new kv(_,g,v)}evaluate(u){const h=this.lhs.evaluate(u),f=this.rhs.evaluate(u);if(n&&this.hasUntypedArgument){const _=ir(h),g=ir(f);if(_.kind!==g.kind||_.kind!=="string"&&_.kind!=="number")throw new Yi(`Expected arguments for "${r}" to be (string, string) or (number, number), but found (${_.kind}, ${g.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){const _=ir(h),g=ir(f);if(_.kind!=="string"||g.kind!=="string")return e(u,h,f)}return this.collator?i(u,h,f,this.collator.evaluate(u)):e(u,h,f)}eachChild(u){u(this.lhs),u(this.rhs),this.collator&&u(this.collator)}outputDefined(){return!0}serialize(){const u=[r];return this.eachChild(h=>{u.push(h.serialize())}),u}}}const Pm=Ta("==",function(r,e,i){return e===i},lh),Cm=Ta("!=",function(r,e,i){return e!==i},function(r,e,i,n){return!lh(0,e,i,n)}),_f=Ta("<",function(r,e,i){return e<i},function(r,e,i,n){return n.compare(e,i)<0}),gf=Ta(">",function(r,e,i){return e>i},function(r,e,i,n){return n.compare(e,i)>0}),zc=Ta("<=",function(r,e,i){return e<=i},function(r,e,i,n){return n.compare(e,i)<=0}),Rm=Ta(">=",function(r,e,i){return e>=i},function(r,e,i,n){return n.compare(e,i)>=0});class Dc{constructor(e,i,n,a,u,h){this.type=qt,this.number=e,this.locale=i,this.currency=n,this.unit=a,this.minFractionDigits=u,this.maxFractionDigits=h}static parse(e,i){if(e.length!==3)return i.error("Expected two arguments.");const n=i.parse(e[1],1,nt);if(!n)return null;const a=e[2];if(typeof a!="object"||Array.isArray(a))return i.error("NumberFormat options argument must be an object.");let u=null;if(a.locale&&(u=i.parseObjectValue(a.locale,2,"locale",qt),!u))return null;let h=null;if(a.currency&&(h=i.parseObjectValue(a.currency,2,"currency",qt),!h))return null;let f=null;if(a.unit&&(f=i.parseObjectValue(a.unit,2,"unit",qt),!f))return null;let _=null;if(a["min-fraction-digits"]&&(_=i.parseObjectValue(a["min-fraction-digits"],2,"min-fraction-digits",nt),!_))return null;let g=null;return a["max-fraction-digits"]&&(g=i.parseObjectValue(a["max-fraction-digits"],2,"max-fraction-digits",nt),!g)?null:new Dc(n,u,h,f,_,g)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:(this.currency?"currency":this.unit&&"unit")||"decimal",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)}outputDefined(){return!1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.unit&&(e.unit=this.unit.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]}}class ch{constructor(e){this.type=nt,this.input=e}static parse(e,i){if(e.length!==2)return i.error(`Expected 1 argument, but found ${e.length-1} instead.`);const n=i.parse(e[1],1);return n?n.type.kind!=="array"&&n.type.kind!=="string"&&n.type.kind!=="value"?i.error(`Expected argument of type string or array, but found ${Ui(n.type)} instead.`):new ch(n):null}evaluate(e){const i=this.input.evaluate(e);if(typeof i=="string"||Array.isArray(i))return i.length;throw new Yi(`Expected value to be of type string or array, but found ${Ui(ir(i))} instead.`)}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){const e=["length"];return this.eachChild(i=>{e.push(i.serialize())}),e}}function yf(r){return function(){r=1831565813+(r|=0)|0;let e=Math.imul(r^r>>>15,1|r);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}const No={"==":Pm,"!=":Cm,">":gf,"<":_f,">=":Rm,"<=":zc,array:gt,at:Pc,"at-interpolated":Cc,boolean:gt,case:Tl,coalesce:bl,collator:rs,format:rt,image:fa,in:sh,"index-of":wa,interpolate:bn,"interpolate-hcl":bn,"interpolate-lab":bn,length:ch,let:zs,literal:Cs,match:wl,number:gt,"number-format":Dc,object:gt,slice:Rc,step:xl,string:gt,"to-boolean":is,"to-color":is,"to-number":is,"to-string":is,var:Tc,within:io,distance:Bo,config:xa,split:oh};function uh(r,[e,i,n,a]){e=e.evaluate(r),i=i.evaluate(r),n=n.evaluate(r);const u=a?a.evaluate(r):1,h=ku(e,i,n,u);if(h)throw new Yi(h);return new Ht(e/255,i/255,n/255,u)}function xf(r,[e,i,n,a]){e=e.evaluate(r),i=i.evaluate(r),n=n.evaluate(r);const u=a?a.evaluate(r):1,h=(function(g,v,b,w){return typeof g=="number"&&g>=0&&g<=360?typeof v=="number"&&v>=0&&v<=100&&typeof b=="number"&&b>=0&&b<=100?w===void 0||typeof w=="number"&&w>=0&&w<=1?null:`Invalid hsla value [${[g,v,b,w].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid hsla value [${(typeof w=="number"?[g,v,b,w]:[g,v,b]).join(", ")}]: 's', and 'l' must be between 0 and 100.`:`Invalid hsla value [${(typeof w=="number"?[g,v,b,w]:[g,v,b]).join(", ")}]: 'h' must be between 0 and 360.`})(e,i,n,u);if(h)throw new Yi(h);const f=`hsla(${e}, ${i}%, ${n}%, ${u})`,_=Ht.parse(f);if(!_)throw new Yi(`Failed to parse HSLA color: ${f}`);return _}function vf(r,e){return r in e}function hh(r,e){const i=e[r];return i===void 0?null:i}function so(r){return{type:r}}function Vo(r){if(r instanceof xa)return new Set([r.key]);let e=new Set;return r.eachChild(i=>{e=new Set([...e,...Vo(i)])}),e}function Lc(r){if(r instanceof Kr&&r.name==="is-active-floor")return!0;let e=!1;return r.eachChild(i=>{!e&&Lc(i)&&(e=!0)}),e}function bf(r){return{result:"success",value:r}}function oo(r){return{result:"error",value:r}}function dh(r,e){return!!r&&!!r.parameters&&r.parameters.indexOf(e)>-1}function Oc(r){return r["property-type"]==="data-driven"}function fh(r){return dh(r.expression,"measure-light")}function wf(r){return dh(r.expression,"zoom")}function ph(r){return!!r.expression&&r.expression.interpolated}function Fc(r){return typeof r=="object"&&r!==null&&!Array.isArray(r)}function Tf(r){return r}function mh(r,e){const i=e.type==="color",n=r.stops&&typeof r.stops[0][0]=="object",a=n||!(n||r.property!==void 0),u=r.type||(ph(e)?"exponential":"interval");if(i&&((r=Object.assign({},r)).stops&&(r.stops=r.stops.map(g=>[g[0],Ht.parse(g[1])])),r.default=Ht.parse(r.default?r.default:e.default)),r.colorSpace&&r.colorSpace!=="rgb"&&!mf[r.colorSpace])throw new Error(`Unknown color space: ${r.colorSpace}`);let h,f,_;if(u==="exponential")h=Sf;else if(u==="interval")h=zm;else if(u==="categorical"){h=Sa,f=Object.create(null);for(const g of r.stops)f[g[0]]=g[1];_=typeof r.stops[0][0]}else{if(u!=="identity")throw new Error(`Unknown function type "${u}"`);h=Dm}if(n){const g={},v=[];for(let I=0;I<r.stops.length;I++){const E=r.stops[I],C=E[0].zoom;g[C]===void 0&&(g[C]={zoom:C,type:r.type,property:r.property,default:r.default,stops:[]},v.push(C)),g[C].stops.push([E[0].value,E[1]])}const b=[];for(const I of v)b.push([g[I].zoom,mh(g[I],e)]);const w={name:"linear"};return{kind:"composite",interpolationType:w,interpolationFactor:bn.interpolationFactor.bind(void 0,w),zoomStops:b.map(I=>I[0]),evaluate:({zoom:I},E)=>Sf({stops:b,base:r.base},e,I).evaluate(I,E)}}if(a){const g=u==="exponential"?{name:"exponential",base:r.base!==void 0?r.base:1}:null;return{kind:"camera",interpolationType:g,interpolationFactor:bn.interpolationFactor.bind(void 0,g),zoomStops:r.stops.map(v=>v[0]),evaluate:({zoom:v})=>h(r,e,v,f,_)}}return{kind:"source",evaluate(g,v){const b=v&&v.properties?v.properties[r.property]:void 0;return b===void 0?Sl(r.default,e.default):h(r,e,b,f,_)}}}function Sl(r,e,i){return r!==void 0?r:e!==void 0?e:i!==void 0?i:void 0}function Sa(r,e,i,n,a){return Sl(typeof i===a?n[i]:void 0,r.default,e.default)}function zm(r,e,i){if(!ut(i))return Sl(r.default,e.default);const n=r.stops.length;if(n===1||i<=r.stops[0][0])return r.stops[0][1];if(i>=r.stops[n-1][0])return r.stops[n-1][1];const a=Ic(r.stops.map(u=>u[0]),i);return r.stops[a][1]}function Sf(r,e,i){const n=r.base!==void 0?r.base:1;if(!ut(i))return Sl(r.default,e.default);const a=r.stops.length;if(a===1||i<=r.stops[0][0])return r.stops[0][1];if(i>=r.stops[a-1][0])return r.stops[a-1][1];const u=Ic(r.stops.map(v=>v[0]),i),h=(function(v,b,w,I){const E=I-w,C=v-w;return E===0?0:b===1?C/E:(Math.pow(b,C)-1)/(Math.pow(b,E)-1)})(i,n,r.stops[u][0],r.stops[u+1][0]),f=r.stops[u][1],_=r.stops[u+1][1];let g=Lo[e.type]||Tf;if(r.colorSpace&&r.colorSpace!=="rgb"){const v=mf[r.colorSpace];g=(b,w)=>v.reverse(v.interpolate(v.forward(b),v.forward(w),h))}return typeof f.evaluate=="function"?{evaluate(...v){const b=f.evaluate.apply(void 0,v),w=_.evaluate.apply(void 0,v);if(b!==void 0&&w!==void 0)return g(b,w,h)}}:g(f,_,h)}function Dm(r,e,i){return e.type==="color"?i=Ht.parse(i):e.type==="formatted"?i=Mr.fromString(i.toString()):e.type==="resolvedImage"?i=Yr.build(i.toString()):ft(i)===e.type||e.type==="enum"&&e.values[i]||(i=void 0),Sl(i,r.default,e.default)}Kr.register(No,{error:[{kind:"error"},[qt],(r,[e])=>{throw new Yi(e.evaluate(r))}],typeof:[qt,[Zt],(r,[e])=>Ui(ir(e.evaluate(r)))],"to-rgba":[Ar(nt,4),[Or],(r,[e])=>e.evaluate(r).toNonPremultipliedRenderColor(null).toArray()],"to-hsla":[Ar(nt,4),[Or],(r,[e])=>e.evaluate(r).toNonPremultipliedRenderColor(null).toHslaArray()],rgb:[Or,[nt,nt,nt],uh],rgba:[Or,[nt,nt,nt,nt],uh],hsl:[Or,[nt,nt,nt],xf],hsla:[Or,[nt,nt,nt,nt],xf],has:{type:Nt,overloads:[[[qt],(r,[e])=>vf(e.evaluate(r),r.properties())],[[qt,ha],(r,[e,i])=>vf(e.evaluate(r),i.evaluate(r))]]},get:{type:Zt,overloads:[[[qt],(r,[e])=>hh(e.evaluate(r),r.properties())],[[qt,ha],(r,[e,i])=>hh(e.evaluate(r),i.evaluate(r))]]},"feature-state":[Zt,[qt],(r,[e])=>hh(e.evaluate(r),r.featureState||{})],properties:[ha,[],r=>r.properties()],"geometry-type":[qt,[],r=>r.geometryType()],worldview:[qt,[],r=>r.globals.worldview||""],"is-active-floor":[Nt,so(qt),(r,e)=>{if(!(r.globals.activeFloors&&r.globals.activeFloors.size>0))return!1;const i=r.globals.activeFloors;return e.some(n=>{const a=n.evaluate(r);return i.has(a)})}],id:[Zt,[],r=>r.id()],zoom:[nt,[],r=>r.globals.zoom],pitch:[nt,[],r=>r.globals.pitch||0],"distance-from-center":[nt,[],r=>r.distanceFromCenter()],"measure-light":[nt,[qt],(r,[e])=>r.measureLight(e.evaluate(r))],"heatmap-density":[nt,[],r=>r.globals.heatmapDensity||0],"line-progress":[nt,[],r=>r.globals.lineProgress||0],"raster-value":[nt,[],r=>r.globals.rasterValue||0],"raster-particle-speed":[nt,[],r=>r.globals.rasterParticleSpeed||0],"sky-radial-progress":[nt,[],r=>r.globals.skyRadialProgress||0],accumulated:[Zt,[],r=>r.globals.accumulated===void 0?null:r.globals.accumulated],"+":[nt,so(nt),(r,e)=>{let i=0;for(const n of e)i+=n.evaluate(r);return i}],"*":[nt,so(nt),(r,e)=>{let i=1;for(const n of e)i*=n.evaluate(r);return i}],"-":{type:nt,overloads:[[[nt,nt],(r,[e,i])=>e.evaluate(r)-i.evaluate(r)],[[nt],(r,[e])=>-e.evaluate(r)]]},"/":[nt,[nt,nt],(r,[e,i])=>e.evaluate(r)/i.evaluate(r)],"%":[nt,[nt,nt],(r,[e,i])=>e.evaluate(r)%i.evaluate(r)],ln2:[nt,[],()=>Math.LN2],pi:[nt,[],()=>Math.PI],e:[nt,[],()=>Math.E],"^":[nt,[nt,nt],(r,[e,i])=>Math.pow(e.evaluate(r),i.evaluate(r))],sqrt:[nt,[nt],(r,[e])=>Math.sqrt(e.evaluate(r))],log10:[nt,[nt],(r,[e])=>Math.log(e.evaluate(r))/Math.LN10],ln:[nt,[nt],(r,[e])=>Math.log(e.evaluate(r))],log2:[nt,[nt],(r,[e])=>Math.log2(e.evaluate(r))],sin:[nt,[nt],(r,[e])=>Math.sin(e.evaluate(r))],cos:[nt,[nt],(r,[e])=>Math.cos(e.evaluate(r))],tan:[nt,[nt],(r,[e])=>Math.tan(e.evaluate(r))],asin:[nt,[nt],(r,[e])=>Math.asin(e.evaluate(r))],acos:[nt,[nt],(r,[e])=>Math.acos(e.evaluate(r))],atan:[nt,[nt],(r,[e])=>Math.atan(e.evaluate(r))],min:[nt,so(nt),(r,e)=>Math.min(...e.map(i=>i.evaluate(r)))],max:[nt,so(nt),(r,e)=>Math.max(...e.map(i=>i.evaluate(r)))],abs:[nt,[nt],(r,[e])=>Math.abs(e.evaluate(r))],round:[nt,[nt],(r,[e])=>{const i=e.evaluate(r);return i<0?-Math.round(-i):Math.round(i)}],floor:[nt,[nt],(r,[e])=>Math.floor(e.evaluate(r))],ceil:[nt,[nt],(r,[e])=>Math.ceil(e.evaluate(r))],"filter-==":[Nt,[qt,Zt],(r,[e,i])=>r.properties()[e.value]===i.value],"filter-id-==":[Nt,[Zt],(r,[e])=>r.id()===e.value],"filter-type-==":[Nt,[qt],(r,[e])=>r.geometryType()===e.value],"filter-<":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n<a}],"filter-id-<":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i<n}],"filter->":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n>a}],"filter-id->":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i>n}],"filter-<=":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n<=a}],"filter-id-<=":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i<=n}],"filter->=":[Nt,[qt,Zt],(r,[e,i])=>{const n=r.properties()[e.value],a=i.value;return typeof n==typeof a&&n>=a}],"filter-id->=":[Nt,[Zt],(r,[e])=>{const i=r.id(),n=e.value;return typeof i==typeof n&&i>=n}],"filter-has":[Nt,[Zt],(r,[e])=>e.value in r.properties()],"filter-has-id":[Nt,[],r=>r.id()!==null&&r.id()!==void 0],"filter-type-in":[Nt,[Ar(qt)],(r,[e])=>e.value.indexOf(r.geometryType())>=0],"filter-id-in":[Nt,[Ar(Zt)],(r,[e])=>e.value.indexOf(r.id())>=0],"filter-in-small":[Nt,[qt,Ar(Zt)],(r,[e,i])=>i.value.indexOf(r.properties()[e.value])>=0],"filter-in-large":[Nt,[qt,Ar(Zt)],(r,[e,i])=>(function(n,a,u,h){for(;u<=h;){const f=u+h>>1;if(a[f]===n)return!0;a[f]>n?h=f-1:u=f+1}return!1})(r.properties()[e.value],i.value,0,i.value.length-1)],all:{type:Nt,overloads:[[[Nt,Nt],(r,[e,i])=>e.evaluate(r)&&i.evaluate(r)],[so(Nt),(r,e)=>{for(const i of e)if(!i.evaluate(r))return!1;return!0}]]},any:{type:Nt,overloads:[[[Nt,Nt],(r,[e,i])=>e.evaluate(r)||i.evaluate(r)],[so(Nt),(r,e)=>{for(const i of e)if(i.evaluate(r))return!0;return!1}]]},"!":[Nt,[Nt],(r,[e])=>!e.evaluate(r)],"is-supported-script":[Nt,[qt],(r,[e])=>{const i=r.globals&&r.globals.isSupportedScript;return!i||i(e.evaluate(r))}],upcase:[qt,[qt],(r,[e])=>e.evaluate(r).toUpperCase()],downcase:[qt,[qt],(r,[e])=>e.evaluate(r).toLowerCase()],concat:[qt,so(Zt),(r,e)=>e.map(i=>ts(i.evaluate(r))).join("")],"resolved-locale":[qt,[hc],(r,[e])=>e.evaluate(r).resolvedLocale()],random:[nt,[nt,nt,Zt],(r,e)=>{const[i,n,a]=e.map(h=>h.evaluate(r));if(i>n||i===n)return i;let u;if(typeof a=="string")u=(function(h){let f=0;if(h.length===0)return f;for(let _=0;_<h.length;_++)f=(f<<5)-f+h.charCodeAt(_),f&=f;return f})(a);else{if(typeof a!="number")throw new Yi(`Invalid seed input: ${a}`);u=a}return i+yf(u)()*(n-i)}]});class kc{constructor(e,i,n,a,u){this.expression=e,this._warningHistory={},this._scope=n,this._options=a,this._iconImageUseTheme=u,this._evaluator=new pa(n,a,u),this._defaultValue=i?(function(h){return h.type==="color"&&(Fc(h.default)||Array.isArray(h.default))?new Ht(0,0,0,0):h.type==="color"?Ht.parse(h.default)||null:h.default===void 0?null:h.default})(i):null,this._enumValues=i&&i.type==="enum"?i.values:null,this.configDependencies=Vo(e),this.isIndoorDependent=Lc(e)}evaluateWithoutErrorHandling(e,i,n,a,u,h,f,_){return this._evaluator.globals=e,this._evaluator.feature=i,this._evaluator.featureState=n,this._evaluator.canonical=a||null,this._evaluator.availableImages=u||null,this._evaluator.formattedSection=h,this._evaluator.featureTileCoord=f||null,this._evaluator.featureDistanceData=_||null,this.expression.evaluate(this._evaluator)}evaluate(e,i,n,a,u,h,f,_,g){this._evaluator||(this._evaluator=new pa(this._scope,this._options,this._iconImageUseTheme)),this._evaluator.globals=e,this._evaluator.feature=i||null,this._evaluator.featureState=n||null,this._evaluator.canonical=a||null,this._evaluator.availableImages=u||null,this._evaluator.formattedSection=h||null,this._evaluator.featureTileCoord=f||null,this._evaluator.featureDistanceData=_||null,this._evaluator.iconImageUseTheme=g||null;try{const v=this.expression.evaluate(this._evaluator);if(v==null||typeof v=="number"&&v!=v)return this._defaultValue;if(this._enumValues&&!(v in this._enumValues))throw new Yi(`Expected value to be one of ${Object.keys(this._enumValues).map(b=>JSON.stringify(b)).join(", ")}, but found ${JSON.stringify(v)} instead.`);return v}catch(v){const b=v;return this._warningHistory[b.message]||(this._warningHistory[b.message]=!0,typeof console<"u"&&console.warn(`Failed to evaluate expression "${JSON.stringify(this.expression.serialize())}". ${b.message}`)),this._defaultValue}}}function Il(r){return Array.isArray(r)&&r.length>0&&typeof r[0]=="string"&&r[0]in No}function ao(r,e,i,n,a){const u=new Sc(No,[],e?(function(f){const _={color:Or,string:qt,number:nt,enum:qt,boolean:Nt,formatted:da,resolvedImage:Oo};return f.type==="array"?Ar(_[f.value]||Zt,f.length):_[f.type]})(e):void 0,void 0,void 0,i,n,a),h=u.parse(r,void 0,void 0,void 0,e&&e.type==="string"?{typeAnnotation:"coerce"}:void 0);return h?bf(new kc(h,e,i,n,a)):oo(u.errors)}class El{constructor(e,i,n,a){this.kind=e,this._styleExpression=i,this.isLightConstant=n,this.isLineProgressConstant=a,this.isStateDependent=e!=="constant"&&!yl(i.expression),this.configDependencies=Vo(i.expression),this.isIndoorDependent=Lc(i.expression)}evaluateWithoutErrorHandling(e,i,n,a,u,h){return this._styleExpression.evaluateWithoutErrorHandling(e,i,n,a,u,h)}evaluate(e,i,n,a,u,h,f){return this._styleExpression.evaluate(e,i,n,a,u,h,void 0,void 0,f)}}class Uo{constructor(e,i,n,a,u,h){this.kind=e,this.zoomStops=n,this._styleExpression=i,this.isStateDependent=e!=="camera"&&!yl(i.expression),this.isIndoorDependent=Lc(i.expression),this.isLightConstant=u,this.isLineProgressConstant=h,this.configDependencies=Vo(i.expression),this.interpolationType=a}evaluateWithoutErrorHandling(e,i,n,a,u,h){return this._styleExpression.evaluateWithoutErrorHandling(e,i,n,a,u,h)}evaluate(e,i,n,a,u,h){return this._styleExpression.evaluate(e,i,n,a,u,h)}interpolationFactor(e,i,n){return this.interpolationType?bn.interpolationFactor(this.interpolationType,e,i,n):0}}function Bc(r,e,i,n,a){if((r=ao(r,e,i,n,a)).result==="error")return r;const u=r.value.expression,h=ga(u);if(!h&&!Oc(e))return oo([new Lr("","data expressions not supported")]);const f=ya(u,["zoom","pitch","distance-from-center"]);if(!f&&!wf(e))return oo([new Lr("","zoom expressions not supported")]);const _=ya(u,["measure-light"]);if(!_&&!fh(e))return oo([new Lr("","measure-light expression not supported")]);const g=ya(u,["line-progress"]);if(!g&&!(function(w){return dh(w.expression,"line-progress")})(e))return oo([new Lr("","line-progress expression not supported")]);const v=e.expression&&e.expression.relaxZoomRestriction,b=Nc(u);return b||f||v?b instanceof Lr?oo([b]):b instanceof bn&&!ph(e)?oo([new Lr("",'"interpolate" expressions cannot be used with this property')]):bf(b?new Uo(h&&g?"camera":"composite",r.value,b.labels,b instanceof bn?b.interpolation:void 0,_,g):new El(h&&g?"constant":"source",r.value,_,g)):oo([new Lr("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression, or in the properties of atmosphere.')])}class Al{constructor(e,i){this._parameters=e,this._specification=i,Object.assign(this,mh(this._parameters,this._specification))}static deserialize(e){return new Al(e._parameters,e._specification)}static serialize(e){return{_parameters:e._parameters,_specification:e._specification}}}function Nc(r){let e=null;if(r instanceof zs)e=Nc(r.result);else if(r instanceof bl){for(const i of r.args)if(e=Nc(i),e)break}else(r instanceof xl||r instanceof bn)&&r.input instanceof Kr&&r.input.name==="zoom"&&(e=r);return e instanceof Lr||r.eachChild(i=>{const n=Nc(i);n instanceof Lr?e=n:e&&n&&e!==n&&(e=new Lr("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),e}var ss,If,Lm=(function(){if(If)return ss;If=1,ss=e;var r=3;function e(i,n,a){var u=this.cells=[];if(i instanceof ArrayBuffer){this.arrayBuffer=i;var h=new Int32Array(this.arrayBuffer);i=h[0],this.d=(n=h[1])+2*(a=h[2]);for(var f=0;f<this.d*this.d;f++){var _=h[r+f],g=h[r+f+1];u.push(_===g?null:h.subarray(_,g))}var v=h[r+u.length+1];this.keys=h.subarray(h[r+u.length],v),this.bboxes=h.subarray(v),this.insert=this._insertReadonly}else{this.d=n+2*a;for(var b=0;b<this.d*this.d;b++)u.push([]);this.keys=[],this.bboxes=[]}this.n=n,this.extent=i,this.padding=a,this.scale=n/i,this.uid=0;var w=a/n*i;this.min=-w,this.max=i+w}return e.prototype.insert=function(i,n,a,u,h){this._forEachCell(n,a,u,h,this._insertCell,this.uid++),this.keys.push(i),this.bboxes.push(n),this.bboxes.push(a),this.bboxes.push(u),this.bboxes.push(h)},e.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},e.prototype._insertCell=function(i,n,a,u,h,f){this.cells[h].push(f)},e.prototype.query=function(i,n,a,u,h){var f=this.min,_=this.max;if(i<=f&&n<=f&&_<=a&&_<=u&&!h)return Array.prototype.slice.call(this.keys);var g=[];return this._forEachCell(i,n,a,u,this._queryCell,g,{},h),g},e.prototype._queryCell=function(i,n,a,u,h,f,_,g){var v=this.cells[h];if(v!==null)for(var b=this.keys,w=this.bboxes,I=0;I<v.length;I++){var E=v[I];if(_[E]===void 0){var C=4*E;(g?g(w[C+0],w[C+1],w[C+2],w[C+3]):i<=w[C+2]&&n<=w[C+3]&&a>=w[C+0]&&u>=w[C+1])?(_[E]=!0,f.push(b[E])):_[E]=!1}}},e.prototype._forEachCell=function(i,n,a,u,h,f,_,g){for(var v=this._convertToCellCoord(i),b=this._convertToCellCoord(n),w=this._convertToCellCoord(a),I=this._convertToCellCoord(u),E=v;E<=w;E++)for(var C=b;C<=I;C++){var D=this.d*C+E;if((!g||g(this._convertFromCellCoord(E),this._convertFromCellCoord(C),this._convertFromCellCoord(E+1),this._convertFromCellCoord(C+1)))&&h.call(this,i,n,a,u,D,f,_,g))return}},e.prototype._convertFromCellCoord=function(i){return(i-this.padding)/this.scale},e.prototype._convertToCellCoord=function(i){return Math.max(0,Math.min(this.d-1,Math.floor(i*this.scale)+this.padding))},e.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var i=this.cells,n=r+this.cells.length+1+1,a=0,u=0;u<this.cells.length;u++)a+=this.cells[u].length;var h=new Int32Array(n+a+this.keys.length+this.bboxes.length);h[0]=this.extent,h[1]=this.n,h[2]=this.padding;for(var f=n,_=0;_<i.length;_++){var g=i[_];h[r+_]=f,h.set(g,f),f+=g.length}return h[r+i.length]=f,h.set(this.keys,f),h[r+i.length+1]=f+=this.keys.length,h.set(this.bboxes,f),f+=this.bboxes.length,h.buffer},ss})(),jo=_n(Lm);const Vc={};function Je(r,e,i={}){Object.defineProperty(r,"_classRegistryKey",{value:e,writable:!1}),Vc[e]={klass:r,omit:i.omit||[]}}Je(Object,"Object"),jo.serialize=function(r,e){const i=r.toArrayBuffer();return e&&e.add(i),{buffer:i}},jo.deserialize=function(r){return new jo(r.buffer)},Object.defineProperty(jo,"name",{value:"Grid"}),Je(jo,"Grid"),delete Fe.prototype.constructor,Je(Ht,"Color"),Je(Error,"Error"),Je(Mr,"Formatted"),Je(fc,"FormattedSection"),Je(nl,"AJAXError"),Je(Yr,"ResolvedImage"),Je(Al,"StylePropertyFunction"),Je(kc,"StyleExpression",{omit:["_evaluator"]}),Je(Zr,"ImageId"),Je(Xr,"ImageVariant"),Je(Uo,"ZoomDependentExpression"),Je(El,"ZoomConstantExpression"),Je(Kr,"CompoundExpression",{omit:["_evaluate"]});for(const r in No)Vc[No[r]._classRegistryKey]||Je(No[r],`Expression${r}`);function _h(r){return r&&(r instanceof ArrayBuffer||r.constructor&&r.constructor.name==="ArrayBuffer")}function qn(r,e){if(r==null||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||r instanceof Boolean||r instanceof Number||r instanceof String||r instanceof Date||r instanceof RegExp)return r;if(_h(r)||r instanceof ImageBitmap)return e&&e.add(r),r;if(ArrayBuffer.isView(r))return e&&e.add(r.buffer),r;if(r instanceof ImageData)return e&&e.add(r.data.buffer),r;if(Array.isArray(r)){const i=[];for(const n of r)i.push(qn(n,e));return i}if(r instanceof Map){const i={$name:"Map",entries:[]};for(const[n,a]of r.entries())i.entries.push(qn(n),qn(a,e));return i}if(r instanceof Set){const i={$name:"Set"};let n=0;for(const a of r.values())i[++n]=qn(a);return i}if(typeof r=="bigint")return{$name:"BigInt",value:r.toString()};if(typeof r=="object"){const i=r.constructor,n=i._classRegistryKey;if(!n)throw new Error(`Can't serialize object of unregistered class "${i.name}".`);const a=i.serialize?i.serialize(r,e):{};if(!i.serialize){for(const u in r)r.hasOwnProperty(u)&&(Vc[n].omit.indexOf(u)>=0||(a[u]=qn(r[u],e)));r instanceof Error&&(a.message=r.message)}if(a.$name)throw new Error("$name property is reserved for worker serialization logic.");return n!=="Object"&&(a.$name=n),a}throw new Error("can't serialize object of type "+typeof r)}function Ds(r){if(r==null||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||r instanceof Boolean||r instanceof Number||r instanceof String||r instanceof Date||r instanceof RegExp||_h(r)||r instanceof ImageBitmap||ArrayBuffer.isView(r)||r instanceof ImageData)return r;if(Array.isArray(r))return r.map(Ds);if(typeof r=="object"){const e=r.$name||"Object";if(e==="Map"){const a=r.entries||[],u=new Map;for(let h=0;h<a.length;h+=2)u.set(Ds(a[h]),Ds(a[h+1]));return u}if(e==="Set"){const a=new Set;for(const u of Object.keys(r))u!=="$name"&&a.add(Ds(r[u]));return a}if(e==="BigInt")return BigInt(r.value);const{klass:i}=Vc[e];if(!i)throw new Error(`Can't deserialize unregistered class "${e}".`);if(i.deserialize)return i.deserialize(r);const n=Object.create(i.prototype);for(const a of Object.keys(r))a!=="$name"&&(n[a]=Ds(r[a]));return n}throw new Error("can't deserialize object of type "+typeof r)}const Ef=r=>r>=1536&&r<=1791,Af=r=>r>=1872&&r<=1919,Uc=r=>r>=2208&&r<=2303,jc=r=>r>=11904&&r<=12031,gh=r=>r>=12032&&r<=12255,yh=r=>r>=12272&&r<=12287,Ia=r=>r>=12288&&r<=12351,Ea=r=>r>=12352&&r<=12447,Ml=r=>r>=12448&&r<=12543,os=r=>r>=12544&&r<=12591,Mf=r=>r>=12704&&r<=12735,Pf=r=>r>=12736&&r<=12783,Cf=r=>r>=12784&&r<=12799,Rf=r=>r>=12800&&r<=13055,xh=r=>r>=13056&&r<=13311,Aa=r=>r>=13312&&r<=19903,Gc=r=>r>=19968&&r<=40959,vh=r=>r>=40960&&r<=42127,qc=r=>r>=42128&&r<=42191,zf=r=>r>=44032&&r<=55215,Df=r=>r>=63744&&r<=64255,bh=r=>r>=64336&&r<=65023,Lf=r=>r>=65040&&r<=65055,wh=r=>r>=65072&&r<=65103,Of=r=>r>=65104&&r<=65135,Th=r=>r>=65136&&r<=65279,Sh=r=>r>=65280&&r<=65519;function Ih(r){for(const e of r)if(lo(e.charCodeAt(0)))return!0;return!1}function Om(r){for(const e of r)if(!Fm(e.charCodeAt(0)))return!1;return!0}function Fm(r){return!(Ef(r)||Af(r)||Uc(r)||bh(r)||Th(r))}function Ff(r){return!(r<11904||!(Mf(r)||os(r)||wh(r)||Df(r)||xh(r)||jc(r)||Pf(r)||Ia(r)||Aa(r)||Gc(r)||Rf(r)||Sh(r)||Ea(r)||yh(r)||gh(r)||Cf(r)||Ml(r)||Lf(r)||qc(r)||vh(r)))}function lo(r){return!(r!==746&&r!==747&&(r<4352||!(Mf(r)||os(r)||wh(r)&&!(r>=65097&&r<=65103)||Df(r)||xh(r)||jc(r)||Pf(r)||!(!Ia(r)||r>=12296&&r<=12305||r>=12308&&r<=12319||r===12336)||Aa(r)||Gc(r)||Rf(r)||(e=>e>=12592&&e<=12687)(r)||(e=>e>=43360&&e<=43391)(r)||(e=>e>=55216&&e<=55295)(r)||(e=>e>=4352&&e<=4607)(r)||zf(r)||Ea(r)||yh(r)||(e=>e>=12688&&e<=12703)(r)||gh(r)||Cf(r)||Ml(r)&&r!==12540||!(!Sh(r)||r===65288||r===65289||r===65293||r>=65306&&r<=65310||r===65339||r===65341||r===65343||r>=65371&&r<=65503||r===65507||r>=65512&&r<=65519)||!(!Of(r)||r>=65112&&r<=65118||r>=65123&&r<=65126)||(e=>e>=5120&&e<=5759)(r)||(e=>e>=6320&&e<=6399)(r)||Lf(r)||(e=>e>=19904&&e<=19967)(r)||vh(r)||qc(r))))}function kf(r){return r===12312||r===12313||r===12316||r===12540||r===12448}function Eh(r){return!(lo(r)||(function(e){return!!((i=>i>=128&&i<=255)(e)&&(e===167||e===169||e===174||e===177||e===188||e===189||e===190||e===215||e===247)||(i=>i>=8192&&i<=8303)(e)&&(e===8214||e===8224||e===8225||e===8240||e===8241||e===8251||e===8252||e===8258||e===8263||e===8264||e===8265||e===8273)||(i=>i>=8448&&i<=8527)(e)||(i=>i>=8528&&i<=8591)(e)||(i=>i>=8960&&i<=9215)(e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||e===9003||e>=9085&&e<=9114||e>=9150&&e<=9165||e===9167||e>=9169&&e<=9179||e>=9186&&e<=9215)||(i=>i>=9216&&i<=9279)(e)&&e!==9251||(i=>i>=9280&&i<=9311)(e)||(i=>i>=9312&&i<=9471)(e)||(i=>i>=9632&&i<=9727)(e)||(i=>i>=9728&&i<=9983)(e)&&!(e>=9754&&e<=9759)||(i=>i>=11008&&i<=11263)(e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||Ia(e)||Ml(e)||(i=>i>=57344&&i<=63743)(e)||wh(e)||Of(e)||Sh(e)||e===8734||e===8756||e===8757||e>=9984&&e<=10087||e>=10102&&e<=10131||e===65532||e===65533)})(r))}function Hc(r){return Ef(r)||Af(r)||Uc(r)||bh(r)||Th(r)}function Bf(r){return r>=1424&&r<=2303||bh(r)||Th(r)}function km(r,e){return!(!e&&Bf(r)||r>=2304&&r<=3583||r>=3840&&r<=4255||(i=>i>=6016&&i<=6143)(r))}function co(r){for(const e of r)if(Bf(e.charCodeAt(0)))return!0;return!1}const Jr={unavailable:"unavailable",deferred:"deferred",loading:"loading",parsing:"parsing",parsed:"parsed",loaded:"loaded",error:"error"};let uo=null,Fr=Jr.unavailable,ho=null;const Nf=function(r){r&&typeof r=="string"&&r.indexOf("NetworkError")>-1&&(Fr=Jr.error),uo&&uo(r)};function Ah(){Mh.fire(new Ms("pluginStateChange",{pluginStatus:Fr,pluginURL:ho}))}const Mh=new Ps,Ph=function(){return Fr},Ch=function(){if(Fr!==Jr.deferred||!ho)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Fr=Jr.loading,Ah(),ho&&ol({url:ho},r=>{r?Nf(r):(Fr=Jr.loaded,Ah())})},Hn={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>Fr===Jr.loaded||Hn.applyArabicShaping!=null,isLoading:()=>Fr===Jr.loading,setState(r){Fr=r.pluginStatus,ho=r.pluginURL},isParsing:()=>Fr===Jr.parsing,isParsed:()=>Fr===Jr.parsed,getPluginURL:()=>ho};class Qt{constructor(e,i){this.zoom=e,i?(this.now=i.now,this.fadeDuration=i.fadeDuration,this.transition=i.transition,this.pitch=i.pitch,this.brightness=i.brightness,this.worldview=i.worldview,this.activeFloors=i.activeFloors):(this.now=0,this.fadeDuration=0,this.transition={},this.pitch=0,this.brightness=0)}isSupportedScript(e){return(function(i,n){for(const a of i)if(!km(a.charCodeAt(0),n))return!1;return!0})(e,Hn.isLoaded())}}class Pl{constructor(e,i,n,a,u){this.property=e,this.value=i,this.expression=(function(h,f,_,g,v){if(Fc(h))return new Al(h,f);if(Il(h)||Array.isArray(h)&&h.length>0){const b=Bc(h,f,_,g,v);if(b.result==="error")throw new Error(b.value.map(w=>`${w.key}: ${w.message}`).join(", "));return b.value}{let b=h;return typeof h=="string"&&f.type==="color"&&(b=Ht.parse(h)),{kind:"constant",configDependencies:new Set,isIndoorDependent:!1,evaluate:()=>b}}})(i===void 0?e.specification.default:i,e.specification,n,a,u)}isIndoorDependent(){return this.expression.isIndoorDependent}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(e,i,n,a){return this.property.possiblyEvaluate(this,e,i,n,a)}}class Cl{constructor(e,i,n,a){this.property=e,this.value=new Pl(e,void 0,i,n,a)}transitioned(e,i){return new Vf(this.property,this.value,i,Object.assign({},e.transition,this.transition),e.now)}untransitioned(){return new Vf(this.property,this.value,null,{},0)}}class Ma{constructor(e,i,n,a){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues),this._scope=i,this._options=n,this._iconImageUseTheme=a,this._isIndoorDependent=!1,this.configDependencies=new Set}getValue(e){return xt(this._values[e].value.value)}setValue(e,i){this._values.hasOwnProperty(e)||(this._values[e]=new Cl(this._values[e].property,this._scope,this._options,this._iconImageUseTheme)),this._values[e].value=new Pl(this._values[e].property,i===null?void 0:xt(i),this._scope,this._options,this._iconImageUseTheme),this._values[e].value.expression.configDependencies&&(this.configDependencies=new Set([...this.configDependencies,...this._values[e].value.expression.configDependencies]),this._isIndoorDependent=this._isIndoorDependent||this._values[e].value.isIndoorDependent())}setTransitionOrValue(e,i){i&&(this._options=i);const n=this._properties.properties;if(e)for(const a in e){const u=e[a];if(a.endsWith("-transition")){const h=a.slice(0,-11);n[h]&&this.setTransition(h,u)}else n.hasOwnProperty(a)&&this.setValue(a,u)}}getTransition(e){return xt(this._values[e].transition)}setTransition(e,i){this._values.hasOwnProperty(e)||(this._values[e]=new Cl(this._values[e].property)),this._values[e].transition=xt(i)||void 0}serialize(){const e={};for(const i of Object.keys(this._values)){const n=this.getValue(i);n!==void 0&&(e[i]=n);const a=this.getTransition(i);a!==void 0&&(e[`${i}-transition`]=a)}return e}transitioned(e,i){const n=new Uf(this._properties);for(const a of Object.keys(this._values))n._values[a]=this._values[a].transitioned(e,i._values[a]);return n}untransitioned(){const e=new Uf(this._properties);for(const i of Object.keys(this._values))e._values[i]=this._values[i].untransitioned();return e}isIndoorDependent(){return this._isIndoorDependent}}class Vf{constructor(e,i,n,a,u){const h=a.delay||0,f=a.duration||0;u=u||0,this.property=e,this.value=i,this.begin=u+h,this.end=this.begin+f,e.specification.transition&&(a.delay||a.duration)&&(this.prior=n)}possiblyEvaluate(e,i,n){const a=e.now||0,u=this.value.possiblyEvaluate(e,i,n),h=this.prior;if(h){if(a>this.end)return this.prior=null,u;if(this.value.isDataDriven())return this.prior=null,u;if(a<this.begin)return h.possiblyEvaluate(e,i,n);{const f=(a-this.begin)/(this.end-this.begin);return this.property.interpolate(h.possiblyEvaluate(e,i,n),u,U(f))}}return u}}class Uf{constructor(e){this._properties=e,this._values=Object.create(e.defaultTransitioningPropertyValues)}possiblyEvaluate(e,i,n){const a=new kr(this._properties);for(const u of Object.keys(this._values))a._values[u]=this._values[u].possiblyEvaluate(e,i,n);return a}hasTransition(){for(const e of Object.keys(this._values))if(this._values[e].prior)return!0;return!1}}class Rh{constructor(e,i,n,a){this._properties=e,this._values=Object.create(e.defaultPropertyValues),this._scope=i,this._options=n,this._iconImageUseTheme=a,this._isIndoorDependent=!1,this.configDependencies=new Set}getValue(e){return xt(this._values[e].value)}setValue(e,i){this._values[e]=new Pl(this._values[e].property,i===null?void 0:xt(i),this._scope,this._options,this._iconImageUseTheme),this._values[e].expression.configDependencies&&(this.configDependencies=new Set([...this.configDependencies,...this._values[e].expression.configDependencies]),this._isIndoorDependent=this._isIndoorDependent||this._values[e].isIndoorDependent())}serialize(){const e={};for(const i of Object.keys(this._values)){const n=this.getValue(i);n!==void 0&&(e[i]=n)}return e}possiblyEvaluate(e,i,n,a){const u=new kr(this._properties);for(const h of Object.keys(this._values))u._values[h]=this._values[h].possiblyEvaluate(e,i,n,a);return u}isIndoorDependent(){return this._isIndoorDependent}}class Go{constructor(e,i,n,a){this.property=e,this.value=i,this.parameters=n,this.iconImageUseTheme=a}isConstant(){return this.value.kind==="constant"}constantOr(e){return this.value.kind==="constant"?this.value.value:e}evaluate(e,i,n,a){return this.property.evaluate(this.value,this.parameters,e,i,n,a,this.iconImageUseTheme)}}class kr{constructor(e){this._properties=e,this._values=Object.create(e.defaultPossiblyEvaluatedValues)}get(e){return this._values[e]}}class Ve{constructor(e){this.specification=e}possiblyEvaluate(e,i){return e.expression.evaluate(i)}interpolate(e,i,n){const a=Lo[this.specification.type];return a?a(e,i,n):e}}class $e{constructor(e,i){this.specification=e,this.overrides=i}possiblyEvaluate(e,i,n,a,u){return e.expression.kind==="constant"||e.expression.kind==="camera"?new Go(this,{kind:"constant",value:e.expression.evaluate(i,null,{},n,a,void 0,u)},i):new Go(this,e.expression,i,u)}interpolate(e,i,n){if(e.value.kind!=="constant"||i.value.kind!=="constant")return e;if(e.value.value===void 0||i.value.value===void 0)return new Go(this,{kind:"constant",value:void 0},e.parameters);const a=Lo[this.specification.type];return a?new Go(this,{kind:"constant",value:a(e.value.value,i.value.value,n)},e.parameters):e}evaluate(e,i,n,a,u,h,f){return e.kind==="constant"?e.value:e.evaluate(i,n,a,u,h,void 0,f)}}class Pa{constructor(e){this.specification=e}possiblyEvaluate(e,i,n,a){return!!e.expression.evaluate(i,null,{},n,a)}interpolate(){return!1}}class Mi{constructor(e){this.properties=e,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];const i=new Qt(0,{});for(const n in e){const a=e[n];a.specification.overridable&&this.overridableProperties.push(n);const u=this.defaultPropertyValues[n]=new Pl(a,void 0),h=this.defaultTransitionablePropertyValues[n]=new Cl(a);this.defaultTransitioningPropertyValues[n]=h.untransitioned(),this.defaultPossiblyEvaluatedValues[n]=u.possiblyEvaluate(i)}}}Je($e,"DataDrivenProperty"),Je(Ve,"DataConstantProperty"),Je(Pa,"ColorRampProperty");var fe=JSON.parse('{"$version":8,"$root":{"version":{"type":"enum","values":[8]},"fragment":{"type":"boolean"},"name":{"type":"string"},"metadata":{"type":"*"},"center":{"type":"array","value":"number"},"zoom":{"type":"number"},"bearing":{"type":"number","default":0,"period":360},"pitch":{"type":"number","default":0},"light":{"type":"light"},"lights":{"type":"array","value":"light-3d"},"terrain":{"type":"terrain","optional":true},"fog":{"type":"fog"},"snow":{"type":"snow"},"rain":{"type":"rain"},"camera":{"type":"camera"},"color-theme":{"type":"colorTheme"},"indoor":{"type":"indoor"},"imports":{"type":"array","value":"import"},"iconsets":{"type":"iconsets"},"schema":{"type":"schema"},"sources":{"type":"sources"},"sprite":{"type":"string"},"glyphs":{"type":"string","default":"mapbox://fonts/mapbox/{fontstack}/{range}.pbf"},"transition":{"type":"transition"},"projection":{"type":"projection"},"layers":{"type":"array","value":"layer"},"models":{"type":"models"},"featuresets":{"type":"featuresets"}},"featuresets":{"*":{"type":"featureset"}},"featureset":{"metadata":{"type":"*"},"selectors":{"type":"array","value":"selector"}},"selector":{"layer":{"type":"string"},"properties":{"type":"selectorProperty"},"featureNamespace":{"type":"string"},"_uniqueFeatureID":{"type":"boolean"}},"selectorProperty":{"*":{"type":"*"}},"model":{"type":"string"},"import":{"id":{"type":"string"},"url":{"type":"string"},"config":{"type":"config"},"data":{"type":"$root"},"color-theme":{"type":"colorTheme","optional":true}},"config":{"*":{"type":"*"}},"schema":{"*":{"type":"option"}},"option":{"default":{"type":"*","expression":{}},"type":{"type":"enum","values":{"string":1,"number":1,"boolean":1,"color":1}},"array":{"type":"boolean"},"minValue":{"type":"number"},"maxValue":{"type":"number"},"stepValue":{"type":"number"},"values":{"type":"array","value":"*"},"metadata":{"type":"*"}},"models":{"*":{"type":"model"}},"light-3d":{"id":{"type":"string"},"properties":{"type":"properties"},"type":{"type":"enum","values":{"ambient":{},"directional":{},"flat":{}}}},"properties":["properties_light_directional","properties_light_ambient","properties_light_flat"],"properties_light_directional":{"direction":{"type":"array","default":[210,30],"minimum":[0,0],"maximum":[360,90],"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"cast-shadows":{"type":"boolean","default":false},"shadow-quality":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"parameters":["zoom"]}},"shadow-intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"shadow-draw-before-layer":{"type":"string"}},"properties_light_ambient":{"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"properties_light_flat":{"anchor":{"type":"enum","default":"viewport","values":{"map":1,"viewport":1},"expression":{"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"iconsets":{"*":{"type":"iconset"}},"iconset":["iconset_sprite","iconset_source"],"iconset_sprite":{"type":{"type":"enum","values":{"sprite":1}},"url":{"type":"string"}},"iconset_source":{"type":{"type":"enum","values":{"source":1}},"source":{"type":"string"}},"sources":{"*":{"type":"source"}},"source":["source_vector","source_raster","source_raster_dem","source_raster_array","source_geojson","source_video","source_image","source_model"],"source_vector":{"type":{"type":"enum","values":{"vector":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"scheme":{"type":"enum","values":{"xyz":1,"tms":1},"default":"xyz"},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"attribution":{"type":"string"},"promoteId":{"type":"promoteId"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster":{"type":{"type":"enum","values":{"raster":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"scheme":{"type":"enum","values":{"xyz":1,"tms":1},"default":"xyz"},"attribution":{"type":"string"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_dem":{"type":{"type":"enum","values":{"raster-dem":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"attribution":{"type":"string"},"encoding":{"type":"enum","values":{"terrarium":1,"mapbox":1},"default":"mapbox"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_array":{"type":{"type":"enum","values":{"raster-array":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"extra_bounds":{"type":"array","value":{"type":"array","value":"number","length":4}},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"attribution":{"type":"string"},"rasterLayers":{"type":"*"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_geojson":{"type":{"type":"enum","values":{"geojson":1}},"data":{"type":"*"},"maxzoom":{"type":"number","default":18},"minzoom":{"type":"number","default":0},"attribution":{"type":"string"},"buffer":{"type":"number","default":128,"maximum":512,"minimum":0},"filter":{"type":"*"},"tolerance":{"type":"number","default":0.375},"cluster":{"type":"boolean","default":false},"clusterRadius":{"type":"number","default":50,"minimum":0},"clusterMaxZoom":{"type":"number"},"clusterMinPoints":{"type":"number"},"clusterProperties":{"type":"*"},"lineMetrics":{"type":"boolean","default":false},"generateId":{"type":"boolean","default":false},"promoteId":{"type":"promoteId"},"dynamic":{"type":"boolean","default":false}},"source_video":{"type":{"type":"enum","values":{"video":1}},"urls":{"type":"array","value":"string"},"coordinates":{"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"source_image":{"type":{"type":"enum","values":{"image":1}},"url":{"type":"string"},"coordinates":{"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"modelNodeOverride":{"orientation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360}},"modelNodeOverrides":{"*":{"type":"modelNodeOverride"}},"modelMaterialOverride":{"model-color":{"type":"color"},"model-color-mix-intensity":{"type":"number"},"model-opacity":{"type":"number"},"model-emissive-strength":{"type":"number"}},"modelMaterialOverrides":{"*":{"type":"modelMaterialOverride"}},"modelSourceModel":{"uri":{"type":"string"},"position":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[-180,-90],"maximum":[180,90]},"orientation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360},"nodeOverrides":{"type":"modelNodeOverrides"},"materialOverrides":{"type":"modelMaterialOverrides"},"nodeOverrideNames":{"type":"array","value":"string"},"materialOverrideNames":{"type":"array","value":"string"},"featureProperties":{"type":"*"}},"modelSourceModels":{"*":{"type":"modelSourceModel"}},"source_model":{"type":{"type":"enum","values":{"model":1,"batched-model":1}},"url":{"type":"string"},"maxzoom":{"type":"number","default":18},"minzoom":{"type":"number","default":0},"tiles":{"type":"array","value":"string"},"models":{"type":"modelSourceModels"}},"layer":{"id":{"type":"string"},"type":{"type":"enum","values":{"fill":{},"line":{},"symbol":{},"circle":{},"heatmap":{},"fill-extrusion":{},"building":{},"raster":{},"raster-particle":{},"hillshade":{},"model":{},"background":{},"sky":{},"slot":{},"clip":{}}},"metadata":{"type":"*"},"source":{"type":"string"},"source-layer":{"type":"string"},"slot":{"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"},"appearances":{"type":"array","value":"appearance","supported-layer-types":["symbol"]}},"appearance":{"condition":{"type":"boolean","expression":{"interpolated":true,"parameters":["zoom","pitch","feature","feature-state","measure-light","distance-from-center"]},"property-type":"data-driven"},"name":{"type":"string"},"properties":{"type":"*"}},"layout":["layout_clip","layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_building","layout_symbol","layout_raster","layout_raster-particle","layout_hillshade","layout_background","layout_sky","layout_model"],"layout_background":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_sky":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_model":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"model-id":{"type":"string","default":"","property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"model-allow-density-reduction":{"type":"boolean","default":true}},"layout_clip":{"clip-layer-types":{"type":"array","value":"enum","values":{"model":1,"symbol":1},"default":[],"expression":{}},"clip-layer-scope":{"type":"array","value":"string","default":[],"expression":{}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_fill":{"fill-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"fill-elevation-reference":{"type":"enum","values":{"none":1,"hd-road-base":1,"hd-road-markup":1},"default":"none","expression":{}},"fill-construct-bridge-guard-rail":{"type":"boolean","default":"true","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"}},"layout_circle":{"circle-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"circle-elevation-reference":{"type":"enum","values":{"none":1,"hd-road-markup":1},"default":"none","expression":{}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_heatmap":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_fill-extrusion":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"fill-extrusion-edge-radius":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}}},"layout_building":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"building-facade":{"type":"boolean","default":false,"expression":{"parameters":["feature"]},"property-type":"data-driven"},"building-facade-floors":{"type":"number","minimum":1,"maximum":200,"default":3,"property-type":"data-driven","expression":{"parameters":["feature"]}},"building-facade-unit-width":{"type":"number","minimum":1,"maximum":20,"default":3.1,"property-type":"data-driven","expression":{"parameters":["feature"]}},"building-facade-window":{"type":"array","length":2,"value":"number","minimum":0.1,"maximum":1,"default":[0.9,0.9],"property-type":"data-driven","expression":{"parameters":["feature"]}},"building-roof-shape":{"type":"enum","values":{"flat":1,"hipped":1,"gabled":1,"parapet":1,"mansard":1,"skillion":1,"pyramidal":1},"default":"flat","expression":{"parameters":["feature"]},"property-type":"data-driven"},"building-height":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{},"property-type":"data-driven"},"building-base":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{},"property-type":"data-driven"},"building-flood-light-wall-radius":{"property-type":"data-driven","type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"building-flood-light-ground-radius":{"property-type":"data-driven","type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"building-flip-roof-orientation":{"property-type":"data-driven","type":"boolean","default":false,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}}},"layout_line":{"line-cap":{"type":"enum","values":{"butt":1,"round":1,"square":1},"default":"butt","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-join":{"type":"enum","values":{"bevel":1,"round":1,"miter":1,"none":1},"default":"miter","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{"type":"number","default":2,"expression":{"interpolated":true,"parameters":["zoom"]}},"line-round-limit":{"type":"number","default":1.05,"expression":{"interpolated":true,"parameters":["zoom"]}},"line-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-z-offset":{"type":"number","default":0,"expression":{"parameters":["zoom","feature","line-progress"]},"property-type":"data-driven"},"line-elevation-reference":{"type":"enum","values":{"none":1,"sea":1,"ground":1,"hd-road-markup":1},"default":"none","expression":{}},"line-cross-slope":{"type":"number","expression":{}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}},"line-width-unit":{"type":"enum","values":{"pixels":1,"meters":1},"default":"pixels","expression":{"parameters":["zoom"]}}},"layout_symbol":{"symbol-placement":{"type":"enum","values":{"point":1,"line":1,"line-center":1},"default":"point","expression":{"parameters":["zoom"]}},"symbol-spacing":{"type":"number","default":250,"minimum":1,"expression":{"interpolated":true,"parameters":["zoom"]}},"symbol-avoid-edges":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"symbol-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{"type":"enum","values":{"auto":1,"viewport-y":1,"source":1},"default":"auto","expression":{"parameters":["zoom"]}},"symbol-z-elevate":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"symbol-elevation-reference":{"type":"enum","values":{"sea":1,"ground":1,"hd-road-markup":1},"default":"ground","expression":{"parameters":["zoom"]}},"icon-allow-overlap":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-ignore-placement":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-optional":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-rotation-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"icon-size":{"type":"number","default":1,"minimum":0,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-size-scale-range":{"type":"array","value":"number","length":2,"default":[0.8,2],"minimum":[0.1,0.1],"maximum":[10,10],"expression":{}},"icon-text-fit":{"type":"enum","values":{"none":1,"width":1,"height":1,"both":1},"default":"none","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit-padding":{"type":"array","value":"number","length":4,"default":[0,0,0,0],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-image":{"type":"resolvedImage","tokens":true,"appearance":true,"use-theme":true,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{"type":"number","default":0,"period":360,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{"type":"number","default":2,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]}},"icon-keep-upright":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"icon-offset":{"type":"array","value":"number","length":2,"default":[0,0],"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{"type":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"text-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"text-rotation-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]}},"text-field":{"type":"formatted","default":"","tokens":true,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-font":{"type":"array","value":"string","default":["Open Sans Regular","Arial Unicode MS Regular"],"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size":{"type":"number","default":16,"minimum":0,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size-scale-range":{"type":"array","value":"number","length":2,"default":[0.8,2],"minimum":[0.1,0.1],"maximum":[10,10],"expression":{}},"text-max-width":{"type":"number","default":10,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{"type":"number","default":1.2,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-letter-spacing":{"type":"number","default":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-justify":{"type":"enum","values":{"auto":1,"left":1,"center":1,"right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{"type":"number","default":0,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["zoom","feature"]}},"text-variable-anchor":{"type":"array","value":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"expression":{"parameters":["zoom"]}},"text-anchor":{"type":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{"type":"number","default":45,"expression":{"interpolated":true,"parameters":["zoom"]}},"text-writing-mode":{"type":"array","value":"enum","values":{"horizontal":1,"vertical":1},"expression":{"parameters":["zoom"]}},"text-rotate":{"type":"number","default":0,"period":360,"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-padding":{"type":"number","default":2,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]}},"text-keep-upright":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"text-transform":{"type":"enum","values":{"none":1,"uppercase":1,"lowercase":1},"default":"none","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-offset":{"type":"array","value":"number","length":2,"default":[0,0],"appearance":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"text-ignore-placement":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"text-optional":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]}},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_raster":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_raster-particle":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"layout_hillshade":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{}}},"filter":{"type":"array","value":"*"},"filter_symbol":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature","pitch","distance-from-center"]}},"filter_fill":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_hillshade":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_raster":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_raster-particle":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_clip":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_model":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_line":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_circle":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_fill-extrusion":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_building":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_heatmap":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_operator":{"type":"enum","values":{"==":1,"!=":1,">":1,">=":1,"<":1,"<=":1,"in":1,"!in":1,"all":1,"any":1,"none":1,"has":1,"!has":1}},"geometry_type":{"type":"enum","values":{"Point":1,"LineString":1,"Polygon":1}},"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":1,"exponential":1,"interval":1,"categorical":1},"default":"exponential"},"colorSpace":{"type":"enum","values":{"rgb":1,"lab":1,"hcl":1},"default":"rgb"},"default":{"type":"*"}},"function_stop":{"type":"array","minimum":0,"maximum":24,"value":["number","color"],"length":2},"expression":{"type":"array","value":"*","minimum":1},"fog":{"range":{"type":"array","default":[0.5,10],"minimum":-20,"maximum":20,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"high-color":{"type":"color","default":"#245cdf","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"space-color":{"type":"color","default":["interpolate",["linear"],["zoom"],4,"#010b19",7,"#367ab9"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"horizon-blend":{"type":"number","default":["interpolate",["linear"],["zoom"],4,0.2,7,0.1],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"star-intensity":{"type":"number","default":["interpolate",["linear"],["zoom"],5,0.35,6,0],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vertical-range":{"type":"array","default":[0,0],"minimum":0,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}}},"snow":{"density":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,0.85],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,0.3],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette-color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"center-thinning":{"type":"number","default":0.4,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"direction":{"type":"array","default":[0,50],"minimum":0,"maximum":360,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"flake-size":{"type":"number","default":0.71,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true}},"rain":{"density":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,0.5],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"color":{"type":"color","default":["interpolate",["linear"],["measure-light","brightness"],0,"#03113d",0.3,"#a8adbc"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"opacity":{"type":"number","default":["interpolate",["linear"],["measure-light","brightness"],0,0.88,1,0.7],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette":{"type":"number","default":["interpolate",["linear"],["zoom"],11,0,13,1],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vignette-color":{"type":"color","default":["interpolate",["linear"],["measure-light","brightness"],0,"#001736",0.3,"#464646"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"use-theme":true,"transition":true},"center-thinning":{"type":"number","default":0.57,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"direction":{"type":"array","default":[0,80],"minimum":0,"maximum":360,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"droplet-size":{"type":"array","default":[2.6,18.2],"minimum":0,"maximum":50,"length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"distortion-strength":{"type":"number","default":0.7,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true}},"camera":{"camera-projection":{"type":"enum","values":{"perspective":1,"orthographic":1},"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"default":"perspective"}},"colorTheme":{"data":{"type":"string","expression":{}}},"indoor_source":{"sourceId":{"type":"string"},"sourceLayers":{"type":"array","value":"string"}},"indoor":{"*":{"type":"indoor_source"}},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":1,"viewport":1},"expression":{"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"use-theme":true,"transition":true},"intensity":{"type":"number","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"projection":{"name":{"type":"enum","values":{"albers":1,"equalEarth":1,"equirectangular":1,"lambertConformalConic":1,"mercator":1,"naturalEarth":1,"winkelTripel":1,"globe":1},"default":"mercator"},"center":{"type":"array","length":2,"value":"number","minimum":[-180,-90],"maximum":[180,90]},"parallels":{"type":"array","length":2,"value":"number","minimum":[-90,-90],"maximum":[90,90]}},"terrain":{"source":{"type":"string"},"exaggeration":{"type":"number","default":1,"minimum":0,"maximum":1000,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"paint":["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_building","paint_symbol","paint_raster","paint_raster-particle","paint_hillshade","paint_background","paint_sky","paint_model"],"paint_fill":{"fill-antialias":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-outline-color":{"type":"color","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"fill-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-pattern-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-z-offset":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-bridge-guard-rail-color":{"type":"color","default":"rgba(241, 236, 225, 255)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature"]},"property-type":"data-driven"},"fill-tunnel-structure-color":{"type":"color","default":"rgba(241, 236, 225, 255)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature"]},"property-type":"data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"fill-extrusion-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-extrusion-pattern-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-height":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-height-alignment":{"type":"enum","values":{"terrain":1,"flat":1},"default":"flat"},"fill-extrusion-base-alignment":{"type":"enum","values":{"terrain":1,"flat":1},"default":"terrain"},"fill-extrusion-vertical-gradient":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-extrusion-ambient-occlusion-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-wall-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-ground-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-flood-light-color":{"type":"color","default":"#ffffff","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-flood-light-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-flood-light-wall-radius":{"property-type":"data-driven","type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"fill-extrusion-flood-light-ground-radius":{"property-type":"data-driven","type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"fill-extrusion-flood-light-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-vertical-scale":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-rounded-roof":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-extrusion-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"fill-extrusion-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature-state"]},"property-type":"data-driven"},"fill-extrusion-line-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-extrusion-cast-shadows":{"type":"boolean","default":true}},"paint_building":{"building-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"building-ambient-occlusion-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"parameters":[]},"transition":true},"building-ambient-occlusion-ground-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"building-ambient-occlusion-ground-radius":{"type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"building-ambient-occlusion-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"building-vertical-scale":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"building-cast-shadows":{"type":"boolean","default":true},"building-color":{"type":"color","default":"rgba(193, 154, 127, 1)","use-theme":true,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"property-type":"data-driven"},"building-emissive-strength":{"type":"number","default":0,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"property-type":"data-driven"},"building-facade-emissive-chance":{"type":"number","default":0.35,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["measure-light","zoom"]}},"building-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"building-flood-light-color":{"type":"color","default":"#ffffff","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"building-flood-light-intensity":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"building-flood-light-ground-attenuation":{"type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_line":{"line-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"line-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"line-width":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light","line-progress"]},"property-type":"data-driven"},"line-gap-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-offset":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-dasharray":{"type":"array","value":"number","minimum":0,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-pattern-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"line-gradient":{"type":"color","use-theme":true,"expression":{"interpolated":true,"parameters":["line-progress"]}},"line-trim-offset":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[0,0],"maximum":[1,1]},"line-trim-fade-range":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[0,0],"maximum":[1,1],"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"line-trim-color":{"type":"color","default":"transparent","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"line-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-driven"},"line-border-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-border-color":{"type":"color","default":"rgba(0, 0, 0, 0)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-occlusion-opacity":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-blur":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"circle-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"circle-pitch-scale":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"circle-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1},"default":"viewport","expression":{"parameters":["zoom"]}},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-stroke-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}}},"paint_heatmap":{"heatmap-radius":{"type":"number","default":30,"minimum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"heatmap-weight":{"type":"number","default":1,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"heatmap-intensity":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"heatmap-color":{"type":"color","default":["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",0.1,"royalblue",0.3,"cyan",0.5,"lime",0.7,"yellow",1,"red"],"use-theme":true,"expression":{"interpolated":true,"parameters":["heatmap-density"]}},"heatmap-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-occlusion-opacity":{"type":"number","minimum":0,"maximum":1,"default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-emissive-strength":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature-state"]},"property-type":"data-driven"},"text-emissive-strength":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light","feature-state"]},"property-type":"data-driven"},"icon-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"icon-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"icon-image-cross-fade":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-occlusion-opacity":{"type":"number","minimum":0,"maximum":1,"default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"overridable":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"text-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]}},"icon-color-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"expression":{}},"icon-color-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"expression":{}},"icon-color-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"icon-color-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{}},"symbol-z-offset":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-color":{"type":"color","use-theme":true,"expression":{"interpolated":true,"parameters":["raster-value"]}},"raster-color-mix":{"type":"array","default":[0.2126,0.7152,0.0722,0],"length":4,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-color-range":{"type":"array","length":2,"value":"number","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-hue-rotate":{"type":"number","default":0,"period":360,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-resampling":{"type":"enum","values":{"linear":1,"nearest":1},"default":"linear","expression":{"parameters":["zoom"]}},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"raster-array-band":{"type":"string"},"raster-elevation":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_raster-particle":{"raster-particle-array-band":{"type":"string"},"raster-particle-count":{"type":"number","default":512,"minimum":1},"raster-particle-color":{"type":"color","use-theme":true,"expression":{"interpolated":true,"parameters":["raster-particle-speed"]}},"raster-particle-max-speed":{"type":"number","default":1,"minimum":1},"raster-particle-speed-factor":{"type":"number","default":0.2,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-particle-fade-opacity-factor":{"type":"number","default":0.98,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-particle-reset-rate-factor":{"type":"number","default":0.8,"minimum":0,"maximum":1},"raster-particle-elevation":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_hillshade":{"hillshade-illumination-direction":{"type":"number","default":335,"minimum":0,"maximum":359,"expression":{"interpolated":true,"parameters":["zoom"]}},"hillshade-illumination-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"viewport","expression":{"parameters":["zoom"]}},"hillshade-exaggeration":{"type":"number","default":0.5,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"hillshade-shadow-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"hillshade-highlight-color":{"type":"color","default":"#FFFFFF","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"hillshade-accent-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"hillshade-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}}},"paint_background":{"background-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":[]}},"background-color":{"type":"color","default":"#000000","use-theme":true,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"background-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom"]}},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"background-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}}},"paint_sky":{"sky-type":{"type":"enum","values":{"gradient":1,"atmosphere":1},"default":"atmosphere","expression":{"parameters":["zoom"]}},"sky-atmosphere-sun":{"type":"array","value":"number","length":2,"minimum":[0,0],"maximum":[360,180],"expression":{"parameters":["zoom"]}},"sky-atmosphere-sun-intensity":{"type":"number","default":10,"minimum":0,"maximum":100},"sky-gradient-center":{"type":"array","value":"number","default":[0,0],"length":2,"minimum":[0,0],"maximum":[360,180],"expression":{"parameters":["zoom"]}},"sky-gradient-radius":{"type":"number","default":90,"minimum":0,"maximum":180,"expression":{"parameters":["zoom"]}},"sky-gradient":{"type":"color","default":["interpolate",["linear"],["sky-radial-progress"],0.8,"#87ceeb",1,"white"],"use-theme":true,"expression":{"interpolated":true,"parameters":["sky-radial-progress"]}},"sky-atmosphere-halo-color":{"type":"color","default":"white","use-theme":true},"sky-atmosphere-color":{"type":"color","default":"white","use-theme":true},"sky-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}}},"paint_model":{"model-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"property-type":"data-driven"},"model-rotation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-scale":{"type":"array","value":"number","length":3,"default":[1,1,1],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-translation":{"type":"array","value":"number","length":3,"default":[0,0,0],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-color":{"type":"color","default":"#ffffff","property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light","zoom"]},"use-theme":true,"transition":true},"model-color-mix-intensity":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-type":{"type":"enum","values":{"common-3d":1,"location-indicator":1},"default":"common-3d"},"model-cast-shadows":{"type":"boolean","default":true},"model-receive-shadows":{"type":"boolean","default":true},"model-ambient-occlusion-intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"model-emissive-strength":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-roughness":{"type":"number","default":1,"minimum":0,"maximum":1,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state"]},"transition":true},"model-height-based-emissive-strength-multiplier":{"type":"array","default":[1,1,1,1,0],"length":5,"value":"number","property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{}},"model-front-cutoff":{"type":"array","value":"number","expression":{"interpolated":true,"parameters":["zoom"]},"length":3,"default":[0,0,1],"minimum":[0,0,0],"maximum":[1,1,1]},"model-elevation-reference":{"type":"enum","values":{"sea":1,"ground":1,"hd-road-markup":1},"default":"ground","expression":{}}},"transition":{"duration":{"type":"number","default":300,"minimum":0},"delay":{"type":"number","default":0,"minimum":0}},"promoteId":{"*":{"type":"*"}}}');function jf(r){return r instanceof Number||r instanceof String||r instanceof Boolean?r.valueOf():r}function $c(r){if(Array.isArray(r))return r.map($c);if(r instanceof Object&&!(r instanceof Number||r instanceof String||r instanceof Boolean)){const e={};for(const i in r)e[i]=$c(r[i]);return e}return jf(r)}function zh(r){if(r===!0||r===!1)return!0;if(!Array.isArray(r)||r.length===0)return!1;switch(r[0]){case"has":return r.length>=2&&r[1]!=="$id"&&r[1]!=="$type";case"in":return r.length>=3&&(typeof r[1]!="string"||Array.isArray(r[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return r.length!==3||Array.isArray(r[1])||Array.isArray(r[2]);case"any":case"all":for(const e of r.slice(1))if(!zh(e)&&typeof e!="boolean")return!1;return!0;default:return!0}}function Dh(r,e="",i=null,n="fill"){if(r==null)return{filter:()=>!0,needGeometry:!1,needFeature:!1};zh(r)||(r=Rl(r));const a=r;let u=!0;try{u=(function(v){if(!Ca(v))return v;let b=$c(v);return Lh(b),b=Gf(b),b})(a)}catch{console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.
2
2
  This is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md
3
3
  and paste the contents of this message in the report.
4
4
  Thank you!