@kvass/widgets 1.3.13 → 1.3.14

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.
package/dist/map.js CHANGED
@@ -2025,4 +2025,4 @@ ${i.vertexSource}`;const f=a.createShader(a.FRAGMENT_SHADER);if(a.isContextLost(
2025
2025
  translate(${r.x}px,${r.y}px)
2026
2026
  `}_calculateXYTransform(){const e=this._pos,r=this._map,i=this.getPitchAlignment();if(!r||!e||i!=="map")return"";if(!r._showingGlobe()){const l=r.getPitch();return l?`rotateX(${l}deg)`:""}const o=xr(zg(r.transform,this._lngLat)),s=e.sub(Cg(r.transform)),n=Math.abs(s.x)+Math.abs(s.y);if(n===0)return"";const a=o/n;return`rotateX(${-s.y*a}deg) rotateY(${s.x*a}deg)`}_calculateZTransform(){const e=this._pos,r=this._map;if(!r||!e)return"";let i=0;const o=this.getRotationAlignment();if(o==="map")if(r._showingGlobe()){const s=r.project(new Ne(this._lngLat.lng,this._lngLat.lat+.001)),n=r.project(new Ne(this._lngLat.lng,this._lngLat.lat-.001)).sub(s);i=xr(Math.atan2(n.y,n.x))-90}else i=-r.getBearing();else if(o==="horizon"){const s=ki(4,6,r.getZoom()),n=Cg(r.transform);n.y+=s*r.transform.height;const a=e.sub(n),l=xr(Math.atan2(a.y,a.x));i=(l>90?l-270:l+90)*(1-s)}return i+=this._rotation,i?`rotateZ(${i}deg)`:""}_update(e){W.cancelAnimationFrame(this._updateFrameId);const r=this._map;r&&(r.transform.renderWorldCopies&&(this._lngLat=G1(this._lngLat,this._pos,r.transform)),this._pos=r.project(this._lngLat),e===!0?this._updateFrameId=W.requestAnimationFrame(()=>{this._element&&this._pos&&this._anchor&&(this._pos=this._pos.round(),this._updateDOM())}):this._pos=this._pos.round(),r._requestDomTask(()=>{this._map&&(this._element&&this._pos&&this._anchor&&this._updateDOM(),(r._showingGlobe()||r.getTerrain()||r.getFog())&&!this._fadeTimer&&(this._fadeTimer=setTimeout(this._evaluateOpacity.bind(this),60)))}))}getOffset(){return this._offset}setOffset(e){return this._offset=N.convert(e),this._update(),this}addClassName(e){return this._element.classList.add(e),this}removeClassName(e){return this._element.classList.remove(e),this}toggleClassName(e){return this._element.classList.toggle(e)}_onMove(e){const r=this._map;if(!r)return;const i=this._pointerdownPos,o=this._positionDelta;if(i&&o){if(!this._isDragging){const s=this._clickTolerance||r._clickTolerance;if(e.point.dist(i)<s)return;this._isDragging=!0}this._pos=e.point.sub(o),this._lngLat=r.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new ae("dragstart"))),this.fire(new ae("drag"))}}_onUp(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1;const e=this._map;e&&(e.off("mousemove",this._onMove),e.off("touchmove",this._onMove)),this._state==="active"&&this.fire(new ae("dragend")),this._state="inactive"}_addDragHandler(e){const r=this._map,i=this._pos;r&&i&&this._element.contains(e.originalEvent.target)&&(e.preventDefault(),this._positionDelta=e.point.sub(i),this._pointerdownPos=e.point,this._state="pending",r.on("mousemove",this._onMove),r.on("touchmove",this._onMove),r.once("mouseup",this._onUp),r.once("touchend",this._onUp))}setDraggable(e){this._draggable=!!e;const r=this._map;return r&&(e?(r.on("mousedown",this._addDragHandler),r.on("touchstart",this._addDragHandler)):(r.off("mousedown",this._addDragHandler),r.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(e){return this._rotation=e||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(e){return this._rotationAlignment=e||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment==="auto"||this._rotationAlignment==="horizon"&&this._map&&!this._map._showingGlobe()?"viewport":this._rotationAlignment}setPitchAlignment(e){return this._pitchAlignment=e||"auto",this._update(),this}getPitchAlignment(){return this._pitchAlignment==="auto"?this.getRotationAlignment():this._pitchAlignment}setOccludedOpacity(e){return this._occludedOpacity=e||.2,this._update(),this}getOccludedOpacity(){return this._occludedOpacity}}const pS={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},fS=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function q1(t=new N(0,0),e="bottom"){if(typeof t=="number"){const r=Math.round(Math.sqrt(.5*Math.pow(t,2)));switch(e){case"top":return new N(0,t);case"top-left":return new N(r,r);case"top-right":return new N(-r,r);case"bottom":return new N(0,-t);case"bottom-left":return new N(r,-r);case"bottom-right":return new N(-r,-r);case"left":return new N(t,0);case"right":return new N(-t,0)}return new N(0,0)}return t instanceof N||Array.isArray(t)?N.convert(t):N.convert(t[e]||[0,0])}class mS{constructor(e){this.jumpTo(e)}getValue(e){if(e<=this._startTime)return this._start;if(e>=this._endTime)return this._end;const r=ks((e-this._startTime)/(this._endTime-this._startTime));return this._start*(1-r)+this._end*r}isEasing(e){return e>=this._startTime&&e<=this._endTime}jumpTo(e){this._startTime=-1/0,this._endTime=-1/0,this._start=e,this._end=e}easeTo(e,r,i){this._start=this.getValue(r),this._end=e,this._startTime=r,this._endTime=r+i}}const _S={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","Map.Title":"Map","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScrollZoomBlocker.CtrlMessage":"Use ctrl + scroll to zoom the map","ScrollZoomBlocker.CmdMessage":"Use ⌘ + scroll to zoom the map","TouchPanBlocker.Message":"Use two fingers to move the map"},gS={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:85,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,performanceMetricsCollection:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,antialias:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,minTileCacheSize:null,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",localFontFamily:null,transformRequest:null,accessToken:null,fadeDuration:300,respectPrefersReducedMotion:!0,crossSourceCollisions:!0,collectResourceTiming:!1,testMode:!1},yS={showCompass:!0,showZoom:!0,visualizePitch:!1};class xS{constructor(e,r,i=!1){this._clickTolerance=10,this.element=r,this.mouseRotate=new R1({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,i&&(this.mousePitch=new L1({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),dr(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),r.addEventListener("mousedown",this.mousedown),r.addEventListener("touchstart",this.touchstart,{passive:!1}),r.addEventListener("touchmove",this.touchmove),r.addEventListener("touchend",this.touchend),r.addEventListener("touchcancel",this.reset)}down(e,r){this.mouseRotate.mousedown(e,r),this.mousePitch&&this.mousePitch.mousedown(e,r),cf()}move(e,r){const i=this.map,o=this.mouseRotate.mousemoveWindow(e,r),s=o&&o.bearingDelta;if(s&&i.setBearing(i.getBearing()+s),this.mousePitch){const n=this.mousePitch.mousemoveWindow(e,r),a=n&&n.pitchDelta;a&&i.setPitch(i.getPitch()+a)}}off(){const e=this.element;e.removeEventListener("mousedown",this.mousedown),e.removeEventListener("touchstart",this.touchstart,{passive:!1}),e.removeEventListener("touchmove",this.touchmove),e.removeEventListener("touchend",this.touchend),e.removeEventListener("touchcancel",this.reset),this.offTemp()}offTemp(){uf(),W.removeEventListener("mousemove",this.mousemove),W.removeEventListener("mouseup",this.mouseup)}mousedown(e){this.down(we({},e,{ctrlKey:!0,preventDefault:()=>e.preventDefault()}),Pn(this.element,e)),W.addEventListener("mousemove",this.mousemove),W.addEventListener("mouseup",this.mouseup)}mousemove(e){this.move(e,Pn(this.element,e))}mouseup(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp()}touchstart(e){e.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=Ja(this.element,e.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:()=>e.preventDefault()},this._startPos))}touchmove(e){e.targetTouches.length!==1?this.reset():(this._lastPos=Ja(this.element,e.targetTouches)[0],this.move({preventDefault:()=>e.preventDefault()},this._lastPos))}touchend(e){e.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()}reset(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()}}const vS={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0,showUserHeading:!1},bS={maxWidth:100,unit:"metric"},wS={kilometer:"km",meter:"m",mile:"mi",foot:"ft","nautical-mile":"nm"},ou={version:oi,supported:nf,setRTLTextPlugin:function(t,e,r=!1){if(qr===vh||qr===bh||qr===wh)throw new Error("setRTLTextPlugin cannot be called multiple times.");So=je.resolveURL(t),qr=vh,Th=e,Eh(),r||km()},getRTLTextPluginStatus:Sh,Map:class extends dS{constructor(t){of.mark(Wa.create);const e=t;if((t=we({},gS,t)).minZoom!=null&&t.maxZoom!=null&&t.minZoom>t.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(t.minPitch!=null&&t.maxPitch!=null&&t.minPitch>t.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(t.minPitch!=null&&t.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(t.maxPitch!=null&&t.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(t.antialias&&function(r){const i=r.navigator?r.navigator.userAgent:null;return!!function(o){if(Ge==null){const s=o.navigator?o.navigator.userAgent:null;Ge=!!o.safari||!(!s||!(/\b(iPad|iPhone|iPod)\b/.test(s)||s.match("Safari")&&!s.match("Chrome")))}return Ge}(r)&&i&&(i.match("Version/15.4")||i.match("Version/15.5")||i.match(/CPU (OS|iPhone OS) (15_4|15_5) like Mac OS X/))}(W)&&(t.antialias=!1,F("Antialiasing is disabled for this WebGL context to avoid browser bug: https://github.com/mapbox/mapbox-gl-js/issues/11609")),super(new ip(t.minZoom,t.maxZoom,t.minPitch,t.maxPitch,t.renderWorldCopies),t),this._interactive=t.interactive,this._minTileCacheSize=t.minTileCacheSize,this._maxTileCacheSize=t.maxTileCacheSize,this._failIfMajorPerformanceCaveat=t.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=t.preserveDrawingBuffer,this._antialias=t.antialias,this._trackResize=t.trackResize,this._bearingSnap=t.bearingSnap,this._refreshExpiredTiles=t.refreshExpiredTiles,this._fadeDuration=t.fadeDuration,this._isInitialLoad=!0,this._crossSourceCollisions=t.crossSourceCollisions,this._collectResourceTiming=t.collectResourceTiming,this._language=this._parseLanguage(t.language),this._worldview=t.worldview,this._renderTaskQueue=new j1,this._domRenderTaskQueue=new j1,this._controls=[],this._markers=[],this._popups=[],this._mapId=Ps(),this._locale=we({},_S,t.locale),this._clickTolerance=t.clickTolerance,this._cooperativeGestures=t.cooperativeGestures,this._performanceMetricsCollection=t.performanceMetricsCollection,this._containerWidth=0,this._containerHeight=0,this._averageElevationLastSampledAt=-1/0,this._averageElevationExaggeration=0,this._averageElevation=new mS(0),this._interactionRange=[1/0,-1/0],this._visibilityHidden=0,this._useExplicitProjection=!1,this._requestManager=new Pe(t.transformRequest,t.accessToken,t.testMode),this._silenceAuthErrors=!!t.testMode,this._contextCreateOptions=t.contextCreateOptions?{...t.contextCreateOptions}:{},typeof t.container=="string"){if(this._container=W.document.getElementById(t.container),!this._container)throw new Error(`Container '${t.container.toString()}' not found.`)}else{if(!(t.container instanceof W.HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=t.container}if(this._container.childNodes.length>0&&F("The map container element should be empty, otherwise the map's interactivity will be negatively impacted. If you want to display a message when WebGL is not supported, use the Mapbox GL Supported plugin instead."),t.maxBounds&&this.setMaxBounds(t.maxBounds),dr(["_onWindowOnline","_onWindowResize","_onVisibilityChange","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");if(this.on("move",()=>this._update(!1)),this.on("moveend",()=>this._update(!1)),this.on("zoom",()=>this._update(!0)),W!==void 0&&(this._fullscreenchangeEvent="onfullscreenchange"in W.document?"fullscreenchange":"webkitfullscreenchange",W.addEventListener("online",this._onWindowOnline,!1),W.addEventListener("resize",this._onWindowResize,!1),W.addEventListener("orientationchange",this._onWindowResize,!1),W.addEventListener(this._fullscreenchangeEvent,this._onWindowResize,!1),W.addEventListener("visibilitychange",this._onVisibilityChange,!1)),this.handlers=new hS(this,t),this._localFontFamily=t.localFontFamily,this._localIdeographFontFamily=t.localIdeographFontFamily,(t.style||!t.testMode)&&this.setStyle(t.style||et.DEFAULT_STYLE,{localFontFamily:this._localFontFamily,localIdeographFontFamily:this._localIdeographFontFamily}),t.projection&&this.setProjection(t.projection),t.hash&&(this._hash=new LM(typeof t.hash=="string"&&t.hash||void 0).addTo(this)),!this._hash||!this._hash._onHashChange()){e.center==null&&e.zoom==null||(this.transform._unmodified=!1),this.jumpTo({center:t.center,zoom:t.zoom,bearing:t.bearing,pitch:t.pitch});const r=t.bounds;r&&(this.resize(),this.fitBounds(r,we({},t.fitBoundsOptions,{duration:0})))}this.resize(),t.attributionControl&&this.addControl(new U1({customAttribution:t.customAttribution})),this._logoControl=new V1,this.addControl(this._logoControl,t.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",r=>{this._update(r.dataType==="style"),this.fire(new ae(`${r.dataType}data`,r))}),this.on("dataloading",r=>{this.fire(new ae(`${r.dataType}dataloading`,r))})}_getMapId(){return this._mapId}addControl(t,e){if(e===void 0&&(e=t.getDefaultPosition?t.getDefaultPosition():"top-right"),!t||!t.onAdd)return this.fire(new Ue(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const r=t.onAdd(this);this._controls.push(t);const i=this._controlPositions[e];return e.indexOf("bottom")!==-1?i.insertBefore(r,i.firstChild):i.appendChild(r),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new Ue(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const e=this._controls.indexOf(t);return e>-1&&this._controls.splice(e,1),t.onRemove(this),this}hasControl(t){return this._controls.indexOf(t)>-1}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}resize(t){if(this._updateContainerDimensions(),this._containerWidth===this.transform.width&&this._containerHeight===this.transform.height)return this;this._resizeCanvas(this._containerWidth,this._containerHeight),this.transform.resize(this._containerWidth,this._containerHeight),this.painter.resize(Math.ceil(this._containerWidth),Math.ceil(this._containerHeight));const e=!this._moving;return e&&this.fire(new ae("movestart",t)).fire(new ae("move",t)),this.fire(new ae("resize",t)),e&&this.fire(new ae("moveend",t)),this}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()||null}setMaxBounds(t){return this.transform.setMaxBounds(Hr.convert(t)),this._update()}setMinZoom(t){if((t=t??-2)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t?this.setZoom(t):this.fire(new ae("zoomstart")).fire(new ae("zoom")).fire(new ae("zoomend")),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")}getMinZoom(){return this.transform.minZoom}setMaxZoom(t){if((t=t??22)>=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t?this.setZoom(t):this.fire(new ae("zoomstart")).fire(new ae("zoom")).fire(new ae("zoomend")),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=t??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()<t?this.setPitch(t):this.fire(new ae("pitchstart")).fire(new ae("pitch")).fire(new ae("pitchend")),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")}getMinPitch(){return this.transform.minPitch}setMaxPitch(t){if((t=t??85)>85)throw new Error("maxPitch must be less than or equal to 85");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t?this.setPitch(t):this.fire(new ae("pitchstart")).fire(new ae("pitch")).fire(new ae("pitchend")),this;throw new Error("maxPitch must be greater than or equal to minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(t){return this.transform.renderWorldCopies=t,this.transform.renderWorldCopies||this._forceMarkerAndPopupUpdate(!0),this._update()}getLanguage(){return this._language}_parseLanguage(t){return t==="auto"?W.navigator.language:Array.isArray(t)?t.length===0?void 0:t.map(e=>e==="auto"?W.navigator.language:e):t}setLanguage(t){const e=this._parseLanguage(t);if(!this.style||e===this._language)return this;this._language=e,this.style.reloadSources();for(const r of this._controls)r._setLanguage&&r._setLanguage(this._language);return this}getWorldview(){return this._worldview}setWorldview(t){return this.style&&t!==this._worldview?(this._worldview=t,this.style.reloadSources(),this):this}getProjection(){return this.transform.mercatorFromTransition?{name:"globe",center:[0,0]}:this.transform.getProjection()}_showingGlobe(){return this.transform.projection.name==="globe"}setProjection(t){return this._lazyInitEmptyStyle(),t?typeof t=="string"&&(t={name:t}):t=null,this._useExplicitProjection=!!t,this._prioritizeAndUpdateProjection(t,this.style.projection)}_updateProjectionTransition(){if(this.getProjection().name!=="globe")return;const t=this.transform,e=t.projection.name;let r;e==="globe"&&t.zoom>=Po?(t.setMercatorFromTransition(),r=!0):e==="mercator"&&t.zoom<Po&&(t.setProjection({name:"globe"}),r=!0),r&&(this.style.applyProjectionUpdate(),this.style._forceSymbolLayerUpdate())}_prioritizeAndUpdateProjection(t,e){return this._updateProjection(t||e||{name:"mercator"})}_updateProjection(t){let e;return e=t.name==="globe"&&this.transform.zoom>=Po?this.transform.setMercatorFromTransition():this.transform.setProjection(t),this.style.applyProjectionUpdate(),e&&(this.painter.clearBackgroundTiles(),this.style.clearSources(),this._update(!0),this._forceMarkerAndPopupUpdate(!0)),this}project(t){return this.transform.locationPoint3D(Ne.convert(t))}unproject(t){return this.transform.pointLocation3D(N.convert(t))}isMoving(){return this._moving||this.handlers&&this.handlers.isMoving()||!1}isZooming(){return this._zooming||this.handlers&&this.handlers.isZooming()||!1}isRotating(){return this._rotating||this.handlers&&this.handlers.isRotating()||!1}_isDragging(){return this.handlers&&this.handlers._isDragging()||!1}_createDelegatedListener(t,e,r){if(t==="mouseenter"||t==="mouseover"){let i=!1;const o=n=>{const a=e.filter(c=>this.getLayer(c)),l=a.length?this.queryRenderedFeatures(n.point,{layers:a}):[];l.length?i||(i=!0,r.call(this,new ii(t,this,n.originalEvent,{features:l}))):i=!1},s=()=>{i=!1};return{layers:new Set(e),listener:r,delegates:{mousemove:o,mouseout:s}}}if(t==="mouseleave"||t==="mouseout"){let i=!1;const o=n=>{const a=e.filter(l=>this.getLayer(l));(a.length?this.queryRenderedFeatures(n.point,{layers:a}):[]).length?i=!0:i&&(i=!1,r.call(this,new ii(t,this,n.originalEvent)))},s=n=>{i&&(i=!1,r.call(this,new ii(t,this,n.originalEvent)))};return{layers:new Set(e),listener:r,delegates:{mousemove:o,mouseout:s}}}{const i=o=>{const s=e.filter(a=>this.getLayer(a)),n=s.length?this.queryRenderedFeatures(o.point,{layers:s}):[];n.length&&(o.features=n,r.call(this,o),delete o.features)};return{layers:new Set(e),listener:r,delegates:{[t]:i}}}}on(t,e,r){if(r===void 0)return super.on(t,e);if(Array.isArray(e)||(e=[e]),e){for(const o of e)if(!this._isValidId(o))return this}const i=this._createDelegatedListener(t,e,r);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(i);for(const o in i.delegates)this.on(o,i.delegates[o]);return this}once(t,e,r){if(r===void 0)return super.once(t,e);if(Array.isArray(e)||(e=[e]),e){for(const o of e)if(!this._isValidId(o))return this}const i=this._createDelegatedListener(t,e,r);for(const o in i.delegates)this.once(o,i.delegates[o]);return this}off(t,e,r){if(r===void 0)return super.off(t,e);e=new Set(Array.isArray(e)?e:[e]);for(const s of e)if(!this._isValidId(s))return this;const i=(s,n)=>{if(s.size!==n.size)return!1;for(const a of s)if(!n.has(a))return!1;return!0},o=this._delegatedListeners?this._delegatedListeners[t]:void 0;return o&&(s=>{for(let n=0;n<s.length;n++){const a=s[n];if(a.listener===r&&i(a.layers,e)){for(const l in a.delegates)this.off(l,a.delegates[l]);return s.splice(n,1),this}}})(o),this}queryRenderedFeatures(t,e){if(!this.style)return[];if(e!==void 0||t===void 0||t instanceof N||Array.isArray(t)||(e=t,t=void 0),t=t||[[0,0],[this.transform.width,this.transform.height]],(e=e||{}).layers&&Array.isArray(e.layers)){for(const r of e.layers)if(!this._isValidId(r))return[]}return this.style.queryRenderedFeatures(t,e,this.transform)}querySourceFeatures(t,e){return this._isValidId(t)?this.style.querySourceFeatures(t,e):[]}isPointOnSurface(t){const{name:e}=this.transform.projection;return e!=="globe"&&e!=="mercator"&&F(`${e} projection does not support isPointOnSurface, this API may behave unexpectedly.`),this.transform.isPointOnSurface(N.convert(t))}setStyle(t,e){return(e=we({},{localIdeographFontFamily:this._localIdeographFontFamily,localFontFamily:this._localFontFamily},e)).diff!==!1&&e.localIdeographFontFamily===this._localIdeographFontFamily&&e.localFontFamily===this._localFontFamily&&this.style&&t?(this._diffStyle(t,e),this):(this._localIdeographFontFamily=e.localIdeographFontFamily,this._localFontFamily=e.localFontFamily,this._updateStyle(t,e))}_getUIString(t){const e=this._locale[t];if(e==null)throw new Error(`Missing UI string '${t}'`);return e}_updateStyle(t,e){return this.style&&(this.style.setEventedParent(null),this.style._remove(),this.style=void 0),t&&(this.style=new Ci(this,e||{}),this.style.setEventedParent(this,{style:this.style}),typeof t=="string"?this.style.loadURL(t):this.style.loadJSON(t)),this._updateTerrain(),this}_lazyInitEmptyStyle(){this.style||(this.style=new Ci(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(t,e){if(typeof t=="string"){const r=this._requestManager.normalizeStyleURL(t),i=this._requestManager.transformRequest(r,J.Style);ue(i,(o,s)=>{o?this.fire(new Ue(o)):s&&this._updateDiff(s,e)})}else typeof t=="object"&&this._updateDiff(t,e)}_updateDiff(t,e){try{this.style.setState(t)&&this._update(!0)}catch(r){F(`Unable to perform style diff: ${r.message||r.error||r}. Rebuilding the style from scratch.`),this._updateStyle(t,e)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():(F("There is no style added to the map."),!1)}_isValidId(t){return t==null?(this.fire(new Ue(new Error("IDs can't be empty."))),!1):!Lm(t)||(this.fire(new Ue(new Error(`IDs can't contain special symbols: "${t}".`))),!1)}addSource(t,e){return this._isValidId(t)?(this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)):this}isSourceLoaded(t){return!!this._isValidId(t)&&!!this.style&&this.style._isSourceCacheLoaded(t)}areTilesLoaded(){const t=this.style&&this.style._sourceCaches;for(const e in t){const r=t[e]._tiles;for(const i in r){const o=r[i];if(o.state!=="loaded"&&o.state!=="errored")return!1}}return!0}addSourceType(t,e,r){this._lazyInitEmptyStyle(),this.style.addSourceType(t,e,r)}removeSource(t){return this._isValidId(t)?(this.style.removeSource(t),this._updateTerrain(),this._update(!0)):this}getSource(t){return this._isValidId(t)?this.style.getOwnSource(t):null}addImage(t,e,{pixelRatio:r=1,sdf:i=!1,stretchX:o,stretchY:s,content:n}={}){if(this._lazyInitEmptyStyle(),e instanceof W.HTMLImageElement||W.ImageBitmap&&e instanceof W.ImageBitmap){const{width:a,height:l,data:c}=je.getImageData(e);this.style.addImage(t,{data:new rr({width:a,height:l},c),pixelRatio:r,stretchX:o,stretchY:s,content:n,sdf:i,version:0})}else if(e.width===void 0||e.height===void 0)this.fire(new Ue(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));else{const{width:a,height:l}=e,c=e;this.style.addImage(t,{data:new rr({width:a,height:l},new Uint8Array(c.data)),pixelRatio:r,stretchX:o,stretchY:s,content:n,sdf:i,version:0,userImage:c}),c.onAdd&&c.onAdd(this,t)}}updateImage(t,e){this._lazyInitEmptyStyle();const r=this.style.getImage(t);if(!r)return void this.fire(new Ue(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const i=e instanceof W.HTMLImageElement||W.ImageBitmap&&e instanceof W.ImageBitmap?je.getImageData(e):e,{width:o,height:s}=i;o!==void 0&&s!==void 0?o===r.data.width&&s===r.data.height?(r.data.replace(i.data,!(e instanceof W.HTMLImageElement||W.ImageBitmap&&e instanceof W.ImageBitmap)),this.style.updateImage(t,r)):this.fire(new Ue(new Error(`The width and height of the updated image (${o}, ${s})
2027
2027
  must be that same as the previous version of the image
2028
- (${r.data.width}, ${r.data.height})`))):this.fire(new Ue(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")))}hasImage(t){return t?!!this.style&&!!this.style.getImage(t):(this.fire(new Ue(new Error("Missing required image id"))),!1)}removeImage(t){this.style.removeImage(t)}loadImage(t,e){Ye(this._requestManager.transformRequest(t,J.Image),(r,i)=>{e(r,i instanceof W.HTMLImageElement?je.getImageData(i):i)})}listImages(){return this.style.listImages()}addModel(t,e){this._lazyInitEmptyStyle(),this.style.addModel(t,e)}hasModel(t){return t?this.style.hasModel(t):(this.fire(new Ue(new Error("Missing required model id"))),!1)}removeModel(t){this.style.removeModel(t)}listModels(){return this.style.listModels()}addLayer(t,e){return this._isValidId(t.id)?(this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)):this}moveLayer(t,e){return this._isValidId(t)?(this.style.moveLayer(t,e),this._update(!0)):this}removeLayer(t){return this._isValidId(t)?(this.style.removeLayer(t),this._update(!0)):this}getLayer(t){return this._isValidId(t)?this.style.getOwnLayer(t):null}setLayerZoomRange(t,e,r){return this._isValidId(t)?(this.style.setLayerZoomRange(t,e,r),this._update(!0)):this}setFilter(t,e,r={}){return this._isValidId(t)?(this.style.setFilter(t,e,r),this._update(!0)):this}getFilter(t){return this._isValidId(t)?this.style.getFilter(t):null}setPaintProperty(t,e,r,i={}){return this._isValidId(t)?(this.style.setPaintProperty(t,e,r,i),this._update(!0)):this}getPaintProperty(t,e){return this._isValidId(t)?this.style.getPaintProperty(t,e):null}setLayoutProperty(t,e,r,i={}){return this._isValidId(t)?(this.style.setLayoutProperty(t,e,r,i),this._update(!0)):this}getLayoutProperty(t,e){return this._isValidId(t)?this.style.getLayoutProperty(t,e):null}getConfigProperty(t,e){return this.style.getConfigProperty(t,e)}setConfigProperty(t,e,r){return this.style.setConfigProperty(t,e,r),this._update(!0)}setLights(t){if(this._lazyInitEmptyStyle(),t&&t.length===1&&t[0].type==="flat"){const e=t[0];e.properties?this.style.setFlatLight(e.properties,e.id,{}):this.style.setFlatLight({},"flat")}else this.style.setLights(t),this.painter.terrain&&(this.painter.terrain.invalidateRenderCache=!0);return this._update(!0)}getLights(){const t=this.style.getLights()||[];return t.length===0&&t.push({id:this.style.light.id,type:"flat",properties:this.style.getFlatLight()}),t}setLight(t,e={}){return console.log("The `map.setLight` function is deprecated, prefer using `map.setLights` with `flat` light type instead."),this.setLights([{id:"flat",type:"flat",properties:t}])}getLight(){return console.log("The `map.getLight` function is deprecated, prefer using `map.getLights` instead."),this.style.getFlatLight()}setTerrain(t){return this._lazyInitEmptyStyle(),!t&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(t),this._averageElevationLastSampledAt=-1/0,this._update(!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(t){return this._lazyInitEmptyStyle(),this.style.setFog(t),this._update(!0)}getFog(){return this.style?this.style.getFog():null}setCamera(t){return this.style.setCamera(t),this._triggerCameraUpdate(t)}_triggerCameraUpdate(t){return this._update(this.transform.setOrthographicProjectionAtLowPitch(t["camera-projection"]==="orthographic"))}getCamera(){return this.style.camera}_queryFogOpacity(t){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(Ne.convert(t),this.transform):0}setFeatureState(t,e){return this._isValidId(t.source)?(this.style.setFeatureState(t,e),this._update()):this}removeFeatureState(t,e){return this._isValidId(t.source)?(this.style.removeFeatureState(t,e),this._update()):this}getFeatureState(t){return this._isValidId(t.source)?this.style.getFeatureState(t):null}_updateContainerDimensions(){if(!this._container)return;const t=this._container.getBoundingClientRect().width||400,e=this._container.getBoundingClientRect().height||300;let r,i,o,s=this._container;for(;s&&(!i||!o);){const n=W.getComputedStyle(s).transform;n&&n!=="none"&&(r=n.match(/matrix.*\((.+)\)/)[1].split(", "),r[0]&&r[0]!=="0"&&r[0]!=="1"&&(i=r[0]),r[3]&&r[3]!=="0"&&r[3]!=="1"&&(o=r[3])),s=s.parentElement}this._containerWidth=i?Math.abs(t/i):t,this._containerHeight=o?Math.abs(e/o):e}_detectMissingCSS(){W.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")!=="rgb(250, 128, 114)"&&F("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")}_setupContainer(){const t=this._container;t.classList.add("mapboxgl-map"),(this._missingCSSCanary=Dt("div","mapboxgl-canary",t)).style.visibility="hidden",this._detectMissingCSS();const e=this._canvasContainer=Dt("div","mapboxgl-canvas-container",t);this._canvas=Dt("canvas","mapboxgl-canvas",e),this._interactive&&(e.classList.add("mapboxgl-interactive"),this._canvas.setAttribute("tabindex","0")),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region"),this._updateContainerDimensions(),this._resizeCanvas(this._containerWidth,this._containerHeight);const r=this._controlContainer=Dt("div","mapboxgl-control-container",t),i=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(o=>{i[o]=Dt("div",`mapboxgl-ctrl-${o}`,r)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(t,e){const r=je.devicePixelRatio||1;this._canvas.width=r*Math.ceil(t),this._canvas.height=r*Math.ceil(e),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${e}px`}_addMarker(t){this._markers.push(t)}_removeMarker(t){const e=this._markers.indexOf(t);e!==-1&&this._markers.splice(e,1)}_addPopup(t){this._popups.push(t)}_removePopup(t){const e=this._popups.indexOf(t);e!==-1&&this._popups.splice(e,1)}_setupPainter(){const t=we({},nf.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),e=this._canvas.getContext("webgl2",t);e?(rf(e,!0),this.painter=new SM(e,this._contextCreateOptions,this.transform),this.on("data",r=>{r.dataType==="source"&&this.painter.setTileLoadedFlag(!0)}),Jo.testSupport(e)):this.fire(new Ue(new Error("Failed to initialize WebGL")))}_contextLost(t){t.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new ae("webglcontextlost",{originalEvent:t}))}_contextRestored(t){this._setupPainter(),this.resize(),this._update(),this.fire(new ae("webglcontextrestored",{originalEvent:t}))}_onMapScroll(t){if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(t){return this._update(),this._renderTaskQueue.add(t)}_cancelRenderFrame(t){this._renderTaskQueue.remove(t)}_requestDomTask(t){!this.loaded()||this.loaded()&&!this.isMoving()?t():this._domRenderTaskQueue.add(t)}_render(t){let e;this.fire(new ae("renderstart"));const r=this.painter.context.extTimerQuery,i=je.now(),o=this.painter.context.gl;if(this.listens("gpu-timing-frame")&&(e=o.createQuery(),o.beginQuery(r.TIME_ELAPSED_EXT,e)),this.painter.context.setDirty(),this.painter.setBaseState(),(this.isMoving()||this.isRotating()||this.isZooming())&&(this._interactionRange[0]=Math.min(this._interactionRange[0],W.performance.now()),this._interactionRange[1]=Math.max(this._interactionRange[1],W.performance.now())),this._renderTaskQueue.run(t),this._domRenderTaskQueue.run(t),this._removed)return;this._updateProjectionTransition();const s=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const l=this.transform.zoom,c=this.transform.pitch,u=je.now(),h=new Ut(l,{now:u,fadeDuration:s,pitch:c,transition:this.style.transition});this.style.update(h)}this.style&&this.style.hasFogTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0);let n=!1;if(this.style&&this._sourcesDirty?(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),n=this._updateAverageElevation(i),this.style.updateSources(this.transform),this._forceMarkerAndPopupUpdate()):n=this._updateAverageElevation(i),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,s,this._crossSourceCollisions),this.style&&this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,wireframe:{terrain:this.showTerrainWireframe,layers2D:this.showLayers2DWireframe,layers3D:this.showLayers3DWireframe},showOverdrawInspector:this._showOverdrawInspector,showQueryGeometry:!!this._showQueryGeometry,showTileAABBs:this.showTileAABBs,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:s,isInitialLoad:this._isInitialLoad,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer"),gpuTimingDeferredRender:!!this.listens("gpu-timing-deferred-render"),speedIndexTiming:this.speedIndexTiming}),this.fire(new ae("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new ae("load"))),this.style&&this.style.hasTransitions()&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),e){const l=je.now()-i;o.endQuery(r.TIME_ELAPSED_EXT),setTimeout(()=>{const c=o.getQueryParameter(e,o.QUERY_RESULT)/1e6;o.deleteQuery(e),this.fire(new ae("gpu-timing-frame",{cpuTime:l,gpuTime:c})),W.performance.mark("frame-gpu",{startTime:i,detail:{gpuTime:c}})},50)}if(this.listens("gpu-timing-layer")){const l=this.painter.collectGpuTimers();setTimeout(()=>{const c=this.painter.queryGpuTimers(l);this.fire(new ae("gpu-timing-layer",{layerTimes:c}))},50)}if(this.listens("gpu-timing-deferred-render")){const l=this.painter.collectDeferredRenderGpuQueries();setTimeout(()=>{const c=this.painter.queryGpuTimeDeferredRender(l);this.fire(new ae("gpu-timing-deferred-render",{gpuTime:c}))},50)}const a=this._sourcesDirty||this._styleDirty||this._placementDirty||n;if(a||this._repaint)this.triggerRepaint();else{const l=!this.isMoving()&&this.loaded();if(l&&(n=this._updateAverageElevation(i,!0)),n)this.triggerRepaint();else if(this._triggerFrame(!1),l&&(this.fire(new ae("idle")),this._isInitialLoad=!1,this.speedIndexTiming)){const c=this._calculateSpeedIndex();this.fire(new ae("speedindexcompleted",{speedIndex:c})),this.speedIndexTiming=!1}}!this._loaded||this._fullyLoaded||a||(this._fullyLoaded=!0,of.mark(Wa.fullLoad),this._performanceMetricsCollection&&nv(this._requestManager._customAccessToken,{width:this.painter.width,height:this.painter.height,interactionRange:this._interactionRange,visibilityHidden:this._visibilityHidden,terrainEnabled:!!this.painter.style.getTerrain(),fogEnabled:!!this.painter.style.getFog(),projection:this.getProjection().name,zoom:this.transform.zoom,renderer:this.painter.context.renderer,vendor:this.painter.context.vendor}),this._authenticate())}_forceMarkerAndPopupUpdate(t){for(const e of this._markers)t&&!this.getRenderWorldCopies()&&(e._lngLat=e._lngLat.wrap()),e._update();for(const e of this._popups)!t||this.getRenderWorldCopies()||e._trackPointer||(e._lngLat=e._lngLat.wrap()),e._update()}_updateAverageElevation(t,e=!1){const r=o=>(this.transform.averageElevation=o,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return this.transform.averageElevation!==0&&r(0);const i=this.transform.elevation&&this.transform.elevation.exaggeration()!==this._averageElevationExaggeration;if(i||(e||t-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(t)){const o=this.transform.averageElevation;let s=this.transform.sampleAverageElevation();this.transform.elevation&&(this._averageElevationExaggeration=this.transform.elevation.exaggeration()),isNaN(s)?s=0:this._averageElevationLastSampledAt=t;const n=Math.abs(o-s);if(n>1){if(this._isInitialLoad||i)return this._averageElevation.jumpTo(s),r(s);this._averageElevation.easeTo(s,t,300)}else if(n>1e-4)return this._averageElevation.jumpTo(s),r(s)}return!!this._averageElevation.isEasing(t)&&r(this._averageElevation.getValue(t))}_authenticate(){av(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,t=>{if(t&&(t.message===At||t.status===401)){const e=this.painter.context.gl;rf(e,!1),this._logoControl instanceof V1&&this._logoControl._updateLogo(),e&&e.clear(e.DEPTH_BUFFER_BIT|e.COLOR_BUFFER_BIT|e.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new Ue(new Error("A valid Mapbox access token is required to use Mapbox GL JS. To create an account or a new access token, visit https://account.mapbox.com/")))}}),sv(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,()=>{})}_updateTerrain(){const t=this._isDragging();this.painter.updateTerrain(this.style,t)}_calculateSpeedIndex(){const t=this.painter.canvasCopy(),e=this.painter.getCanvasCopiesAndTimestamps();e.timeStamps.push(performance.now());const r=this.painter.context.gl,i=r.createFramebuffer();function o(s){r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,s,0);const n=new Uint8Array(r.drawingBufferWidth*r.drawingBufferHeight*4);return r.readPixels(0,0,r.drawingBufferWidth,r.drawingBufferHeight,r.RGBA,r.UNSIGNED_BYTE,n),n}return r.bindFramebuffer(r.FRAMEBUFFER,i),this._canvasPixelComparison(o(t),e.canvasCopies.map(o),e.timeStamps)}_canvasPixelComparison(t,e,r){let i=r[1]-r[0];const o=t.length/4;for(let s=0;s<e.length;s++){const n=e[s];let a=0;for(let l=0;l<n.length;l+=4)n[l]===t[l]&&n[l+1]===t[l+1]&&n[l+2]===t[l+2]&&n[l+3]===t[l+3]&&(a+=1);i+=(r[s+2]-r[s+1])*(1-a/o)}return i}remove(){this._hash&&this._hash.remove();for(const e of this._controls)e.onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this._domRenderTaskQueue.clear(),this.style&&this.style.destroy(),this.painter.destroy(),this.handlers&&this.handlers.destroy(),this.handlers=void 0,this.setStyle(null),W!==void 0&&(W.removeEventListener("resize",this._onWindowResize,!1),W.removeEventListener("orientationchange",this._onWindowResize,!1),W.removeEventListener(this._fullscreenchangeEvent,this._onWindowResize,!1),W.removeEventListener("online",this._onWindowOnline,!1),W.removeEventListener("visibilitychange",this._onVisibilityChange,!1));const t=this.painter.context.gl.getExtension("WEBGL_lose_context");t&&t.loseContext(),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvasContainer.remove(),this._controlContainer.remove(),this._missingCSSCanary.remove(),this._canvas=void 0,this._canvasContainer=void 0,this._controlContainer=void 0,this._missingCSSCanary=void 0,this._container.classList.remove("mapboxgl-map"),this._container.removeEventListener("scroll",this._onMapScroll,!1),Ha.delete(this.painter.context.gl),this._removed=!0,this.fire(new ae("remove"))}triggerRepaint(){this._triggerFrame(!0)}_triggerFrame(t){this._renderNextFrame=this._renderNextFrame||t,this.style&&!this._frame&&(this._frame=je.frame(e=>{const r=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,r&&this._render(e)}))}_preloadTiles(t){return rs(this.style?Object.values(this.style._sourceCaches):[],(e,r)=>e._preloadTiles(t,r),()=>{this.triggerRepaint()}),this}_onWindowOnline(){this._update()}_onWindowResize(t){this._trackResize&&this.resize({originalEvent:t})._update()}_onVisibilityChange(){W.document.visibilityState==="hidden"&&this._visibilityHidden++}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())}get showTerrainWireframe(){return!!this._showTerrainWireframe}set showTerrainWireframe(t){this._showTerrainWireframe!==t&&(this._showTerrainWireframe=t,this._update())}get showLayers2DWireframe(){return!!this._showLayers2DWireframe}set showLayers2DWireframe(t){this._showLayers2DWireframe!==t&&(this._showLayers2DWireframe=t,this._update())}get showLayers3DWireframe(){return!!this._showLayers3DWireframe}set showLayers3DWireframe(t){this._showLayers3DWireframe!==t&&(this._showLayers3DWireframe=t,this._update())}get speedIndexTiming(){return!!this._speedIndexTiming}set speedIndexTiming(t){this._speedIndexTiming!==t&&(this._speedIndexTiming=t,this._update())}get showPadding(){return!!this._showPadding}set showPadding(t){this._showPadding!==t&&(this._showPadding=t,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())}get repaint(){return!!this._repaint}set repaint(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(t){this._vertices=t,this._update()}get showTileAABBs(){return!!this._showTileAABBs}set showTileAABBs(t){this._showTileAABBs!==t&&(this._showTileAABBs=t,t&&this._update())}_setCacheLimits(t,e){(function(r,i){Ar=r,kr=i})(t,e)}get version(){return oi}},NavigationControl:class{constructor(t){this.options=we({},yS,t),this._container=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",e=>e.preventDefault()),this.options.showZoom&&(dr(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",e=>{this._map&&this._map.zoomIn({},{originalEvent:e})}),Dt("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",e=>{this._map&&this._map.zoomOut({},{originalEvent:e})}),Dt("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(dr(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",e=>{const r=this._map;r&&(this.options.visualizePitch?r.resetNorthPitch({},{originalEvent:e}):r.resetNorth({},{originalEvent:e}))}),this._compassIcon=Dt("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}_updateZoomButtons(){const t=this._map;if(!t)return;const e=t.getZoom(),r=e===t.getMaxZoom(),i=e===t.getMinZoom();this._zoomInButton.disabled=r,this._zoomOutButton.disabled=i,this._zoomInButton.setAttribute("aria-disabled",r.toString()),this._zoomOutButton.setAttribute("aria-disabled",i.toString())}_rotateCompassArrow(){const t=this._map;if(!t)return;const e=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(t.transform.pitch*(Math.PI/180)),.5)}) rotateX(${t.transform.pitch}deg) rotateZ(${t.transform.angle*(180/Math.PI)}deg)`:`rotate(${t.transform.angle*(180/Math.PI)}deg)`;t._requestDomTask(()=>{this._compassIcon&&(this._compassIcon.style.transform=e)})}onAdd(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),t.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&t.on("pitch",this._rotateCompassArrow),t.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new xS(t,this._compass,this.options.visualizePitch)),this._container}onRemove(){const t=this._map;t&&(this._container.remove(),this.options.showZoom&&t.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&t.off("pitch",this._rotateCompassArrow),t.off("rotate",this._rotateCompassArrow),this._handler&&this._handler.off(),this._handler=void 0),this._map=void 0)}_createButton(t,e){const r=Dt("button",t,this._container);return r.type="button",r.addEventListener("click",e),r}_setButtonTitle(t,e){if(!this._map)return;const r=this._map._getUIString(`NavigationControl.${e}`);t.setAttribute("aria-label",r),t.firstElementChild&&t.firstElementChild.setAttribute("title",r)}},GeolocateControl:class extends ir{constructor(t){super(),this.options=we({geolocation:W.navigator.geolocation},vS,t),dr(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker","_updateMarkerRotation","_onDeviceOrientation"],this),this._updateMarkerRotationThrottled=k1(this._updateMarkerRotation,20),this._numberOfWatches=0}onAdd(t){return this._map=t,this._container=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkGeolocationSupport(this._setupUI),this._container}onRemove(){this._geolocationWatchID!==void 0&&(this.options.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),this._container.remove(),this._map.off("zoom",this._onZoom),this._map=void 0,this._numberOfWatches=0,this._noTimeout=!1}_checkGeolocationSupport(t){const e=(r=!!this.options.geolocation)=>{this._supportsGeolocation=r,t(r)};this._supportsGeolocation!==void 0?t(this._supportsGeolocation):W.navigator.permissions!==void 0?W.navigator.permissions.query({name:"geolocation"}).then(r=>e(r.state!=="denied")).catch(()=>e()):e()}_isOutOfMapMaxBounds(t){const e=this._map.getMaxBounds(),r=t.coords;return!!e&&(r.longitude<e.getWest()||r.longitude>e.getEast()||r.latitude<e.getSouth()||r.latitude>e.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}}_onSuccess(t){if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new ae("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(t),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(t),this.options.showUserLocation&&this._userLocationDotMarker.removeClassName("mapboxgl-user-location-dot-stale"),this.fire(new ae("geolocate",t)),this._finish()}}_updateCamera(t){const e=new Ne(t.coords.longitude,t.coords.latitude),r=t.coords.accuracy,i=we({bearing:this._map.getBearing()},this.options.fitBoundsOptions);this._map.fitBounds(e.toBounds(r),i,{geolocateSource:!0})}_updateMarker(t){if(t){const e=new Ne(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(e).addTo(this._map),this._userLocationDotMarker.setLngLat(e).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()}_updateCircleRadius(){const t=this._map.transform,e=It(1,t._center.lat)*t.worldSize,r=Math.ceil(2*this._accuracy*e);this._circleElement.style.width=`${r}px`,this._circleElement.style.height=`${r}px`}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}_updateMarkerRotation(){this._userLocationDotMarker&&typeof this._heading=="number"?(this._userLocationDotMarker.setRotation(this._heading),this._userLocationDotMarker.addClassName("mapboxgl-user-location-show-heading")):(this._userLocationDotMarker.removeClassName("mapboxgl-user-location-show-heading"),this._userLocationDotMarker.setRotation(0))}_onError(t){if(this._map){if(this.options.trackUserLocation)if(t.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(t.code===3&&this._noTimeout)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._userLocationDotMarker.addClassName("mapboxgl-user-location-dot-stale"),this.fire(new ae("error",t)),this._finish()}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0}_setupUI(t){if(this._map!==void 0){if(this._container.addEventListener("contextmenu",e=>e.preventDefault()),this._geolocateButton=Dt("button","mapboxgl-ctrl-geolocate",this._container),Dt("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",t===!1){F("Geolocation support is not available so the GeolocateControl will be disabled.");const e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e)}else{const e=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=Dt("div","mapboxgl-user-location"),this._dotElement.appendChild(Dt("div","mapboxgl-user-location-dot")),this._dotElement.appendChild(Dt("div","mapboxgl-user-location-heading")),this._userLocationDotMarker=new Gp({element:this._dotElement,rotationAlignment:"map",pitchAlignment:"map"}),this._circleElement=Dt("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Gp({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",e=>{e.geolocateSource||this._watchState!=="ACTIVE_LOCK"||e.originalEvent&&e.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this.fire(new ae("trackuserlocationend")))})}}_onDeviceOrientation(t){this._userLocationDotMarker&&(t.webkitCompassHeading?this._heading=t.webkitCompassHeading:t.absolute===!0&&(this._heading=-1*t.alpha),this._updateMarkerRotationThrottled())}trigger(){if(!this._setup)return F("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new ae("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":this._numberOfWatches--,this._noTimeout=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new ae("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new ae("trackuserlocationstart"))}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let t;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._numberOfWatches++,this._numberOfWatches>1?(t={maximumAge:6e5,timeout:0},this._noTimeout=!0):(t=this.options.positionOptions,this._noTimeout=!1),this._geolocationWatchID=this.options.geolocation.watchPosition(this._onSuccess,this._onError,t),this.options.showUserHeading&&this._addDeviceOrientationListener()}}else this.options.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_addDeviceOrientationListener(){const t=()=>{W.addEventListener("ondeviceorientationabsolute"in W?"deviceorientationabsolute":"deviceorientation",this._onDeviceOrientation)};W.DeviceMotionEvent!==void 0&&typeof W.DeviceMotionEvent.requestPermission=="function"?DeviceOrientationEvent.requestPermission().then(e=>{e==="granted"&&t()}).catch(console.error):t()}_clearWatch(){this.options.geolocation.clearWatch(this._geolocationWatchID),W.removeEventListener("deviceorientation",this._onDeviceOrientation),W.removeEventListener("deviceorientationabsolute",this._onDeviceOrientation),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},AttributionControl:U1,ScaleControl:class{constructor(t){this.options=we({},bS,t),this._isNumberFormatSupported=function(){try{return new Intl.NumberFormat("en",{style:"unit",unitDisplay:"short",unit:"meter"}),!0}catch{return!1}}(),dr(["_update","_setScale","setUnit"],this)}getDefaultPosition(){return"bottom-left"}_update(){const t=this.options.maxWidth||100,e=this._map,r=e._containerHeight/2,i=e._containerWidth/2-t/2,o=e.unproject([i,r]),s=e.unproject([i+t,r]),n=o.distanceTo(s);if(this.options.unit==="imperial"){const a=3.2808*n;a>5280?this._setScale(t,a/5280,"mile"):this._setScale(t,a,"foot")}else this.options.unit==="nautical"?this._setScale(t,n/1852,"nautical-mile"):n>=1e3?this._setScale(t,n/1e3,"kilometer"):this._setScale(t,n,"meter")}_setScale(t,e,r){this._map._requestDomTask(()=>{const i=function(s){const n=Math.pow(10,`${Math.floor(s)}`.length-1);let a=s/n;return a=a>=10?10:a>=5?5:a>=3?3:a>=2?2:a>=1?1:function(l){const c=Math.pow(10,Math.ceil(-Math.log(l)/Math.LN10));return Math.round(l*c)/c}(a),n*a}(e),o=i/e;this._container.innerHTML=this._isNumberFormatSupported&&r!=="nautical-mile"?new Intl.NumberFormat(this._language,{style:"unit",unitDisplay:"short",unit:r}).format(i):`${i}&nbsp;${wS[r]}`,this._container.style.width=t*o+"px"})}onAdd(t){return this._map=t,this._language=t.getLanguage(),this._container=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._container.dir="auto",this._map.on("move",this._update),this._update(),this._container}onRemove(){this._container.remove(),this._map.off("move",this._update),this._map=void 0}_setLanguage(t){this._language=t,this._update()}setUnit(t){this.options.unit=t,this._update()}},FullscreenControl:class{constructor(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof W.HTMLElement?this._container=t.container:F("Full screen control 'container' must be a DOM element.")),dr(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in W.document?this._fullscreenchange="fullscreenchange":"onwebkitfullscreenchange"in W.document&&(this._fullscreenchange="webkitfullscreenchange")}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",F("This device does not support fullscreen mode.")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,W.document.removeEventListener(this._fullscreenchange,this._changeIcon)}_checkFullscreenSupport(){return!(!W.document.fullscreenEnabled&&!W.document.webkitFullscreenEnabled)}_setupUI(){const t=this._fullscreenButton=Dt("button","mapboxgl-ctrl-fullscreen",this._controlContainer);Dt("span","mapboxgl-ctrl-icon",t).setAttribute("aria-hidden","true"),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),W.document.addEventListener(this._fullscreenchange,this._changeIcon)}_updateTitle(){const t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute("title",t)}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_changeIcon(){(W.document.fullscreenElement||W.document.webkitFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())}_onClickFullscreen(){this._isFullscreen()?W.document.exitFullscreen?W.document.exitFullscreen():W.document.webkitCancelFullScreen&&W.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()}},Popup:class extends ir{constructor(t){super(),this.options=we(Object.create(pS),t),dr(["_update","_onClose","remove","_onMouseEvent"],this),this._classList=new Set(t&&t.className?t.className.trim().split(/\s+/):[])}addTo(t){return this._map&&this.remove(),this._map=t,this.options.closeOnClick&&t.on("preclick",this._onClose),this.options.closeOnMove&&t.on("move",this._onClose),t.on("remove",this.remove),this._update(),t._addPopup(this),this._focusFirstElement(),this._trackPointer?(t.on("mousemove",this._onMouseEvent),t.on("mouseup",this._onMouseEvent),t._canvasContainer.classList.add("mapboxgl-track-pointer")):t.on("move",this._update),this.fire(new ae("open")),this}isOpen(){return!!this._map}remove(){this._content&&this._content.remove(),this._container&&(this._container.remove(),this._container=void 0);const t=this._map;return t&&(t.off("move",this._update),t.off("move",this._onClose),t.off("preclick",this._onClose),t.off("click",this._onClose),t.off("remove",this.remove),t.off("mousemove",this._onMouseEvent),t.off("mouseup",this._onMouseEvent),t.off("drag",this._onMouseEvent),t._canvasContainer&&t._canvasContainer.classList.remove("mapboxgl-track-pointer"),t._removePopup(this),this._map=void 0),this.fire(new ae("close")),this}getLngLat(){return this._lngLat}setLngLat(t){this._lngLat=Ne.convert(t),this._pos=null,this._trackPointer=!1,this._update();const e=this._map;return e&&(e.on("move",this._update),e.off("mousemove",this._onMouseEvent),e._canvasContainer.classList.remove("mapboxgl-track-pointer")),this}trackPointer(){this._trackPointer=!0,this._pos=null,this._update();const t=this._map;return t&&(t.off("move",this._update),t.on("mousemove",this._onMouseEvent),t.on("drag",this._onMouseEvent),t._canvasContainer.classList.add("mapboxgl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(W.document.createTextNode(t))}setHTML(t){const e=W.document.createDocumentFragment(),r=W.document.createElement("body");let i;for(r.innerHTML=t;i=r.firstChild,i;)e.appendChild(i);return this.setDOMContent(e)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(t){return this.options.maxWidth=t,this._update(),this}setDOMContent(t){let e=this._content;if(e)for(;e.hasChildNodes();)e.firstChild&&e.removeChild(e.firstChild);else e=this._content=Dt("div","mapboxgl-popup-content",this._container||void 0);if(e.appendChild(t),this.options.closeButton){const r=this._closeButton=Dt("button","mapboxgl-popup-close-button",e);r.type="button",r.setAttribute("aria-label","Close popup"),r.setAttribute("aria-hidden","true"),r.innerHTML="&#215;",r.addEventListener("click",this._onClose)}return this._update(),this._focusFirstElement(),this}addClassName(t){return this._classList.add(t),this._updateClassList(),this}removeClassName(t){return this._classList.delete(t),this._updateClassList(),this}setOffset(t){return this.options.offset=t,this._update(),this}toggleClassName(t){let e;return this._classList.delete(t)?e=!1:(this._classList.add(t),e=!0),this._updateClassList(),e}_onMouseEvent(t){this._update(t.point)}_getAnchor(t){if(this.options.anchor)return this.options.anchor;const e=this._map,r=this._container,i=this._pos;if(!e||!r||!i)return"bottom";const o=r.offsetWidth,s=r.offsetHeight,n=i.x<o/2,a=i.x>e.transform.width-o/2;if(i.y+t<s)return n?"top-left":a?"top-right":"top";if(i.y>e.transform.height-s){if(n)return"bottom-left";if(a)return"bottom-right"}return n?"left":a?"right":"bottom"}_updateClassList(){const t=this._container;if(!t)return;const e=[...this._classList];e.push("mapboxgl-popup"),this._anchor&&e.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&e.push("mapboxgl-popup-track-pointer"),t.className=e.join(" ")}_update(t){const e=this._map,r=this._content;if(!e||!this._lngLat&&!this._trackPointer||!r)return;let i=this._container;if(i||(i=this._container=Dt("div","mapboxgl-popup",e.getContainer()),this._tip=Dt("div","mapboxgl-popup-tip",i),i.appendChild(r)),this.options.maxWidth&&i.style.maxWidth!==this.options.maxWidth&&(i.style.maxWidth=this.options.maxWidth),e.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=G1(this._lngLat,this._pos,e.transform)),!this._trackPointer||t){const o=this._pos=this._trackPointer&&t?t:e.project(this._lngLat),s=q1(this.options.offset),n=this._anchor=this._getAnchor(s.y),a=q1(this.options.offset,n),l=o.add(a).round();e._requestDomTask(()=>{this._container&&n&&(this._container.style.transform=`${jp[n]} translate(${l.x}px,${l.y}px)`)})}if(!this._marker&&e._showingGlobe()){const o=Vl(e.transform,this._lngLat)?0:1;this._setOpacity(o)}this._updateClassList()}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const t=this._container.querySelector(fS);t&&t.focus()}_onClose(){this.remove()}_setOpacity(t){this._container&&(this._container.style.opacity=`${t}`),this._content&&(this._content.style.pointerEvents=t?"auto":"none")}},Marker:Gp,Style:Ci,LngLat:Ne,LngLatBounds:Hr,Point:N,MercatorCoordinate:lt,FreeCameraOptions:t0,Evented:ir,config:et,prewarm:function(){Ra().acquire(pp)},clearPrewarmedResources:function(){const t=Pa;t&&(t.isPreloaded()&&t.numActive()===1?(t.release(pp),Pa=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},get accessToken(){return et.ACCESS_TOKEN},set accessToken(t){et.ACCESS_TOKEN=t},get baseApiUrl(){return et.API_URL},set baseApiUrl(t){et.API_URL=t},get workerCount(){return En.workerCount},set workerCount(t){En.workerCount=t},get maxParallelImageRequests(){return et.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){et.MAX_PARALLEL_IMAGE_REQUESTS=t},clearStorage(t){(function(e){if(!Bs())return;const r=W.caches.delete(Lt);e&&r.catch(e).then(()=>e())})(t)},workerUrl:"",workerClass:null,get dracoUrl(){return _x()},set dracoUrl(t){(function(e){fp=je.resolveURL(e),mp||(mp=new Ss(Ra(),new ir)),mp.broadcast("setDracoUrl",fp)})(t)},setNow:je.setNow,restoreNow:je.restoreNow};Se.A=ax,Se.D=sc,Se.E=H,Se.F=Bd,Se.K=jc,Se.O=mt,Se.P=N,Se.T=S0,Se.V=ec,Se.a=Ql,Se.b=oy,Se.c=Pc,Se.d=class extends ir{constructor(t,e,r,i,o,s){super(),this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=o||fx,this.loading={},this.loaded={},this.deduped=new px(t.scheduler),this.isSpriteLoaded=i,this.scheduler=t.scheduler,this.brightness=s}loadTile(t,e){const r=t.uid,i=t&&t.request,o=i&&i.collectResourceTiming,s=this.loading[r]=new j3(t);s.abort=this.loadVectorData(t,(n,a)=>{const l=!this.loading[r];if(delete this.loading[r],l||n||!a)return s.status="done",l||(this.loaded[r]=s),e(n);const c=a.rawData,u={};a.expires&&(u.expires=a.expires),a.cacheControl&&(u.cacheControl=a.cacheControl),s.vectorTile=a.vectorTile||new Rd(new oc(c));const h=()=>{s.parse(s.vectorTile,this.layerIndex,this.availableImages,this.actor,(d,p)=>{if(d||!p)return e(d);const f={};if(o){const m=sf(i);m.length>0&&(f.resourceTiming=JSON.parse(JSON.stringify(m)))}e(null,we({rawTileData:c.slice(0)},p,u,f))})};this.isSpriteLoaded?h():this.once("isSpriteLoaded",()=>{this.scheduler?this.scheduler.add(h,{type:"parseTile",isSymbolTile:t.isSymbolTile,zoom:t.tileZoom}):h()}),this.loaded=this.loaded||{},this.loaded[r]=s})}reloadTile(t,e){const r=this.loaded,i=t.uid,o=this;if(r&&r[i]){const s=r[i];s.showCollisionBoxes=t.showCollisionBoxes,s.projection=t.projection,s.brightness=t.brightness,s.tileTransform=bs(t.tileID.canonical,t.projection),s.extraShadowCaster=t.extraShadowCaster;const n=(a,l)=>{const c=s.reloadCallback;c&&(delete s.reloadCallback,s.parse(s.vectorTile,o.layerIndex,this.availableImages,o.actor,c)),e(a,l)};s.status==="parsing"?s.reloadCallback=n:s.status==="done"&&(s.vectorTile?s.parse(s.vectorTile,this.layerIndex,this.availableImages,this.actor,n):n())}else e(null,void 0)}abortTile(t,e){const r=t.uid,i=this.loading[r];i&&(i.abort&&i.abort(),delete this.loading[r]),e()}removeTile(t,e){const r=this.loaded,i=t.uid;r&&r[i]&&delete r[i],e()}},Se.e=To,Se.f=sf,Se.g=si,Se.h=ue,Se.i=fe,Se.j=function(t,e){const r=bp(t);for(const i of r){for(const o of i.meshes)K3(o);i.lights&&(i.lightMeshIndex=i.meshes.length,i.meshes.push(Q3(i.lights,e)))}return r},Se.k=Ut,Se.l=function(t){let e=0;if(new Uint32Array(t,0,1)[0]!==yx){const r=new Uint32Array(t,0,7),[,,i,o,s,n]=r;e=r.byteLength+o+s+n+s,(i!==t.byteLength||e>=t.byteLength)&&F("Invalid b3dm header information.")}return wx(t,e)},Se.m=fc,Se.n=hi,Se.o=ae,Se.p=Ds,Se.q=function(t){Ur(),Pr&&Pr.then(e=>{e.keys().then(r=>{for(let i=0;i<r.length-t;i++)e.delete(r[i])})})},Se.r=Ax,Se.s=ou,Se.t=ca,Se.v=is,Se.w=W}),_o(["./shared"],function(Se){function W(le){if(typeof le=="number"||typeof le=="boolean"||typeof le=="string"||le==null)return JSON.stringify(le);if(Array.isArray(le)){let P="[";for(const F of le)P+=`${W(F)},`;return`${P}]`}let z="{";for(const P of Object.keys(le).sort())z+=`${P}:${W(le[P])},`;return`${z}}`}function oi(le){let z="";for(const P of Se.r)z+=`/${W(le[P])}`;return z}class Sr{constructor(z){this.keyCache={},this._layers={},this._layerConfigs={},z&&this.replace(z)}replace(z,P){this._layerConfigs={},this._layers={},this.update(z,[],P)}update(z,P,F){this._options=F;for(const ie of z){this._layerConfigs[ie.id]=ie;const ve=this._layers[ie.id]=Se.c(ie,this._options);ve.setScope(this.scope),ve.compileFilter(),this.keyCache[ie.id]&&delete this.keyCache[ie.id]}for(const ie of P)delete this.keyCache[ie],delete this._layerConfigs[ie],delete this._layers[ie];this.familiesBySource={};const te=function(ie,ve){const Ce={};for(let ze=0;ze<ie.length;ze++){const Ge=ve&&ve[ie[ze].id]||oi(ie[ze]);ve&&(ve[ie[ze].id]=Ge);let Ve=Ce[Ge];Ve||(Ve=Ce[Ge]=[]),Ve.push(ie[ze])}const oe=[];for(const ze in Ce)oe.push(Ce[ze]);return oe}(Se.v(this._layerConfigs),this.keyCache);for(const ie of te){const ve=ie.map(kt=>this._layers[kt.id]),Ce=ve[0];if(Ce.visibility==="none")continue;const oe=Ce.source||"";let ze=this.familiesBySource[oe];ze||(ze=this.familiesBySource[oe]={});const Ge=Ce.sourceLayer||"_geojsonTileLayer";let Ve=ze[Ge];Ve||(Ve=ze[Ge]=[]),Ve.push(ve)}}}class et{loadTile(z,P){const{uid:F,encoding:te,rawImageData:ie,padding:ve}=z,Ce=Se.w.ImageBitmap&&ie instanceof Se.w.ImageBitmap?this.getImageData(ie,ve):ie;P(null,new Se.D(F,Ce,te,ve<1))}getImageData(z,P){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(z.width,z.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d",{willReadFrequently:!0})),this.offscreenCanvas.width=z.width,this.offscreenCanvas.height=z.height,this.offscreenCanvasContext.drawImage(z,0,0,z.width,z.height);const F=this.offscreenCanvasContext.getImageData(-P,-P,z.width+2*P,z.height+2*P);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),F}}function Jo(le,z){if(le.length!==0){go(le[0],z);for(var P=1;P<le.length;P++)go(le[P],!z)}}function go(le,z){for(var P=0,F=0,te=0,ie=le.length,ve=ie-1;te<ie;ve=te++){var Ce=(le[te][0]-le[ve][0])*(le[ve][1]+le[te][1]),oe=P+Ce;F+=Math.abs(P)>=Math.abs(Ce)?P-oe+Ce:Ce-oe+P,P=oe}P+F>=0!=!!z&&le.reverse()}var yo=Se.g(function le(z,P){var F,te=z&&z.type;if(te==="FeatureCollection")for(F=0;F<z.features.length;F++)le(z.features[F],P);else if(te==="GeometryCollection")for(F=0;F<z.geometries.length;F++)le(z.geometries[F],P);else if(te==="Feature")le(z.geometry,P);else if(te==="Polygon")Jo(z.coordinates,P);else if(te==="MultiPolygon")for(F=0;F<z.coordinates.length;F++)Jo(z.coordinates[F],P);return z});const zn=Se.V.prototype.toGeoJSON;var xo={exports:{}},Va=Se.p,Dn=Se.a.VectorTileFeature,si=ja;function ja(le,z){this.options=z||{},this.features=le,this.length=le.length}function Ko(le,z){this.id=typeof le.id=="number"?le.id:void 0,this.type=le.type,this.rawGeometry=le.type===1?[le.geometry]:le.geometry,this.properties=le.tags,this.extent=z||4096}ja.prototype.feature=function(le){return new Ko(this.features[le],this.options.extent)},Ko.prototype.loadGeometry=function(){var le=this.rawGeometry;this.geometry=[];for(var z=0;z<le.length;z++){for(var P=le[z],F=[],te=0;te<P.length;te++)F.push(new Va(P[te][0],P[te][1]));this.geometry.push(F)}return this.geometry},Ko.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var le=this.geometry,z=1/0,P=-1/0,F=1/0,te=-1/0,ie=0;ie<le.length;ie++)for(var ve=le[ie],Ce=0;Ce<ve.length;Ce++){var oe=ve[Ce];z=Math.min(z,oe.x),P=Math.max(P,oe.x),F=Math.min(F,oe.y),te=Math.max(te,oe.y)}return[z,F,P,te]},Ko.prototype.toGeoJSON=Dn.prototype.toGeoJSON;var Ga=Se.b,Ds=si;function Di(le){var z=new Ga;return function(P,F){for(var te in P.layers)F.writeMessage(3,N,P.layers[te])}(le,z),z.finish()}function N(le,z){var P;z.writeVarintField(15,le.version||1),z.writeStringField(1,le.name||""),z.writeVarintField(5,le.extent||4096);var F={keys:[],values:[],keycache:{},valuecache:{}};for(P=0;P<le.length;P++)F.feature=le.feature(P),z.writeMessage(2,dt,F);var te=F.keys;for(P=0;P<te.length;P++)z.writeStringField(3,te[P]);var ie=F.values;for(P=0;P<ie.length;P++)z.writeMessage(4,lu,ie[P])}function dt(le,z){var P=le.feature;P.id!==void 0&&z.writeVarintField(1,P.id),z.writeMessage(2,au,le),z.writeVarintField(3,P.type),z.writeMessage(4,xr,P)}function au(le,z){var P=le.feature,F=le.keys,te=le.values,ie=le.keycache,ve=le.valuecache;for(var Ce in P.properties){var oe=P.properties[Ce],ze=ie[Ce];if(oe!==null){ze===void 0&&(F.push(Ce),ie[Ce]=ze=F.length-1),z.writeVarint(ze);var Ge=typeof oe;Ge!=="string"&&Ge!=="boolean"&&Ge!=="number"&&(oe=JSON.stringify(oe));var Ve=Ge+":"+oe,kt=ve[Ve];kt===void 0&&(te.push(oe),ve[Ve]=kt=te.length-1),z.writeVarint(kt)}}}function Qo(le,z){return(z<<3)+(7&le)}function $e(le){return le<<1^le>>31}function xr(le,z){for(var P=le.loadGeometry(),F=le.type,te=0,ie=0,ve=P.length,Ce=0;Ce<ve;Ce++){var oe=P[Ce],ze=1;F===1&&(ze=oe.length),z.writeVarint(Qo(1,ze));for(var Ge=F===3?oe.length-1:oe.length,Ve=0;Ve<Ge;Ve++){Ve===1&&F!==1&&z.writeVarint(Qo(2,Ge-1));var kt=oe[Ve].x-te,Zt=oe[Ve].y-ie;z.writeVarint($e(kt)),z.writeVarint($e(Zt)),te+=kt,ie+=Zt}F===3&&z.writeVarint(Qo(7,1))}}function lu(le,z){var P=typeof le;P==="string"?z.writeStringField(1,le):P==="boolean"?z.writeBooleanField(7,le):P==="number"&&(le%1!=0?z.writeDoubleField(3,le):le<0?z.writeSVarintField(6,le):z.writeVarintField(5,le))}xo.exports=Di,xo.exports.fromVectorTileJs=Di,xo.exports.fromGeojsonVt=function(le,z){z=z||{};var P={};for(var F in le)P[F]=new Ds(le[F].features,z),P[F].name=F,P[F].version=z.version,P[F].extent=z.extent;return Di({layers:P})},xo.exports.GeoJSONWrapper=Ds;var ks=Se.g(xo.exports);const cu={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:le=>le},es=Math.fround||(ts=new Float32Array(1),le=>(ts[0]=+le,ts[0]));var ts;const ni=3,Me=5,ki=6;class Pi{constructor(z){this.options=Object.assign(Object.create(cu),z),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(z){const{log:P,minZoom:F,maxZoom:te}=this.options;P&&console.time("total time");const ie=`prepare ${z.length} points`;P&&console.time(ie),this.points=z;const ve=[];for(let oe=0;oe<z.length;oe++){const ze=z[oe];if(!ze.geometry)continue;const[Ge,Ve]=ze.geometry.coordinates,kt=es(we(Ge)),Zt=es(Nr(Ve));ve.push(kt,Zt,1/0,oe,-1,1),this.options.reduce&&ve.push(0)}let Ce=this.trees[te+1]=this._createTree(ve);P&&console.timeEnd(ie);for(let oe=te;oe>=F;oe--){const ze=+Date.now();Ce=this.trees[oe]=this._createTree(this._cluster(Ce,oe)),P&&console.log("z%d: %d clusters in %dms",oe,Ce.numItems,+Date.now()-ze)}return P&&console.timeEnd("total time"),this}getClusters(z,P){let F=((z[0]+180)%360+360)%360-180;const te=Math.max(-90,Math.min(90,z[1]));let ie=z[2]===180?180:((z[2]+180)%360+360)%360-180;const ve=Math.max(-90,Math.min(90,z[3]));if(z[2]-z[0]>=360)F=-180,ie=180;else if(F>ie){const Ve=this.getClusters([F,te,180,ve],P),kt=this.getClusters([-180,te,ie,ve],P);return Ve.concat(kt)}const Ce=this.trees[this._limitZoom(P)],oe=Ce.range(we(F),Nr(ve),we(ie),Nr(te)),ze=Ce.data,Ge=[];for(const Ve of oe){const kt=this.stride*Ve;Ge.push(ze[kt+Me]>1?rs(ze,kt,this.clusterProps):this.points[ze[kt+ni]])}return Ge}getChildren(z){const P=this._getOriginId(z),F=this._getOriginZoom(z),te="No cluster with the specified id.",ie=this.trees[F];if(!ie)throw new Error(te);const ve=ie.data;if(P*this.stride>=ve.length)throw new Error(te);const Ce=this.options.radius/(this.options.extent*Math.pow(2,F-1)),oe=ie.within(ve[P*this.stride],ve[P*this.stride+1],Ce),ze=[];for(const Ge of oe){const Ve=Ge*this.stride;ve[Ve+4]===z&&ze.push(ve[Ve+Me]>1?rs(ve,Ve,this.clusterProps):this.points[ve[Ve+ni]])}if(ze.length===0)throw new Error(te);return ze}getLeaves(z,P,F){const te=[];return this._appendLeaves(te,z,P=P||10,F=F||0,0),te}getTile(z,P,F){const te=this.trees[this._limitZoom(z)],ie=Math.pow(2,z),{extent:ve,radius:Ce}=this.options,oe=Ce/ve,ze=(F-oe)/ie,Ge=(F+1+oe)/ie,Ve={features:[]};return this._addTileFeatures(te.range((P-oe)/ie,ze,(P+1+oe)/ie,Ge),te.data,P,F,ie,Ve),P===0&&this._addTileFeatures(te.range(1-oe/ie,ze,1,Ge),te.data,ie,F,ie,Ve),P===ie-1&&this._addTileFeatures(te.range(0,ze,oe/ie,Ge),te.data,-1,F,ie,Ve),Ve.features.length?Ve:null}getClusterExpansionZoom(z){let P=this._getOriginZoom(z)-1;for(;P<=this.options.maxZoom;){const F=this.getChildren(z);if(P++,F.length!==1)break;z=F[0].properties.cluster_id}return P}_appendLeaves(z,P,F,te,ie){const ve=this.getChildren(P);for(const Ce of ve){const oe=Ce.properties;if(oe&&oe.cluster?ie+oe.point_count<=te?ie+=oe.point_count:ie=this._appendLeaves(z,oe.cluster_id,F,te,ie):ie<te?ie++:z.push(Ce),z.length===F)break}return ie}_createTree(z){const P=new Se.K(z.length/this.stride|0,this.options.nodeSize,Float32Array);for(let F=0;F<z.length;F+=this.stride)P.add(z[F],z[F+1]);return P.finish(),P.data=z,P}_addTileFeatures(z,P,F,te,ie,ve){for(const Ce of z){const oe=Ce*this.stride,ze=P[oe+Me]>1;let Ge,Ve,kt;if(ze)Ge=is(P,oe,this.clusterProps),Ve=P[oe],kt=P[oe+1];else{const $t=this.points[P[oe+ni]];Ge=$t.properties;const[Qt,Lt]=$t.geometry.coordinates;Ve=we(Qt),kt=Nr(Lt)}const Zt={type:1,geometry:[[Math.round(this.options.extent*(Ve*ie-F)),Math.round(this.options.extent*(kt*ie-te))]],tags:Ge};let vr;vr=ze||this.options.generateId?P[oe+ni]:this.points[P[oe+ni]].id,vr!==void 0&&(Zt.id=vr),ve.features.push(Zt)}}_limitZoom(z){return Math.max(this.options.minZoom,Math.min(Math.floor(+z),this.options.maxZoom+1))}_cluster(z,P){const{radius:F,extent:te,reduce:ie,minPoints:ve}=this.options,Ce=F/(te*Math.pow(2,P)),oe=z.data,ze=[],Ge=this.stride;for(let Ve=0;Ve<oe.length;Ve+=Ge){if(oe[Ve+2]<=P)continue;oe[Ve+2]=P;const kt=oe[Ve],Zt=oe[Ve+1],vr=z.within(oe[Ve],oe[Ve+1],Ce),$t=oe[Ve+Me];let Qt=$t;for(const Lt of vr){const Ar=Lt*Ge;oe[Ar+2]>P&&(Qt+=oe[Ar+Me])}if(Qt>$t&&Qt>=ve){let Lt,Ar=kt*$t,kr=Zt*$t,Pr=-1;const xi=((Ve/Ge|0)<<5)+(P+1)+this.points.length;for(const Bs of vr){const Ur=Bs*Ge;if(oe[Ur+2]<=P)continue;oe[Ur+2]=P;const Xi=oe[Ur+Me];Ar+=oe[Ur]*Xi,kr+=oe[Ur+1]*Xi,oe[Ur+4]=xi,ie&&(Lt||(Lt=this._map(oe,Ve,!0),Pr=this.clusterProps.length,this.clusterProps.push(Lt)),ie(Lt,this._map(oe,Ur)))}oe[Ve+4]=xi,ze.push(Ar/Qt,kr/Qt,1/0,xi,-1,Qt),ie&&ze.push(Pr)}else{for(let Lt=0;Lt<Ge;Lt++)ze.push(oe[Ve+Lt]);if(Qt>1)for(const Lt of vr){const Ar=Lt*Ge;if(!(oe[Ar+2]<=P)){oe[Ar+2]=P;for(let kr=0;kr<Ge;kr++)ze.push(oe[Ar+kr])}}}}return ze}_getOriginId(z){return z-this.points.length>>5}_getOriginZoom(z){return(z-this.points.length)%32}_map(z,P,F){if(z[P+Me]>1){const ve=this.clusterProps[z[P+ki]];return F?Object.assign({},ve):ve}const te=this.points[z[P+ni]].properties,ie=this.options.map(te);return F&&ie===te?Object.assign({},ie):ie}}function rs(le,z,P){return{type:"Feature",id:le[z+ni],properties:is(le,z,P),geometry:{type:"Point",coordinates:[(F=le[z],360*(F-.5)),uu(le[z+1])]}};var F}function is(le,z,P){const F=le[z+Me],te=F>=1e4?`${Math.round(F/1e3)}k`:F>=1e3?Math.round(F/100)/10+"k":F,ie=le[z+ki],ve=ie===-1?{}:Object.assign({},P[ie]);return Object.assign(ve,{cluster:!0,cluster_id:le[z+ni],point_count:F,point_count_abbreviated:te})}function we(le){return le/360+.5}function Nr(le){const z=Math.sin(le*Math.PI/180),P=.5-.25*Math.log((1+z)/(1-z))/Math.PI;return P<0?0:P>1?1:P}function uu(le){const z=(180-360*le)*Math.PI/180;return 360*Math.atan(Math.exp(z))/Math.PI-90}var Ps={exports:{}};Ps.exports=function(){function le(J,Q,ne,ce){for(var ue,fe=ce,_e=ne-Q>>1,he=ne-Q,Ee=J[Q],me=J[Q+1],Ye=J[ne],At=J[ne+1],Pe=Q+3;Pe<ne;Pe+=3){var wt=z(J[Pe],J[Pe+1],Ee,me,Ye,At);if(wt>fe)ue=Pe,fe=wt;else if(wt===fe){var Ht=Math.abs(Pe-_e);Ht<he&&(ue=Pe,he=Ht)}}fe>ce&&(ue-Q>3&&le(J,Q,ue,ce),J[ue+2]=fe,ne-ue>3&&le(J,ue,ne,ce))}function z(J,Q,ne,ce,ue,fe){var _e=ue-ne,he=fe-ce;if(_e!==0||he!==0){var Ee=((J-ne)*_e+(Q-ce)*he)/(_e*_e+he*he);Ee>1?(ne=ue,ce=fe):Ee>0&&(ne+=_e*Ee,ce+=he*Ee)}return(_e=J-ne)*_e+(he=Q-ce)*he}function P(J,Q,ne,ce){var ue={id:J===void 0?null:J,type:Q,geometry:ne,tags:ce,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(fe){var _e=fe.geometry,he=fe.type;if(he==="Point"||he==="MultiPoint"||he==="LineString")F(fe,_e);else if(he==="Polygon"||he==="MultiLineString")for(var Ee=0;Ee<_e.length;Ee++)F(fe,_e[Ee]);else if(he==="MultiPolygon")for(Ee=0;Ee<_e.length;Ee++)for(var me=0;me<_e[Ee].length;me++)F(fe,_e[Ee][me])}(ue),ue}function F(J,Q){for(var ne=0;ne<Q.length;ne+=3)J.minX=Math.min(J.minX,Q[ne]),J.minY=Math.min(J.minY,Q[ne+1]),J.maxX=Math.max(J.maxX,Q[ne]),J.maxY=Math.max(J.maxY,Q[ne+1])}function te(J,Q,ne,ce){if(Q.geometry){var ue=Q.geometry.coordinates,fe=Q.geometry.type,_e=Math.pow(ne.tolerance/((1<<ne.maxZoom)*ne.extent),2),he=[],Ee=Q.id;if(ne.promoteId?Ee=Q.properties[ne.promoteId]:ne.generateId&&(Ee=ce||0),fe==="Point")ie(ue,he);else if(fe==="MultiPoint")for(var me=0;me<ue.length;me++)ie(ue[me],he);else if(fe==="LineString")ve(ue,he,_e,!1);else if(fe==="MultiLineString"){if(ne.lineMetrics){for(me=0;me<ue.length;me++)ve(ue[me],he=[],_e,!1),J.push(P(Ee,"LineString",he,Q.properties));return}Ce(ue,he,_e,!1)}else if(fe==="Polygon")Ce(ue,he,_e,!0);else{if(fe!=="MultiPolygon"){if(fe==="GeometryCollection"){for(me=0;me<Q.geometry.geometries.length;me++)te(J,{id:Ee,geometry:Q.geometry.geometries[me],properties:Q.properties},ne,ce);return}throw new Error("Input data is not a valid GeoJSON object.")}for(me=0;me<ue.length;me++){var Ye=[];Ce(ue[me],Ye,_e,!0),he.push(Ye)}}J.push(P(Ee,fe,he,Q.properties))}}function ie(J,Q){Q.push(oe(J[0])),Q.push(ze(J[1])),Q.push(0)}function ve(J,Q,ne,ce){for(var ue,fe,_e=0,he=0;he<J.length;he++){var Ee=oe(J[he][0]),me=ze(J[he][1]);Q.push(Ee),Q.push(me),Q.push(0),he>0&&(_e+=ce?(ue*me-Ee*fe)/2:Math.sqrt(Math.pow(Ee-ue,2)+Math.pow(me-fe,2))),ue=Ee,fe=me}var Ye=Q.length-3;Q[2]=1,le(Q,0,Ye,ne),Q[Ye+2]=1,Q.size=Math.abs(_e),Q.start=0,Q.end=Q.size}function Ce(J,Q,ne,ce){for(var ue=0;ue<J.length;ue++){var fe=[];ve(J[ue],fe,ne,ce),Q.push(fe)}}function oe(J){return J/360+.5}function ze(J){var Q=Math.sin(J*Math.PI/180),ne=.5-.25*Math.log((1+Q)/(1-Q))/Math.PI;return ne<0?0:ne>1?1:ne}function Ge(J,Q,ne,ce,ue,fe,_e,he){if(ce/=Q,fe>=(ne/=Q)&&_e<ce)return J;if(_e<ne||fe>=ce)return null;for(var Ee=[],me=0;me<J.length;me++){var Ye=J[me],At=Ye.geometry,Pe=Ye.type,wt=ue===0?Ye.minX:Ye.minY,Ht=ue===0?Ye.maxX:Ye.maxY;if(wt>=ne&&Ht<ce)Ee.push(Ye);else if(!(Ht<ne||wt>=ce)){var er=[];if(Pe==="Point"||Pe==="MultiPoint")Ve(At,er,ne,ce,ue);else if(Pe==="LineString")kt(At,er,ne,ce,ue,!1,he.lineMetrics);else if(Pe==="MultiLineString")vr(At,er,ne,ce,ue,!1);else if(Pe==="Polygon")vr(At,er,ne,ce,ue,!0);else if(Pe==="MultiPolygon")for(var ar=0;ar<At.length;ar++){var Ir=[];vr(At[ar],Ir,ne,ce,ue,!0),Ir.length&&er.push(Ir)}if(er.length){if(he.lineMetrics&&Pe==="LineString"){for(ar=0;ar<er.length;ar++)Ee.push(P(Ye.id,Pe,er[ar],Ye.tags));continue}Pe!=="LineString"&&Pe!=="MultiLineString"||(er.length===1?(Pe="LineString",er=er[0]):Pe="MultiLineString"),Pe!=="Point"&&Pe!=="MultiPoint"||(Pe=er.length===3?"Point":"MultiPoint"),Ee.push(P(Ye.id,Pe,er,Ye.tags))}}}return Ee.length?Ee:null}function Ve(J,Q,ne,ce,ue){for(var fe=0;fe<J.length;fe+=3){var _e=J[fe+ue];_e>=ne&&_e<=ce&&(Q.push(J[fe]),Q.push(J[fe+1]),Q.push(J[fe+2]))}}function kt(J,Q,ne,ce,ue,fe,_e){for(var he,Ee,me=Zt(J),Ye=ue===0?Qt:Lt,At=J.start,Pe=0;Pe<J.length-3;Pe+=3){var wt=J[Pe],Ht=J[Pe+1],er=J[Pe+2],ar=J[Pe+3],Ir=J[Pe+4],ai=ue===0?wt:Ht,pr=ue===0?ar:Ir,Rr=!1;_e&&(he=Math.sqrt(Math.pow(wt-ar,2)+Math.pow(Ht-Ir,2))),ai<ne?pr>ne&&(Ee=Ye(me,wt,Ht,ar,Ir,ne),_e&&(me.start=At+he*Ee)):ai>ce?pr<ce&&(Ee=Ye(me,wt,Ht,ar,Ir,ce),_e&&(me.start=At+he*Ee)):$t(me,wt,Ht,er),pr<ne&&ai>=ne&&(Ee=Ye(me,wt,Ht,ar,Ir,ne),Rr=!0),pr>ce&&ai<=ce&&(Ee=Ye(me,wt,Ht,ar,Ir,ce),Rr=!0),!fe&&Rr&&(_e&&(me.end=At+he*Ee),Q.push(me),me=Zt(J)),_e&&(At+=he)}var Cr=J.length-3;wt=J[Cr],Ht=J[Cr+1],er=J[Cr+2],(ai=ue===0?wt:Ht)>=ne&&ai<=ce&&$t(me,wt,Ht,er),Cr=me.length-3,fe&&Cr>=3&&(me[Cr]!==me[0]||me[Cr+1]!==me[1])&&$t(me,me[0],me[1],me[2]),me.length&&Q.push(me)}function Zt(J){var Q=[];return Q.size=J.size,Q.start=J.start,Q.end=J.end,Q}function vr(J,Q,ne,ce,ue,fe){for(var _e=0;_e<J.length;_e++)kt(J[_e],Q,ne,ce,ue,fe,!1)}function $t(J,Q,ne,ce){J.push(Q),J.push(ne),J.push(ce)}function Qt(J,Q,ne,ce,ue,fe){var _e=(fe-Q)/(ce-Q);return J.push(fe),J.push(ne+(ue-ne)*_e),J.push(1),_e}function Lt(J,Q,ne,ce,ue,fe){var _e=(fe-ne)/(ue-ne);return J.push(Q+(ce-Q)*_e),J.push(fe),J.push(1),_e}function Ar(J,Q){for(var ne=[],ce=0;ce<J.length;ce++){var ue,fe=J[ce],_e=fe.type;if(_e==="Point"||_e==="MultiPoint"||_e==="LineString")ue=kr(fe.geometry,Q);else if(_e==="MultiLineString"||_e==="Polygon"){ue=[];for(var he=0;he<fe.geometry.length;he++)ue.push(kr(fe.geometry[he],Q))}else if(_e==="MultiPolygon")for(ue=[],he=0;he<fe.geometry.length;he++){for(var Ee=[],me=0;me<fe.geometry[he].length;me++)Ee.push(kr(fe.geometry[he][me],Q));ue.push(Ee)}ne.push(P(fe.id,_e,ue,fe.tags))}return ne}function kr(J,Q){var ne=[];ne.size=J.size,J.start!==void 0&&(ne.start=J.start,ne.end=J.end);for(var ce=0;ce<J.length;ce+=3)ne.push(J[ce]+Q,J[ce+1],J[ce+2]);return ne}function Pr(J,Q){if(J.transformed)return J;var ne,ce,ue,fe=1<<J.z,_e=J.x,he=J.y;for(ne=0;ne<J.features.length;ne++){var Ee=J.features[ne],me=Ee.geometry,Ye=Ee.type;if(Ee.geometry=[],Ye===1)for(ce=0;ce<me.length;ce+=2)Ee.geometry.push(xi(me[ce],me[ce+1],Q,fe,_e,he));else for(ce=0;ce<me.length;ce++){var At=[];for(ue=0;ue<me[ce].length;ue+=2)At.push(xi(me[ce][ue],me[ce][ue+1],Q,fe,_e,he));Ee.geometry.push(At)}}return J.transformed=!0,J}function xi(J,Q,ne,ce,ue,fe){return[Math.round(ne*(J*ce-ue)),Math.round(ne*(Q*ce-fe))]}function Bs(J,Q,ne,ce,ue){for(var fe=Q===ue.maxZoom?0:ue.tolerance/((1<<Q)*ue.extent),_e={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:ne,y:ce,z:Q,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},he=0;he<J.length;he++){_e.numFeatures++,Ur(_e,J[he],fe,ue);var Ee=J[he].minX,me=J[he].minY,Ye=J[he].maxX,At=J[he].maxY;Ee<_e.minX&&(_e.minX=Ee),me<_e.minY&&(_e.minY=me),Ye>_e.maxX&&(_e.maxX=Ye),At>_e.maxY&&(_e.maxY=At)}return _e}function Ur(J,Q,ne,ce){var ue=Q.geometry,fe=Q.type,_e=[];if(fe==="Point"||fe==="MultiPoint")for(var he=0;he<ue.length;he+=3)_e.push(ue[he]),_e.push(ue[he+1]),J.numPoints++,J.numSimplified++;else if(fe==="LineString")Xi(_e,ue,J,ne,!1,!1);else if(fe==="MultiLineString"||fe==="Polygon")for(he=0;he<ue.length;he++)Xi(_e,ue[he],J,ne,fe==="Polygon",he===0);else if(fe==="MultiPolygon")for(var Ee=0;Ee<ue.length;Ee++){var me=ue[Ee];for(he=0;he<me.length;he++)Xi(_e,me[he],J,ne,!0,he===0)}if(_e.length){var Ye=Q.tags||null;if(fe==="LineString"&&ce.lineMetrics){for(var At in Ye={},Q.tags)Ye[At]=Q.tags[At];Ye.mapbox_clip_start=ue.start/ue.size,Ye.mapbox_clip_end=ue.end/ue.size}var Pe={geometry:_e,type:fe==="Polygon"||fe==="MultiPolygon"?3:fe==="LineString"||fe==="MultiLineString"?2:1,tags:Ye};Q.id!==null&&(Pe.id=Q.id),J.features.push(Pe)}}function Xi(J,Q,ne,ce,ue,fe){var _e=ce*ce;if(ce>0&&Q.size<(ue?_e:ce))ne.numPoints+=Q.length/3;else{for(var he=[],Ee=0;Ee<Q.length;Ee+=3)(ce===0||Q[Ee+2]>_e)&&(ne.numSimplified++,he.push(Q[Ee]),he.push(Q[Ee+1])),ne.numPoints++;ue&&function(me,Ye){for(var At=0,Pe=0,wt=me.length,Ht=wt-2;Pe<wt;Ht=Pe,Pe+=2)At+=(me[Pe]-me[Ht])*(me[Pe+1]+me[Ht+1]);if(At>0===Ye)for(Pe=0,wt=me.length;Pe<wt/2;Pe+=2){var er=me[Pe],ar=me[Pe+1];me[Pe]=me[wt-2-Pe],me[Pe+1]=me[wt-1-Pe],me[wt-2-Pe]=er,me[wt-1-Pe]=ar}}(he,fe),J.push(he)}}function vo(J,Q){var ne=(Q=this.options=function(ue,fe){for(var _e in fe)ue[_e]=fe[_e];return ue}(Object.create(this.options),Q)).debug;if(ne&&console.time("preprocess data"),Q.maxZoom<0||Q.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Q.promoteId&&Q.generateId)throw new Error("promoteId and generateId cannot be used together.");var ce=function(ue,fe){var _e=[];if(ue.type==="FeatureCollection")for(var he=0;he<ue.features.length;he++)te(_e,ue.features[he],fe,he);else te(_e,ue.type==="Feature"?ue:{geometry:ue},fe);return _e}(J,Q);this.tiles={},this.tileCoords=[],ne&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Q.indexMaxZoom,Q.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(ce=function(ue,fe){var _e=fe.buffer/fe.extent,he=ue,Ee=Ge(ue,1,-1-_e,_e,0,-1,2,fe),me=Ge(ue,1,1-_e,2+_e,0,-1,2,fe);return(Ee||me)&&(he=Ge(ue,1,-_e,1+_e,0,-1,2,fe)||[],Ee&&(he=Ar(Ee,1).concat(he)),me&&(he=he.concat(Ar(me,-1)))),he}(ce,Q)).length&&this.splitTile(ce,0,0,0),ne&&(ce.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}function Os(J,Q,ne){return 32*((1<<J)*ne+Q)+J}return vo.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},vo.prototype.splitTile=function(J,Q,ne,ce,ue,fe,_e){for(var he=[J,Q,ne,ce],Ee=this.options,me=Ee.debug;he.length;){ce=he.pop(),ne=he.pop(),Q=he.pop(),J=he.pop();var Ye=1<<Q,At=Os(Q,ne,ce),Pe=this.tiles[At];if(!Pe&&(me>1&&console.time("creation"),Pe=this.tiles[At]=Bs(J,Q,ne,ce,Ee),this.tileCoords.push({z:Q,x:ne,y:ce}),me)){me>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Q,ne,ce,Pe.numFeatures,Pe.numPoints,Pe.numSimplified),console.timeEnd("creation"));var wt="z"+Q;this.stats[wt]=(this.stats[wt]||0)+1,this.total++}if(Pe.source=J,ue){if(Q===Ee.maxZoom||Q===ue)continue;var Ht=1<<ue-Q;if(ne!==Math.floor(fe/Ht)||ce!==Math.floor(_e/Ht))continue}else if(Q===Ee.indexMaxZoom||Pe.numPoints<=Ee.indexMaxPoints)continue;if(Pe.source=null,J.length!==0){me>1&&console.time("clipping");var er,ar,Ir,ai,pr,Rr,Cr=.5*Ee.buffer/Ee.extent,Fs=.5-Cr,bo=.5+Cr,Ns=1+Cr;er=ar=Ir=ai=null,pr=Ge(J,Ye,ne-Cr,ne+bo,0,Pe.minX,Pe.maxX,Ee),Rr=Ge(J,Ye,ne+Fs,ne+Ns,0,Pe.minX,Pe.maxX,Ee),J=null,pr&&(er=Ge(pr,Ye,ce-Cr,ce+bo,1,Pe.minY,Pe.maxY,Ee),ar=Ge(pr,Ye,ce+Fs,ce+Ns,1,Pe.minY,Pe.maxY,Ee),pr=null),Rr&&(Ir=Ge(Rr,Ye,ce-Cr,ce+bo,1,Pe.minY,Pe.maxY,Ee),ai=Ge(Rr,Ye,ce+Fs,ce+Ns,1,Pe.minY,Pe.maxY,Ee),Rr=null),me>1&&console.timeEnd("clipping"),he.push(er||[],Q+1,2*ne,2*ce),he.push(ar||[],Q+1,2*ne,2*ce+1),he.push(Ir||[],Q+1,2*ne+1,2*ce),he.push(ai||[],Q+1,2*ne+1,2*ce+1)}}},vo.prototype.getTile=function(J,Q,ne){var ce=this.options,ue=ce.extent,fe=ce.debug;if(J<0||J>24)return null;var _e=1<<J,he=Os(J,Q=(Q%_e+_e)%_e,ne);if(this.tiles[he])return Pr(this.tiles[he],ue);fe>1&&console.log("drilling down to z%d-%d-%d",J,Q,ne);for(var Ee,me=J,Ye=Q,At=ne;!Ee&&me>0;)me--,Ye=Math.floor(Ye/2),At=Math.floor(At/2),Ee=this.tiles[Os(me,Ye,At)];return Ee&&Ee.source?(fe>1&&console.log("found parent tile z%d-%d-%d",me,Ye,At),fe>1&&console.time("drilling down"),this.splitTile(Ee.source,me,Ye,At,J,Q,ne),fe>1&&console.timeEnd("drilling down"),this.tiles[he]?Pr(this.tiles[he],ue):null):null},function(J,Q){return new vo(J,Q)}}();var qa=Se.g(Ps.exports);function Za(le,z){const P=le.tileID.canonical;if(!this._geoJSONIndex)return z(null,null);const F=this._geoJSONIndex.getTile(P.z,P.x,P.y);if(!F)return z(null,null);const te=new class{constructor(ve){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=Se.E,this.length=ve.length,this._features=ve}feature(ve){return new class{constructor(Ce){this._feature=Ce,this.extent=Se.E,this.type=Ce.type,this.properties=Ce.tags,"id"in Ce&&!isNaN(Ce.id)&&(this.id=parseInt(Ce.id,10))}loadGeometry(){if(this._feature.type===1){const Ce=[];for(const oe of this._feature.geometry)Ce.push([new Se.P(oe[0],oe[1])]);return Ce}{const Ce=[];for(const oe of this._feature.geometry){const ze=[];for(const Ge of oe)ze.push(new Se.P(Ge[0],Ge[1]));Ce.push(ze)}return Ce}}toGeoJSON(Ce,oe,ze){return zn.call(this,Ce,oe,ze)}}(this._features[ve])}}(F.features);let ie=ks(te);ie.byteOffset===0&&ie.byteLength===ie.buffer.byteLength||(ie=new Uint8Array(ie)),z(null,{vectorTile:te,rawData:ie.buffer})}class $a extends Se.d{constructor(z,P,F,te,ie,ve){super(z,P,F,te,Za,ve),ie&&(this.loadGeoJSON=ie)}loadData(z,P){const F=z&&z.request,te=F&&F.collectResourceTiming;this.loadGeoJSON(z,(ie,ve)=>{if(ie||!ve)return P(ie);if(typeof ve!="object")return P(new Error(`Input data given to '${z.source}' is not a valid GeoJSON object.`));{yo(ve,!0);try{if(z.filter){const oe=Se.e(z.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(oe.result==="error")throw new Error(oe.value.map(ze=>`${ze.key}: ${ze.message}`).join(", "));ve={type:"FeatureCollection",features:ve.features.filter(ze=>oe.value.evaluate({zoom:0},ze))}}this._geoJSONIndex=z.cluster?new Pi(function({superclusterOptions:oe,clusterProperties:ze}){if(!ze||!oe)return oe;const Ge={},Ve={},kt={accumulated:null,zoom:0},Zt={properties:null},vr=Object.keys(ze);for(const $t of vr){const[Qt,Lt]=ze[$t],Ar=Se.e(Lt),kr=Se.e(typeof Qt=="string"?[Qt,["accumulated"],["get",$t]]:Qt);Ge[$t]=Ar.value,Ve[$t]=kr.value}return oe.map=$t=>{Zt.properties=$t;const Qt={};for(const Lt of vr)Qt[Lt]=Ge[Lt].evaluate(kt,Zt);return Qt},oe.reduce=($t,Qt)=>{Zt.properties=Qt;for(const Lt of vr)kt.accumulated=$t[Lt],$t[Lt]=Ve[Lt].evaluate(kt,Zt)},oe}(z)).load(ve.features):qa(ve,z.geojsonVtOptions)}catch(oe){return P(oe)}this.loaded={};const Ce={};if(te){const oe=Se.f(F);oe&&(Ce.resourceTiming={},Ce.resourceTiming[z.source]=JSON.parse(JSON.stringify(oe)))}P(null,Ce)}})}reloadTile(z,P){const F=this.loaded;return F&&F[z.uid]?super.reloadTile(z,P):this.loadTile(z,P)}loadGeoJSON(z,P){if(z.request)Se.h(z.request,P);else{if(typeof z.data!="string")return P(new Error(`Input data given to '${z.source}' is not a valid GeoJSON object.`));try{return P(null,JSON.parse(z.data))}catch{return P(new Error(`Input data given to '${z.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(z,P){try{P(null,this._geoJSONIndex.getClusterExpansionZoom(z.clusterId))}catch(F){P(F)}}getClusterChildren(z,P){try{P(null,this._geoJSONIndex.getChildren(z.clusterId))}catch(F){P(F)}}getClusterLeaves(z,P){try{P(null,this._geoJSONIndex.getLeaves(z.clusterId,z.limit,z.offset))}catch(F){P(F)}}}class dr{constructor(z,P){this.tileID=new Se.O(z.tileID.overscaledZ,z.tileID.wrap,z.tileID.canonical.z,z.tileID.canonical.x,z.tileID.canonical.y),this.tileZoom=z.tileZoom,this.uid=z.uid,this.zoom=z.zoom,this.canonical=z.tileID.canonical,this.pixelRatio=z.pixelRatio,this.tileSize=z.tileSize,this.source=z.source,this.overscaling=this.tileID.overscaleFactor(),this.projection=z.projection,this.brightness=P}parse(z,P,F,te){this.status="parsing";const ie=new Se.O(F.tileID.overscaledZ,F.tileID.wrap,F.tileID.canonical.z,F.tileID.canonical.x,F.tileID.canonical.y),ve={},Ce=P.familiesBySource[F.source],oe=new Se.F(ie,F.promoteId);return oe.bucketLayerIDs=[],Se.l(z).then(ze=>{if(!ze)return te(new Error("Could not parse tile"));const Ge=Se.j(ze,1/Se.t(F.tileID.canonical)),Ve=ze.json.extensionsUsed&&ze.json.extensionsUsed.includes("MAPBOX_mesh_features"),kt=new Se.k(this.zoom,{brightness:this.brightness});for(const Zt in Ce)for(const vr of Ce[Zt]){const $t=vr[0],Qt=ze.json.extensionsUsed;$t.recalculate(kt,[]);const Lt=new Se.T(Ge,ie,Qt&&Qt.includes("MAPBOX_mesh_features"),this.brightness);Ve||(Lt.needsUpload=!0),ve[$t.fqid]=Lt,Lt.evaluate($t)}this.status="done",te(null,{buckets:ve,featureIndex:oe})}).catch(ze=>te(new Error(ze.message)))}}class Rs{constructor(z,P,F,te,ie,ve){this.actor=z,this.layerIndex=P,this.brightness=ve,this.loading={},this.loaded={}}loadTile(z,P){const F=z.uid,te=this.loading[F]=new dr(z,this.brightness);Se.i(z.request,(ie,ve)=>{const Ce=!this.loading[F];return delete this.loading[F],Ce||ie?(te.status="done",Ce||(this.loaded[F]=te),P(ie)):ve&&ve.byteLength!==0?void te.parse(ve,this.layerIndex,z,(oe,ze)=>{te.status="done",this.loaded=this.loaded||{},this.loaded[F]=te,oe||!ze?P(oe):P(null,ze)}):(te.status="done",this.loaded[F]=te,P())})}reloadTile(z,P){const F=this.loaded,te=z.uid;if(F&&F[te]){const ie=F[te];ie.projection=z.projection,ie.brightness=z.brightness;const ve=(Ce,oe)=>{ie.reloadCallback&&(delete ie.reloadCallback,this.loadTile(z,P)),P(Ce,oe)};ie.status==="parsing"?ie.reloadCallback=ve:ie.status==="done"&&this.loadTile(z,P)}}abortTile(z,P){const F=z.uid;this.loading[F]&&delete this.loading[F],P()}removeTile(z,P){const F=this.loaded,te=z.uid;F&&F[te]&&delete F[te],P()}}class Ls{constructor(z){this.self=z,this.actor=new Se.A(z,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=Se.m({name:"mercator"}),this.workerSourceTypes={vector:Se.d,geojson:$a,"batched-model":Rs},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(P,F)=>{if(this.workerSourceTypes[P])throw new Error(`Worker source with name "${P}" already registered.`);this.workerSourceTypes[P]=F},this.self.registerRTLTextPlugin=P=>{if(Se.n.isParsed())throw new Error("RTL text plugin already registered.");Se.n.applyArabicShaping=P.applyArabicShaping,Se.n.processBidirectionalText=P.processBidirectionalText,Se.n.processStyledBidirectionalText=P.processStyledBidirectionalText}}clearCaches(z,P,F){delete this.layerIndexes[z],delete this.availableImages[z],delete this.workerSources[z],delete this.demWorkerSources[z],F()}checkIfReady(z,P,F){F()}setReferrer(z,P){this.referrer=P}spriteLoaded(z,{scope:P,isLoaded:F}){if(this.isSpriteLoaded[z]||(this.isSpriteLoaded[z]={}),this.isSpriteLoaded[z][P]=F,this.workerSources[z]&&this.workerSources[z][P])for(const te in this.workerSources[z][P]){const ie=this.workerSources[z][P][te];for(const ve in ie)ie[ve]instanceof Se.d&&(ie[ve].isSpriteLoaded=F,ie[ve].fire(new Se.o("isSpriteLoaded")))}}setImages(z,{scope:P,images:F},te){if(this.availableImages[z]||(this.availableImages[z]={}),this.availableImages[z][P]=F,this.workerSources[z]&&this.workerSources[z][P]){for(const ie in this.workerSources[z][P]){const ve=this.workerSources[z][P][ie];for(const Ce in ve)ve[Ce].availableImages=F}te()}else te()}setProjection(z,P){this.projections[z]=Se.m(P)}setBrightness(z,P,F){this.brightness=P,F()}setLayers(z,P,F){this.getLayerIndex(z,P.scope).replace(P.layers,P.options),F()}updateLayers(z,P,F){this.getLayerIndex(z,P.scope).update(P.layers,P.removedIds,P.options),F()}loadTile(z,P,F){P.projection=this.projections[z]||this.defaultProjection,this.getWorkerSource(z,P.type,P.source,P.scope).loadTile(P,F)}loadDEMTile(z,P,F){this.getDEMWorkerSource(z,P.source,P.scope).loadTile(P,F)}reloadTile(z,P,F){P.projection=this.projections[z]||this.defaultProjection,this.getWorkerSource(z,P.type,P.source,P.scope).reloadTile(P,F)}abortTile(z,P,F){this.getWorkerSource(z,P.type,P.source,P.scope).abortTile(P,F)}removeTile(z,P,F){this.getWorkerSource(z,P.type,P.source,P.scope).removeTile(P,F)}removeSource(z,P,F){if(!(this.workerSources[z]&&this.workerSources[z][P.scope]&&this.workerSources[z][P.scope][P.type]&&this.workerSources[z][P.scope][P.type][P.source]))return;const te=this.workerSources[z][P.scope][P.type][P.source];delete this.workerSources[z][P.scope][P.type][P.source],te.removeSource!==void 0?te.removeSource(P,F):F()}loadWorkerSource(z,P,F){try{this.self.importScripts(P.url),F()}catch(te){F(te.toString())}}syncRTLPluginState(z,P,F){try{Se.n.setState(P);const te=Se.n.getPluginURL();if(Se.n.isLoaded()&&!Se.n.isParsed()&&te!=null){this.self.importScripts(te);const ie=Se.n.isParsed();F(ie?void 0:new Error(`RTL Text Plugin failed to import scripts from ${te}`),ie)}}catch(te){F(te.toString())}}setDracoUrl(z,P){this.dracoUrl=P}getAvailableImages(z,P){this.availableImages[z]||(this.availableImages[z]={});let F=this.availableImages[z][P];return F||(F=[]),F}getLayerIndex(z,P){this.layerIndexes[z]||(this.layerIndexes[z]={});let F=this.layerIndexes[z][P];return F||(F=this.layerIndexes[z][P]=new Sr,F.scope=P),F}getWorkerSource(z,P,F,te){if(this.workerSources[z]||(this.workerSources[z]={}),this.workerSources[z][te]||(this.workerSources[z][te]={}),this.workerSources[z][te][P]||(this.workerSources[z][te][P]={}),this.isSpriteLoaded[z]||(this.isSpriteLoaded[z]={}),!this.workerSources[z][te][P][F]){const ie={send:(ve,Ce,oe,ze,Ge,Ve)=>{this.actor.send(ve,Ce,oe,z,Ge,Ve)},scheduler:this.actor.scheduler};this.workerSources[z][te][P][F]=new this.workerSourceTypes[P](ie,this.getLayerIndex(z,te),this.getAvailableImages(z,te),this.isSpriteLoaded[z][te],void 0,this.brightness)}return this.workerSources[z][te][P][F]}getDEMWorkerSource(z,P,F){return this.demWorkerSources[z]||(this.demWorkerSources[z]={}),this.demWorkerSources[z][F]||(this.demWorkerSources[z][F]={}),this.demWorkerSources[z][F][P]||(this.demWorkerSources[z][F][P]=new et),this.demWorkerSources[z][F][P]}enforceCacheSizeLimit(z,P){Se.q(P)}getWorkerPerformanceMetrics(z,P,F){F(void 0,void 0)}}return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope&&(self.worker=new Ls(self)),Ls}),_o(["./shared"],function(Se){return Se.s});var Ua=Yo;return Ua})})(iv);var Jp=iv.exports;const NS={key:0,class:"kvass-map__address"},US=ES({__name:"Map",props:{coordinates:{},address:{},markers:{},aspectRatio:{default:"2/1"},mapOptions:{},markerOptions:{},showControls:{type:Boolean,default:!0},showAddress:{type:Boolean,default:!1}},setup(zi){const Mr=zi,yi=Yp(),Fr=Yp(),Yo=nu(()=>({center:Mr.coordinates,zoom:12,dragPan:!0,scrollZoom:!1,dragRotate:!1,cooperativeGestures:!1,...Mr.mapOptions}));function _o(){Mr.coordinates&&yi.value&&(Fr.value=new Jp.Map({container:yi.value,center:Mr.coordinates,...Yo.value,language:document.querySelector("html")?.getAttribute("lang")||"auto"}),W(),oi())}MS(()=>{_o()}),SS(()=>{Fr.value?.remove()});const Ua=nu(()=>({color:"var(--kvass-map-primary-color)",...Mr.markerOptions})),Se=Yp([]);function W(){Fr.value&&(Se.value.forEach(Sr=>Sr.remove()),(Mr.markers||[Mr.coordinates]).forEach(Sr=>{Sr&&Se.value.push(new Jp.Marker({...Ua.value}).setLngLat(Sr).addTo(Fr.value))}))}function oi(){!Fr.value||!Mr.showControls||[new Jp.NavigationControl].forEach(Sr=>Fr.value.addControl(Sr))}return(Sr,et)=>(Kp(),ev("div",{class:"kvass-map",style:zS({"--kvass-map-aspect-ratio":Mr.aspectRatio})},[AS("div",{ref_key:"mapEl",ref:yi,class:"kvass-map__map"},null,512),Mr.showAddress?(Kp(),ev("div",NS,IS(Mr.address),1)):CS("",!0)],4))}}),VS=`.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.kvass-map{position:relative;aspect-ratio:var(--kvass-map-aspect-ratio);width:100%;background-color:var(--kvass-map-background, rgba(0, 0, 0, .2))}.kvass-map__address{padding:var(--kvass-map-address-padding-y, .5rem) var(--kvass-map-address-padding-x, .5rem);background-color:var(--kvass-map-address-background, rgba(0, 0, 0, .2));color:var(--kvass-map-address-color, rgba(255, 255, 255, .75));position:absolute;bottom:0;right:0;left:0;text-align:center}.kvass-map__map,.kvass-map .mapboxgl-canvas-container,.kvass-map .mapboxgl-canvas{height:100%;width:100%}.kvass-map .mapboxgl-ctrl-attrib,.kvass-map .mapboxgl-ctrl-logo{display:none}@media screen and (max-width: 680px){.kvass-map{aspect-ratio:1/1.4}}`,jS={__name:"Map.ce",props:{theme:{type:String,required:!0},mapboxApiToken:{type:String,required:!0},coordinates:{type:String,required:!0},markers:{type:String},zoom:{type:String,default:"8",validator(zi){return typeof parseInt(zi)=="number"}},address:String,aspectRatio:String},setup(zi){const Mr=zi,yi=nu(()=>Mr.coordinates.split(",")),Fr=nu(()=>Mr.markers?.split(";").map(_o=>_o.split(","))),Yo=kS({style:Mr.theme,accessToken:Mr.mapboxApiToken});return(_o,Ua)=>(Kp(),PS(tv(OS),null,{default:RS(()=>[LS(tv(US),{coordinates:yi.value,zoom:parseInt(Mr.zoom),markers:Fr.value,"map-options":Yo,address:zi.address,"show-address":!!zi.address,"aspect-ratio":zi.aspectRatio},null,8,["coordinates","zoom","markers","map-options","address","show-address","aspect-ratio"])]),_:1}))}},GS=DS(jS,[["styles",[VS]]]);customElements.define("kvass-map",BS(GS));
2028
+ (${r.data.width}, ${r.data.height})`))):this.fire(new Ue(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")))}hasImage(t){return t?!!this.style&&!!this.style.getImage(t):(this.fire(new Ue(new Error("Missing required image id"))),!1)}removeImage(t){this.style.removeImage(t)}loadImage(t,e){Ye(this._requestManager.transformRequest(t,J.Image),(r,i)=>{e(r,i instanceof W.HTMLImageElement?je.getImageData(i):i)})}listImages(){return this.style.listImages()}addModel(t,e){this._lazyInitEmptyStyle(),this.style.addModel(t,e)}hasModel(t){return t?this.style.hasModel(t):(this.fire(new Ue(new Error("Missing required model id"))),!1)}removeModel(t){this.style.removeModel(t)}listModels(){return this.style.listModels()}addLayer(t,e){return this._isValidId(t.id)?(this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)):this}moveLayer(t,e){return this._isValidId(t)?(this.style.moveLayer(t,e),this._update(!0)):this}removeLayer(t){return this._isValidId(t)?(this.style.removeLayer(t),this._update(!0)):this}getLayer(t){return this._isValidId(t)?this.style.getOwnLayer(t):null}setLayerZoomRange(t,e,r){return this._isValidId(t)?(this.style.setLayerZoomRange(t,e,r),this._update(!0)):this}setFilter(t,e,r={}){return this._isValidId(t)?(this.style.setFilter(t,e,r),this._update(!0)):this}getFilter(t){return this._isValidId(t)?this.style.getFilter(t):null}setPaintProperty(t,e,r,i={}){return this._isValidId(t)?(this.style.setPaintProperty(t,e,r,i),this._update(!0)):this}getPaintProperty(t,e){return this._isValidId(t)?this.style.getPaintProperty(t,e):null}setLayoutProperty(t,e,r,i={}){return this._isValidId(t)?(this.style.setLayoutProperty(t,e,r,i),this._update(!0)):this}getLayoutProperty(t,e){return this._isValidId(t)?this.style.getLayoutProperty(t,e):null}getConfigProperty(t,e){return this.style.getConfigProperty(t,e)}setConfigProperty(t,e,r){return this.style.setConfigProperty(t,e,r),this._update(!0)}setLights(t){if(this._lazyInitEmptyStyle(),t&&t.length===1&&t[0].type==="flat"){const e=t[0];e.properties?this.style.setFlatLight(e.properties,e.id,{}):this.style.setFlatLight({},"flat")}else this.style.setLights(t),this.painter.terrain&&(this.painter.terrain.invalidateRenderCache=!0);return this._update(!0)}getLights(){const t=this.style.getLights()||[];return t.length===0&&t.push({id:this.style.light.id,type:"flat",properties:this.style.getFlatLight()}),t}setLight(t,e={}){return console.log("The `map.setLight` function is deprecated, prefer using `map.setLights` with `flat` light type instead."),this.setLights([{id:"flat",type:"flat",properties:t}])}getLight(){return console.log("The `map.getLight` function is deprecated, prefer using `map.getLights` instead."),this.style.getFlatLight()}setTerrain(t){return this._lazyInitEmptyStyle(),!t&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(t),this._averageElevationLastSampledAt=-1/0,this._update(!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(t){return this._lazyInitEmptyStyle(),this.style.setFog(t),this._update(!0)}getFog(){return this.style?this.style.getFog():null}setCamera(t){return this.style.setCamera(t),this._triggerCameraUpdate(t)}_triggerCameraUpdate(t){return this._update(this.transform.setOrthographicProjectionAtLowPitch(t["camera-projection"]==="orthographic"))}getCamera(){return this.style.camera}_queryFogOpacity(t){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(Ne.convert(t),this.transform):0}setFeatureState(t,e){return this._isValidId(t.source)?(this.style.setFeatureState(t,e),this._update()):this}removeFeatureState(t,e){return this._isValidId(t.source)?(this.style.removeFeatureState(t,e),this._update()):this}getFeatureState(t){return this._isValidId(t.source)?this.style.getFeatureState(t):null}_updateContainerDimensions(){if(!this._container)return;const t=this._container.getBoundingClientRect().width||400,e=this._container.getBoundingClientRect().height||300;let r,i,o,s=this._container;for(;s&&(!i||!o);){const n=W.getComputedStyle(s).transform;n&&n!=="none"&&(r=n.match(/matrix.*\((.+)\)/)[1].split(", "),r[0]&&r[0]!=="0"&&r[0]!=="1"&&(i=r[0]),r[3]&&r[3]!=="0"&&r[3]!=="1"&&(o=r[3])),s=s.parentElement}this._containerWidth=i?Math.abs(t/i):t,this._containerHeight=o?Math.abs(e/o):e}_detectMissingCSS(){W.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")!=="rgb(250, 128, 114)"&&F("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")}_setupContainer(){const t=this._container;t.classList.add("mapboxgl-map"),(this._missingCSSCanary=Dt("div","mapboxgl-canary",t)).style.visibility="hidden",this._detectMissingCSS();const e=this._canvasContainer=Dt("div","mapboxgl-canvas-container",t);this._canvas=Dt("canvas","mapboxgl-canvas",e),this._interactive&&(e.classList.add("mapboxgl-interactive"),this._canvas.setAttribute("tabindex","0")),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region"),this._updateContainerDimensions(),this._resizeCanvas(this._containerWidth,this._containerHeight);const r=this._controlContainer=Dt("div","mapboxgl-control-container",t),i=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(o=>{i[o]=Dt("div",`mapboxgl-ctrl-${o}`,r)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(t,e){const r=je.devicePixelRatio||1;this._canvas.width=r*Math.ceil(t),this._canvas.height=r*Math.ceil(e),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${e}px`}_addMarker(t){this._markers.push(t)}_removeMarker(t){const e=this._markers.indexOf(t);e!==-1&&this._markers.splice(e,1)}_addPopup(t){this._popups.push(t)}_removePopup(t){const e=this._popups.indexOf(t);e!==-1&&this._popups.splice(e,1)}_setupPainter(){const t=we({},nf.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),e=this._canvas.getContext("webgl2",t);e?(rf(e,!0),this.painter=new SM(e,this._contextCreateOptions,this.transform),this.on("data",r=>{r.dataType==="source"&&this.painter.setTileLoadedFlag(!0)}),Jo.testSupport(e)):this.fire(new Ue(new Error("Failed to initialize WebGL")))}_contextLost(t){t.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new ae("webglcontextlost",{originalEvent:t}))}_contextRestored(t){this._setupPainter(),this.resize(),this._update(),this.fire(new ae("webglcontextrestored",{originalEvent:t}))}_onMapScroll(t){if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(t){return this._update(),this._renderTaskQueue.add(t)}_cancelRenderFrame(t){this._renderTaskQueue.remove(t)}_requestDomTask(t){!this.loaded()||this.loaded()&&!this.isMoving()?t():this._domRenderTaskQueue.add(t)}_render(t){let e;this.fire(new ae("renderstart"));const r=this.painter.context.extTimerQuery,i=je.now(),o=this.painter.context.gl;if(this.listens("gpu-timing-frame")&&(e=o.createQuery(),o.beginQuery(r.TIME_ELAPSED_EXT,e)),this.painter.context.setDirty(),this.painter.setBaseState(),(this.isMoving()||this.isRotating()||this.isZooming())&&(this._interactionRange[0]=Math.min(this._interactionRange[0],W.performance.now()),this._interactionRange[1]=Math.max(this._interactionRange[1],W.performance.now())),this._renderTaskQueue.run(t),this._domRenderTaskQueue.run(t),this._removed)return;this._updateProjectionTransition();const s=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const l=this.transform.zoom,c=this.transform.pitch,u=je.now(),h=new Ut(l,{now:u,fadeDuration:s,pitch:c,transition:this.style.transition});this.style.update(h)}this.style&&this.style.hasFogTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0);let n=!1;if(this.style&&this._sourcesDirty?(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),n=this._updateAverageElevation(i),this.style.updateSources(this.transform),this._forceMarkerAndPopupUpdate()):n=this._updateAverageElevation(i),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,s,this._crossSourceCollisions),this.style&&this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,wireframe:{terrain:this.showTerrainWireframe,layers2D:this.showLayers2DWireframe,layers3D:this.showLayers3DWireframe},showOverdrawInspector:this._showOverdrawInspector,showQueryGeometry:!!this._showQueryGeometry,showTileAABBs:this.showTileAABBs,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:s,isInitialLoad:this._isInitialLoad,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer"),gpuTimingDeferredRender:!!this.listens("gpu-timing-deferred-render"),speedIndexTiming:this.speedIndexTiming}),this.fire(new ae("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new ae("load"))),this.style&&this.style.hasTransitions()&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),e){const l=je.now()-i;o.endQuery(r.TIME_ELAPSED_EXT),setTimeout(()=>{const c=o.getQueryParameter(e,o.QUERY_RESULT)/1e6;o.deleteQuery(e),this.fire(new ae("gpu-timing-frame",{cpuTime:l,gpuTime:c})),W.performance.mark("frame-gpu",{startTime:i,detail:{gpuTime:c}})},50)}if(this.listens("gpu-timing-layer")){const l=this.painter.collectGpuTimers();setTimeout(()=>{const c=this.painter.queryGpuTimers(l);this.fire(new ae("gpu-timing-layer",{layerTimes:c}))},50)}if(this.listens("gpu-timing-deferred-render")){const l=this.painter.collectDeferredRenderGpuQueries();setTimeout(()=>{const c=this.painter.queryGpuTimeDeferredRender(l);this.fire(new ae("gpu-timing-deferred-render",{gpuTime:c}))},50)}const a=this._sourcesDirty||this._styleDirty||this._placementDirty||n;if(a||this._repaint)this.triggerRepaint();else{const l=!this.isMoving()&&this.loaded();if(l&&(n=this._updateAverageElevation(i,!0)),n)this.triggerRepaint();else if(this._triggerFrame(!1),l&&(this.fire(new ae("idle")),this._isInitialLoad=!1,this.speedIndexTiming)){const c=this._calculateSpeedIndex();this.fire(new ae("speedindexcompleted",{speedIndex:c})),this.speedIndexTiming=!1}}!this._loaded||this._fullyLoaded||a||(this._fullyLoaded=!0,of.mark(Wa.fullLoad),this._performanceMetricsCollection&&nv(this._requestManager._customAccessToken,{width:this.painter.width,height:this.painter.height,interactionRange:this._interactionRange,visibilityHidden:this._visibilityHidden,terrainEnabled:!!this.painter.style.getTerrain(),fogEnabled:!!this.painter.style.getFog(),projection:this.getProjection().name,zoom:this.transform.zoom,renderer:this.painter.context.renderer,vendor:this.painter.context.vendor}),this._authenticate())}_forceMarkerAndPopupUpdate(t){for(const e of this._markers)t&&!this.getRenderWorldCopies()&&(e._lngLat=e._lngLat.wrap()),e._update();for(const e of this._popups)!t||this.getRenderWorldCopies()||e._trackPointer||(e._lngLat=e._lngLat.wrap()),e._update()}_updateAverageElevation(t,e=!1){const r=o=>(this.transform.averageElevation=o,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return this.transform.averageElevation!==0&&r(0);const i=this.transform.elevation&&this.transform.elevation.exaggeration()!==this._averageElevationExaggeration;if(i||(e||t-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(t)){const o=this.transform.averageElevation;let s=this.transform.sampleAverageElevation();this.transform.elevation&&(this._averageElevationExaggeration=this.transform.elevation.exaggeration()),isNaN(s)?s=0:this._averageElevationLastSampledAt=t;const n=Math.abs(o-s);if(n>1){if(this._isInitialLoad||i)return this._averageElevation.jumpTo(s),r(s);this._averageElevation.easeTo(s,t,300)}else if(n>1e-4)return this._averageElevation.jumpTo(s),r(s)}return!!this._averageElevation.isEasing(t)&&r(this._averageElevation.getValue(t))}_authenticate(){av(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,t=>{if(t&&(t.message===At||t.status===401)){const e=this.painter.context.gl;rf(e,!1),this._logoControl instanceof V1&&this._logoControl._updateLogo(),e&&e.clear(e.DEPTH_BUFFER_BIT|e.COLOR_BUFFER_BIT|e.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new Ue(new Error("A valid Mapbox access token is required to use Mapbox GL JS. To create an account or a new access token, visit https://account.mapbox.com/")))}}),sv(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,()=>{})}_updateTerrain(){const t=this._isDragging();this.painter.updateTerrain(this.style,t)}_calculateSpeedIndex(){const t=this.painter.canvasCopy(),e=this.painter.getCanvasCopiesAndTimestamps();e.timeStamps.push(performance.now());const r=this.painter.context.gl,i=r.createFramebuffer();function o(s){r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,s,0);const n=new Uint8Array(r.drawingBufferWidth*r.drawingBufferHeight*4);return r.readPixels(0,0,r.drawingBufferWidth,r.drawingBufferHeight,r.RGBA,r.UNSIGNED_BYTE,n),n}return r.bindFramebuffer(r.FRAMEBUFFER,i),this._canvasPixelComparison(o(t),e.canvasCopies.map(o),e.timeStamps)}_canvasPixelComparison(t,e,r){let i=r[1]-r[0];const o=t.length/4;for(let s=0;s<e.length;s++){const n=e[s];let a=0;for(let l=0;l<n.length;l+=4)n[l]===t[l]&&n[l+1]===t[l+1]&&n[l+2]===t[l+2]&&n[l+3]===t[l+3]&&(a+=1);i+=(r[s+2]-r[s+1])*(1-a/o)}return i}remove(){this._hash&&this._hash.remove();for(const e of this._controls)e.onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this._domRenderTaskQueue.clear(),this.style&&this.style.destroy(),this.painter.destroy(),this.handlers&&this.handlers.destroy(),this.handlers=void 0,this.setStyle(null),W!==void 0&&(W.removeEventListener("resize",this._onWindowResize,!1),W.removeEventListener("orientationchange",this._onWindowResize,!1),W.removeEventListener(this._fullscreenchangeEvent,this._onWindowResize,!1),W.removeEventListener("online",this._onWindowOnline,!1),W.removeEventListener("visibilitychange",this._onVisibilityChange,!1));const t=this.painter.context.gl.getExtension("WEBGL_lose_context");t&&t.loseContext(),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvasContainer.remove(),this._controlContainer.remove(),this._missingCSSCanary.remove(),this._canvas=void 0,this._canvasContainer=void 0,this._controlContainer=void 0,this._missingCSSCanary=void 0,this._container.classList.remove("mapboxgl-map"),this._container.removeEventListener("scroll",this._onMapScroll,!1),Ha.delete(this.painter.context.gl),this._removed=!0,this.fire(new ae("remove"))}triggerRepaint(){this._triggerFrame(!0)}_triggerFrame(t){this._renderNextFrame=this._renderNextFrame||t,this.style&&!this._frame&&(this._frame=je.frame(e=>{const r=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,r&&this._render(e)}))}_preloadTiles(t){return rs(this.style?Object.values(this.style._sourceCaches):[],(e,r)=>e._preloadTiles(t,r),()=>{this.triggerRepaint()}),this}_onWindowOnline(){this._update()}_onWindowResize(t){this._trackResize&&this.resize({originalEvent:t})._update()}_onVisibilityChange(){W.document.visibilityState==="hidden"&&this._visibilityHidden++}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())}get showTerrainWireframe(){return!!this._showTerrainWireframe}set showTerrainWireframe(t){this._showTerrainWireframe!==t&&(this._showTerrainWireframe=t,this._update())}get showLayers2DWireframe(){return!!this._showLayers2DWireframe}set showLayers2DWireframe(t){this._showLayers2DWireframe!==t&&(this._showLayers2DWireframe=t,this._update())}get showLayers3DWireframe(){return!!this._showLayers3DWireframe}set showLayers3DWireframe(t){this._showLayers3DWireframe!==t&&(this._showLayers3DWireframe=t,this._update())}get speedIndexTiming(){return!!this._speedIndexTiming}set speedIndexTiming(t){this._speedIndexTiming!==t&&(this._speedIndexTiming=t,this._update())}get showPadding(){return!!this._showPadding}set showPadding(t){this._showPadding!==t&&(this._showPadding=t,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())}get repaint(){return!!this._repaint}set repaint(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(t){this._vertices=t,this._update()}get showTileAABBs(){return!!this._showTileAABBs}set showTileAABBs(t){this._showTileAABBs!==t&&(this._showTileAABBs=t,t&&this._update())}_setCacheLimits(t,e){(function(r,i){Ar=r,kr=i})(t,e)}get version(){return oi}},NavigationControl:class{constructor(t){this.options=we({},yS,t),this._container=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",e=>e.preventDefault()),this.options.showZoom&&(dr(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",e=>{this._map&&this._map.zoomIn({},{originalEvent:e})}),Dt("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",e=>{this._map&&this._map.zoomOut({},{originalEvent:e})}),Dt("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(dr(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",e=>{const r=this._map;r&&(this.options.visualizePitch?r.resetNorthPitch({},{originalEvent:e}):r.resetNorth({},{originalEvent:e}))}),this._compassIcon=Dt("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}_updateZoomButtons(){const t=this._map;if(!t)return;const e=t.getZoom(),r=e===t.getMaxZoom(),i=e===t.getMinZoom();this._zoomInButton.disabled=r,this._zoomOutButton.disabled=i,this._zoomInButton.setAttribute("aria-disabled",r.toString()),this._zoomOutButton.setAttribute("aria-disabled",i.toString())}_rotateCompassArrow(){const t=this._map;if(!t)return;const e=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(t.transform.pitch*(Math.PI/180)),.5)}) rotateX(${t.transform.pitch}deg) rotateZ(${t.transform.angle*(180/Math.PI)}deg)`:`rotate(${t.transform.angle*(180/Math.PI)}deg)`;t._requestDomTask(()=>{this._compassIcon&&(this._compassIcon.style.transform=e)})}onAdd(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),t.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&t.on("pitch",this._rotateCompassArrow),t.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new xS(t,this._compass,this.options.visualizePitch)),this._container}onRemove(){const t=this._map;t&&(this._container.remove(),this.options.showZoom&&t.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&t.off("pitch",this._rotateCompassArrow),t.off("rotate",this._rotateCompassArrow),this._handler&&this._handler.off(),this._handler=void 0),this._map=void 0)}_createButton(t,e){const r=Dt("button",t,this._container);return r.type="button",r.addEventListener("click",e),r}_setButtonTitle(t,e){if(!this._map)return;const r=this._map._getUIString(`NavigationControl.${e}`);t.setAttribute("aria-label",r),t.firstElementChild&&t.firstElementChild.setAttribute("title",r)}},GeolocateControl:class extends ir{constructor(t){super(),this.options=we({geolocation:W.navigator.geolocation},vS,t),dr(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker","_updateMarkerRotation","_onDeviceOrientation"],this),this._updateMarkerRotationThrottled=k1(this._updateMarkerRotation,20),this._numberOfWatches=0}onAdd(t){return this._map=t,this._container=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkGeolocationSupport(this._setupUI),this._container}onRemove(){this._geolocationWatchID!==void 0&&(this.options.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),this._container.remove(),this._map.off("zoom",this._onZoom),this._map=void 0,this._numberOfWatches=0,this._noTimeout=!1}_checkGeolocationSupport(t){const e=(r=!!this.options.geolocation)=>{this._supportsGeolocation=r,t(r)};this._supportsGeolocation!==void 0?t(this._supportsGeolocation):W.navigator.permissions!==void 0?W.navigator.permissions.query({name:"geolocation"}).then(r=>e(r.state!=="denied")).catch(()=>e()):e()}_isOutOfMapMaxBounds(t){const e=this._map.getMaxBounds(),r=t.coords;return!!e&&(r.longitude<e.getWest()||r.longitude>e.getEast()||r.latitude<e.getSouth()||r.latitude>e.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}}_onSuccess(t){if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new ae("outofmaxbounds",t)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=t,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(t),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(t),this.options.showUserLocation&&this._userLocationDotMarker.removeClassName("mapboxgl-user-location-dot-stale"),this.fire(new ae("geolocate",t)),this._finish()}}_updateCamera(t){const e=new Ne(t.coords.longitude,t.coords.latitude),r=t.coords.accuracy,i=we({bearing:this._map.getBearing()},this.options.fitBoundsOptions);this._map.fitBounds(e.toBounds(r),i,{geolocateSource:!0})}_updateMarker(t){if(t){const e=new Ne(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(e).addTo(this._map),this._userLocationDotMarker.setLngLat(e).addTo(this._map),this._accuracy=t.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()}_updateCircleRadius(){const t=this._map.transform,e=It(1,t._center.lat)*t.worldSize,r=Math.ceil(2*this._accuracy*e);this._circleElement.style.width=`${r}px`,this._circleElement.style.height=`${r}px`}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}_updateMarkerRotation(){this._userLocationDotMarker&&typeof this._heading=="number"?(this._userLocationDotMarker.setRotation(this._heading),this._userLocationDotMarker.addClassName("mapboxgl-user-location-show-heading")):(this._userLocationDotMarker.removeClassName("mapboxgl-user-location-show-heading"),this._userLocationDotMarker.setRotation(0))}_onError(t){if(this._map){if(this.options.trackUserLocation)if(t.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(t.code===3&&this._noTimeout)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._userLocationDotMarker.addClassName("mapboxgl-user-location-dot-stale"),this.fire(new ae("error",t)),this._finish()}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0}_setupUI(t){if(this._map!==void 0){if(this._container.addEventListener("contextmenu",e=>e.preventDefault()),this._geolocateButton=Dt("button","mapboxgl-ctrl-geolocate",this._container),Dt("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",t===!1){F("Geolocation support is not available so the GeolocateControl will be disabled.");const e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e)}else{const e=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.setAttribute("aria-label",e),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",e)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=Dt("div","mapboxgl-user-location"),this._dotElement.appendChild(Dt("div","mapboxgl-user-location-dot")),this._dotElement.appendChild(Dt("div","mapboxgl-user-location-heading")),this._userLocationDotMarker=new Gp({element:this._dotElement,rotationAlignment:"map",pitchAlignment:"map"}),this._circleElement=Dt("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Gp({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",e=>{e.geolocateSource||this._watchState!=="ACTIVE_LOCK"||e.originalEvent&&e.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this.fire(new ae("trackuserlocationend")))})}}_onDeviceOrientation(t){this._userLocationDotMarker&&(t.webkitCompassHeading?this._heading=t.webkitCompassHeading:t.absolute===!0&&(this._heading=-1*t.alpha),this._updateMarkerRotationThrottled())}trigger(){if(!this._setup)return F("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new ae("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":this._numberOfWatches--,this._noTimeout=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new ae("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new ae("trackuserlocationstart"))}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let t;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._numberOfWatches++,this._numberOfWatches>1?(t={maximumAge:6e5,timeout:0},this._noTimeout=!0):(t=this.options.positionOptions,this._noTimeout=!1),this._geolocationWatchID=this.options.geolocation.watchPosition(this._onSuccess,this._onError,t),this.options.showUserHeading&&this._addDeviceOrientationListener()}}else this.options.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_addDeviceOrientationListener(){const t=()=>{W.addEventListener("ondeviceorientationabsolute"in W?"deviceorientationabsolute":"deviceorientation",this._onDeviceOrientation)};W.DeviceMotionEvent!==void 0&&typeof W.DeviceMotionEvent.requestPermission=="function"?DeviceOrientationEvent.requestPermission().then(e=>{e==="granted"&&t()}).catch(console.error):t()}_clearWatch(){this.options.geolocation.clearWatch(this._geolocationWatchID),W.removeEventListener("deviceorientation",this._onDeviceOrientation),W.removeEventListener("deviceorientationabsolute",this._onDeviceOrientation),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},AttributionControl:U1,ScaleControl:class{constructor(t){this.options=we({},bS,t),this._isNumberFormatSupported=function(){try{return new Intl.NumberFormat("en",{style:"unit",unitDisplay:"short",unit:"meter"}),!0}catch{return!1}}(),dr(["_update","_setScale","setUnit"],this)}getDefaultPosition(){return"bottom-left"}_update(){const t=this.options.maxWidth||100,e=this._map,r=e._containerHeight/2,i=e._containerWidth/2-t/2,o=e.unproject([i,r]),s=e.unproject([i+t,r]),n=o.distanceTo(s);if(this.options.unit==="imperial"){const a=3.2808*n;a>5280?this._setScale(t,a/5280,"mile"):this._setScale(t,a,"foot")}else this.options.unit==="nautical"?this._setScale(t,n/1852,"nautical-mile"):n>=1e3?this._setScale(t,n/1e3,"kilometer"):this._setScale(t,n,"meter")}_setScale(t,e,r){this._map._requestDomTask(()=>{const i=function(s){const n=Math.pow(10,`${Math.floor(s)}`.length-1);let a=s/n;return a=a>=10?10:a>=5?5:a>=3?3:a>=2?2:a>=1?1:function(l){const c=Math.pow(10,Math.ceil(-Math.log(l)/Math.LN10));return Math.round(l*c)/c}(a),n*a}(e),o=i/e;this._container.innerHTML=this._isNumberFormatSupported&&r!=="nautical-mile"?new Intl.NumberFormat(this._language,{style:"unit",unitDisplay:"short",unit:r}).format(i):`${i}&nbsp;${wS[r]}`,this._container.style.width=t*o+"px"})}onAdd(t){return this._map=t,this._language=t.getLanguage(),this._container=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._container.dir="auto",this._map.on("move",this._update),this._update(),this._container}onRemove(){this._container.remove(),this._map.off("move",this._update),this._map=void 0}_setLanguage(t){this._language=t,this._update()}setUnit(t){this.options.unit=t,this._update()}},FullscreenControl:class{constructor(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof W.HTMLElement?this._container=t.container:F("Full screen control 'container' must be a DOM element.")),dr(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in W.document?this._fullscreenchange="fullscreenchange":"onwebkitfullscreenchange"in W.document&&(this._fullscreenchange="webkitfullscreenchange")}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=Dt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",F("This device does not support fullscreen mode.")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,W.document.removeEventListener(this._fullscreenchange,this._changeIcon)}_checkFullscreenSupport(){return!(!W.document.fullscreenEnabled&&!W.document.webkitFullscreenEnabled)}_setupUI(){const t=this._fullscreenButton=Dt("button","mapboxgl-ctrl-fullscreen",this._controlContainer);Dt("span","mapboxgl-ctrl-icon",t).setAttribute("aria-hidden","true"),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),W.document.addEventListener(this._fullscreenchange,this._changeIcon)}_updateTitle(){const t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute("title",t)}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_changeIcon(){(W.document.fullscreenElement||W.document.webkitFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())}_onClickFullscreen(){this._isFullscreen()?W.document.exitFullscreen?W.document.exitFullscreen():W.document.webkitCancelFullScreen&&W.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()}},Popup:class extends ir{constructor(t){super(),this.options=we(Object.create(pS),t),dr(["_update","_onClose","remove","_onMouseEvent"],this),this._classList=new Set(t&&t.className?t.className.trim().split(/\s+/):[])}addTo(t){return this._map&&this.remove(),this._map=t,this.options.closeOnClick&&t.on("preclick",this._onClose),this.options.closeOnMove&&t.on("move",this._onClose),t.on("remove",this.remove),this._update(),t._addPopup(this),this._focusFirstElement(),this._trackPointer?(t.on("mousemove",this._onMouseEvent),t.on("mouseup",this._onMouseEvent),t._canvasContainer.classList.add("mapboxgl-track-pointer")):t.on("move",this._update),this.fire(new ae("open")),this}isOpen(){return!!this._map}remove(){this._content&&this._content.remove(),this._container&&(this._container.remove(),this._container=void 0);const t=this._map;return t&&(t.off("move",this._update),t.off("move",this._onClose),t.off("preclick",this._onClose),t.off("click",this._onClose),t.off("remove",this.remove),t.off("mousemove",this._onMouseEvent),t.off("mouseup",this._onMouseEvent),t.off("drag",this._onMouseEvent),t._canvasContainer&&t._canvasContainer.classList.remove("mapboxgl-track-pointer"),t._removePopup(this),this._map=void 0),this.fire(new ae("close")),this}getLngLat(){return this._lngLat}setLngLat(t){this._lngLat=Ne.convert(t),this._pos=null,this._trackPointer=!1,this._update();const e=this._map;return e&&(e.on("move",this._update),e.off("mousemove",this._onMouseEvent),e._canvasContainer.classList.remove("mapboxgl-track-pointer")),this}trackPointer(){this._trackPointer=!0,this._pos=null,this._update();const t=this._map;return t&&(t.off("move",this._update),t.on("mousemove",this._onMouseEvent),t.on("drag",this._onMouseEvent),t._canvasContainer.classList.add("mapboxgl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(W.document.createTextNode(t))}setHTML(t){const e=W.document.createDocumentFragment(),r=W.document.createElement("body");let i;for(r.innerHTML=t;i=r.firstChild,i;)e.appendChild(i);return this.setDOMContent(e)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(t){return this.options.maxWidth=t,this._update(),this}setDOMContent(t){let e=this._content;if(e)for(;e.hasChildNodes();)e.firstChild&&e.removeChild(e.firstChild);else e=this._content=Dt("div","mapboxgl-popup-content",this._container||void 0);if(e.appendChild(t),this.options.closeButton){const r=this._closeButton=Dt("button","mapboxgl-popup-close-button",e);r.type="button",r.setAttribute("aria-label","Close popup"),r.setAttribute("aria-hidden","true"),r.innerHTML="&#215;",r.addEventListener("click",this._onClose)}return this._update(),this._focusFirstElement(),this}addClassName(t){return this._classList.add(t),this._updateClassList(),this}removeClassName(t){return this._classList.delete(t),this._updateClassList(),this}setOffset(t){return this.options.offset=t,this._update(),this}toggleClassName(t){let e;return this._classList.delete(t)?e=!1:(this._classList.add(t),e=!0),this._updateClassList(),e}_onMouseEvent(t){this._update(t.point)}_getAnchor(t){if(this.options.anchor)return this.options.anchor;const e=this._map,r=this._container,i=this._pos;if(!e||!r||!i)return"bottom";const o=r.offsetWidth,s=r.offsetHeight,n=i.x<o/2,a=i.x>e.transform.width-o/2;if(i.y+t<s)return n?"top-left":a?"top-right":"top";if(i.y>e.transform.height-s){if(n)return"bottom-left";if(a)return"bottom-right"}return n?"left":a?"right":"bottom"}_updateClassList(){const t=this._container;if(!t)return;const e=[...this._classList];e.push("mapboxgl-popup"),this._anchor&&e.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&e.push("mapboxgl-popup-track-pointer"),t.className=e.join(" ")}_update(t){const e=this._map,r=this._content;if(!e||!this._lngLat&&!this._trackPointer||!r)return;let i=this._container;if(i||(i=this._container=Dt("div","mapboxgl-popup",e.getContainer()),this._tip=Dt("div","mapboxgl-popup-tip",i),i.appendChild(r)),this.options.maxWidth&&i.style.maxWidth!==this.options.maxWidth&&(i.style.maxWidth=this.options.maxWidth),e.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=G1(this._lngLat,this._pos,e.transform)),!this._trackPointer||t){const o=this._pos=this._trackPointer&&t?t:e.project(this._lngLat),s=q1(this.options.offset),n=this._anchor=this._getAnchor(s.y),a=q1(this.options.offset,n),l=o.add(a).round();e._requestDomTask(()=>{this._container&&n&&(this._container.style.transform=`${jp[n]} translate(${l.x}px,${l.y}px)`)})}if(!this._marker&&e._showingGlobe()){const o=Vl(e.transform,this._lngLat)?0:1;this._setOpacity(o)}this._updateClassList()}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const t=this._container.querySelector(fS);t&&t.focus()}_onClose(){this.remove()}_setOpacity(t){this._container&&(this._container.style.opacity=`${t}`),this._content&&(this._content.style.pointerEvents=t?"auto":"none")}},Marker:Gp,Style:Ci,LngLat:Ne,LngLatBounds:Hr,Point:N,MercatorCoordinate:lt,FreeCameraOptions:t0,Evented:ir,config:et,prewarm:function(){Ra().acquire(pp)},clearPrewarmedResources:function(){const t=Pa;t&&(t.isPreloaded()&&t.numActive()===1?(t.release(pp),Pa=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},get accessToken(){return et.ACCESS_TOKEN},set accessToken(t){et.ACCESS_TOKEN=t},get baseApiUrl(){return et.API_URL},set baseApiUrl(t){et.API_URL=t},get workerCount(){return En.workerCount},set workerCount(t){En.workerCount=t},get maxParallelImageRequests(){return et.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){et.MAX_PARALLEL_IMAGE_REQUESTS=t},clearStorage(t){(function(e){if(!Bs())return;const r=W.caches.delete(Lt);e&&r.catch(e).then(()=>e())})(t)},workerUrl:"",workerClass:null,get dracoUrl(){return _x()},set dracoUrl(t){(function(e){fp=je.resolveURL(e),mp||(mp=new Ss(Ra(),new ir)),mp.broadcast("setDracoUrl",fp)})(t)},setNow:je.setNow,restoreNow:je.restoreNow};Se.A=ax,Se.D=sc,Se.E=H,Se.F=Bd,Se.K=jc,Se.O=mt,Se.P=N,Se.T=S0,Se.V=ec,Se.a=Ql,Se.b=oy,Se.c=Pc,Se.d=class extends ir{constructor(t,e,r,i,o,s){super(),this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=o||fx,this.loading={},this.loaded={},this.deduped=new px(t.scheduler),this.isSpriteLoaded=i,this.scheduler=t.scheduler,this.brightness=s}loadTile(t,e){const r=t.uid,i=t&&t.request,o=i&&i.collectResourceTiming,s=this.loading[r]=new j3(t);s.abort=this.loadVectorData(t,(n,a)=>{const l=!this.loading[r];if(delete this.loading[r],l||n||!a)return s.status="done",l||(this.loaded[r]=s),e(n);const c=a.rawData,u={};a.expires&&(u.expires=a.expires),a.cacheControl&&(u.cacheControl=a.cacheControl),s.vectorTile=a.vectorTile||new Rd(new oc(c));const h=()=>{s.parse(s.vectorTile,this.layerIndex,this.availableImages,this.actor,(d,p)=>{if(d||!p)return e(d);const f={};if(o){const m=sf(i);m.length>0&&(f.resourceTiming=JSON.parse(JSON.stringify(m)))}e(null,we({rawTileData:c.slice(0)},p,u,f))})};this.isSpriteLoaded?h():this.once("isSpriteLoaded",()=>{this.scheduler?this.scheduler.add(h,{type:"parseTile",isSymbolTile:t.isSymbolTile,zoom:t.tileZoom}):h()}),this.loaded=this.loaded||{},this.loaded[r]=s})}reloadTile(t,e){const r=this.loaded,i=t.uid,o=this;if(r&&r[i]){const s=r[i];s.showCollisionBoxes=t.showCollisionBoxes,s.projection=t.projection,s.brightness=t.brightness,s.tileTransform=bs(t.tileID.canonical,t.projection),s.extraShadowCaster=t.extraShadowCaster;const n=(a,l)=>{const c=s.reloadCallback;c&&(delete s.reloadCallback,s.parse(s.vectorTile,o.layerIndex,this.availableImages,o.actor,c)),e(a,l)};s.status==="parsing"?s.reloadCallback=n:s.status==="done"&&(s.vectorTile?s.parse(s.vectorTile,this.layerIndex,this.availableImages,this.actor,n):n())}else e(null,void 0)}abortTile(t,e){const r=t.uid,i=this.loading[r];i&&(i.abort&&i.abort(),delete this.loading[r]),e()}removeTile(t,e){const r=this.loaded,i=t.uid;r&&r[i]&&delete r[i],e()}},Se.e=To,Se.f=sf,Se.g=si,Se.h=ue,Se.i=fe,Se.j=function(t,e){const r=bp(t);for(const i of r){for(const o of i.meshes)K3(o);i.lights&&(i.lightMeshIndex=i.meshes.length,i.meshes.push(Q3(i.lights,e)))}return r},Se.k=Ut,Se.l=function(t){let e=0;if(new Uint32Array(t,0,1)[0]!==yx){const r=new Uint32Array(t,0,7),[,,i,o,s,n]=r;e=r.byteLength+o+s+n+s,(i!==t.byteLength||e>=t.byteLength)&&F("Invalid b3dm header information.")}return wx(t,e)},Se.m=fc,Se.n=hi,Se.o=ae,Se.p=Ds,Se.q=function(t){Ur(),Pr&&Pr.then(e=>{e.keys().then(r=>{for(let i=0;i<r.length-t;i++)e.delete(r[i])})})},Se.r=Ax,Se.s=ou,Se.t=ca,Se.v=is,Se.w=W}),_o(["./shared"],function(Se){function W(le){if(typeof le=="number"||typeof le=="boolean"||typeof le=="string"||le==null)return JSON.stringify(le);if(Array.isArray(le)){let P="[";for(const F of le)P+=`${W(F)},`;return`${P}]`}let z="{";for(const P of Object.keys(le).sort())z+=`${P}:${W(le[P])},`;return`${z}}`}function oi(le){let z="";for(const P of Se.r)z+=`/${W(le[P])}`;return z}class Sr{constructor(z){this.keyCache={},this._layers={},this._layerConfigs={},z&&this.replace(z)}replace(z,P){this._layerConfigs={},this._layers={},this.update(z,[],P)}update(z,P,F){this._options=F;for(const ie of z){this._layerConfigs[ie.id]=ie;const ve=this._layers[ie.id]=Se.c(ie,this._options);ve.setScope(this.scope),ve.compileFilter(),this.keyCache[ie.id]&&delete this.keyCache[ie.id]}for(const ie of P)delete this.keyCache[ie],delete this._layerConfigs[ie],delete this._layers[ie];this.familiesBySource={};const te=function(ie,ve){const Ce={};for(let ze=0;ze<ie.length;ze++){const Ge=ve&&ve[ie[ze].id]||oi(ie[ze]);ve&&(ve[ie[ze].id]=Ge);let Ve=Ce[Ge];Ve||(Ve=Ce[Ge]=[]),Ve.push(ie[ze])}const oe=[];for(const ze in Ce)oe.push(Ce[ze]);return oe}(Se.v(this._layerConfigs),this.keyCache);for(const ie of te){const ve=ie.map(kt=>this._layers[kt.id]),Ce=ve[0];if(Ce.visibility==="none")continue;const oe=Ce.source||"";let ze=this.familiesBySource[oe];ze||(ze=this.familiesBySource[oe]={});const Ge=Ce.sourceLayer||"_geojsonTileLayer";let Ve=ze[Ge];Ve||(Ve=ze[Ge]=[]),Ve.push(ve)}}}class et{loadTile(z,P){const{uid:F,encoding:te,rawImageData:ie,padding:ve}=z,Ce=Se.w.ImageBitmap&&ie instanceof Se.w.ImageBitmap?this.getImageData(ie,ve):ie;P(null,new Se.D(F,Ce,te,ve<1))}getImageData(z,P){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(z.width,z.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d",{willReadFrequently:!0})),this.offscreenCanvas.width=z.width,this.offscreenCanvas.height=z.height,this.offscreenCanvasContext.drawImage(z,0,0,z.width,z.height);const F=this.offscreenCanvasContext.getImageData(-P,-P,z.width+2*P,z.height+2*P);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),F}}function Jo(le,z){if(le.length!==0){go(le[0],z);for(var P=1;P<le.length;P++)go(le[P],!z)}}function go(le,z){for(var P=0,F=0,te=0,ie=le.length,ve=ie-1;te<ie;ve=te++){var Ce=(le[te][0]-le[ve][0])*(le[ve][1]+le[te][1]),oe=P+Ce;F+=Math.abs(P)>=Math.abs(Ce)?P-oe+Ce:Ce-oe+P,P=oe}P+F>=0!=!!z&&le.reverse()}var yo=Se.g(function le(z,P){var F,te=z&&z.type;if(te==="FeatureCollection")for(F=0;F<z.features.length;F++)le(z.features[F],P);else if(te==="GeometryCollection")for(F=0;F<z.geometries.length;F++)le(z.geometries[F],P);else if(te==="Feature")le(z.geometry,P);else if(te==="Polygon")Jo(z.coordinates,P);else if(te==="MultiPolygon")for(F=0;F<z.coordinates.length;F++)Jo(z.coordinates[F],P);return z});const zn=Se.V.prototype.toGeoJSON;var xo={exports:{}},Va=Se.p,Dn=Se.a.VectorTileFeature,si=ja;function ja(le,z){this.options=z||{},this.features=le,this.length=le.length}function Ko(le,z){this.id=typeof le.id=="number"?le.id:void 0,this.type=le.type,this.rawGeometry=le.type===1?[le.geometry]:le.geometry,this.properties=le.tags,this.extent=z||4096}ja.prototype.feature=function(le){return new Ko(this.features[le],this.options.extent)},Ko.prototype.loadGeometry=function(){var le=this.rawGeometry;this.geometry=[];for(var z=0;z<le.length;z++){for(var P=le[z],F=[],te=0;te<P.length;te++)F.push(new Va(P[te][0],P[te][1]));this.geometry.push(F)}return this.geometry},Ko.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var le=this.geometry,z=1/0,P=-1/0,F=1/0,te=-1/0,ie=0;ie<le.length;ie++)for(var ve=le[ie],Ce=0;Ce<ve.length;Ce++){var oe=ve[Ce];z=Math.min(z,oe.x),P=Math.max(P,oe.x),F=Math.min(F,oe.y),te=Math.max(te,oe.y)}return[z,F,P,te]},Ko.prototype.toGeoJSON=Dn.prototype.toGeoJSON;var Ga=Se.b,Ds=si;function Di(le){var z=new Ga;return function(P,F){for(var te in P.layers)F.writeMessage(3,N,P.layers[te])}(le,z),z.finish()}function N(le,z){var P;z.writeVarintField(15,le.version||1),z.writeStringField(1,le.name||""),z.writeVarintField(5,le.extent||4096);var F={keys:[],values:[],keycache:{},valuecache:{}};for(P=0;P<le.length;P++)F.feature=le.feature(P),z.writeMessage(2,dt,F);var te=F.keys;for(P=0;P<te.length;P++)z.writeStringField(3,te[P]);var ie=F.values;for(P=0;P<ie.length;P++)z.writeMessage(4,lu,ie[P])}function dt(le,z){var P=le.feature;P.id!==void 0&&z.writeVarintField(1,P.id),z.writeMessage(2,au,le),z.writeVarintField(3,P.type),z.writeMessage(4,xr,P)}function au(le,z){var P=le.feature,F=le.keys,te=le.values,ie=le.keycache,ve=le.valuecache;for(var Ce in P.properties){var oe=P.properties[Ce],ze=ie[Ce];if(oe!==null){ze===void 0&&(F.push(Ce),ie[Ce]=ze=F.length-1),z.writeVarint(ze);var Ge=typeof oe;Ge!=="string"&&Ge!=="boolean"&&Ge!=="number"&&(oe=JSON.stringify(oe));var Ve=Ge+":"+oe,kt=ve[Ve];kt===void 0&&(te.push(oe),ve[Ve]=kt=te.length-1),z.writeVarint(kt)}}}function Qo(le,z){return(z<<3)+(7&le)}function $e(le){return le<<1^le>>31}function xr(le,z){for(var P=le.loadGeometry(),F=le.type,te=0,ie=0,ve=P.length,Ce=0;Ce<ve;Ce++){var oe=P[Ce],ze=1;F===1&&(ze=oe.length),z.writeVarint(Qo(1,ze));for(var Ge=F===3?oe.length-1:oe.length,Ve=0;Ve<Ge;Ve++){Ve===1&&F!==1&&z.writeVarint(Qo(2,Ge-1));var kt=oe[Ve].x-te,Zt=oe[Ve].y-ie;z.writeVarint($e(kt)),z.writeVarint($e(Zt)),te+=kt,ie+=Zt}F===3&&z.writeVarint(Qo(7,1))}}function lu(le,z){var P=typeof le;P==="string"?z.writeStringField(1,le):P==="boolean"?z.writeBooleanField(7,le):P==="number"&&(le%1!=0?z.writeDoubleField(3,le):le<0?z.writeSVarintField(6,le):z.writeVarintField(5,le))}xo.exports=Di,xo.exports.fromVectorTileJs=Di,xo.exports.fromGeojsonVt=function(le,z){z=z||{};var P={};for(var F in le)P[F]=new Ds(le[F].features,z),P[F].name=F,P[F].version=z.version,P[F].extent=z.extent;return Di({layers:P})},xo.exports.GeoJSONWrapper=Ds;var ks=Se.g(xo.exports);const cu={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:le=>le},es=Math.fround||(ts=new Float32Array(1),le=>(ts[0]=+le,ts[0]));var ts;const ni=3,Me=5,ki=6;class Pi{constructor(z){this.options=Object.assign(Object.create(cu),z),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(z){const{log:P,minZoom:F,maxZoom:te}=this.options;P&&console.time("total time");const ie=`prepare ${z.length} points`;P&&console.time(ie),this.points=z;const ve=[];for(let oe=0;oe<z.length;oe++){const ze=z[oe];if(!ze.geometry)continue;const[Ge,Ve]=ze.geometry.coordinates,kt=es(we(Ge)),Zt=es(Nr(Ve));ve.push(kt,Zt,1/0,oe,-1,1),this.options.reduce&&ve.push(0)}let Ce=this.trees[te+1]=this._createTree(ve);P&&console.timeEnd(ie);for(let oe=te;oe>=F;oe--){const ze=+Date.now();Ce=this.trees[oe]=this._createTree(this._cluster(Ce,oe)),P&&console.log("z%d: %d clusters in %dms",oe,Ce.numItems,+Date.now()-ze)}return P&&console.timeEnd("total time"),this}getClusters(z,P){let F=((z[0]+180)%360+360)%360-180;const te=Math.max(-90,Math.min(90,z[1]));let ie=z[2]===180?180:((z[2]+180)%360+360)%360-180;const ve=Math.max(-90,Math.min(90,z[3]));if(z[2]-z[0]>=360)F=-180,ie=180;else if(F>ie){const Ve=this.getClusters([F,te,180,ve],P),kt=this.getClusters([-180,te,ie,ve],P);return Ve.concat(kt)}const Ce=this.trees[this._limitZoom(P)],oe=Ce.range(we(F),Nr(ve),we(ie),Nr(te)),ze=Ce.data,Ge=[];for(const Ve of oe){const kt=this.stride*Ve;Ge.push(ze[kt+Me]>1?rs(ze,kt,this.clusterProps):this.points[ze[kt+ni]])}return Ge}getChildren(z){const P=this._getOriginId(z),F=this._getOriginZoom(z),te="No cluster with the specified id.",ie=this.trees[F];if(!ie)throw new Error(te);const ve=ie.data;if(P*this.stride>=ve.length)throw new Error(te);const Ce=this.options.radius/(this.options.extent*Math.pow(2,F-1)),oe=ie.within(ve[P*this.stride],ve[P*this.stride+1],Ce),ze=[];for(const Ge of oe){const Ve=Ge*this.stride;ve[Ve+4]===z&&ze.push(ve[Ve+Me]>1?rs(ve,Ve,this.clusterProps):this.points[ve[Ve+ni]])}if(ze.length===0)throw new Error(te);return ze}getLeaves(z,P,F){const te=[];return this._appendLeaves(te,z,P=P||10,F=F||0,0),te}getTile(z,P,F){const te=this.trees[this._limitZoom(z)],ie=Math.pow(2,z),{extent:ve,radius:Ce}=this.options,oe=Ce/ve,ze=(F-oe)/ie,Ge=(F+1+oe)/ie,Ve={features:[]};return this._addTileFeatures(te.range((P-oe)/ie,ze,(P+1+oe)/ie,Ge),te.data,P,F,ie,Ve),P===0&&this._addTileFeatures(te.range(1-oe/ie,ze,1,Ge),te.data,ie,F,ie,Ve),P===ie-1&&this._addTileFeatures(te.range(0,ze,oe/ie,Ge),te.data,-1,F,ie,Ve),Ve.features.length?Ve:null}getClusterExpansionZoom(z){let P=this._getOriginZoom(z)-1;for(;P<=this.options.maxZoom;){const F=this.getChildren(z);if(P++,F.length!==1)break;z=F[0].properties.cluster_id}return P}_appendLeaves(z,P,F,te,ie){const ve=this.getChildren(P);for(const Ce of ve){const oe=Ce.properties;if(oe&&oe.cluster?ie+oe.point_count<=te?ie+=oe.point_count:ie=this._appendLeaves(z,oe.cluster_id,F,te,ie):ie<te?ie++:z.push(Ce),z.length===F)break}return ie}_createTree(z){const P=new Se.K(z.length/this.stride|0,this.options.nodeSize,Float32Array);for(let F=0;F<z.length;F+=this.stride)P.add(z[F],z[F+1]);return P.finish(),P.data=z,P}_addTileFeatures(z,P,F,te,ie,ve){for(const Ce of z){const oe=Ce*this.stride,ze=P[oe+Me]>1;let Ge,Ve,kt;if(ze)Ge=is(P,oe,this.clusterProps),Ve=P[oe],kt=P[oe+1];else{const $t=this.points[P[oe+ni]];Ge=$t.properties;const[Qt,Lt]=$t.geometry.coordinates;Ve=we(Qt),kt=Nr(Lt)}const Zt={type:1,geometry:[[Math.round(this.options.extent*(Ve*ie-F)),Math.round(this.options.extent*(kt*ie-te))]],tags:Ge};let vr;vr=ze||this.options.generateId?P[oe+ni]:this.points[P[oe+ni]].id,vr!==void 0&&(Zt.id=vr),ve.features.push(Zt)}}_limitZoom(z){return Math.max(this.options.minZoom,Math.min(Math.floor(+z),this.options.maxZoom+1))}_cluster(z,P){const{radius:F,extent:te,reduce:ie,minPoints:ve}=this.options,Ce=F/(te*Math.pow(2,P)),oe=z.data,ze=[],Ge=this.stride;for(let Ve=0;Ve<oe.length;Ve+=Ge){if(oe[Ve+2]<=P)continue;oe[Ve+2]=P;const kt=oe[Ve],Zt=oe[Ve+1],vr=z.within(oe[Ve],oe[Ve+1],Ce),$t=oe[Ve+Me];let Qt=$t;for(const Lt of vr){const Ar=Lt*Ge;oe[Ar+2]>P&&(Qt+=oe[Ar+Me])}if(Qt>$t&&Qt>=ve){let Lt,Ar=kt*$t,kr=Zt*$t,Pr=-1;const xi=((Ve/Ge|0)<<5)+(P+1)+this.points.length;for(const Bs of vr){const Ur=Bs*Ge;if(oe[Ur+2]<=P)continue;oe[Ur+2]=P;const Xi=oe[Ur+Me];Ar+=oe[Ur]*Xi,kr+=oe[Ur+1]*Xi,oe[Ur+4]=xi,ie&&(Lt||(Lt=this._map(oe,Ve,!0),Pr=this.clusterProps.length,this.clusterProps.push(Lt)),ie(Lt,this._map(oe,Ur)))}oe[Ve+4]=xi,ze.push(Ar/Qt,kr/Qt,1/0,xi,-1,Qt),ie&&ze.push(Pr)}else{for(let Lt=0;Lt<Ge;Lt++)ze.push(oe[Ve+Lt]);if(Qt>1)for(const Lt of vr){const Ar=Lt*Ge;if(!(oe[Ar+2]<=P)){oe[Ar+2]=P;for(let kr=0;kr<Ge;kr++)ze.push(oe[Ar+kr])}}}}return ze}_getOriginId(z){return z-this.points.length>>5}_getOriginZoom(z){return(z-this.points.length)%32}_map(z,P,F){if(z[P+Me]>1){const ve=this.clusterProps[z[P+ki]];return F?Object.assign({},ve):ve}const te=this.points[z[P+ni]].properties,ie=this.options.map(te);return F&&ie===te?Object.assign({},ie):ie}}function rs(le,z,P){return{type:"Feature",id:le[z+ni],properties:is(le,z,P),geometry:{type:"Point",coordinates:[(F=le[z],360*(F-.5)),uu(le[z+1])]}};var F}function is(le,z,P){const F=le[z+Me],te=F>=1e4?`${Math.round(F/1e3)}k`:F>=1e3?Math.round(F/100)/10+"k":F,ie=le[z+ki],ve=ie===-1?{}:Object.assign({},P[ie]);return Object.assign(ve,{cluster:!0,cluster_id:le[z+ni],point_count:F,point_count_abbreviated:te})}function we(le){return le/360+.5}function Nr(le){const z=Math.sin(le*Math.PI/180),P=.5-.25*Math.log((1+z)/(1-z))/Math.PI;return P<0?0:P>1?1:P}function uu(le){const z=(180-360*le)*Math.PI/180;return 360*Math.atan(Math.exp(z))/Math.PI-90}var Ps={exports:{}};Ps.exports=function(){function le(J,Q,ne,ce){for(var ue,fe=ce,_e=ne-Q>>1,he=ne-Q,Ee=J[Q],me=J[Q+1],Ye=J[ne],At=J[ne+1],Pe=Q+3;Pe<ne;Pe+=3){var wt=z(J[Pe],J[Pe+1],Ee,me,Ye,At);if(wt>fe)ue=Pe,fe=wt;else if(wt===fe){var Ht=Math.abs(Pe-_e);Ht<he&&(ue=Pe,he=Ht)}}fe>ce&&(ue-Q>3&&le(J,Q,ue,ce),J[ue+2]=fe,ne-ue>3&&le(J,ue,ne,ce))}function z(J,Q,ne,ce,ue,fe){var _e=ue-ne,he=fe-ce;if(_e!==0||he!==0){var Ee=((J-ne)*_e+(Q-ce)*he)/(_e*_e+he*he);Ee>1?(ne=ue,ce=fe):Ee>0&&(ne+=_e*Ee,ce+=he*Ee)}return(_e=J-ne)*_e+(he=Q-ce)*he}function P(J,Q,ne,ce){var ue={id:J===void 0?null:J,type:Q,geometry:ne,tags:ce,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(fe){var _e=fe.geometry,he=fe.type;if(he==="Point"||he==="MultiPoint"||he==="LineString")F(fe,_e);else if(he==="Polygon"||he==="MultiLineString")for(var Ee=0;Ee<_e.length;Ee++)F(fe,_e[Ee]);else if(he==="MultiPolygon")for(Ee=0;Ee<_e.length;Ee++)for(var me=0;me<_e[Ee].length;me++)F(fe,_e[Ee][me])}(ue),ue}function F(J,Q){for(var ne=0;ne<Q.length;ne+=3)J.minX=Math.min(J.minX,Q[ne]),J.minY=Math.min(J.minY,Q[ne+1]),J.maxX=Math.max(J.maxX,Q[ne]),J.maxY=Math.max(J.maxY,Q[ne+1])}function te(J,Q,ne,ce){if(Q.geometry){var ue=Q.geometry.coordinates,fe=Q.geometry.type,_e=Math.pow(ne.tolerance/((1<<ne.maxZoom)*ne.extent),2),he=[],Ee=Q.id;if(ne.promoteId?Ee=Q.properties[ne.promoteId]:ne.generateId&&(Ee=ce||0),fe==="Point")ie(ue,he);else if(fe==="MultiPoint")for(var me=0;me<ue.length;me++)ie(ue[me],he);else if(fe==="LineString")ve(ue,he,_e,!1);else if(fe==="MultiLineString"){if(ne.lineMetrics){for(me=0;me<ue.length;me++)ve(ue[me],he=[],_e,!1),J.push(P(Ee,"LineString",he,Q.properties));return}Ce(ue,he,_e,!1)}else if(fe==="Polygon")Ce(ue,he,_e,!0);else{if(fe!=="MultiPolygon"){if(fe==="GeometryCollection"){for(me=0;me<Q.geometry.geometries.length;me++)te(J,{id:Ee,geometry:Q.geometry.geometries[me],properties:Q.properties},ne,ce);return}throw new Error("Input data is not a valid GeoJSON object.")}for(me=0;me<ue.length;me++){var Ye=[];Ce(ue[me],Ye,_e,!0),he.push(Ye)}}J.push(P(Ee,fe,he,Q.properties))}}function ie(J,Q){Q.push(oe(J[0])),Q.push(ze(J[1])),Q.push(0)}function ve(J,Q,ne,ce){for(var ue,fe,_e=0,he=0;he<J.length;he++){var Ee=oe(J[he][0]),me=ze(J[he][1]);Q.push(Ee),Q.push(me),Q.push(0),he>0&&(_e+=ce?(ue*me-Ee*fe)/2:Math.sqrt(Math.pow(Ee-ue,2)+Math.pow(me-fe,2))),ue=Ee,fe=me}var Ye=Q.length-3;Q[2]=1,le(Q,0,Ye,ne),Q[Ye+2]=1,Q.size=Math.abs(_e),Q.start=0,Q.end=Q.size}function Ce(J,Q,ne,ce){for(var ue=0;ue<J.length;ue++){var fe=[];ve(J[ue],fe,ne,ce),Q.push(fe)}}function oe(J){return J/360+.5}function ze(J){var Q=Math.sin(J*Math.PI/180),ne=.5-.25*Math.log((1+Q)/(1-Q))/Math.PI;return ne<0?0:ne>1?1:ne}function Ge(J,Q,ne,ce,ue,fe,_e,he){if(ce/=Q,fe>=(ne/=Q)&&_e<ce)return J;if(_e<ne||fe>=ce)return null;for(var Ee=[],me=0;me<J.length;me++){var Ye=J[me],At=Ye.geometry,Pe=Ye.type,wt=ue===0?Ye.minX:Ye.minY,Ht=ue===0?Ye.maxX:Ye.maxY;if(wt>=ne&&Ht<ce)Ee.push(Ye);else if(!(Ht<ne||wt>=ce)){var er=[];if(Pe==="Point"||Pe==="MultiPoint")Ve(At,er,ne,ce,ue);else if(Pe==="LineString")kt(At,er,ne,ce,ue,!1,he.lineMetrics);else if(Pe==="MultiLineString")vr(At,er,ne,ce,ue,!1);else if(Pe==="Polygon")vr(At,er,ne,ce,ue,!0);else if(Pe==="MultiPolygon")for(var ar=0;ar<At.length;ar++){var Ir=[];vr(At[ar],Ir,ne,ce,ue,!0),Ir.length&&er.push(Ir)}if(er.length){if(he.lineMetrics&&Pe==="LineString"){for(ar=0;ar<er.length;ar++)Ee.push(P(Ye.id,Pe,er[ar],Ye.tags));continue}Pe!=="LineString"&&Pe!=="MultiLineString"||(er.length===1?(Pe="LineString",er=er[0]):Pe="MultiLineString"),Pe!=="Point"&&Pe!=="MultiPoint"||(Pe=er.length===3?"Point":"MultiPoint"),Ee.push(P(Ye.id,Pe,er,Ye.tags))}}}return Ee.length?Ee:null}function Ve(J,Q,ne,ce,ue){for(var fe=0;fe<J.length;fe+=3){var _e=J[fe+ue];_e>=ne&&_e<=ce&&(Q.push(J[fe]),Q.push(J[fe+1]),Q.push(J[fe+2]))}}function kt(J,Q,ne,ce,ue,fe,_e){for(var he,Ee,me=Zt(J),Ye=ue===0?Qt:Lt,At=J.start,Pe=0;Pe<J.length-3;Pe+=3){var wt=J[Pe],Ht=J[Pe+1],er=J[Pe+2],ar=J[Pe+3],Ir=J[Pe+4],ai=ue===0?wt:Ht,pr=ue===0?ar:Ir,Rr=!1;_e&&(he=Math.sqrt(Math.pow(wt-ar,2)+Math.pow(Ht-Ir,2))),ai<ne?pr>ne&&(Ee=Ye(me,wt,Ht,ar,Ir,ne),_e&&(me.start=At+he*Ee)):ai>ce?pr<ce&&(Ee=Ye(me,wt,Ht,ar,Ir,ce),_e&&(me.start=At+he*Ee)):$t(me,wt,Ht,er),pr<ne&&ai>=ne&&(Ee=Ye(me,wt,Ht,ar,Ir,ne),Rr=!0),pr>ce&&ai<=ce&&(Ee=Ye(me,wt,Ht,ar,Ir,ce),Rr=!0),!fe&&Rr&&(_e&&(me.end=At+he*Ee),Q.push(me),me=Zt(J)),_e&&(At+=he)}var Cr=J.length-3;wt=J[Cr],Ht=J[Cr+1],er=J[Cr+2],(ai=ue===0?wt:Ht)>=ne&&ai<=ce&&$t(me,wt,Ht,er),Cr=me.length-3,fe&&Cr>=3&&(me[Cr]!==me[0]||me[Cr+1]!==me[1])&&$t(me,me[0],me[1],me[2]),me.length&&Q.push(me)}function Zt(J){var Q=[];return Q.size=J.size,Q.start=J.start,Q.end=J.end,Q}function vr(J,Q,ne,ce,ue,fe){for(var _e=0;_e<J.length;_e++)kt(J[_e],Q,ne,ce,ue,fe,!1)}function $t(J,Q,ne,ce){J.push(Q),J.push(ne),J.push(ce)}function Qt(J,Q,ne,ce,ue,fe){var _e=(fe-Q)/(ce-Q);return J.push(fe),J.push(ne+(ue-ne)*_e),J.push(1),_e}function Lt(J,Q,ne,ce,ue,fe){var _e=(fe-ne)/(ue-ne);return J.push(Q+(ce-Q)*_e),J.push(fe),J.push(1),_e}function Ar(J,Q){for(var ne=[],ce=0;ce<J.length;ce++){var ue,fe=J[ce],_e=fe.type;if(_e==="Point"||_e==="MultiPoint"||_e==="LineString")ue=kr(fe.geometry,Q);else if(_e==="MultiLineString"||_e==="Polygon"){ue=[];for(var he=0;he<fe.geometry.length;he++)ue.push(kr(fe.geometry[he],Q))}else if(_e==="MultiPolygon")for(ue=[],he=0;he<fe.geometry.length;he++){for(var Ee=[],me=0;me<fe.geometry[he].length;me++)Ee.push(kr(fe.geometry[he][me],Q));ue.push(Ee)}ne.push(P(fe.id,_e,ue,fe.tags))}return ne}function kr(J,Q){var ne=[];ne.size=J.size,J.start!==void 0&&(ne.start=J.start,ne.end=J.end);for(var ce=0;ce<J.length;ce+=3)ne.push(J[ce]+Q,J[ce+1],J[ce+2]);return ne}function Pr(J,Q){if(J.transformed)return J;var ne,ce,ue,fe=1<<J.z,_e=J.x,he=J.y;for(ne=0;ne<J.features.length;ne++){var Ee=J.features[ne],me=Ee.geometry,Ye=Ee.type;if(Ee.geometry=[],Ye===1)for(ce=0;ce<me.length;ce+=2)Ee.geometry.push(xi(me[ce],me[ce+1],Q,fe,_e,he));else for(ce=0;ce<me.length;ce++){var At=[];for(ue=0;ue<me[ce].length;ue+=2)At.push(xi(me[ce][ue],me[ce][ue+1],Q,fe,_e,he));Ee.geometry.push(At)}}return J.transformed=!0,J}function xi(J,Q,ne,ce,ue,fe){return[Math.round(ne*(J*ce-ue)),Math.round(ne*(Q*ce-fe))]}function Bs(J,Q,ne,ce,ue){for(var fe=Q===ue.maxZoom?0:ue.tolerance/((1<<Q)*ue.extent),_e={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:ne,y:ce,z:Q,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},he=0;he<J.length;he++){_e.numFeatures++,Ur(_e,J[he],fe,ue);var Ee=J[he].minX,me=J[he].minY,Ye=J[he].maxX,At=J[he].maxY;Ee<_e.minX&&(_e.minX=Ee),me<_e.minY&&(_e.minY=me),Ye>_e.maxX&&(_e.maxX=Ye),At>_e.maxY&&(_e.maxY=At)}return _e}function Ur(J,Q,ne,ce){var ue=Q.geometry,fe=Q.type,_e=[];if(fe==="Point"||fe==="MultiPoint")for(var he=0;he<ue.length;he+=3)_e.push(ue[he]),_e.push(ue[he+1]),J.numPoints++,J.numSimplified++;else if(fe==="LineString")Xi(_e,ue,J,ne,!1,!1);else if(fe==="MultiLineString"||fe==="Polygon")for(he=0;he<ue.length;he++)Xi(_e,ue[he],J,ne,fe==="Polygon",he===0);else if(fe==="MultiPolygon")for(var Ee=0;Ee<ue.length;Ee++){var me=ue[Ee];for(he=0;he<me.length;he++)Xi(_e,me[he],J,ne,!0,he===0)}if(_e.length){var Ye=Q.tags||null;if(fe==="LineString"&&ce.lineMetrics){for(var At in Ye={},Q.tags)Ye[At]=Q.tags[At];Ye.mapbox_clip_start=ue.start/ue.size,Ye.mapbox_clip_end=ue.end/ue.size}var Pe={geometry:_e,type:fe==="Polygon"||fe==="MultiPolygon"?3:fe==="LineString"||fe==="MultiLineString"?2:1,tags:Ye};Q.id!==null&&(Pe.id=Q.id),J.features.push(Pe)}}function Xi(J,Q,ne,ce,ue,fe){var _e=ce*ce;if(ce>0&&Q.size<(ue?_e:ce))ne.numPoints+=Q.length/3;else{for(var he=[],Ee=0;Ee<Q.length;Ee+=3)(ce===0||Q[Ee+2]>_e)&&(ne.numSimplified++,he.push(Q[Ee]),he.push(Q[Ee+1])),ne.numPoints++;ue&&function(me,Ye){for(var At=0,Pe=0,wt=me.length,Ht=wt-2;Pe<wt;Ht=Pe,Pe+=2)At+=(me[Pe]-me[Ht])*(me[Pe+1]+me[Ht+1]);if(At>0===Ye)for(Pe=0,wt=me.length;Pe<wt/2;Pe+=2){var er=me[Pe],ar=me[Pe+1];me[Pe]=me[wt-2-Pe],me[Pe+1]=me[wt-1-Pe],me[wt-2-Pe]=er,me[wt-1-Pe]=ar}}(he,fe),J.push(he)}}function vo(J,Q){var ne=(Q=this.options=function(ue,fe){for(var _e in fe)ue[_e]=fe[_e];return ue}(Object.create(this.options),Q)).debug;if(ne&&console.time("preprocess data"),Q.maxZoom<0||Q.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Q.promoteId&&Q.generateId)throw new Error("promoteId and generateId cannot be used together.");var ce=function(ue,fe){var _e=[];if(ue.type==="FeatureCollection")for(var he=0;he<ue.features.length;he++)te(_e,ue.features[he],fe,he);else te(_e,ue.type==="Feature"?ue:{geometry:ue},fe);return _e}(J,Q);this.tiles={},this.tileCoords=[],ne&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Q.indexMaxZoom,Q.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(ce=function(ue,fe){var _e=fe.buffer/fe.extent,he=ue,Ee=Ge(ue,1,-1-_e,_e,0,-1,2,fe),me=Ge(ue,1,1-_e,2+_e,0,-1,2,fe);return(Ee||me)&&(he=Ge(ue,1,-_e,1+_e,0,-1,2,fe)||[],Ee&&(he=Ar(Ee,1).concat(he)),me&&(he=he.concat(Ar(me,-1)))),he}(ce,Q)).length&&this.splitTile(ce,0,0,0),ne&&(ce.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}function Os(J,Q,ne){return 32*((1<<J)*ne+Q)+J}return vo.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},vo.prototype.splitTile=function(J,Q,ne,ce,ue,fe,_e){for(var he=[J,Q,ne,ce],Ee=this.options,me=Ee.debug;he.length;){ce=he.pop(),ne=he.pop(),Q=he.pop(),J=he.pop();var Ye=1<<Q,At=Os(Q,ne,ce),Pe=this.tiles[At];if(!Pe&&(me>1&&console.time("creation"),Pe=this.tiles[At]=Bs(J,Q,ne,ce,Ee),this.tileCoords.push({z:Q,x:ne,y:ce}),me)){me>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Q,ne,ce,Pe.numFeatures,Pe.numPoints,Pe.numSimplified),console.timeEnd("creation"));var wt="z"+Q;this.stats[wt]=(this.stats[wt]||0)+1,this.total++}if(Pe.source=J,ue){if(Q===Ee.maxZoom||Q===ue)continue;var Ht=1<<ue-Q;if(ne!==Math.floor(fe/Ht)||ce!==Math.floor(_e/Ht))continue}else if(Q===Ee.indexMaxZoom||Pe.numPoints<=Ee.indexMaxPoints)continue;if(Pe.source=null,J.length!==0){me>1&&console.time("clipping");var er,ar,Ir,ai,pr,Rr,Cr=.5*Ee.buffer/Ee.extent,Fs=.5-Cr,bo=.5+Cr,Ns=1+Cr;er=ar=Ir=ai=null,pr=Ge(J,Ye,ne-Cr,ne+bo,0,Pe.minX,Pe.maxX,Ee),Rr=Ge(J,Ye,ne+Fs,ne+Ns,0,Pe.minX,Pe.maxX,Ee),J=null,pr&&(er=Ge(pr,Ye,ce-Cr,ce+bo,1,Pe.minY,Pe.maxY,Ee),ar=Ge(pr,Ye,ce+Fs,ce+Ns,1,Pe.minY,Pe.maxY,Ee),pr=null),Rr&&(Ir=Ge(Rr,Ye,ce-Cr,ce+bo,1,Pe.minY,Pe.maxY,Ee),ai=Ge(Rr,Ye,ce+Fs,ce+Ns,1,Pe.minY,Pe.maxY,Ee),Rr=null),me>1&&console.timeEnd("clipping"),he.push(er||[],Q+1,2*ne,2*ce),he.push(ar||[],Q+1,2*ne,2*ce+1),he.push(Ir||[],Q+1,2*ne+1,2*ce),he.push(ai||[],Q+1,2*ne+1,2*ce+1)}}},vo.prototype.getTile=function(J,Q,ne){var ce=this.options,ue=ce.extent,fe=ce.debug;if(J<0||J>24)return null;var _e=1<<J,he=Os(J,Q=(Q%_e+_e)%_e,ne);if(this.tiles[he])return Pr(this.tiles[he],ue);fe>1&&console.log("drilling down to z%d-%d-%d",J,Q,ne);for(var Ee,me=J,Ye=Q,At=ne;!Ee&&me>0;)me--,Ye=Math.floor(Ye/2),At=Math.floor(At/2),Ee=this.tiles[Os(me,Ye,At)];return Ee&&Ee.source?(fe>1&&console.log("found parent tile z%d-%d-%d",me,Ye,At),fe>1&&console.time("drilling down"),this.splitTile(Ee.source,me,Ye,At,J,Q,ne),fe>1&&console.timeEnd("drilling down"),this.tiles[he]?Pr(this.tiles[he],ue):null):null},function(J,Q){return new vo(J,Q)}}();var qa=Se.g(Ps.exports);function Za(le,z){const P=le.tileID.canonical;if(!this._geoJSONIndex)return z(null,null);const F=this._geoJSONIndex.getTile(P.z,P.x,P.y);if(!F)return z(null,null);const te=new class{constructor(ve){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=Se.E,this.length=ve.length,this._features=ve}feature(ve){return new class{constructor(Ce){this._feature=Ce,this.extent=Se.E,this.type=Ce.type,this.properties=Ce.tags,"id"in Ce&&!isNaN(Ce.id)&&(this.id=parseInt(Ce.id,10))}loadGeometry(){if(this._feature.type===1){const Ce=[];for(const oe of this._feature.geometry)Ce.push([new Se.P(oe[0],oe[1])]);return Ce}{const Ce=[];for(const oe of this._feature.geometry){const ze=[];for(const Ge of oe)ze.push(new Se.P(Ge[0],Ge[1]));Ce.push(ze)}return Ce}}toGeoJSON(Ce,oe,ze){return zn.call(this,Ce,oe,ze)}}(this._features[ve])}}(F.features);let ie=ks(te);ie.byteOffset===0&&ie.byteLength===ie.buffer.byteLength||(ie=new Uint8Array(ie)),z(null,{vectorTile:te,rawData:ie.buffer})}class $a extends Se.d{constructor(z,P,F,te,ie,ve){super(z,P,F,te,Za,ve),ie&&(this.loadGeoJSON=ie)}loadData(z,P){const F=z&&z.request,te=F&&F.collectResourceTiming;this.loadGeoJSON(z,(ie,ve)=>{if(ie||!ve)return P(ie);if(typeof ve!="object")return P(new Error(`Input data given to '${z.source}' is not a valid GeoJSON object.`));{yo(ve,!0);try{if(z.filter){const oe=Se.e(z.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(oe.result==="error")throw new Error(oe.value.map(ze=>`${ze.key}: ${ze.message}`).join(", "));ve={type:"FeatureCollection",features:ve.features.filter(ze=>oe.value.evaluate({zoom:0},ze))}}this._geoJSONIndex=z.cluster?new Pi(function({superclusterOptions:oe,clusterProperties:ze}){if(!ze||!oe)return oe;const Ge={},Ve={},kt={accumulated:null,zoom:0},Zt={properties:null},vr=Object.keys(ze);for(const $t of vr){const[Qt,Lt]=ze[$t],Ar=Se.e(Lt),kr=Se.e(typeof Qt=="string"?[Qt,["accumulated"],["get",$t]]:Qt);Ge[$t]=Ar.value,Ve[$t]=kr.value}return oe.map=$t=>{Zt.properties=$t;const Qt={};for(const Lt of vr)Qt[Lt]=Ge[Lt].evaluate(kt,Zt);return Qt},oe.reduce=($t,Qt)=>{Zt.properties=Qt;for(const Lt of vr)kt.accumulated=$t[Lt],$t[Lt]=Ve[Lt].evaluate(kt,Zt)},oe}(z)).load(ve.features):qa(ve,z.geojsonVtOptions)}catch(oe){return P(oe)}this.loaded={};const Ce={};if(te){const oe=Se.f(F);oe&&(Ce.resourceTiming={},Ce.resourceTiming[z.source]=JSON.parse(JSON.stringify(oe)))}P(null,Ce)}})}reloadTile(z,P){const F=this.loaded;return F&&F[z.uid]?super.reloadTile(z,P):this.loadTile(z,P)}loadGeoJSON(z,P){if(z.request)Se.h(z.request,P);else{if(typeof z.data!="string")return P(new Error(`Input data given to '${z.source}' is not a valid GeoJSON object.`));try{return P(null,JSON.parse(z.data))}catch{return P(new Error(`Input data given to '${z.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(z,P){try{P(null,this._geoJSONIndex.getClusterExpansionZoom(z.clusterId))}catch(F){P(F)}}getClusterChildren(z,P){try{P(null,this._geoJSONIndex.getChildren(z.clusterId))}catch(F){P(F)}}getClusterLeaves(z,P){try{P(null,this._geoJSONIndex.getLeaves(z.clusterId,z.limit,z.offset))}catch(F){P(F)}}}class dr{constructor(z,P){this.tileID=new Se.O(z.tileID.overscaledZ,z.tileID.wrap,z.tileID.canonical.z,z.tileID.canonical.x,z.tileID.canonical.y),this.tileZoom=z.tileZoom,this.uid=z.uid,this.zoom=z.zoom,this.canonical=z.tileID.canonical,this.pixelRatio=z.pixelRatio,this.tileSize=z.tileSize,this.source=z.source,this.overscaling=this.tileID.overscaleFactor(),this.projection=z.projection,this.brightness=P}parse(z,P,F,te){this.status="parsing";const ie=new Se.O(F.tileID.overscaledZ,F.tileID.wrap,F.tileID.canonical.z,F.tileID.canonical.x,F.tileID.canonical.y),ve={},Ce=P.familiesBySource[F.source],oe=new Se.F(ie,F.promoteId);return oe.bucketLayerIDs=[],Se.l(z).then(ze=>{if(!ze)return te(new Error("Could not parse tile"));const Ge=Se.j(ze,1/Se.t(F.tileID.canonical)),Ve=ze.json.extensionsUsed&&ze.json.extensionsUsed.includes("MAPBOX_mesh_features"),kt=new Se.k(this.zoom,{brightness:this.brightness});for(const Zt in Ce)for(const vr of Ce[Zt]){const $t=vr[0],Qt=ze.json.extensionsUsed;$t.recalculate(kt,[]);const Lt=new Se.T(Ge,ie,Qt&&Qt.includes("MAPBOX_mesh_features"),this.brightness);Ve||(Lt.needsUpload=!0),ve[$t.fqid]=Lt,Lt.evaluate($t)}this.status="done",te(null,{buckets:ve,featureIndex:oe})}).catch(ze=>te(new Error(ze.message)))}}class Rs{constructor(z,P,F,te,ie,ve){this.actor=z,this.layerIndex=P,this.brightness=ve,this.loading={},this.loaded={}}loadTile(z,P){const F=z.uid,te=this.loading[F]=new dr(z,this.brightness);Se.i(z.request,(ie,ve)=>{const Ce=!this.loading[F];return delete this.loading[F],Ce||ie?(te.status="done",Ce||(this.loaded[F]=te),P(ie)):ve&&ve.byteLength!==0?void te.parse(ve,this.layerIndex,z,(oe,ze)=>{te.status="done",this.loaded=this.loaded||{},this.loaded[F]=te,oe||!ze?P(oe):P(null,ze)}):(te.status="done",this.loaded[F]=te,P())})}reloadTile(z,P){const F=this.loaded,te=z.uid;if(F&&F[te]){const ie=F[te];ie.projection=z.projection,ie.brightness=z.brightness;const ve=(Ce,oe)=>{ie.reloadCallback&&(delete ie.reloadCallback,this.loadTile(z,P)),P(Ce,oe)};ie.status==="parsing"?ie.reloadCallback=ve:ie.status==="done"&&this.loadTile(z,P)}}abortTile(z,P){const F=z.uid;this.loading[F]&&delete this.loading[F],P()}removeTile(z,P){const F=this.loaded,te=z.uid;F&&F[te]&&delete F[te],P()}}class Ls{constructor(z){this.self=z,this.actor=new Se.A(z,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=Se.m({name:"mercator"}),this.workerSourceTypes={vector:Se.d,geojson:$a,"batched-model":Rs},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(P,F)=>{if(this.workerSourceTypes[P])throw new Error(`Worker source with name "${P}" already registered.`);this.workerSourceTypes[P]=F},this.self.registerRTLTextPlugin=P=>{if(Se.n.isParsed())throw new Error("RTL text plugin already registered.");Se.n.applyArabicShaping=P.applyArabicShaping,Se.n.processBidirectionalText=P.processBidirectionalText,Se.n.processStyledBidirectionalText=P.processStyledBidirectionalText}}clearCaches(z,P,F){delete this.layerIndexes[z],delete this.availableImages[z],delete this.workerSources[z],delete this.demWorkerSources[z],F()}checkIfReady(z,P,F){F()}setReferrer(z,P){this.referrer=P}spriteLoaded(z,{scope:P,isLoaded:F}){if(this.isSpriteLoaded[z]||(this.isSpriteLoaded[z]={}),this.isSpriteLoaded[z][P]=F,this.workerSources[z]&&this.workerSources[z][P])for(const te in this.workerSources[z][P]){const ie=this.workerSources[z][P][te];for(const ve in ie)ie[ve]instanceof Se.d&&(ie[ve].isSpriteLoaded=F,ie[ve].fire(new Se.o("isSpriteLoaded")))}}setImages(z,{scope:P,images:F},te){if(this.availableImages[z]||(this.availableImages[z]={}),this.availableImages[z][P]=F,this.workerSources[z]&&this.workerSources[z][P]){for(const ie in this.workerSources[z][P]){const ve=this.workerSources[z][P][ie];for(const Ce in ve)ve[Ce].availableImages=F}te()}else te()}setProjection(z,P){this.projections[z]=Se.m(P)}setBrightness(z,P,F){this.brightness=P,F()}setLayers(z,P,F){this.getLayerIndex(z,P.scope).replace(P.layers,P.options),F()}updateLayers(z,P,F){this.getLayerIndex(z,P.scope).update(P.layers,P.removedIds,P.options),F()}loadTile(z,P,F){P.projection=this.projections[z]||this.defaultProjection,this.getWorkerSource(z,P.type,P.source,P.scope).loadTile(P,F)}loadDEMTile(z,P,F){this.getDEMWorkerSource(z,P.source,P.scope).loadTile(P,F)}reloadTile(z,P,F){P.projection=this.projections[z]||this.defaultProjection,this.getWorkerSource(z,P.type,P.source,P.scope).reloadTile(P,F)}abortTile(z,P,F){this.getWorkerSource(z,P.type,P.source,P.scope).abortTile(P,F)}removeTile(z,P,F){this.getWorkerSource(z,P.type,P.source,P.scope).removeTile(P,F)}removeSource(z,P,F){if(!(this.workerSources[z]&&this.workerSources[z][P.scope]&&this.workerSources[z][P.scope][P.type]&&this.workerSources[z][P.scope][P.type][P.source]))return;const te=this.workerSources[z][P.scope][P.type][P.source];delete this.workerSources[z][P.scope][P.type][P.source],te.removeSource!==void 0?te.removeSource(P,F):F()}loadWorkerSource(z,P,F){try{this.self.importScripts(P.url),F()}catch(te){F(te.toString())}}syncRTLPluginState(z,P,F){try{Se.n.setState(P);const te=Se.n.getPluginURL();if(Se.n.isLoaded()&&!Se.n.isParsed()&&te!=null){this.self.importScripts(te);const ie=Se.n.isParsed();F(ie?void 0:new Error(`RTL Text Plugin failed to import scripts from ${te}`),ie)}}catch(te){F(te.toString())}}setDracoUrl(z,P){this.dracoUrl=P}getAvailableImages(z,P){this.availableImages[z]||(this.availableImages[z]={});let F=this.availableImages[z][P];return F||(F=[]),F}getLayerIndex(z,P){this.layerIndexes[z]||(this.layerIndexes[z]={});let F=this.layerIndexes[z][P];return F||(F=this.layerIndexes[z][P]=new Sr,F.scope=P),F}getWorkerSource(z,P,F,te){if(this.workerSources[z]||(this.workerSources[z]={}),this.workerSources[z][te]||(this.workerSources[z][te]={}),this.workerSources[z][te][P]||(this.workerSources[z][te][P]={}),this.isSpriteLoaded[z]||(this.isSpriteLoaded[z]={}),!this.workerSources[z][te][P][F]){const ie={send:(ve,Ce,oe,ze,Ge,Ve)=>{this.actor.send(ve,Ce,oe,z,Ge,Ve)},scheduler:this.actor.scheduler};this.workerSources[z][te][P][F]=new this.workerSourceTypes[P](ie,this.getLayerIndex(z,te),this.getAvailableImages(z,te),this.isSpriteLoaded[z][te],void 0,this.brightness)}return this.workerSources[z][te][P][F]}getDEMWorkerSource(z,P,F){return this.demWorkerSources[z]||(this.demWorkerSources[z]={}),this.demWorkerSources[z][F]||(this.demWorkerSources[z][F]={}),this.demWorkerSources[z][F][P]||(this.demWorkerSources[z][F][P]=new et),this.demWorkerSources[z][F][P]}enforceCacheSizeLimit(z,P){Se.q(P)}getWorkerPerformanceMetrics(z,P,F){F(void 0,void 0)}}return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope&&(self.worker=new Ls(self)),Ls}),_o(["./shared"],function(Se){return Se.s});var Ua=Yo;return Ua})})(iv);var Jp=iv.exports;const NS={key:0,class:"kvass-map__address"},US=ES({__name:"Map",props:{coordinates:{},address:{},markers:{},aspectRatio:{default:"2/1"},mapOptions:{},markerOptions:{},showControls:{type:Boolean,default:!0},showAddress:{type:Boolean,default:!1}},setup(zi){const Mr=zi,yi=Yp(),Fr=Yp(),Yo=nu(()=>({center:Mr.coordinates,zoom:12,dragPan:!0,scrollZoom:!1,dragRotate:!1,cooperativeGestures:!1,...Mr.mapOptions}));function _o(){Mr.coordinates&&yi.value&&(Fr.value=new Jp.Map({container:yi.value,center:Mr.coordinates,...Yo.value,language:document.querySelector("html")?.getAttribute("lang")||"auto"}),W(),oi())}MS(()=>{_o()}),SS(()=>{Fr.value?.remove()});const Ua=nu(()=>({color:"var(--kvass-map-primary-color)",...Mr.markerOptions})),Se=Yp([]);function W(){Fr.value&&(Se.value.forEach(Sr=>Sr.remove()),(Mr.markers||[Mr.coordinates]).forEach(Sr=>{Sr&&Se.value.push(new Jp.Marker({...Ua.value}).setLngLat(Sr).addTo(Fr.value))}))}function oi(){!Fr.value||!Mr.showControls||[new Jp.NavigationControl].forEach(Sr=>Fr.value.addControl(Sr))}return(Sr,et)=>(Kp(),ev("div",{class:"kvass-map",style:zS({"--kvass-map-aspect-ratio":Mr.aspectRatio})},[AS("div",{ref_key:"mapEl",ref:yi,class:"kvass-map__map"},null,512),Mr.showAddress?(Kp(),ev("div",NS,IS(Mr.address),1)):CS("",!0)],4))}}),VS=`.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.kvass-map{position:relative;aspect-ratio:var(--kvass-map-aspect-ratio);width:100%;background-color:var(--kvass-map-background, rgba(0, 0, 0, .2));border-radius:var(--kvass-map-border-radius, 0rem)}.kvass-map__address{padding:var(--kvass-map-address-padding-y, .5rem) var(--kvass-map-address-padding-x, .5rem);background-color:var(--kvass-map-address-background, rgba(0, 0, 0, .2));color:var(--kvass-map-address-color, rgba(255, 255, 255, .75));position:absolute;bottom:0;right:0;left:0;text-align:center}.kvass-map__map,.kvass-map .mapboxgl-canvas-container,.kvass-map .mapboxgl-canvas{height:100%;width:100%}.kvass-map .mapboxgl-ctrl-attrib,.kvass-map .mapboxgl-ctrl-logo{display:none}@media screen and (max-width: 680px){.kvass-map{aspect-ratio:1/1.4}}`,jS={__name:"Map.ce",props:{theme:{type:String,required:!0},mapboxApiToken:{type:String,required:!0},coordinates:{type:String,required:!0},markers:{type:String},zoom:{type:String,default:"8",validator(zi){return typeof parseInt(zi)=="number"}},address:String,aspectRatio:String},setup(zi){const Mr=zi,yi=nu(()=>Mr.coordinates.split(",")),Fr=nu(()=>Mr.markers?.split(";").map(_o=>_o.split(","))),Yo=kS({style:Mr.theme,accessToken:Mr.mapboxApiToken});return(_o,Ua)=>(Kp(),PS(tv(OS),null,{default:RS(()=>[LS(tv(US),{coordinates:yi.value,zoom:parseInt(Mr.zoom),markers:Fr.value,"map-options":Yo,address:zi.address,"show-address":!!zi.address,"aspect-ratio":zi.aspectRatio},null,8,["coordinates","zoom","markers","map-options","address","show-address","aspect-ratio"])]),_:1}))}},GS=DS(jS,[["styles",[VS]]]);customElements.define("kvass-map",BS(GS));